You are not logged in.
You can create an /etc/X11/Xmodmap (if you want it for all users) or ~/.Xmodmap (just for your own user) file with the keymappings you need.
To check which keymap corresponds to a key on your keyboard run xev in a terminal.
A mapping looks like this (this adds the '©' symbol on the 'c' key on my keyboard using the right Windows key as modifier):
keysym Super_R = Mode_switch
keysym c = c C copyrightSee also the Xmodmap man-page.
My setup: Devuan Excalibur with XFCE
When I use the XFCE-screensaver and a video is playing using mplayer or mpv or even within firefox (for example a youtube video) the screensaver does not activate while the video is playing, and this is the desired behaviour.
If I disable the XFCE-screensaver and instead use Xscreensaver from the Devuan repo, the screensaver kicks in at the configured idle time even when a video is playing so basically it ignores the communication from mplayer/mpv/firefox to prevent it from kicking in.
The man-page of Xscreensaver says:
PLAYING VIDEOS
Likewise, if you have systemd(1) or elogind(8), then all of the popular video players and
web browsers will prevent XScreenSaver from blanking the screen while video is playing.Both of these features require that xscreensaver-systemd(6) be able connect to D-Bus.
xscreensaver-systemd is being started automatically by xscreensaver and I have elogind-daemon running (although I cannot tell whether it's able to connect to the D-Bus).
So to me it looks like it should work but maybe the Devuan elogind is not passing on the dbus messages or is somehow interfering in the process?
Has anyone succeeded in using Xscreensaver on Devuan with the screensaver not kicking in while videos are playing?
Ok, after some extensive googling I found the solution in the end:
In the following thread on the linux.debian.user newsgroup a Debian user asked the same question 4 years ago:
https://groups.google.com/g/linux.debia … lSllKEIUVk
After lots of trial and error he finds the solution, it's XFCE starting up both ssh-agent and gpg-agent and annoyingly this is not exposed in the "Session and Startup" GUI config tool of XFCE where I had already looked, it requires using xfconf-query to disable:
https://docs.xfce.org/xfce/xfce4-sessio … gpg_agents
I can confirm that running the following two commands (as indicated in the above XFCE docs link) prevents ssh-agent and gpg-agent from being started automatically by XFCE:
xfconf-query -c xfce4-session -p /startup/ssh-agent/enabled -n -t bool -s false
xfconf-query -c xfce4-session -p /startup/gpg-agent/enabled -n -t bool -s false@rolfie that command doesn't work on my system, it runs and then returns to the command prompt without any output.
But it doesn't matter, like I said /usr/bin/ssh-agent is included in the openssh-client package which I do have installed and cannot uninstall as I use ssh all the time. But ssh-agent is not required to use the ssh client, it's 100% optional.
So back to my original question, what is starting up ssh-agent and gpg-agent during X11 session startup?
This is what I'm trying to find out, nothing else.
BTW, the following command gives me the output you were looking for:
$ apt list -i |grep ssh
WARNING: apt does not have a stable CLI interface. Use with caution in scripts.
libssh-4/stable,now 0.11.2-1+deb13u1 amd64 [installed,automatic]
libssh-4/stable,now 0.11.2-1+deb13u1 i386 [installed,automatic]
libssh2-1t64/stable,stable-security,now 1.11.1-1+deb13u1 amd64 [installed,automatic]
libssh2-1t64/stable,stable-security,now 1.11.1-1+deb13u1 i386 [installed,automatic]
openssh-client/stable,now 1:10.0p1-7+deb13u4 amd64 [installed]
$@rolfie What is that command supposed to do, I get no output from it?
I do have the openssh-client package installed (/usr/bin/ssh-agent is included in this package) and I use ssh all the time, but I have no use for ssh-agent.
The ssh-agent weakens ssh security and can be a real security risk:
https://medium.com/@bornaly/why-i-alway … c52573fa2f
@greenjeans in this thread I would like to find out what starts them in the first place so that I can disable them, I can always re-enable them once I know how to disable them (in case I need them).
I noticed ssh-agent and gpg-agent are running in the background on my Devuan Excalibur XFCE PC, since I have no need for them and I dislike having stuff running in the background that I don't need (no matter how small their RAM or CPU footprint) I tried to figure out where they get started from and how to disable them.
By doing a grep for ssh-agent and gpg-agent in /etc I found the following files:
/etc/X11/Xsession.options
contains a config option "use-ssh-agent" which I commented out, and after that made no difference I replaced the line with "no-use-ssh-agent" (as indicated in the man page), which also had no effect.
/etc/X11/Xsession.d/90x11-common_ssh-agent
this script starts up ssh-agent providing the config option "use-ssh-agent" has been set.
I tried commenting out all the lines of the script but that made no difference, ssh-agent still starts up after a reboot or relogin.
/etc/X11/Xsession.d/90gpg-agent
this script seems to be made to start up gpg-agent.
I tried commenting out all the lines of the script but that made no difference, gpg-agent still starts up after a reboot or relogin.
I also looked in the "Session and Startup" GUI config tool of XFCE but there is no reference to ssh-agent (other than a 'SSH Key Agent' part of 'GNOME Keyring', but I had already unticked this) or gpg-agent.
So I'm at my wits end, what the heck is starting up ssh-agent and gpg-agent during X11 session startup?
Without providing as much detail as possible (for the first one exact sequence of commands used and for the second one screenshots and links of the downloads, in addition to the devuan version you are running) you won't get any real answers as your problem description is way too vague for that.
Good to know, then I could reinstall 'apt-listchanges should I ever need it, but right now I see no reason for it.
This X server will trigger the Rust crowd, assembler means no safety nets of any kind, not just no memory safety! ![]()
Thanks fsmithred, while .xsession isn't quite the right file either, by pointing me to it I did some research on it and stumbled upon the correct file:
.xsessionrcAs far as I figured out .xsession replaces the default session startup scripts that are under /etc/X11, while .xsessionrc only complements them, i.e. gets parsed last thing after the /etc/X11 startup scripts, and that's exactly what I was looking for.
I already tested it and it works as expected.
With regards to the security risks, there are none as Devuan (like most Linux distros since many years) starts Xorg with the "-nolisten tcp" parameter, so it's not accessible via the network. Only local users can access it and this is a desktop PC used by a single human user.
I sort of solved this by adding the xhost commands I need in the XFCE configuration under "Session and Startup" -> "Application Autostart" as a 'program' to be run on login.
It works fine but I don't consider it an ideal solution as it's DE specific.
Surely there must be a generic DE-independent X11 config file where I could put these 'xhost' commands so that they run on login?
(I did also try .xinitrc in my home directory but that is ignored)
I think I figured this out, it was apparently caused by 'apt-listchanges' and/or 'apt-listdifferences'.
I uninstalled these two packages and the problem seems to have disappeared, I have no idea what or who installed them to begin with (whether it was me or whether they got installed as a 'suggestion' from some other package).
I just ran "apt upgrade" to install the latest updates on a Devuan Excalibur PC and got the above warning for three packages.
What do I have to do to avoid these warning in future updates, am I missing some "trusted keys" package?
Get:1 wireless-regdb_2026.05.30-1~deb13u1.dsc [2303 B]
Get:2 wireless-regdb_2026.05.30.orig.tar.xz [32.0 kB]
Get:3 wireless-regdb_2026.05.30-1~deb13u1.debian.tar.xz [21.2 kB]
Fetched 55.5 kB in 0s (0 B/s)
apt-listdifferences: skipping differences for src:libcaca - differences already seen
apt-listdifferences: skipping differences for src:graphite2 - differences already seen
gpgv: Signature made Mon 11 May 2026 08:14:40 CEST
gpgv: using RSA key 72E3CB773315DFA2E464743D94532124541922FB
gpgv: Can't check signature: No public key
dpkg-source: warning: cannot verify inline signature for /var/cache/apt/sources/base-files_13.8+deb13u5devuan1.dsc: no acceptable signature found
gpgv: Signature made Mon 06 Jul 2026 07:47:52 CEST
gpgv: using RSA key 72E3CB773315DFA2E464743D94532124541922FB
gpgv: Can't check signature: No public key
dpkg-source: warning: cannot verify inline signature for /var/cache/apt/sources/base-files_13.8+deb13u6devuan1.dsc: no acceptable signature found
apt-listdifferences: removing old src:base-files 13.8+deb13u5devuan1
apt-listdifferences: skipping differences for src:libass - differences already seen
apt-listdifferences: removing old src:pupnp 1.14.20-1
apt-listdifferences: removing old src:dhcpcd 10.1.0-11+deb13u2
apt-listdifferences: skipping differences for src:libxpm - differences already seen
apt-listdifferences: skipping differences for src:libxml-libxml-perl - differences already seen
apt-listdifferences: removing old src:libxml2 2.12.7+dfsg+really2.9.14-2.1+deb13u2
gpgv: Signature made Fri 20 Feb 2026 17:05:49 CET
gpgv: using RSA key AC2B29BD34A6AFDDB3F68F35E7BFC8EC95861109
gpgv: Can't check signature: No public key
dpkg-source: warning: cannot verify inline signature for /var/cache/apt/sources/wireless-regdb_2026.02.04-1~deb13u1.dsc: no acceptable signature found
gpgv: Signature made Wed 10 Jun 2026 00:09:56 CEST
gpgv: using RSA key AC2B29BD34A6AFDDB3F68F35E7BFC8EC95861109
gpgv: Can't check signature: No public key
dpkg-source: warning: cannot verify inline signature for /var/cache/apt/sources/wireless-regdb_2026.05.30-1~deb13u1.dsc: no acceptable signature found
apt-listdifferences: removing old src:wireless-regdb 2026.02.04-1~deb13u1
apt-listdifferences: skipping differences for src:mesa - differences already seen
apt-listdifferences: removing old src:poppler 25.03.0-5+deb13u3
apt-listdifferences: removing old src:nss 3.110-1+deb13u2
gpgv: Signature made Fri 22 May 2026 10:49:20 CEST
gpgv: using RSA key 64AA2AB531D56903366BFEF982AA4A243B1E9478
gpgv: Can't check signature: No public key
dpkg-source: warning: cannot verify inline signature for /var/cache/apt/sources/samba_4.22.8+dfsg-0+deb13u2.dsc: no acceptable signature found
gpgv: Signature made Thu 11 Jun 2026 06:36:35 CEST
gpgv: using RSA key 64AA2AB531D56903366BFEF982AA4A243B1E9478
gpgv: Can't check signature: No public key
dpkg-source: warning: cannot verify inline signature for /var/cache/apt/sources/samba_4.22.10+dfsg-0+deb13u1.dsc: no acceptable signature found
apt-listdifferences: removing old src:samba 4.22.8+dfsg-0+deb13u2Thanks, that could be a feasible workaround but surely there must be a X11 config file that gets read each time X11 is started (i.e. when logging in) in which I could put the xhost command?
BTW, I already tried creating /etc/X0.hosts with relevant entries (see below) as indicated in the xhost manpage but that doesn't seem to have any effect.
$ more /etc/X0.hosts
+SI:localuser:username1
+SI:localuser:username2I run some X11-apps as a different user than the user with which i log on to the desktop (XFCE) so after a reboot I always have to type "xhost +" in a terminal before being able to launch these X11-apps as a different user.
So how can I make "xhost +" the default at every boot?
In which config file do I have to set this to avoid having to type it manually each time?
Those methods (especially method 2 and 3) open you up to identity theft, as anyone who gets hold of a copy of your ID can then themselves use it to register on other sites pretending to be you (or they can resell the collected copies to people who then abuse them).
Rule number one to avoid identity theft is never give anyone a copy of your ID, only show your ID in person where strictly necessary without allowing them to make an actual copy of it.
@Altoid I don't know what's the root cause of your issues but I don't have any of those files you listed in that dbus folder (and I don't have gvfs installed) so I assume those files are only there because you have gvfs installed (or because it wasn't uninstalled properly in case you uninstalled gvfs).
Hmm, I had never heard of ranger before but a glance at the description on the home page turned me off straight away because of this: "file manager with VI key bindings".
No thanks, while I do occasionally use vi(m) (I had to use vi when I was working on Solaris / HP-OS / AIX servers) I'm not a fan of its key bindings and only know the basic ones so ranger is not for me.
Like Altoid said, mc is inspired by Norton Commander and that's what I was using on MS DOS / Win 3.1 before switching to Linux in the mid 90s so that's what I prefer.
My file manager of choice is mc (midnight commander), it runs everywhere (even remotely over a ssh connection) and does everything I need. I never understood the need for graphical file managers, they are usually slower and clumsier to operate.
Any date you choose will be a persistent parameter that will allow fingerprinting and therefore together with other parameters tracking you.
The only date of birth that would avoid this is one that gets randomly generated each time it's requested (or at least at each reboot), so it's never the same date.
But it should be obvious to anyone that the current legislation is only an initial stepping stone since the date can be faked easily, within a year or two the laws will be changed to allow only verified dates that are cryptographically signed by some authority so that you can no longer fake it.
This is only to get people used to the idea, so they can expand upon it in the coming years. Classic boiling the frog slowly strategy.
Is it really a hard disk or rather a SSD? If it's a SSD it could be that the SSD is becoming defective (worn out). I would do a check with smartctl.
I'm not surprised that they would do that since systemd is essentially a corporate IBM/Redhat project and corporations of course will comply (corporations seem to be the drivers behind this anyway, I guess the ultimate aim is that doing anything on the internet without a verified ID tied to some government issued digital ID will be impossible, basically cinese-style total surveillance and social scoring...).
The problems for us without systemd will start when applications such as Firefox will start depending on systemd for this and possibly refuse to work without it ... ![]()
That will mean either patching these apps or creating something equivalent outside systemd to comply.
I would rather stop using the internet (or at least anything I can't access without this crap) than comply.
Oh well if you use Gnome or even just gnome-disks then I'm not surprised that removing gvfs gives you problems, my experience without gvfs is purely with a clean XFCE, no gnome desktop stuff installed (other than polkit-gnome and gnome-keyring-daemon which AFAIR were installed by default with XFCE).
BTW, for those more interested in removing any age tracking and compliance software from their installs which some distros are already discussing and implementing the following initiative has been started:
https://github.com/AntiSurv/oss-anti-surveillance
OSS Anti Surveillance
Tracking, documenting, opposing, removing, and reversing OS-level surveillance mechanisms in free software distributions.
MissionOSS Anti Surveillance exists to document and resist attempts to turn free software distributions into surveillance, classification, or policy-enforcement endpoints.
This project opposes:
OS-level age verification
age signaling and age-bracket APIs
client-side scanning and device-side inspection
metadata and portal layers repurposed for compliance
downstream inheritance of surveillance mechanisms
geo-fencing users out of free software in response to coercive lawFree software distributions must remain general-purpose systems under user control. They must not become infrastructure for categorizing, filtering, or monitoring people on behalf of states, platforms, or third-party services.
Non-negotiable position
This project does not exist to help design a cleaner implementation path for surveillance mechanisms in free software. It exists to document them, oppose them, and prepare their removal.
The central error in many of the implementation discussions tracked here is not a particular daemon, schema, API, portal, or packaging choice. The central error is accepting the premise that general-purpose free operating systems should be discussing how to build these mechanisms at all.
That premise is rejected here.
No implementation path is acceptable. Not in a user record. Not in account metadata. Not in a portal. Not in an installer. Not as a minimal age bracket. Not as an opaque token. Not as a temporary compromise. Not as a jurisdiction-specific feature.