Forum › Forums › General › Tips and Tricks › Downgrade Debian Sid to Bookworm without Losing XFCE 4.20
- This topic has 18 replies, 5 voices, and was last updated Aug 29-3:05 pm by 032_hsn.
-
AuthorPosts
-
May 19, 2025 at 5:03 pm #177406
anticapitalX
MemberI started from fresh respin created by @calciumsodium .
in this particular respin xfce4 version 4.20 has installed .
in the moment xfce4 version 4.20 is not available in bookworm .
what I wanted was to switch repos to bookworm while keeping XFCE version 4.20 .
Switching from Debian Sid to Bookworm while keeping XFCE 4.20 requires careful repository changes and package pinning. Follow these steps to downgrade safely.1-Update Repositories to Bookworm
Edit the following files, by commenting sid repos , and uncommenting bookworm ones:
/etc/apt/sources.list.d/antix.list
/etc/apt/sources.list.d/debian.list
/etc/apt/sources.list.d/debian-stable-updates.list2- Pin XFCE 4.20 Packages
this part is actually does the hack .
Create a preferences file to keep XFCE 4.20:
sudo nano /etc/apt/preferences.d/xfce-sid
add the following text :Package: xfce4* Pin: release a=sid Pin-Priority: 1001 Package: libxfce4* Pin: release a=sid Pin-Priority: 1001 Package: thunar* Pin: release a=sid Pin-Priority: 1001 Package: xfwm4* Pin: release a=sid Pin-Priority: 1001 Package: exo* Pin: release a=sid Pin-Priority: 1001 Package: garcon* Pin: release a=sid Pin-Priority: 10013-Update and Downgrade :
sudo apt updateSimulate the downgrade:
sudo apt full-upgrade -scheck the output , and if acceptable :
sudo apt full-upgrade4- Hold Critical Packages
this step is kinda optional .
sudo apt-mark hold xfce4-panel xfwm4 xfce4-session xfce4-settings thunarImportant Notes
1-Backup Your System: Always create a full system backup before making significant changes like downgrading repositories.
2-Downgrade Risks: Moving from Sid to Bookworm is a downgrade and may cause dependency issues or other conflicts.
3-Additional Packages: You may need to pin additional XFCE-related packages in the preferences file if dependencies arise.
4-Dependency Errors: If you encounter dependency issues, consider adding related XFCE packages to the preferences file.This method should allow you to transition your system to the stable Bookworm release while keeping XFCE 4.20 intact.
Feel free to share any issues or questions in the replies below!- This topic was modified 1 year, 4 months ago by anticapitalX.
Let's accept antiX as it is
Pure and Elegant by its natureMay 19, 2025 at 5:39 pm #177417Anonymous
2- Pin XFCE 4.20 Packages
this part is actually does the hack .
Create a preferences file to keep XFCE 4.20:
sudo nano /etc/apt/preferences.d/xfce-sid
add the following text :Package: xfce4* Pin: release a=sid Pin-Priority: 1001 Package: libxfce4* Pin: release a=sid Pin-Priority: 1001 Package: thunar* Pin: release a=sid Pin-Priority: 1001 Package: xfwm4* Pin: release a=sid Pin-Priority: 1001 Package: exo* Pin: release a=sid Pin-Priority: 1001 Package: garcon* Pin: release a=sid Pin-Priority: 10013-Update and Downgrade :
Good job @anticapitalX,
How did you figure this part out?
May 20, 2025 at 1:48 am #177434anticapitalX
Memberthere is this file
/etc/apt/preferences.d/00systemd
present in the apt preferences, which prevents systemd installation by setting pin priority to -1 .
i got some inspiration by that , then I had to read apt hold and other apt documentations to figure out how to do the opposite.
finally I had to find xfce depends and rdepends, and pin them out .
I got some lucky this time xorg didn’t break .
you may add xorg* also to the configuration file , although I didn’t need to do that.Let's accept antiX as it is
Pure and Elegant by its natureMay 20, 2025 at 3:05 am #177439anticapitalX
Memberby doing this , now I have a stable bookworm antiX , which I managed to keep latest xfce from sid .
although 1 package is confusing me .
see the output bellow and help me .
thank youmaster@master-pc:~ $ sudo apt update [sudo] password for master: Hit:1 http://mirror.neolabs.kz/mx/packages/antix/bookworm bookworm InRelease Get:2 http://ftp.us.debian.org/debian bookworm-updates InRelease [55.4 kB] Get:3 http://security.debian.org bookworm-security InRelease [48.0 kB] Hit:4 http://ftp.am.debian.org/debian bookworm InRelease Fetched 103 kB in 8s (13.0 kB/s) Reading package lists... Done Building dependency tree... Done Reading state information... Done 1 package can be upgraded. Run 'apt list --upgradable' to see it. master@master-pc:~ $ apt list --upgradable Listing... Done desktop-menu-antix/bookworm,bookworm 0.2.3 all [upgradable from: 0.1.12] N: There are 2 additional versions. Please use the '-a' switch to see them. master@master-pc:~ $ apt list --upgradable -a Listing... Done desktop-menu-antix/bookworm,bookworm 0.2.3 all [upgradable from: 0.1.12] desktop-menu-antix/now 0.1.12 all [installed,upgradable to: 0.2.3] desktop-menu-antix/bookworm,bookworm 0.1.0 all master@master-pc:~ $ sudo apt upgrade Reading package lists... Done Building dependency tree... Done Reading state information... Done Calculating upgrade... Done The following packages have been kept back: desktop-menu-antix 0 upgraded, 0 newly installed, 0 to remove and 1 not upgraded. master@master-pc:~ $ inxi -r Repos: Active apt repos in: /etc/apt/sources.list.d/antix.list 1: deb [signed-by=/etc/apt/keyrings/antix-archive-keyring.gpg] http://mirror.neolabs.kz/mx/packages/antix/bookworm bookworm main nonfree nosystemd No active apt repos in: /etc/apt/sources.list.d/bookworm-backports.list Active apt repos in: /etc/apt/sources.list.d/debian-stable-updates.list 1: deb http://ftp.us.debian.org/debian/ bookworm-updates main contrib non-free non-free-firmware Active apt repos in: /etc/apt/sources.list.d/debian.list 1: deb http://ftp.am.debian.org/debian/ bookworm main contrib non-free non-free-firmware 2: deb http://security.debian.org/ bookworm-security main contrib non-free non-free-firmware No active apt repos in: /etc/apt/sources.list.d/google-chrome.list No active apt repos in: /etc/apt/sources.list.d/librewolf.list No active apt repos in: /etc/apt/sources.list.d/liquorix.list master@master-pc:~ $Let's accept antiX as it is
Pure and Elegant by its natureMay 20, 2025 at 7:02 am #177442Anonymous
The following packages have been kept back:
desktop-menu-antix
0 upgraded, 0 newly installed, 0 to remove and 1 not upgraded.Hello @anticapitalX,
Thanks for sharing how you kept the sid xfce 4.20 in bookworm system.
As for your issue with desktop-menu-antix package,
I see several options.
1. If you are happy with your system, leave it alone.
2. If you want to see if you want to fix it,
2a. first make a snapshot of your system before making the fix.
That way, you have a system to go back to if the fix messes things up.
2b. See if you can download the higher version of desktop-menu-antix package.
2c. Then manually install this higher version using:
sudo dpkg -i desktop-menu-antix_0.2.3_all.deband see if it will install the newer version.
3. I was reading at this reference:
In it, there was this fix:
sudo apt-get install aptitude sudo aptitude safe-upgradeI don’t know if it will work, perhaps you can also give this a try.
4. You could also try:
apt-get install --only-upgrade <kept-back-package-name>to upgrade a specific package and its dependencies.
There may be other ways.
Let us know what works or does not work.
May 20, 2025 at 11:05 pm #177520anticapitalX
Memberhere is proposed two candidates :
sudo apt policy desktop-menu-antix desktop-menu-antix: Installed: 0.1.12 Candidate: 0.2.3 Version table: 0.2.3 500 500 http://mirror.neolabs.kz/mx/packages/antix/bookworm bookworm/main amd64 Packages 500 http://mirror.neolabs.kz/mx/packages/antix/bookworm bookworm/main i386 Packages *** 0.1.12 100 100 /var/lib/dpkg/status 0.1.0 500 500 http://mirror.neolabs.kz/mx/packages/antix/bookworm bookworm/nosystemd amd64 Packages 500 http://mirror.neolabs.kz/mx/packages/antix/bookworm bookworm/nosystemd i386 PackagesI tried @calcuimsodium suggestion to –only-upgrade :
sudo apt install --only-upgrade desktop-menu-antix Reading package lists... Done Building dependency tree... Done Reading state information... Done Some packages could not be installed. This may mean that you have requested an impossible situation or if you are using the unstable distribution that some required packages have not yet been created or been moved out of Incoming. The following information may help to resolve the situation: The following packages have unmet dependencies: python3-apt : Depends: python3 (< 3.12) but 3.13.3-1 is to be installed E: Unable to correct problems, you have held broken packages.It says I have unmet dependencies .
so I guess by downloading .deb and installing it , I still have this issue .I checked whether if I marked this package in hold list . seems no packages in the hold list .
master@master-pc:~ $ apt-mark showhold master@master-pc:~ $I think I don’t need desktop-menu-antiX much , because I am already using XFCE .
so I may skip this package at this time , unless someone has a better (safe) solution for this .Let's accept antiX as it is
Pure and Elegant by its natureJune 1, 2025 at 11:06 pm #178432anticapitalX
Memberin a new test , I commented everything in my sources files :
/etc/apt/sources.list.d/antix.list /etc/apt/sources.list.d/debian.list /etc/apt/sources.list.d/debian-stable-updates.listadding these lines in the above files by order :
deb [signed-by=/etc/apt/keyrings/antix-archive-keyring.gpg] https://mxlinux.grena.ge/mxlinux/antix/bookworm bookworm main nonfree nosystemd deb http://ftp.am.debian.org/debian/ bookworm main contrib non-free non-free-firmware deb http://security.debian.org/ bookworm-security main contrib non-free non-free-firmware deb http://ftp.am.debian.org/debian/ bookworm-updates main contrib non-free non-free-firmwarethen I created this file , with this content :
sudo nano /etc/apt/preferences.d/xfce-sid : Package: xfce4* Pin: release a=sid Pin-Priority: 1001 Package: libxfce4* Pin: release a=sid Pin-Priority: 1001 Package: thunar* Pin: release a=sid Pin-Priority: 1001 Package: xfwm4* Pin: release a=sid Pin-Priority: 1001 Package: exo* Pin: release a=sid Pin-Priority: 1001 Package: garcon* Pin: release a=sid Pin-Priority: 1001 Package: xorg* Pin: release a=sid Pin-Priority: 1001then run sudo apt update , sudo apt upgrade , ….
in the upgrade process , some settings needed my input :
Configuration file '/etc/connman/main.conf' ==> Modified (by you or by a script) since installation. ==> Package distributor has shipped an updated version. What would you like to do about it ? Your options are: Y or I : install the package maintainer's version N or O : keep your currently-installed version D : show the differences between the versions Z : start a shell to examine the situation The default action is to keep your current version. *** main.conf (Y/I/N/O/D/Z) [default=N] ? N Configuration file '/etc/skel/.icewm/menu' ==> Modified (by you or by a script) since installation. ==> Package distributor has shipped an updated version. What would you like to do about it ? Your options are: Y or I : install the package maintainer's version N or O : keep your currently-installed version D : show the differences between the versions Z : start a shell to examine the situation The default action is to keep your current version. *** menu (Y/I/N/O/D/Z) [default=N] ? N Configuration file '/etc/skel/.icewm/menu-numix-bevel' ==> Modified (by you or by a script) since installation. ==> Package distributor has shipped an updated version. What would you like to do about it ? Your options are: Y or I : install the package maintainer's version N or O : keep your currently-installed version D : show the differences between the versions Z : start a shell to examine the situation The default action is to keep your current version. *** menu-numix-bevel (Y/I/N/O/D/Z) [default=N] ? Y Installing new version of config file /etc/skel/.icewm/menu-numix-bevel ... Configuration file '/etc/skel/.icewm/menu-numix-square' ==> Modified (by you or by a script) since installation. ==> Package distributor has shipped an updated version. What would you like to do about it ? Your options are: Y or I : install the package maintainer's version N or O : keep your currently-installed version D : show the differences between the versions Z : start a shell to examine the situation The default action is to keep your current version. *** menu-numix-square (Y/I/N/O/D/Z) [default=N] ? Y Installing new version of config file /etc/skel/.icewm/menu-numix-square ... Configuration file '/etc/skel/.icewm/menu-papirus' ==> Modified (by you or by a script) since installation. ==> Package distributor has shipped an updated version. What would you like to do about it ? Your options are: Y or I : install the package maintainer's version N or O : keep your currently-installed version D : show the differences between the versions Z : start a shell to examine the situation The default action is to keep your current version. *** menu-papirus (Y/I/N/O/D/Z) [default=N] ? Yafter that I still had
2 packages can be upgraded. Run 'apt list --upgradable' to see them. $ apt list --upgradable Listing... Done control-centre-antix/bookworm,bookworm 1.2.7 all [upgradable from: 1.1.9] desktop-menu-antix/bookworm,bookworm 0.2.3 all [upgradable from: 0.1.12]still desktop menu antix could not be resolved by running :
$ sudo apt install --only-upgrade desktop-menu-antix Reading package lists... Done Building dependency tree... Done Reading state information... Done Some packages could not be installed. This may mean that you have requested an impossible situation or if you are using the unstable distribution that some required packages have not yet been created or been moved out of Incoming. The following information may help to resolve the situation: The following packages have unmet dependencies: python3-apt : Depends: python3 (< 3.12) but 3.13.3-1 is to be installed E: Unable to correct problems, you have held broken packages.but for control-centre-antix it worked .
$ sudo apt install --only-upgrade control-centre-antix Reading package lists... Done Building dependency tree... Done Reading state information... Done The following additional packages will be installed: antix-pdm Recommended packages: artwork17-antix | artwork-19-antix arc-theme packageinstaller-pkglist connectshares-antix ceni mountbox-antix droopy-antix repo-manager codecs-antix set-screen-blank-antix grsync inxi-gui-antix The following packages will be REMOVED: ds-mouse-antix The following NEW packages will be installed: antix-pdm The following packages will be upgraded: control-centre-antix 1 upgraded, 1 newly installed, 1 to remove and 1 not upgraded. Need to get 627 kB of archives. After this operation, 27.6 kB of additional disk space will be used. Do you want to continue? [Y/n] ynow this is my output :
$ sudo apt install --only-upgrade control-centre-antix Reading package lists... Done Building dependency tree... Done Reading state information... Done The following additional packages will be installed: antix-pdm Recommended packages: artwork17-antix | artwork-19-antix arc-theme packageinstaller-pkglist connectshares-antix ceni mountbox-antix droopy-antix repo-manager codecs-antix set-screen-blank-antix grsync inxi-gui-antix The following packages will be REMOVED: ds-mouse-antix The following NEW packages will be installed: antix-pdm The following packages will be upgraded: control-centre-antix 1 upgraded, 1 newly installed, 1 to remove and 1 not upgraded. Need to get 627 kB of archives. After this operation, 27.6 kB of additional disk space will be used. Do you want to continue? [Y/n] y .... 1 package can be upgraded. Run 'apt list --upgradable' to see it. master@master-pc:~ $ apt list --upgradable Listing... Done desktop-menu-antix/bookworm,bookworm 0.2.3 all [upgradable from: 0.1.12] N: There are 2 additional versions. Please use the '-a' switch to see them. master@master-pc:~ $ apt list --upgradable -a Listing... Done desktop-menu-antix/bookworm,bookworm 0.2.3 all [upgradable from: 0.1.12] desktop-menu-antix/now 0.1.12 all [installed,upgradable to: 0.2.3] desktop-menu-antix/bookworm,bookworm 0.1.0 allI am pretty happy to manage to keep xfce4.20 in a bookworm system .
do you have any comments or suggesstion , on how can I be sure everything works and is stable??- This reply was modified 1 year, 3 months ago by anticapitalX.
Let's accept antiX as it is
Pure and Elegant by its natureJune 2, 2025 at 7:01 am #178448Anonymous
The following packages have unmet dependencies:
python3-apt : Depends: python3 (< 3.12) but 3.13.3-1 is to be installed
E: Unable to correct problems, you have held broken packages.I am pretty happy to manage to keep xfce4.20 in a bookworm system .
do you have any comments or suggesstion , on how can I be sure everything works and is stable??Hello @anticapitalX,
Without seeing a snapshot of your system, my guess is that you still have remnants of python3.13 on your XFCE Trixie/Sid that was downgraded to Bookworm.
There probably is still something in the /lib/python3.13 folder?
How to know if your downgraded python3 works? Play a youtube video using mpv.
This requires yt-dlp, which requires python3.
If it works, then your python3 works.
My opinion is if everything works for your needs, then leave it alone.
Soon, antiX25 Trixie stable will be available.
Then you can have XFCE 4.20 on a stable Trixie with a stable python 3.13.
In my tests, python 3.13 is more efficient than python 3.11 (present in bookworm) for playing youtube videos.
August 27, 2025 at 10:36 am #184554
spacemanMemberCould I used this approach to install Xfce on a Debian Stable version of antiX?
Is this method intended exactly for that? Should I follow the steps above precisely, (in short) enabling the SID repos, installing Xfce4 from said repos, making sure apt ignores Xfce (apart from upgrades?) and then disabling the SID repos (and keeping Xfce4 4.20)?
Didn’t want to misapply this and get myself into a mess (again). :
~ ASUS ROG Crosshair VIII Hero ~ AMD Ryzen 7 3700X 8-Core ~ Corsair Dominator Platinum 32 GB RAM ~ M.2 SSD Samsung NVMe Evo 970 Plus 500GB ~ SSD Samsung Evo 860 500GB ~ NVIDIA Geforce GTX 1650 Super ~
Between social reforms and revolution there exists for the social democracy an indissoluble tie. The struggle for reforms is its means; the social revolution, its aim.
August 27, 2025 at 11:44 am #184560anticapitalX
MemberCould I used this approach to install Xfce on a Debian Stable version of antiX?
Is this method intended exactly for that? Should I follow the steps above precisely, (in short) enabling the SID repos, installing Xfce4 from said repos, making sure apt ignores Xfce (apart from upgrades?) and then disabling the SID repos (and keeping Xfce4 4.20)?
Didn’t want to misapply this and get myself into a mess (again). :
@spaceman, your question is about a different and more complex scenario than what my original method addresses.
What my method did:
– Started with a Debian Sid system that already had XFCE 4.20 installed
– Downgraded the base system to Bookworm while keeping XFCE 4.20 pinned to SidWhat you’re asking about:
– Starting with a stable Bookworm antiX (likely without XFCE)
– Adding XFCE 4.20 from Sid repos to that stable systemWhy this is significantly more risky:
1. Dependency conflicts: Installing XFCE 4.20 from Sid on a Bookworm base will pull in many Sid dependencies (libraries, X11 components, etc.), which could destabilize your entire system.
2. Mixed system complications: You’ll have a hybrid system that’s much harder to manage and troubleshoot than what I achieved.
3. Future update problems: System updates could become problematic as apt tries to resolve conflicts between Bookworm and Sid packages.
My recommendations:
1. Wait for antiX 25: This is honestly your safest bet. antiX 25 will be based on Debian Trixie and include XFCE 4.20 natively – no hacks needed.
2. Test first: If you absolutely must try this, do it in a VM with snapshots first.
3. Full backup: If proceeding on real hardware, create complete system backups before starting.
My method worked because I was downgrading from a complete Sid installation. What you’re proposing is upgrading specific components on a stable base, which is inherently much riskier.
I’d strongly suggest waiting for antiX 25 stable rather than risking the “mess” you mentioned wanting to avoid.
Let's accept antiX as it is
Pure and Elegant by its natureAugust 27, 2025 at 4:05 pm #184564
spacemanMember@anticapitalX Thank you for your reply! This is exactly why I asked. Incidentally you had me at:
1. Dependency conflicts…
😀 ta
- This reply was modified 1 year ago by spaceman.
- This reply was modified 1 year ago by spaceman.
~ ASUS ROG Crosshair VIII Hero ~ AMD Ryzen 7 3700X 8-Core ~ Corsair Dominator Platinum 32 GB RAM ~ M.2 SSD Samsung NVMe Evo 970 Plus 500GB ~ SSD Samsung Evo 860 500GB ~ NVIDIA Geforce GTX 1650 Super ~
Between social reforms and revolution there exists for the social democracy an indissoluble tie. The struggle for reforms is its means; the social revolution, its aim.
August 27, 2025 at 7:20 pm #184573anticapitalX
Member@anticapitalX Thank you for your reply! This is exactly why I asked. Incidentally you had me at:
1. Dependency conflicts…
😀 ta
@spaceman
Mixing repositories will almost always create dependency conflicts. The entire idea behind my original topic was demonstrating the pinning method for package management, but this approach has significant limitations.With antiX 25 coming soon (based on Trixie), there might be very specific cases where someone needs an older version of a package from Bookworm. In such cases, a pinning file might look something like this:
# /etc/apt/preferences.d/package-bookworm Package: package-name* Pin: release a=bookworm Pin-Priority: 1001 Package: libpackage-name* Pin: release a=bookworm Pin-Priority: 1001But again, this approach is not good and I don’t recommend it.
Actually, due to the problems, I stopped using the mixed system altogether. I installed antiX 23.2 full instead.
My Current Setup :
In the icewm environment, I discovered I only needed to install xfce4-panel. That’s literally all I wanted from XFCE – just the panel functionality.The reality is that antiX’s window managers provide all the capabilities of a complete desktop environment. The panel capabilities in icewm and jwm are limited (fluxbox might offer a bit more panel functionality, though I haven’t tested it extensively). herbstluftwm doesn’t provide a panel at all.
Since I wanted the XFCE panel specifically, I installed just that component. Then I made these modifications:
1. Set winkeys95=0 to be able to map the Super button to launch the XFCE whisker menu
2. Created XFCE-like keyboard shortcuts through icewm configuration files
3. Completely hid the icewm panelNow using this system feels exactly like XFCE:
– Pressing Super shows the XFCE panel
– I have all the XFCE shortcuts I’m used to
– The icewm panel is completely hidden
– All the stability of antiX 23.2 with just the XFCE panel component I actually neededThis approach is much cleaner, more stable, and achieves the same user experience without the complexity and risks of mixed repositories.
Sometimes the solution isn’t getting the latest version of everything, but rather identifying exactly what you need and implementing it cleanly on a stable base.
Let's accept antiX as it is
Pure and Elegant by its natureAugust 28, 2025 at 9:11 am #184587032_hsn
MemberHi @anticapital,
Unfortunately, I don’t have time to read your last
sentences right now. But I read the beginning with interest earlier!I think you chose too difficult a path for installing XFCE4 in antiX.
This desktop can be installed in antiX today in a different, much
more convenient way. This is thanks to @calciumsodium, as you know.Of course, it’s quite possible that you like to experiment and
don’t have any problems with it. However, if you wanted to
take the easier route, i.e., install the XFCE desktop
on Testing 25.1a full runit, I would write to you
how. However, it wouldn’t be in English, and you would have to
translate it in DeepL. That’s what we poor people
elsewhere in the world do, who didn’t have good teachers and
also have old hardware.Greetings
August 28, 2025 at 11:06 am #184592anticapitalX
MemberHowever, it wouldn’t be in English, and you would have to
translate it in DeepL.Hi there!
Thank you for mentioning the easier path! You’re absolutely right that I tend to choose the experimental route – I enjoy testing different approaches even when simpler solutions exist.
I’d be very interested to learn about the method you mentioned for installing XFCE desktop on Testing 25.1a full runit.
Please go ahead and post the instructions in your language – I’m perfectly comfortable using translation tools like DeepL. That’s what we do when we want to share knowledge across language barriers!I’m particularly hoping that the resulting system will be very stable and efficient, especially for handling mount/unmount/unplug operations with flash drives and external hard drives. These are daily tasks that need to work reliably.
Please share your method – I’d love to try the simpler approach and compare the results. Sometimes the straightforward path is indeed the better one.
Looking forward to your instructions!
Let's accept antiX as it is
Pure and Elegant by its natureAugust 28, 2025 at 12:16 pm #184602farmer
MemberanticapitalX wrote:
1. Set winkeys95=0 to be able to map the Super button to launch the XFCE whisker menu
2. Created XFCE-like keyboard shortcuts through icewm configuration files
3. Completely hid the icewm panelCan you show please steps how you do this ?
Regards .
-
AuthorPosts
- You must be logged in to reply to this topic.