Thursday, August 18, 2022

Enlightenment - for those who have nothing better to do with an OS than change settings

Curiosity about the Enlightenment desktop drove me to use nearly 500MB of my internet-data allocation to install it on Ubuntu 22.04, which I now admit is nice, although in my opinion the workspace-switching scheme is a solution in search of a problem. In a nutshell, "Enlightenment" is a misleading name, because as far as I'm concerned, it's one of the least enlightened desktops I've used, although I never actually got around to using to do anything. For example, the default fonts are microscopic, and I couldn't figure out how to change them. Perhaps it was meant for developers to use as the basis for an actual desktop, such as Bodhi and Elive, by setting it up to make it usable.

The file manager (Fileman) is a PITA to use. To open an encrypted partition, I had to use Disks to unlock and mount it, but it still didn't appear in the file manager's devices-column, so to access it via the file manager (although it would have been easier to just keep using Disks), I had to go to the /media/<user-name> directory, and I finally found it. Perhaps it was meant to conceal encrypted partitions from those who aren't aware of them, but most other file managers display encrypted partitions in the devices-column as soon as they're plugged in. Bodhi Linux, which is Ubuntu combined with Enlightenment, uses Thunar, the XFCE file manager, which is one of my favorites, so I'm not the only one who doesn't like Fileman.

I was also expecting some sort of a whiz-bang window-manager which would make it easy to move from one to another, but as far as I can tell, that's not the case. Anyways, taskbars seem like the optimal approach for doing this when the window of interest is hidden behind another, and Enlightenment has an optional taskbar in addition to its "i-bar."

But it's not all bad - there are various innovative features, but they don't make up for the deficit in usability.

So, I'm not going to waste any more time on Enlightenment. My distro of choice is MX-Linux XFCE, because I can get a lot done with it, without having to change a lot of settings and figuring out how to change them, and it has the Snapshot tool that makes it easy to create an ISO of a configured MX-Linux installation, with all of the settings and added software. The resulting ISO can be turned into a live installation on a USB2 drive (instead of one of those warm/hot-running USB3 drives), and the resulting installation can be run on an air-gap PC, for the ultimate in security, since it retains no session-data upon shutdown. Instead, data would be saved on separate drives.

Sunday, August 7, 2022

Using Conky standard MX-antiX configuration as disk I/O monitor



Rev 8/15/22

 

A good option for a disk I/O monitor is to install Conky (conky-std) and use the standard MX-antiX configuration (see image). To obtain the corresponding configuration file from MX-Linux, open the Home directory, press Ctl-H to display hidden files, then open the .conky directory, then the MX-antiX directory, and copy the "MX-antiX17" file and rename it Standard_antiX_Conky_conf_file.txt. The same version is supposedly on the internet, but I tried the posted version, but it didn't produce the same results, so below I have included a copy of the version which I copied from MX-Linux, which you could test on a live installation.

There are various ways to use it as the configuration file, one of which is to put it in a text file, name it conky.conf, and place it in the Home/.conky directory created by installing Conky. The previous conky.conf directory would have to be removed or renamed. Another way is to put it in a text file named whatever you like and placed wherever you like, although I'd name it Standard_antiX_Conky_conf_file.txt and put it in the .conky directory. Then shut Conky down and restart it with the command "conky -c <path/name of configuration file>." To get the path of a file, right-click on it and select Properties in the menu which appears.

Standard MX/antiX Conky configuration-script:

