Adding Xfce4 to antiX26

Adding Xfce4 to antiX26

I recently looked at setting up a workstation with antiX26 and its native WM’s, notably IceWM.

It was OK with a small amoount of fiddling, but there were some things I missed, particularly internal filesystem mounts in Thunar, and Session Saving.
The solution is to install a DE. In antiX one can install extra DE’s alongside the default 12 WM’s , and one can swap between them.

I chose Xfce, because it is my personal favourite.
To install Xfce in antiX do the following

apt install consolekit
apt install libpam-ck-connector
apt install xfce4
apt install xfce4-goodies

Some documents recommend installing lightdm, but I have found that counterproductive. I am staying with the slimski Login Manager.

After that, on reboot, I can choose Xfce on the slimski screen, and I get a default raw Xfce DE, with absolutely nothing configured except Conky. I have a choice of RoxTerm or XfceTerminal as CLI windows.
It has 4 workspaces in the top panel, but the bottom panel is almost empty.
To configure an Xfce panel in antiX, there is no menu button … you right click on the panel , and go to Panel → Panel Preferences.
There I was able to add Firefox, Thunderbird, and Thunar , and I was able to add a cpu-monitor, network-monitor, and sensor-monitor on the right hand end.

At this stage Thunar will see files, but not internal partitions. To make internal filesystems visible to Thunar, one needs to do

apt install thunar-volman
put yourself in the plugdev and storage groups
apt install gvfs
apt install udisks2

Now, Thunar will be able to see internal filesystems, and they will also appear as icons on the background screen.
But, Thunar will still not be able to mount internal filesystems.

To fix the permissions problem mounting internal filesystems do one of the following

apt install lxpolkit
apt install lxsession

or

cd /etc/polkit-1/rules.d
vi 10-enable-mount.rules
add the following lines
polkit.addRule(function(action, subject) {
    if (action.id == "org.freedesktop.udisks2.filesystem-mount-system" &&
 subject.isInGroup("storage")) {
        return polkit.Result.YES;
}});
exit and save
groupadd storage
usermod -aG storage nevj
reboot

Then one can use

  • Thunar
  • DoubleClick on filesystem icons
  • udevil mount /dev/sdxx

as well as the options which work with IceWM

  • Disk Manager
  • sudo mount /dev/sdxx mountpoint

Xfce still needs some configuring.
The antiX menus do not contain xfce4-settings-manager… I have to start it at the CLI by typing

xfce4-settings-manager

Then I get a GUI for settings and I can do the folloowing

  • Window Manager → Focus → Focus follows mouse

  • Session and Startup → General → Automatically save session on logout
    I know this only works if I restart or shutdown via the GUI… a CLI restart does not save the current session.

  • Panel → Panel2 → Items
    I dont seem to be able to add items in this menu? OK I double click on Launcher and get a submenu where I can add Thunar.
    Repeat for Firefox.
    I want too add a new item to the end of the Panel. Use the add button on the main Panel menu. Add CPU graph, System Load Monitor, and Sensor PLugin.

  • Desktop → Background . It offers only Xfce backgrounds. I try to point it to /common/Backgrounds… it sees the images , but clicking on any image fails to make it the background.
    I also get a popup message “Unable to load images from folder “(null)” … Operation was cancelled”
    No success there.
    It is a known issue with Xfce4.20. None of the suggested workarounds work for me.

Conclusion

I have a working Xfce. There a couple of issues with

  • xfce4-settings-manager not in the menus
  • unable to change backgrounds.
    Neither of those stop it being a working DE.

I have noticed some more antiX utilities are not in the Xfce menu … specifically the Control Centre and the Logout are missing … and probably some others.
This needs investigating.

So you can have an Xfce DE in antiX26. I have also succesfully tried Enlightenment.

Appreciate your work, Nev. I’m getting used to zzzIcewm. Now, if you want a real challenge, how about Plasma?

