I have been using Linux since Mandrake (circa 2001) and switched to Linux full-time the moment official support for Windows XP / MCE / XP-64bit / 2003 was withdrawn. Mostly I have used CentOS, Mint and Knoppix, with a bit of Fedora, Ubuntu, Elementary, SteamOS and some Raspberry Pi distributions. So I know a bit about how to get what I want but I am still struggling with Solus in a few areas. Since Feb 2020 I have tried adjusting to the Solus way but a few things are just too much for me. These are my main pain points in Solus, ranked by how disruptive I find them.
If your pointing device has a scroll-wheel, then the window exhibits a strobing artefact if the hardware wheel rolls when the software hasn't got virtual real-estate in that direction. It looks like the Macintosh behaviour when you've got sounds disabled but an error occurs so it begins strobing the screen to give you visual feedback. Other than Mac OS where it is trivially disabled, I have never experienced this and it is really disruptive to the point I have stopped using my scroll-wheel. Even under other OSes I now experience anxiety when I touch the scroll-wheel and have to hesitate to rationalise whether or not I am likely to be subjected to invasive flickering. This is really detrimental to the user interface. How do I configure Solus to use standard behaviour on this issue? It pervades Pluma text files, Caja directory listings, even LibreOffice dialogue boxes. I have tried searching online for how to disable the strobing, but since I don't know what library or plugin is causing it or what name it uses to describe it, I just can't find out how to get rid of it.
If I copy a directory or file path in the file manager, I normally open a program (eg Pluma), hit Ctrl-O, Ctrl-V to have the Open dialogue box at the specified path. This doesn't work in Solus. Instead I have to type a forward slash, then delete it, then paste in the path, and then it works. This is unusual and detrimental to user efficiency. How do I make Solus comply with normal behaviour here?
Control Centre / Mouse Preferences / Show position when Control pressed. This feature interferes with normal operation. For example, select a file, press F2 to edit its name, press Ctrl-C to copy the file name, but instead the edit is exited and the file itself is copied. I only noticed this with Solus because the default grey cursor on a default grey theme is very difficult indeed to locate even when thrashing the mouse around.
Discord is closed-source and therefore I don't know what it might be doing. It accesses the Internet, and therefore I don't know what its telemetry copies back to base. At one point it was inspecting which programs I was running and reporting this information publicly, without my knowledge, and without my consent, just like malware. Fortunately a guildy was able to guide me how to disable this in the Discord settings which are a complete nightmare (it has no menubar; the settings are hidden behind an Easter-egg icon that looks like Netscape Navigator's icon; and closing the preferences quits the entire program). Therefore I have a dedicated user created, solely to run Discord. This user has no personal files and does no web browsing so there is nothing for Discord to spy and report on. However, inserted flash media are ocasionally mounted to the discord user's /run/media/ directory instead of to my main user's directory. This exposes the files on the flash drive to untrusted software. How can I use AppArmour / SELinux to contain the Discord binary so that it cannot access or read from /run/media/ subdirectories EVEN IF they are owned by the current user and EVEN IF they are created on-demand by whatever is automating filesystem mounting? Ideally I would like the file manager to list partitions / filesystems available but allow me to choose whether or not to click on them to mount them (Fedora does this) using that user. I have gone to Control Centre / File Manager / Media and unticked Browse When Inserted but this does NOT prevent the filesystems from being automatically mounted without user confirmation.
If, within a single boot, I log into two accounts graphically simultaneously and switch between them using Ctrl-Alt-F7 / F8, I cannot log out of those sessions. I can log into text sessions on multiple users at Ctrl-Alt-F2, etc. without causing problems but concurrent graphical sessions cause problems. I have to execute:
$ killall -vies9 "mate-settings-daemon"
in order to end a graphical session. Normal signal 15 gets ignored even for ten minutes. Subsequently shutting down stalls indefinitely. This is kind of annoying because I like being able to run two graphical user sessions concurrently for isolation.
When I run MATE Calculator, its window appears. The instant I type a number on the keypad, its window disappears. This makes it difficult to use. I have resorted to console Python for maths, but the distribution's calculator binary should function.
Occasionally I might be just doing ordinary low-impact tasks (launch Gimp, or open the start-menu) and suddenly my entire user session collapses back to the login screen. I have the system monitor on the panel so I know RAM, Load, etc. are well below 50% before this happens. I immediately switch to a text console and run:
which confirms the session has been terminated and then:
$ sudo journalctl > something.log
and peer through it but I don't really know why it happens. From these piped files I see that this only happens once a month. It's irritating but it's rare enough to be much lower impact than the horrible scrolling artefacts.
Normally if the user opens multiple tabs in the terminal emulator, they are each a specific fixed width. In Solus, they are 1/#tabs fraction of the total window's width. This means noticeably more mouse work, moving further in order to access right-most tabs or the [X] button to close tabs because they are artificially offset further to the right than normal. Where is the setting to fix this?
Clicking the mouse button while the cursor is within such a tab creates a visual bidirectional wipe effect from the centre of that tab, regardless of where in the tab the cursor was clicked. This is particularly noticeable when clicking the hugely oversized tabs of a tab-control, or the buttons at the bottom of a dialogue box. This is distracting and unpleasant because it is so unexpected it keeps making me have to go back and check, "Huh? What just happened? I wasn't expecting anything to happen there." Killing whatever process is behind these false-flags would be fantastic.
Whenever I try to:
$ ping localhost
ping: Lacking privilege for icmp socket.
even if I use a superuser and prefix it with sudo. Having no access to ping is pretty frustrating. Does this look as it should? I didn't add SUID myself:
$ ls -l $(which ping)
-rwsr-xr-x 1 root root 74168 Mar 25 2022 /usr/bin/ping
$ journalctl -f
solus audit: AVC apparmor="DENIED" operation="create" profile="ping" pid=9339 comm="ping" family="inet" sock_type="dgram" protocol=1 requested_mask="create" denied_mask="create"
solus audit: SYSCALL arch=c000003e syscall=41 success=no exit=-13 a0=2 a1=2 a2=1 a3=6bedda0fe9618ce2 items=0 ppid=8999 pid=9339 auid=1003 uid=1003 gid=1004 euid=0 suid=0 fsuid=0 egid=1004 sgid=1004 fsgid=1004 tty=pts4 ses=1 comm="ping" exe="/usr/bin/ping" key=(null)
solus audit: PROCTITLE proctitle=70696E67006C6F63616C686F7374
LibreOffice Calc / Tools / AutoCorrect Options brings up a window. Each time the cursor moves out of one widget (eg, a tab) into the next widget (eg, the adjacent tab), the window's right margin grows. Trying to click the OK button in the bottom right results in the window stretching to the right to place the Cancel button under the cursor. This is like prankware.
The world standard timezone is UTC. The installation wizard does NOT offer this as a valid option for the system clock. The clock preferences (right-click the panel clock within a graphical session) does not either but it at least has GMT. In order to set the system timezone I needed to run this after rebooting into the installation:
$ sudo timedatectl set-timezone "Etc/UTC"
Please support selecting UTC during installation since it is objective and ubiquitous.
Under Control Centre / MATE User Manager, when I create a new user sometimes the field for Language says "No Settings" and for other users it defaults to a foreign language and I need to correct it. How do I either specify a locale which all users will use, or alternatively how do I prevent the user creation wizard from defaulting to the wrong locale?
Control Centre divides its icon set up into groups which are (in theory) conceptually related. Mac OS-X and Windows do something similar. Windows allows you to list the Control Panel as Small Icons instead of Categories which fixes this, and OSX's System Preferences provides a menu where the items are enumerated alphabetically regardless of which categories they supposedly match. I find it difficult and frustrating hunting through the categories to find the item I want. I know its name; I just don't know which categories someone else has decided to classify it under. How can I permanently remove the categories and get Control Centre to list all its items purely by name? I don't want to visually search and I don't want to have to manually type the name into the filter field which squanders a quarter of the window area. I just want the items listed alphabetically for speed and convenience.
Software Centre seems cripplingly slow to update anything (as in, not even made appreciable progress after an hour). In contrast, fortunately:
$ sudo eopkg up
works like a charm so the underlying mechanism seems viable; just the GUI seems inoperable. (The only disadvantage of the command-line version is that it leaves cruft in /var/cache/eopkg/packages .) Within the GUI if I go to Search and type in a package name and press Return, matches display. If I click one result, I see its details. If I want to go back to the list of results, I cannot. Esc does nothing. Backspace does nothing. Alt-Leftarrow does nothing. Clicking a different tab (eg Home) and clicking the Search tab again shows the GUI is trapped in this one package's details and cannot escape. I have to quit the program, launch it again, and re-execute the search. This is terribly inefficient. I cannot be the only person who wants to check out several options before picking one.
Searching the Software Centre for "diff" shows kdiff3 is the only graphical option. I installed "diffutils" and it's better than nothing, but a GUI diff is nice. I'm not going to install kdiff's eighty-five (I kid you not) dependencies just to get graphical diff though.
Just prior to trying out Solus, I tried out Drauger: its installer produced nothing but errors and when I clicked the button to send the error logs to the devs, even that failed with errors. I then tried PopOS for a week. Its workspaces are a mess; accelerator-keys for alt-menu access seem broken; scrollbars are unusable, impossibly narrow and fading when you try to interact with them. But what had me totally bewildered for the majority of that week was that a widget looking like macaroni was scattered throughout the GUI and I couldn't figure out what it was trying to represent. The cursor could nudge it left and right but that didn't seem to mean anything. Eventually it dawned on me that this was a stylised checkbox and some research online confirmed this is a Gnome-3 experiment. Solus's Software Centre / Settings shows me a bunch of Gnome-3 macaroni, visually styled like an extremely short slider. Time And Date Manager also has a rogue macaroni for NTP. MATE User Manager has macaroni for "automatic logon" but otherwise everything else everywhere uses standard checkboxes. Is using macaroni baked into a binary at the time of compilation or is it hooking a widget from the OS toolkit based on a dconf key? If there is a setting somewhere that applies a consistent standard aesthetic across the entire user experience, I would love to know. Experimental widgets are all well and good for those who opt into them but if I'm using MATE it's because I want to use the computer efficiently in a standard interface that respects The Principle Of Least Astonishment. I appreciate the option to sign up as a guinea pig and try the weird and wacky, but I don't want it taking over my daily driver.
If you know solutions for any of these pain points, that would be fantastic and I would really appreciate it. Thanks.