conky.config = {
-- Standard antiX .conkyrc file written by Team antiX.
-- Feel free to use.
-- anticapitalista@riseup.net

-- Note: delete the line above to disable automatic scaling with DPI
-- on the live system.

-- set to yes if you want Conky to be forked in the background
    background = true,

    short_units = true,

    cpu_avg_samples = 1,
    net_avg_samples = 1,

    out_to_console = false,

-- X font when Xft is disabled, you can pick one with program xfontsel
--font 7x12
--font 6x10
--font 7x13
    font = '8x12',
--font 7x12
--font *mintsmild.se*
--font -*-*-*-*-*-*-34-*-*-*-*-*-*-*
--font -artwiz-snap-normal-r-normal-*-*-100-*-*-p-*-iso8859-1

-- Use Xft?
    use_xft = true,

-- Xft font when Xft is enabled
--xftfont gentium:size=12
--ftfont DejaVu Sans:size=10
    font = 'DejaVu Sans:bold:size=9',
--xftfont DejaVu Sans:size=9

-- Create own window instead of using desktop (required in nautilus, pcmanfm and rox desktops)
    own_window = true,
    own_window_transparent = true,
    own_window_hints = 'undecorated,sticky,skip_taskbar',

-- Text alpha when using Xft
    xftalpha = 1.0,

--on_bottom no

-- mail spool
-- mail_spool $MAIL

-- Update interval in seconds
    update_interval = 1,

-- Use double buffering (reduces flicker, may not work for everyone)
    double_buffer = true,

-- Minimum size of text area
    minimum_width = 5, minimum_height = 5,
    maximum_width = 180,

-- Draw shades?
    draw_shades = false,

-- Draw outlines?
    draw_outline = false,

-- Draw borders around text
    draw_borders = false,

-- Stippled borders?
    stippled_borders = 0,

-- border margins
--border_margin 10

-- border width
    border_width = 1,

-- Default colors and also border colors
    default_color = 'white',
    default_shade_color = 'white',
    default_outline_color = 'white',

    color1 = 'ffffff',
    color2 = 'ffffff',
    color3 = 'ffffff',
    color4 = 'yellow',
    color8 = '77ccff',
    color9 = '5599cc',

-- Text alignment, other possible values are commented
-- alignment top_left
    alignment = 'top_right',
--alignment bottom_left
--alignment bottom_right

-- Gap between borders of screen and text

    gap_x = 30,
    gap_y = 30,

-- Add spaces to keep things from moving about?  This only affects certain objects.
    use_spacer = 'right',

-- Subtract file system buffers from used memory?
    no_buffers = true,

-- if_up_strictness link:  up | link | address
    if_up_strictness = 'address',

-- set to yes if you want all text to be in uppercase
    uppercase = false,

-- boinc (seti) dir
-- seti_dir /opt/seti

--# antiX additives examples. Add below Text##
--#Battery examples##
--#${color}battery: ${color}$acpiacadapter, ${battery_percent BAT1}%
--#${color}battery:${color} ${battery}
--${color}ACPI Battery: ${color}$battery
--${battery_bar 11,0}
--#Wireless example##
--${color}Wireless:
--${color}essid: ${wireless_essid $template6}
--${color}IP:${color} ${addr $template6}
--${color}speed: ${color} ${wireless_bitrate $template6}
--${color}link strength: ${color} ${wireless_link_bar 7,50 $template6}


    own_window_argb_value = 0,
    own_window_argb_visual = true,
    own_window_colour = '000000',

-- time template
    
    template0 = [[${if_match "pmfix${time %p}" == "pmfix"}${time \1}${else}${time %I:%M}${endif}]],

-- battery templates

    template1 = [[${if_existing /sys/class/power_supply/BAT\1}\n${color}bat\1:${color3}${alignr}${battery_percent BAT\1}%\n${color1}$alignr${battery_bar 4,170 BAT\1}${endif}]],
    template2 = [[${template1 0}${template1 1}]],
    
-- network templates

--    template3 = [[${color}\1 \2: $alignr${color3} ${\2speed \1}\n${color2}$alignr${\2speedgraph   \1 30,170 5599cc 5599cc}]],
--    template4 = [[${if_up \1}${template3 \1 up}\n${template3 \1 down}\n${endif}]],
--    template5 = [[${template4 $template4}${template4 $template5}${template4 $template6}${template4 $template7}]],

    template4 = 'eth0',
    template5 = 'eth1',
    template6 = 'wlan0',
    template7 = 'wlan1',

    
};

-- fluxbox adjustment
return_code = os.execute('pidof -q fluxbox')
if _VERSION == 'Lua 5.1' and math.floor(return_code/256) == 0 or
   _VERSION ~= 'Lua 5.1' and return_code then
   conky.config.own_window_transparent = true
   conky.config.own_window_argb_visual = false
end

-- stuff after 'TEXT' will be formatted on screen

