IceWM missing from Desktop|Other Desktops Menu

Tagged: 

  • This topic has 32 replies, 11 voices, and was last updated May 28-11:44 am by frogprince.
Viewing 15 posts - 16 through 30 (of 33 total)
  • Author
    Posts
  • #34267
    Moderator
    BobC
      Helpful
      Up
      0
      ::

      AR, did you do that under root via su or under sudo?

      • This reply was modified 3 years, 1 month ago by BobC.
      #34269
      Forum Admin
      anticapitalista
        Helpful
        Up
        0
        ::

        Works here.

        Philosophers have interpreted the world in many ways; the point is to change it.

        antiX with runit - leaner and meaner.

        #34274
        Forum Admin
        anticapitalista
          Helpful
          Up
          0
          ::

          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.

          #34312
          Member
          AR
            Helpful
            Up
            0
            ::

            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.
            #34315
            Moderator
            Brian Masinick
              Helpful
              Up
              0
              ::

              I double checked and when I reinstall desktop-session-antix it definitely works.

              --
              Brian Masinick

              #36269
              Moderator
              BobC
                Helpful
                Up
                0
                ::

                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?

                #36270
                Moderator
                BobC
                  Helpful
                  Up
                  0
                  ::

                  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.
                  #36272
                  Moderator
                  Brian Masinick
                    Helpful
                    Up
                    0
                    ::

                    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 Masinick

                    #36274
                    Moderator
                    Brian Masinick
                      Helpful
                      Up
                      0
                      ::

                      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 Masinick

                      #36280
                      Moderator
                      BobC
                        Helpful
                        Up
                        0
                        ::

                        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.

                        #36289
                        Moderator
                        Brian Masinick
                          Helpful
                          Up
                          0
                          ::

                          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 Masinick

                          #36290
                          Moderator
                          BobC
                            Helpful
                            Up
                            0
                            ::

                            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.
                            #36297
                            Moderator
                            BobC
                              Helpful
                              Up
                              0
                              ::

                              That only run if the last modified date of the folder is newer than the files, therefore lighten triggers it when installed.

                              #36299
                              Moderator
                              Brian Masinick
                                Helpful
                                Up
                                0
                                ::

                                Makes sense.

                                Sounds like you are figuring out the behavior. Nice work!

                                --
                                Brian Masinick

                                #36322
                                Forum Admin
                                Dave
                                  Helpful
                                  Up
                                  0
                                  ::

                                  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

                                  Indeed 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

                                Viewing 15 posts - 16 through 30 (of 33 total)
                                • You must be logged in to reply to this topic.