Forum › Forums › Official Releases › antiX-19 “Marielle Franco, Hannie Schaft, Manolis Glezos, Grup Yorum, Wobblies” › IceWM missing from Desktop|Other Desktops Menu
Tagged: icewm space
- This topic has 32 replies, 11 voices, and was last updated May 28-11:44 am by frogprince.
-
AuthorPosts
-
April 2, 2020 at 6:12 pm #34267Moderator
BobC
::AR, did you do that under root via su or under sudo?
- This reply was modified 3 years, 1 month ago by BobC.
April 3, 2020 at 12:35 am #34269Forum Admin
anticapitalista
::Works here.
Philosophers have interpreted the world in many ways; the point is to change it.
antiX with runit - leaner and meaner.
April 3, 2020 at 2:18 am #34274Forum Admin
anticapitalista
::For others who may see this issue could they try running as root (note that the force option is a double dash)
/usr/local/lib/desktop-session/desktop-session-update-wm-menus –force
Before reinstalling desktop-session-antix to see if this works or what errors may appear?If no errors show and the menu is still not fixed after reloading the window manager/menu could you try the same command but run as the regular user?
Running as root (or sudo) – doesn’t fix the Other Desktop extra entries.
Running as user – gives error – must be run as root
Seems only sudo apt install –reinstall desktop-session-antix fixes it.
Philosophers have interpreted the world in many ways; the point is to change it.
antiX with runit - leaner and meaner.
April 3, 2020 at 1:14 pm #34312MemberAR
::I’m sorry, that was my fault. In terminal I mistyped
sudo apt install --reinstall icewm
instead
sudo apt install --reinstall desktop-session-antix
The last really works.
Thank you, BobC and anticapitalista!- This reply was modified 3 years, 1 month ago by AR.
April 3, 2020 at 3:06 pm #34315Moderator
Brian Masinick
::I double checked and when I reinstall desktop-session-antix it definitely works.
--
Brian MasinickMay 25, 2020 at 10:07 am #36269ModeratorBobC
::Dave, This happened again to me, but I noticed it after I installed lightdm, not sure if it was happening before that or not. It was writing the files, but when I turn on verbose, I see that its writing the file wrong. It refuses to run as the user.
For others who may see this issue could they try running as root (note that the force option is a double dash)
/usr/local/lib/desktop-session/desktop-session-update-wm-menus –force
Before reinstalling desktop-session-antix to see if this works or what errors may appear?If no errors show and the menu is still not fixed after reloading the window manager/menu could you try the same command but run as the regular user?
May 25, 2020 at 12:35 pm #36270ModeratorBobC
::I’m no expert, but it looks like the problem is in /usr/local/lib/desktop-session/desktop-session-update-wm-menus, in the 2nd grep line below, IceWM lines get removed. If I remove that line, I get some duplications, which I recall happening at one point, and I suspect that the fix for that wasn’t quite right.
raw_wm_list() { grep -h ^Name= $xs_dir/*.desktop \ | sed -r -e 's/^Name=//' -e 's/ (desktop|session)$//i' -e 's/ +/_/g' \ | grep -v "IceWM" \ | sort -f }PS: and yes, anti’s fix as root did get it back to normal
apt-get install --reinstall desktop-session-antix- This reply was modified 2 years, 11 months ago by BobC.
May 25, 2020 at 2:56 pm #36272Moderator
Brian Masinick
::I’ll take a close look at the syntax you shared.
We know that the “fix” resolves the problem, but you may be correct about the source of the original issue. The use of ^ and the send substitutions should be carefully evaluated.
If I can get the time I will investigate.
Meanwhile those of you with “quick minds” can look at the syntax of grep, sed, and the precise meaning of each regular expression, including the order in which the substitutions actually take place. Getting not only the general syntax correct, but also the order in which each component of the entire command takes place will ultimately lead to the correct solution, whether I find it or someone who “gets it” quicker and more accurately, that is what will lead to a proper solution.
- This reply was modified 2 years, 11 months ago by Brian Masinick.
--
Brian MasinickMay 25, 2020 at 3:07 pm #36274Moderator
Brian Masinick
::Separating the commands and running some tests on each, then piecing them together, piece by piece, should help determine the “presidence” of operations.
They should be consistent with regular expression presidence unless there are defects in that component.
My guess is that the use of (.. ) in the right places, possibly adding more of them to insist on a particular order, would be one possible way to solve the problem. Another solution would be to adjust the order and location of the arguments to achieve the desired results. A third way to isolate this is to separate each argument, print out each argument value and then perform the final operation on each binary or string value.
Again, exhaustive hand testing of each argument, then retesting the arguments together (adding intermediate variables to see the values) will assist in finding how each expression actually works.
- This reply was modified 2 years, 11 months ago by Brian Masinick.
- This reply was modified 2 years, 11 months ago by Brian Masinick.
--
Brian MasinickMay 25, 2020 at 4:10 pm #36280ModeratorBobC
::When I get back to my other machine I will post the code I created to debug the situation. I don’t think just taking that line out will fix it, but rather will result in the original problem reappearing. My guess is that its actually a logic problem in that elsewhere in the code the list is expanded resulting in some duplicates. You can see that from the sequence of the generated entries. Btw, installing liggtdm appeared to cause the situation, but I think with the existing code IceWM menu options will be omitted whenever it gets run.
May 25, 2020 at 5:40 pm #36289Moderator
Brian Masinick
::One of the expressions had (desktop|session) or something like that.
IceWM-session and Lightdm-session may be two of the choices (or something similar). Installing Lightdm probably affected that logic, so rerunning the desktop session setup for IceWM would fix the menu to include IceWM again.
Sound reasonable?
- This reply was modified 2 years, 11 months ago by Brian Masinick.
--
Brian MasinickMay 25, 2020 at 5:41 pm #36290ModeratorBobC
::Here is the debugging code. I have problems at 201, but you can see the flow well enough…
Yes, running anti’s solution did fix it temporarily, but its back to being messed up. Yes, I think that directory is supposed to be for the entries that will appear, but only some do. I haven’t figured out the why’s for which do vs don’t, and the only way I found to get icewm to work was to go hack the .desktop to make it run icewm-session
- This reply was modified 2 years, 11 months ago by BobC.
Attachments:
May 25, 2020 at 8:20 pm #36297ModeratorBobC
::That only run if the last modified date of the folder is newer than the files, therefore lighten triggers it when installed.
May 25, 2020 at 8:22 pm #36299Moderator
Brian Masinick
::Makes sense.
Sounds like you are figuring out the behavior. Nice work!
--
Brian MasinickMay 26, 2020 at 5:58 am #36322Forum Admin
Dave
::I’m no expert, but it looks like the problem is in /usr/local/lib/desktop-session/desktop-session-update-wm-menus, in the 2nd grep line below, IceWM lines get removed. If I remove that line, I get some duplications, which I recall happening at one point, and I suspect that the fix for that wasn’t quite right.
raw_wm_list() { grep -h ^Name= $xs_dir/*.desktop \ | sed -r -e 's/^Name=//' -e 's/ (desktop|session)$//i' -e 's/ +/_/g' \ | grep -v "IceWM" \ | sort -f }PS: and yes, anti’s fix as root did get it back to normal
apt-get install --reinstall desktop-session-antixIndeed you are correct with this section of code filtering out IceWM. It used to be that there where duplicate menu entries. This was caused by the existence of two .desktop files for IceWM in the /usr/share/xsessions directory. One was named icewm.desktop another icewm-session.desktop. In the icewm.desktop file the line was set to Name=icewm, whereas in the icewm-session.desktop file the line was set to Name=IceWM. So filtering the one out fixed it. Could you make a tarball of your /usr/share/xsessions directory to look at? I noticed in another lightdm thread that you also said that the extra “session” .desktop files where also there.
Computers are like air conditioners. They work fine until you start opening Windows. ~Author Unknown
-
AuthorPosts
- You must be logged in to reply to this topic.