conky.text = [[
${color3}${alignc}MX Linux
${color8}$alignc${font DejaVu Sans:size=12}${template0 %H:%M}$font
${color}${alignc}${time %a %d %b}
${color}${alignc}Uptime: $uptime

${color}res:${alignr}${color3}${execi 600 xdpyinfo | awk '/dimensions/ { print $2}' }
${color}dpi:${alignr}${color3}${execi 600 xdpyinfo | awk '/resolution/ { sub(/x[0-9]*/,"",$2); print $2}' }
${color}cpu use:${alignr}${color3}${cpu}${color}%
${color}cpu freq:${color3}${alignr}${freq}
${color}$alignr${cpugraph cpu0 30,170 5599cc 5599cc}\
# battery
${template2}
${color}disk I/O:${alignr}${color3}${diskio}
${color}${alignr}${diskiograph 30,170 5599cc 5599cc}\
# network
${if_up $template4}
${color}$template4 up: $alignr${color3} ${upspeed $template4}
${color}$alignr${upspeedgraph   $template4 30,170 5599cc 5599cc}
${color}$template4 down: $alignr${color3} ${downspeed $template4}
${color2}$alignr${downspeedgraph $template4 30,170  5599cc 5599cc}${endif}${if_up $template5}
${color}$template5 up: $alignr${color3} ${upspeed $template5}
${color}$alignr${upspeedgraph   $template5 30,170 5599cc 5599cc}
${color}$template5 down: $alignr${color3} ${downspeed $template5}
${color2}$alignr${downspeedgraph $template5 30,170  5599cc 5599cc}${endif}${if_up $template6}
${color}$template6 up: $alignr${color3} ${upspeed $template6}
${color2}$alignr${upspeedgraph   $template6 30,170 5599cc 5599cc}
${color}$template6 down: $alignr${color3} ${downspeed $template6}
${color2}$alignr${downspeedgraph $template6 30,170 5599cc 5599cc}${endif}${if_up $template7}
${color}$template7 up: $alignr${color3} ${upspeed $template7}
${color2}$alignr${upspeedgraph   $template7 30,170 5599cc 5599cc}
${color}$template7 down: $alignr${color3} ${downspeed $template7}
${color2}$alignr${downspeedgraph $template7 30,170 5599cc 5599cc}${endif}
${color}${alignr}${color8}Used / Total
${color}mem:${alignr}$mem ${color3} /${color} $memmax
${color}swap:${alignr}$swap ${color3} /${color} $swapmax
${color}root:${alignr}${fs_used /} ${color3} /${color} ${fs_size /}
]]

Xubuntu 22.04: Not my top choice, but a serious contender

Although between MX-Linux 21 XFCE and Kubuntu 22.04, my OS-needs are fulfilled, I couldn't resist getting a copy of Xubuntu 22.04 and giving it a spin. What I found was basically a fun distribution with lot of good stuff, but also with some minor problems, and not a slick as Kubuntu 22.04 or Linux Mint 20.3. Still, I could easily live with it.

The main feature I wanted to try on Xubuntu was zooming the screen with a keyboard, which turned out to be easy, with the help of a couple of simple xdotool commands which someone posted to the internet:

running the following command from the terminal, zooms in:

xdotool keydown Alt click 4 keyup Alt

and this command zooms out:

xdotool keydown Alt click 5 keyup Alt