I will try. I know very little about Plasma, but I may be about to learn.
There are a few Xfce issues to follow up. Xfce does not see all the menu items present in IceWM?

Thank you Bill , for the encouragement.

No, they are not missing
The Logout is hidden at the far right of the top panel under a button labelled ‘nevj’

logout

When you click on it you get
Lock screen, Switch user, Suspend, Shutdown, Logout
Then if you click Logout, you get the usual 6 choice popup
Logout, Restart, Shutdown, Suspend, Hibernate, Hybrid-sleep
Then if you select Shutdown, it does not shut down, it goes to the login manager … where you are supposed to type ‘halt’ as the user name and give the root password, but on doing that it still does not halt. There is no way to poweroff from a gui? You have to use CLI.

The Control Centre is here
Applications → System → Command Line Control Centre
but it is not the usual antiX GUIControl Centre … it seems to be a curses dialog window.?
I really want the excellent antiX GUI Control Centre?
I found that the binary is /usr/local/bin/antixcc.sh
So typing at CLI

antixcc.sh` 

brings up the Control Centre GUI.

There are heaps of binaries and scripts in /usr/local/bin.
Maybe I can find out how to add these to the Xfce menu’s?

I tried this

cd ~/.local/share/applications
ln -s  /usr/local/lib/antiX/antix26-desktop-files/reservoir/antiXCC.desktop antiXCC.desktop

Rebooted, and no item appeared in the menus.
Does anyone know how to do this?

I did some extra installs

apt install xfce4-panel-profiles xfce4-power-manager xfce4-power-manager-plugins xfce4-appmenu-plugin xfce4-windowck-plugin

All it seemed to achieve was getting rid of the error message popup about ConsoleKit.

@nevj :

Hi Neville, :waving_hand:

thanks for the 2nd part of your series on how to make antiX26 one´s daily driver.

Although quite an amount of tweaking is involved you can make it your daily companion for older machines. That is awesome.

You really put a lot of time and effort into investigating, checking and experimenting. Thanks a lot. It´s highly appreciated. :heart:

Many greetings from Rosika :slightly_smiling_face:

There is an antiXCC.desktop file in /usr/share/applications
but
Xfce does not seem to take notice of it?

I can add antixcc.sh to the menues manually
Go to Applications → Settings → Add a Menu Item
setup the following popup


Hit OK and I immediately get a ‘Antix Control Centre’ entry in
Applications → Settings
and it works , it brings up the Control Centre GUI

I still dont understan why I can add amenu item manually, but it does not happen automatically.
Is there maybe some list buried in xfce somewhere of allowed items?

There are heaps of .sh files in /usr/local/bin and Xfce does not make menu items for any of them?
They all have .desktop files in /usr/share/applications. I dont get it?

Update:
There is a file /etc/xdg/menus/xfce-applications.menu
It contains and statements that can permit or ban particular menu items. … but the file seems to bear no relation to my menus…I wonder if it is deprecated?

$ more xfce-applications.menu
<!DOCTYPE Menu PUBLIC "-//freedesktop//DTD Menu 1.0//EN"
  "http://www.freedesktop.org/standards/menu-spec/1.0/menu.dtd">

<Menu>
    <Name>Xfce</Name>

    <DefaultAppDirs/>
    <DefaultDirectoryDirs/>

    <Include>
        <Category>X-Xfce-Toplevel</Category>
    </Include>

    <Layout>
        <Filename>xfce4-run.desktop</Filename>
        <Separator/>
        <Filename>xfce4-terminal-emulator.desktop</Filename>
        <Filename>xfce4-file-manager.desktop</Filename>
        <Filename>xfce4-mail-reader.desktop</Filename>
        <Filename>xfce4-web-browser.desktop</Filename>
        <Separator/>
        <Menuname>Settings</Menuname>
        <Separator/>
        <Merge type="all"/>
        <Separator/>
        <Filename>xfce4-about.desktop</Filename>
        <Filename>xfce4-session-logout.desktop</Filename>
    </Layout>

    <Menu>
        <Name>Settings</Name>
......

That is for the top level menu… it goes on and on.
If an item is neither included or excluded ( my case) I dont know what happens.?

I had same problem on mint version but found a menu editor in mints repository to do it but it was more by guess than informed choice

Was it alacarte-xfce?
I considered trying that.
It seems changing the menu in Xfce is not as easy as in KDE .
Something for them to work on.

Sorry can’t remember it was the beginning of last summer too many computers have passed by since then

Think there were several options and I chose the one with best reviews but that was on mint so could be different

I have discovered antiX has a script
/usr/local/bin/add-desktop

nevj@trinity:/usr/local/bin
$ more add-desktop
#!/bin/bash
#Name: add-desktop
#Version: 1.4
#Author: Dave (david@daveserver.info)
#Purpose: Make and add .desktop files to the desktop, applications menu, or pers
onal menu
#License: gplv3

TEXTDOMAINDIR=/usr/share/locale
TEXTDOMAIN=add-desktop

function usage() {
    cat<<Usage
Usage: $0 [options] 

Add .desktop file to the desktop, personal, or the user's applications menu

Options:
    -h --help     Show this help
    -a --add    Add an item given the following information. Format:
                Name|Icon|Category|Exec|Location '1) Application Menu|2) Desktop
 Shortcut|3) Personal'|File Name|Terminal (True/False)|
    -e --edit   Edit / copy an item given the following information. Format:
                Name|Icon|Category|Exec|Location '1) Application Menu|2) Desktop
 Shortcut|3) Personal'|File Name|Terminal (True/False)|
    
Usage
}
.....

So, that is obviously the best way to manage Xfce menus in antiX.

I needed to fix this logout mess.
At the moment the only way to stop the computer is as root at the CLI

# poweroff
or
# reboot

The problem seems to be that antiX have fiddled with the shutdown command , so I had to configure slimski to use poweroff or reboot instead.
The file /et//slimski.local.conf was changes to

## Custom commands for systemhalt, login, etc. on antiX
##
##  SECURITY NOTE: the antiX as-shipped sudoers policy
##                 adds all user account into sudoers group
##                 AND grants ( via /etc/sudoers.d/antixers )
##                    %users ALL=(root) NOPASSWD: /usr/sbin/halt
##                    %users ALL=(root) NOPASSWD: /usr/sbin/poweroff
##                    %users ALL=(root) NOPASSWD: /usr/sbin/reboot
## so consider leaving blank these to-be-exposed-via-login-screen commands
systemhalt_enabled  true
#systemhalt_cmd  /usr/sbin/shutdown -h now
systemhalt_cmd  /usr/sbin/poweroff 
reboot_enabled      true
#reboot_cmd         /usr/sbin/shutdown -r now
reboot_cmd         /usr/sbin/reboot 
.....

and also the file /etc/dinit.d/slimski was changed to

type = process
command = /usr/bin/slimski -nodaemon  -i
logfile	= /tmp/slimski.log

depends-on = seatd

removing the -z option from slimski command.

Now, after a poweroff, I can exit from antiX by
Logout → Shutdown
then I get a Login Manager screen, and I can type

halt
root passwd

and it powers off, AND saves the session.

Similarly for reboot
Logout → Restart
and on the slimski screen

reboot
root passwd

This is all a consequence of someone thinking that it is not a good idea for users to be able to reboot or poweroff a machine. That is so in a multiuser environment, but in a home computer most distros allow the user to reboot or poweroff.

What antiX have done to shutdown command, I do not understand… but it simply does not work, not even at the CLI.

I should explain for people who have not used the SLiM login manager ( or its antiX slimski variant) that thd normal method of terminating linux in slim is to logout to the Login Manager screen, and then type ‘halt’ or ‘reboot’ as the user name, then give the root password. .
This prevents non-root users from terminating Linux.
SLiM is also default in Devuan, and is an option in most distros.

Hopefully, the last thing I need to fix with Xfce in antiX26 is setting the background image.
The ‘Desktop Settings’ item in the top Menu brings up some standard Xfce and antiX backgrounds, plus a message

Clicking on an image does nothing and I cant find a useful interpretation of the error message.
That is the default backgrounds directory
/usr/share/backgrounds/xfce
Using another directory with other images does not help … it sees the images but clicking on them does nothing.

I resorted to the CLI

$ DISPLAY=:0.0 fbsetbg /home/nevj/mourne1.jpg

and it set a background inside the Conky area, but not the main background ?

That is weird.
Is the Xfce background NOT the screen background? … except inside the Conky panel?

OK, I am beaten. Can anyone see what is wrong here?

It loses that on reboot … back to the standard Xfce background

When you get done, please make an iso. I have an old fleawatt notebook that needs it and it would be great not to have to start from scratch.

That is a good idea. Mine is 64 bit amd64. I dont have a 32 bit computer or an arm device.

@nevj

It’s an ancient N3150 Celeron, but it’s a 64 bit. Barely.

I decided to tackle the Desktop-Settings problem by doing another install of antiX26 in a VM.
I installed exactly the same packages as in my hard install
and
the Desktop Settings menu works … I can change backgrounds.

The only thing that is different between the hard install and the VM is that the hard install can see all my internal disk partitions … all these partitions list under Folder in the Desktop Settings menu. In the VM only nevj, Desktop, Filesystem, and xfce are listed.
Therefore
One or more of these partitions ( some of them are empty and it even lists the EFI partiton under Folder) must be disturbing the operation of the Desktop Settings menu.

I have therefore to experiment with removing some things ( eg gvfs or udisks2) from the hard install.

Debugging is never easy… especially debugging a GUI app.

I went back to the hard install of antiX26.
Purged gvfs
The only difference it made was that Desktop Settings GUI now only sees mounted filesystems under Folders.
but
It still could not change the background … and it still showed the message

So the unmounted empty partitions were not the cause of the problem.

There may me

  • something missing
  • something peculiar about my xfce install … I tried a complete purge and reinstall of xfce … not an install gliche
  • something related to using a real screen rather than the VM display window. … I have an amdgpu graphics card… I might try a hard install in my other computer.
  • maybe my xfce hard install had a gliche… I might try a complete hard install from scratch.

Debugging is never easy.
Any ideas are welcome.

I also have this error in a popup when I boot (with either xfce or IceWM)

GDBus.Error:org.freedesktop.ConsoleKit.Manager:Error.General:Unable to lookup session information for process’7803’

Googling that was not helpful.

I installed antiX26 again from scratch on a fresh partition.
I then did the following

  • set repo to our local aarnet site and apply
  • update/upgrade
  • apt install consolekit
  • apt install libpam-ck-connector
  • apt install xfce4
  • apt install xfce4-goodies
  • reboot and login to xfce

Then when I try Desktop Settings … it works … I can change backgrounds.
So
In the previous try , I must have installed some package that clashes when trying to debug other things

I now need to add other things like gvfs, udisks2, lxpolkit… and turn on session management, and see if anything clashes.

It looks like I may be able to make a fully working xfce after all.
It is lightening fast in the present lean state.

I have finished installing and configuring xfce4 in antix26.
I had a first trial at making an iso and using it to make a live usb flash drive.
I have 3 problems

  • the live usb boots in my uefi computer to a used called demo.. … but demo does not all tne xfce settings I made for nevj. I am going to have to make my personal settings global
  • The live usb does not boot in my legacy boot PC. I told it to include isolinux, but something is missing
  • the live usb does not have the normal antiX ‘gazelle’ installer … so it is no use for installing. That limits its usefulness.

Does anyone know how to get the installer program onto a live usb.?
I think I can cope with making xfce settings global.
Does anyone know the requirements for legacy boot from a usb drive?

I used the two antix utilities

  • iso-snapshot
  • live-usb-maker-gui