As he suggested, I turned them into shell scripts, but ultimately assigned each one to a function key. (First create the scripts, give them execute-permission, and then put them somewhere safe such as in a bash-scripts folder in your Home directory, and perhaps make them read-only so they can't be deleted inadvertently. To create a shortcut-key, select Settings in the main menu, then the Keyboard utility, and then the Application Shortcuts tab, and the rest should be obvious.) He suggested a key-combo, but each time the command is run, the display in or out by a discrete amount, and if you want to zoom more, you have to press the key-combo again, which isn't convenient. But by assigning it to a function key, I can hold the key down, and it continues to zoom, although still not smoothly.

My other main interest was whether it's particularly well suited for use as an offline installation which cannot be connected directly to the internet, which it isn't. However, it can be used as such using the technique I describe in this post for authenticating a package index obtained via APT-offline by installing it via APT-offline on an installation of the same type which has been updated via a direct internet connection.

A direct update installs missing keys and updates outdated keys, but without providing any indication that this is taking place. I learned this accidentally, by entering "echo 'Binary::apt::APT::Keep-Downloaded-Packages "1";' | sudo tee /etc/apt/apt.conf.d/10apt-keep-downloads" (which can be copied w/o the beginning and ending quotes, and pasted into the command-line via Ctl-Shift-V, and ensures that software-modules which are installed via a direct connection are retained in /var/cache/apt/archives after being installed - the archives-directory is the destination for software-modules downloaded as part of the normal installation-process). I entered this command before performing a direct update on Kubuntu 22.04, and later found the Debian-archive-keyring package in the archives-directory even though I hadn't installed it or anything which requires it. So, it was obviously installed during the direct update, without any indication that it was being done. As far as I've been able to determine, there is no other way to install or update keys, without a thorough familiarity with the APT security system, and as far as I can tell, there are no current, publicly-available descriptions of this system.

Although debian-archive-keyring apparently isn't installed during the initial direct update on Xubuntu 22.04, as it is on Kubuntu 22.04, some keys are apparently installed or updated on Xubuntu 22.04, because until a direct update is installed, some of the required keys are apparently missing or outdated, as indicated by the "cannot authenticate packages" (CAP)-warnings which appear when installing software, using a package index which has been installed via APT-offline. (The package manager, APT, is disabled until the package index is updated. The direct update required a 45MB download, and the update via APT-offline required about 48MB.) It appears that APT's developers designed its security system so that keys can be updated whenever necessary, without regard for a schedule, and distributed with updates, so that the updated package index can be authenticated.

Xubuntu 22.04 has a good selection of apps, although the text-editor doesn't have a functional spelling-checker (it has a plugin, but I couldn't get it to work). One of my posts describes a "custom action" for Thunar, XFCE's file manager, for opening text-files with the spelling-checker Aspell (included in Xubuntu) by right-clicking on them and selecting the spelling-check option. The image viewer is great except for its limited zoom-capability, so I usually install Eye of Mate. Although Xubuntu has some good widgets, it doesn't have a disk I/O widget, but you could use Conky with the MX-Linux standard configuration (described in one of my posts), nmon, or GKrellM. I decided against installing APT-offline's GUI, because it would have required many packages, totaling about 18MB. Installing Kdenlive would require a 200MB download, as opposed to 60MB for Kubuntu 22.04.

Xubuntu 22.04 doesn't have a package-installer GUI, which surprised and disappointed me until I realized that the command "sudo dpkg -i <deb-pkg>" accomplishes the same thing. So, I was wrong about not being able to install APT-offline on plain Ubuntu until the package index is updated.

The bottom line is that although Xubuntu 22.04 isn't the most highly-polished distro I've used, and it has some minor problems which are apparently left as an exercise for the user, it's fun to use, unlike some distros I've used, such as MX-Linux Fluxbox, which is too much work for too little reward, and not sufficiently polished for my tastes. But Fluxbox is fast, and compared to antiX, which looks as if it was designed by someone who is legally blind, and which for example can't copy/paste between apps or open encrypted drives without entering text-commands, even Fluxbox is very user-friendly.

Monday, July 25, 2022

Mint's HDHomerun problem

Everything was going fine with my new Linux Mint 20.3 XFCE installation, which I was considering for use on the desktop PC which I use as a PVR and for processing ISOs and large files in general, until the moment when I fired up the HDHomerun-GUI (hdhomerun-config-gui), tuned in a station, and hit View, to which VLC responded by opening and displaying a black screen.

After wracking my brains over the course of a couple of days, and searching for answers on the internet and finding nothing (which itself is a clue that something's rotten), I've concluded that this is a dirty trick which is implemented by sensing the hardware, and when certain hardware is detected, corrupting or disabling the HDHomerun's output stream so that VLC can't display it. It's the only thing that makes sense, partly because I booted my $200 Brix with an encrypted flash drive installation of Mint 20.3, and was able to watch TV through it, and even record it to the flash drive, although I wouldn't advise recording video to flash drives, especially if they're encrypted. Mint has a reputation for having hardware compatibility issues, but it makes no sense that it would have more than other types of Ubuntu. But when it works, it's great.

I ended up going with Kubuntu 22.04, which I preferred slightly over Mint even before the HDHR problem. Dolphin can't access system folders, but a version with system access and superuser privileges is coming soon. In the meantime, there's Krusader, which is amazing for a file manager that can be installed on Kubuntu with a single 3.5MB package, although it's more cumbersome than Dolphin, so I use it only when necessary.

Sunday, July 24, 2022

How to run an interactive shell script in a terminal with two clicks in Mint XFCE

Rev 7/24/22


Running non-interactive shell scripts is just a matter of giving them execute-permission (right-click on file, select Properties, then Permissions, etc.), and then double-clicking on them.

But if your shell script requires user input, you need to run it in a terminal, and one way to do that is to create a Thunar custom action named something like Run Shell Script that runs the following command, without the brackets: [xfce4-terminal -e "./%n"], with the appearance-condition of *.sh. This is all explained in my post entitled "Performing spell-check via right-click in XFCE."  Then, to execute the shell script, just right-click on it, then select Run Shell Script in the menu which appears.

Mint 20.3 XFCE also has "screen zoom" (or "desktop zoom") capability. You just select Compiz as the window manager (go to Settings in the main menu, and select Desktop Settings, which is not the same as Desktop), and if you want to use the keyboard to control the zoom-level, go into Compiz-settings and disable the mouse zoom-settings (perhaps not necessary) and select some key-combination for zoom-in and zoom-out. I chose Alt-Super-(up-arrow) and Alt-Super-(down-arrow), respectively, and it works like a charm.

There are many other settings related to zoom, but I just left them alone. You could, for example, make it possible to use a mouse or touchpad to trace out a rectangular area on the screen and zoom it to full screen, or at least to maximum zoom-level if it's too small to zoom to full-screen. (The left mouse-button is Button 1.) In Xubuntu 22.04, the XFCE window-manager, xfwm4, apparently has a zoom function, so you wouldn't need to use Compiz for that.

Wednesday, June 15, 2022

Additional comments on MX-Linux 21 Fluxbox and Lubuntu 22.04

rev 6/23/22 (see Notes)


After trying Lubuntu 22.04 and finding that it's fantastic [1], I decided to take another look at MX-Linux 21 Fluxbox. I had tried it and gave up due to frustrations with making changes to the panel and dock, but I've since realized that docks are easy to change, create, delete, move, etc., once you learn a few tricks (mentioned below), and that you can tailor the panel or panels to your liking by selecting Settings, then Tint2 Settings in the main menu. I just selected one of the prefabbed panels and left it as it was, although the panel included Clipman, so I went into Clipman's settings, selected the History tab, and set Remember History to O, because clipboard-management apps are security risks and should be used only when necessary, such as if you're writing code and want to save code-clippings for reuse. In some cases, I ended up uninstalling the clipboard manager app because there was no way to prevent it from keeping a clipboard history.

As usual, APT-offline wasn't installed by default, but all that's necessary to install it is apt-offline.deb and python3-magic.deb, which are both minuscule, and which I installed by using a package-installer. Later, I installed APT-offline-gui via APT-offline, but the launcher added to the main menu during installation didn't work, so I tried to fix the launcher but couldn't because the problem was deeper in the system. So, I'll just launch it by entering "sudo apt-offline-gui."

I had a problem with updating the package index via APT-offline without first updating it with a direct connection, because I kept getting "cannot authenticate package" (CAP) messages while trying to install software until I performed a direct update. I gave up on trying to understand precisely what was wrong, because it requires a good grasp of the Debian security system, which is very convoluted and is supposedly undergoing changes (including to validate packages when they're being installed, apparently in addition to when they're being downloaded), but performing an update with a direct internet connection seems to have corrected the problem, and then it could apparently be updated via APT-offline from then on, without producing CAP-messages. After performing a direct update, then an update via APT-offline, I performed another direct update, and APT apparently found that the existing package index was the latest, and just left it alone.

A couple of days later, I realized that MXL-Fluxbox includes a "Fix GPG Keys" tool, and created an unencrypted installation to see whether this tool would take care of the CAP-problem, which it didn't, even when online. (When booting the installation, it stopped with an "(intramfs)" (initial RAM file system) prompt, and I entered "exit" and the boot-process resumed. When the login screen appeared, I clicked on the menu-symbol at the top-center and selected the Fluxbox option, although I'm not sure what it does. But I confirmed that performing a direct update does fix the problem, whatever it is, by using APT-offline to install some package-index files which I downloaded a few days earlier for my initial MXL-FB installations, finding that it had the CAP-problem, and performing a direct update (which required only about 1MB, probably because the package index was just a few days old and APT apparently decided not to replace it). After the direct update, the CAP problem was gone, and then I performed another update via APT-offline (reinstalled the same package index files), and found that the CAP problem was still gone. 

Then I performed another update via APT-offline, using package-index files obtained about a week after the initial batch, and went through the motions of installing some software, and did not receive any CAP messages, apparently indicating that the direct update "permanently" fixed the CAP-problem. So, if you have a slow internet connection at home, you could probably create an installation and use it to obtain the packages required to install APT-offline from the Debian Packages site (MX-L21-FB is based on Debian 11/Bullseye), along with the reference checksums for the packages, calculate their checksums (right-click on each file, select Properties, then Digests, and then Hash), compare them to the references, and assuming that they match, install them by clicking on them and following the instructions. Then you could use APT-offline to perform an update (perform a set-op to generate a signature file, then a get-op, using some device which can readily obtain a 4G or better internet connection, to download and screen the package-index files, and then an install-op, which in the case of package-index files, installs them completely). Then you could perform a direct update, which based on my experience would require downloading only about 1MB due to the update via APT-offline (although I assume that you'd have to perform the two updates on the same day, or at least within a couple of days).

If you want to add any PPAs to your installation's sources-list, this would be the time to do it - there have apparently been improvements to the process of adding PPAs, because when I added the one for version 1.1 of the LXQT desktop to my Lubuntu 22.04 installation (https://launchpad.net/~severusseptimius/+archive/ubuntu/lxqt, which by the way didn't seem to do anything), the PPA's package-index files were added too, without having to perform an update (perhaps because I had just performed an update). After adding the PPA, I got an error message which indicated that there was no InRelease file (which was wrong), and that as a result the index or the PPA couldn't be used. Still, I had no problems generating a signature file for the upgraded desktop-components (a 100MB download, although Thunderbird is 57MB of that).

But if you don't even have a slow internet connection at home, you could power your PC with an inverter or an uninterruptible power supply so that you could take it to some place where you could establish a high-speed wireless internet connection, in which case you would perform an update and install APT-offline-gui (which would install APT-offline as well), and any software you might need in the foreseeable future. You might want a cardboard hood on your monitor to block sunlight, and something like a clipboard to use as a flat surface for your mouse. But once you've performed a direct update, it appears that you could use APT-offline from then to make any kind of change to the installation.

I also  had a problem when trying to perform a get-op on a signature file for GIMP, because the gimp.deb and gimp-data.deb files weren't available from the server, at least by the name listed in the signature file. But when I installed GIMP via a direct connection, everything went well, even though it requested precisely the same files. Two different versions of gimp and gimp-data were available, so perhaps by using a direct connection APT was able to find the secondary (older) versions when it couldn't find the newer versions, and download them, although the newer versions were the ones that were installed. Perhaps the older versions were actually pointers to the newer versions.

After installing GIMP, I tried to find the downloaded packages in /var/cache/apt/archives (where APT places downloaded packages for installation), so that I could use them on another installation of the same type, but they had apparently been deleted automatically after installation. I had installed a tiny app (gpw, a nifty password-generator) to determine whether it would be retained after installation by default, and it was, so I assumed that this would apply in all cases. I also "installed" a lot of apps via APT-offline (referring to the APT-offline "install"-op, which just copies downloaded app-packages to the "archives" directory, after which they must be actually installed normally, such as by entering "sudo apt install <app>"), and they were retained after actual installation. So, to retain all downloaded packages after installing them, it's apparently necessary to enter "echo 'Binary::apt::APT::Keep-Downloaded-Packages "1";' | sudo tee /etc/apt/apt.conf.d/10apt-keep-downloads" (to execute the command, copy it, without the beginning and ending quotes, as you would normally copy text, and paste it into the command-line with Ctrl-Shift-V).

After using my MXL21-FB installation for about a week, I generated an ISO from it, using the Snapshot MX-Tool (which works only on MX-Linux installations). Instead of having Snapshot store the ISO on the original installation, which is on a Kingston USB3 DataTraveler (which has a slow write-speed but runs cool, indicating low power consumption), I had it store it on an SD card which I formatted with an EXT4 format, using the Disks program, since Linux writes to EXT4-formatted drives faster than it does to FAT-formatted drives. Snapshot couldn't find the SD card until I realized that I had the file manager set up to require me to click on the drive-name to mount it. Then I used the Snapshot-created ISO to create a nonpersistent live installation (which in the case of live installations made from ISOs made with Snapshot, boot very quickly, unlike regular live installations) on a cheap, cool-running USB2 drive.

Naturally, turning an installation into an ISO is done only when you are fairly certain that you won't be making any significant changes to the installation in the near future, but I mentioned it above in order to explain some of the following changes.

Xfce4-notes, an excellent desktop-notes program, can be installed on MXL21-FB with a download of about 200K, which is nothing compared to some note-programs. I use xfce4-notes as a nonpersistent scratchpad, since it stores data in the installation, which in the case of the aforementioned nonpersistent live installation doesn't retain data after shut-down. FeatherNotes is also excellent, and quite a small download. I use FeatherNotes as a persistent scratchpad, with the notes stored on an encrypted flash drive (since FN allows the user to select the storage location), and backed-up on additional encrypted drives (I use two levels of backup - one drive to keep a running backup, which is transferred to other back-ups each week). Another approach would be to just use a separate small unsaved text-editor window as a nonpersistent desktop-note, and a text file as a persistent note, in cases where installing notes-programs would require large downloads.

MXL-FB's Dockmaker app (which can be launched by right-clicking on the screen, then selecting Appearance, then Docks, then Dockmaker) is quite straightforward, although if you want to add an app to a dock using a command and an icon, and you want to use the icon from the main menu, go to the menu-entry, right-click on it, and select Edit. Then click on the icon, and wait for quite a while (30 seconds on my $200 Brix, which I use as an air-gap PC), and a window with a bunch of menu-icons, including the one of interest, will appear. (I learned this by accident, by clicking on the icon, getting no immediate response, and then moving onto something else without closing the launcher-edit window. After a while, the aforementioned window of icons appeared, and I realized that it was the response to clicking on the icon.) Then use the name on the icon of interest, and a search program such as Catfish (also included in MX-L21-FB by default) to search the /usr/share/icons directory to find the location of the icon's file, and then go to Dockmaker, and click on the icon-window, and navigate to the icon-file of interest (Dockmaker's default icon-size is apparently 48x48). A few icons are in usr/local/share/icons.

If as a result of using Dockmaker you end up with multiple listings for a single dock in the menu accessed by right-clicking on the screen, you can go to the home directory, press Ctrl-h to show hidden files, then go to .fluxbox, then submenus, then appearance, and remove the redundant entries (superuser privileges aren't required). It's probably a good idea to make a backup copy before you start editing, in case you make a mistake and need a reference to correct it.

The file manager (Thunar) wasn't set up to my liking, so I changed the settings by going to Settings in the main menu, then selecting File Manager. Settings which control Thunar's response to plugging in flash drives can be accessed by going to the main menu, selecting Settings, and then selecting Removable Drives and Media. I set it up so that I can plug in a bunch of flash drives without having windows popping up all over the screen. This caused some confusion later, when I couldn't find the SD card with Snapshot, until I realized that I hadn't clicked on the SD card's name in the file manager to mount it.

In conclusion, MX-Linux 21 Fluxbox is a gem, although it's not very slick and it doesn't have frills such as multiple workspaces, the ability to zoom the entire screen, or the ability to change window-manager settings. It's one of the fastest types of Linux I've used, and includes MX-Tools, including the aforementioned Snapshot tool (which is apparently unique to MX-Linux and antiX) and includes a good selection of generally-useful apps, including FeatherPad, an excellent text editor, and GKrellm (Gnu Krell Monitors system-monitor, which includes configurable disk I/O monitors), which I've never seen included by default on any other distro. It doesn't include Libre Office (which for me is like using a nuclear weapon to kill a fly), so I installed Abiword. I considered adding KDE Partition Manager until I realized how much data would be required, so I installed Disks (gnome-disk-utility) which combined with GParted (included on MX-F by default) can do anything you could want to do to a drive. I also installed Marble, which I like because it does a lot of what I need from a virtual globe without being connected to the internet. Google Earth does everything and has incredible resolution, but requires a fast, data-unlimited internet connection.

Notes

Rev 6/23/22 - Changed title and added Note 1.

[1] The only problem I found with Lubuntu 22.04 in my brief trial run was that plugging-in flash  drives caused it to freeze, so that all I could do was to log off, etc., although I was able to eliminate this problem by conf  iguring the file manager so that it didn't mount removable drives when they're plugged in. My previous complaint about using the file manager in administrative mode to move .deb-files into /var/cache/apt/archives was apparently due to some error on my part, because I had no difficulty with it in subsequent attempts. So, PCmanFM-QT,the LXQT file manager, is among the best I've used, although it lacks Thunar's ability to add custom actions.

I added a PPA run by "Serverus Septimius" to install LXQT 1.1.0 on Lubuntu 22.04 by entering "sudo add-apt-repository ppa:severusseptimius/lxqt," which in my case also added the PPA's package index to my installation's package index, although I had performed an update immediately before adding the PPA to see what effect it would have on the process of adding the PPA. Then I used APT-offline to install LXQT 1.1.0, which required a 100MB download (57MB of which was Thunderbird). I didn't notice any effects, unless the improvement in my experience with PCmanFM-QT was due to the upgrade. However, PCmanFM-QT was not included in the upgrade.

Both Lubuntu 22.04 and MXL21-FB have very functional software selections without a lot of niche apps, but only MX-Linux, and apparently antiX, have a tool known as Snapshot, which can turn installations of these types of Linux, with  all of their settings and added software, into ISOs which can then be used for creating various types of copies of the original installations. I use a nonpersistent live MXL21-FB installation on a cheap, cool-running (energy-efficient) USB2 flash drive for my air-gap PC, and when it's shut down, it does't retain any session-data, so it's as secure as possible. So, hopefully, there will soon be an official MX-Linux LXQT which can be purchased in the form of DVDs.There already is an MX-Linux LXQT created by an MX-Linux/LXQT enthusiast and made available for download, but it's available only as a download.

Monday, June 6, 2022

Lubuntu 22.04: Almost perfect

 Keywords: "Lubuntu 22.04 review"
Other than sluggish responses to password-inputs during booting, a bug (probably already fixed by some upgrade) which hinders the opening of encrypted flash-drives which are plugged in after the system is booted, and a slow first Firefox Snap launch during each session (although after loading, it's amazing), Lubuntu 22.04 quickly became one of my favorites, along with MX-Linux XFCE (and KDE), Ubuntu Mate, and Kubuntu (I'm partial to Debian/APT-based distros, due to APT-offline). (MX-Linux with the LXQT desktop would be a great combination.) Lubuntu 22.10, which will have a more mature version of the LXQT desktop environment, will undoubtedly be fantastic. You can install LXQT 1.1 (the latest as of this writing), but it's from a PPA, not the Ubuntu repository. I've read that it's excellent, however.

Lubuntu 22.04's selection of software is probably the most functional I've seen, without a lot of niche apps. For example, I almost always install Disks (gnome-disk-utility) when I create an installation, but Lubuntu includes the KDE Partition Manager, which does everything that Disks does. It also includes the Muon package manager, which is a lot like Synaptic, and a software-sources-management app like Software & Updates (i.e. software-properties-gtk) in addition to the Discover app-store.

The file manager, PCManFM-Qt is a sort of combination of Thunar and Dolphin, and is powerful and easy to use. It can be configured to open files and folders with one click, and has a button to open a tab as a root instance, although the administrative password is still required.

Lubuntu 22.04 includes Noble Notes, which is very functional although somewhat cumbersome compared to desktop-notes apps and widgets. I believe I read that an LXQT notes-widget is in the works - hopefully it will be like XFCE's notes-widget.

To add an app to a panel, you would just drag its icon from the main menu to a "Quick Launch" widget/area in the panel.

I had a "package cannot be authenticated" problem when trying to install software after performing an update via APT-offline, but I performed it again (60MB download each time using APT-offline, and 30MB when using a direct connection, which is small for a package-index update compared to most I've seen lately), and the problem went away. I'm not sure exactly what caused the problem, but I suspect that the first time, I didn't give the APT-offline get-op (a specialized download/screening process) sufficient time to write the package-index files from DRAM (apparently used as a transit point to maximize the download-rate) to the flash-drive installation which I had designated as the storage-location, because for one thing after installing those package index files, there was no InRelease file among the resulting packages lists, although there was an InRelease file among the package lists after installing the 2nd batch of package-index files. (It didn't occur to me to compare the two sets of package-index files themselves until after I had deleted the first set.)

The installer (Calamares) apparently couldn't create an installation on a flash drive which already contained an installation (perhaps as a safety measure), so I had to format the drives which I decided to use for Lubuntu installations before I could perform an installation on them with this installer. I prefer Kingston USB3 Datatravelers (a 32GB is probably optimal) because the installation-process isn't glacial, the resulting installation is sufficiently responsive, and the KDT-USB3 drives which I've used run cool compared to most USB3 drives I've tried.

Lubuntu 22.04 is definitely a worthy member of the Ubuntu family, although you might want to wait for the next point-release if you don't want to perform an upgrade to get rid of some bugs, or if you want a more mature version of the desktop without installing it from a PPA. However, you might have to get 22.10 for the upgraded desktop.