elogind bugreport

Tagged: 

  • This topic has 9 replies, 3 voices, and was last updated Mar 10-4:46 am by Anonymous.
Viewing 10 posts - 1 through 10 (of 10 total)
  • Author
    Posts
  • #7527
    Anonymous

      Problem:
      Unfortunately elogind package misses the appropriate hook to initramfs. That leads to absence of seats support on boot. Which in turn leads to completely non-working plymouth and partialy non-working lightdm. So, the last one lets users to login, but rejects their attempts to end session or switch to another account. Maybe something else is affected, I dunno exactly.

      Solution;
      Please, have a look on attached file, it’s pretty self-explanatory.

      UPD. Smth. wrong wth. attaches here. Well, I’ll put patch file content here in plain text:

      
      diff -ruN elogind-234.4.2.bak/debian/elogind.install elogind-234.4.2/debian/elogind.install
      --- elogind-234.4.2.bak/debian/elogind.install	2018-01-10 20:10:56.000000000 +0200
      +++ elogind-234.4.2/debian/elogind.install	2018-03-08 14:53:48.033286410 +0200
      @@ -15,3 +15,4 @@
       usr/share/man/man8/elogind.8
       usr/share/polkit-1/
       usr/share/zsh/
      +debian/extra/initramfs.hook/elogind /usr/share/initramfs-tools/hooks/
      diff -ruN elogind-234.4.2.bak/debian/extra/initramfs.hook/elogind elogind-234.4.2/debian/extra/initramfs.hook/elogind
      --- elogind-234.4.2.bak/debian/extra/initramfs.hook/elogind	1970-01-01 03:00:00.000000000 +0300
      +++ elogind-234.4.2/debian/extra/initramfs.hook/elogind	2018-03-03 00:14:31.000000000 +0200
      @@ -0,0 +1,21 @@
      +#!/bin/sh
      +
      +set -e
      +
      +PREREQ=""
      +
      +prereqs()
      +{
      +	echo "${PREREQ}"
      +}
      +
      +case "${1}" in
      +	prereqs)
      +		prereqs
      +		exit 0
      +		;;
      +esac
      +
      +. /usr/share/initramfs-tools/hook-functions
      +
      +copy_exec /lib/udev/rules.d/71-seat.rules
      
      #7531
      Forum Admin
      anticapitalista
        Helpful
        Up
        0
        ::

        Thanks, just to check.
        Does the second file replace completely the existing one in debian/extra/initramfs.hook/elogind or adds to its contents?

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

        antiX with runit - leaner and meaner.

        #7538
        Forum Admin
        anticapitalista
          Helpful
          Up
          0
          ::

          Here is the link to the source if you want to check it is now ok.

          elogind-antix

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

          antiX with runit - leaner and meaner.

          #7539
          Anonymous
            Helpful
            Up
            0
            ::

            I’ve noticed that about elogind but didn’t know what was causing the logout
            problem..I’ve been using ths “menu system/exit-desktop-session” and that’s been
            working. I’m running xfce.

            #7559
            Anonymous
              Helpful
              Up
              0
              ::

              Does the second file replace completely the existing one in debian/extra/initramfs.hook/elogind or adds to its contents?

              In short: sure it creates missing file from scratch.

              Actually the path does not matter, the file can be put anywhere in debian/ but while the place for such ‘extra files’ already exists, it seems logical to use it. Where it would be installed by APT is defined in the *.install.

              TLDR:
              It’s quite easy to distinguish whether the patch alters the file, creates it, deletes, or rewrites its content. Let’s start ab ovo. As you definitly know, GNU diff (in its unified format output, -u option) marks lines as follows:
              a) ones which are to be added have the plus sing in their beginning;
              b) which are to be deleted are marked by minus;
              c) those which would not be changed are prefixed with space.

              So, if you see every line is plus-prefixed in a diff section that means the previously absent file would be created. File to be fully deleted gets section with all lines prefixed by minus. In the case of complete replacing, or better to say creating the new file with the same name, two actions in serial must be performed: old content deletion then new content appending. So the diff section consists of tho blocks: minus-prefixed lines following by plus-prefixed ones. And finaly if at least one line which begins with space exists in the section that means a most common case when only a part of file is to be altered.

              #7560
              Forum Admin
              anticapitalista
                Helpful
                Up
                0
                ::

                new elogind in repos.

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

                antiX with runit - leaner and meaner.

                #7562
                Anonymous
                  Helpful
                  Up
                  0
                  ::

                  Here is the link to the source if you want to check it is now ok.

                  Yeah, it’s allright. Repo packages are allright too:`locadmin@eeepc:/tmp$ dpkg -S /usr/share/initramfs-tools/hooks/elogind
                  elogind: /usr/share/initramfs-tools/hooks/elogind`

                  And the final thing we need to make our job perfect. Let’s force APT to rebuid initrams files after upgrading our package. So the system would be fixed without need of user intervention. But do it only in case then the previous version is the one with absent hooks to not wasting device resources. We can do this by putting the following code to ‘debian/elogind.postinst’ :

                  !/bin/sh
                  
                  set -e
                  
                  if [ "$1" = "configure" ]; then
                    if dpkg --compare-versions "$2" le "234.4.2.2"; then
                      /usr/sbin/update-initramfs -u -k all
                    fi
                  fi
                  

                  N.B. 234.4.2.2 must be included (‘le’ == less-or-equal) because thus it has hooks but it didn’t rebuild initrd images by itself yes.

                  P.S. Thank You Anticapitalista for your superfast reaction. And sure for all your jobs on Anix.

                  #7565
                  Anonymous
                    Helpful
                    Up
                    0
                    ::

                    Here is the link to the source if you want to check it is now ok.

                    Yeah, it’s allright. Repo packages are allright too: `locadmin@eeepc:/tmp$ dpkg -S /usr/share/initramfs-tools/hooks/elogind
                    elogind: /usr/share/initramfs-tools/hooks/elogind`

                    And the final thing we need to make our job perfect. Let’s force APT to rebuid initrams files after upgrading our package. So the system would be fixed without need of user intervention. But do it only in case then the previous version is the one with absent hooks to not wasting device resources. We can do this by putting the following code to ‘debian/elogind.postinst’ :

                    !/bin/sh
                    
                    set -e
                    
                    if [ "$1" = "configure" ]; then
                      if dpkg --compare-versions "$2" le "234.4.2.2"; then
                        /usr/sbin/update-initramfs -u -k all
                      fi
                    fi
                    

                    N.B. 234.4.2.2 must be included (‘le’ == less-or-equal) because thus it has hooks but it didn’t rebuild initrd images by itself yes.

                    P.S. Thank You Anticapitalista for your superfast reaction. And sure for all your jobs on Antix too.

                    #7567
                    Anonymous
                      Helpful
                      Up
                      0
                      ::

                      Here is the link to the source if you want to check it is now ok.

                      Yeah, it’s allright, also are packages in repo: `locadmin@eeepc:/tmp$ dpkg -S /usr/share/initramfs-tools/hooks/elogind
                      elogind: /usr/share/initramfs-tools/hooks/elogind`

                      And the final thing we need to make our job perfect. Let’s force APT to rebuid initrams files after upgrading our package. So the system would be fixed without need of user intervention. But do it only in case then the previous version is the one with absent hooks to not wasting device resources. We can do this by putting the following code to ‘debian/elogind.postinst’ :

                      !/bin/sh
                      
                      set -e
                      
                      if [ "$1" = "configure" ]; then
                        if dpkg --compare-versions "$2" le "234.4.2.2"; then
                          /usr/sbin/update-initramfs -u -k all
                        fi
                      fi
                      

                      N.B. 234.4.2.2 must be included (‘le’ == less-or-equal) because thus it has hooks but it didn’t rebuild initrd images by itself yes.

                      P.S. Thank You Anticapitalista for your superfast reaction. And sure for all your jobs on Anix.

                      #7569
                      Anonymous
                        Helpful
                        Up
                        0
                        ::

                        Here is the link to the source if you want to check it is now ok.

                        Yeah, it’s allright. Repo packages are allright too:

                        locadmin@eeepc:/tmp$ dpkg -S /usr/share/initramfs-tools/hooks/elogind 
                        elogind: /usr/share/initramfs-tools/hooks/elogind

                        And the final thing we need to make our job perfect. Let’s force APT to rebuid initrams files after upgrading our package. So the system would be fixed without need of user intervention. But do it only in case then the previous version is the one with absent hooks to not wasting device resources. We can do this by putting the following code to ‘debian/elogind.postinst’ :

                        !/bin/sh
                        
                        set -e
                        
                        if [ "$1" = "configure" ]; then
                          if dpkg --compare-versions "$2" le "234.4.2.2"; then
                            /usr/sbin/update-initramfs -u -k all
                          fi
                        fi
                        

                        N.B. 234.4.2.2 must be included (‘le’ == less-or-equal) because thus it has hooks but it didn’t rebuild initrd images by itself yes.

                        P.S. Thank You Anticapitalista for your superfast reaction. And sure for all your jobs on Anix.

                      Viewing 10 posts - 1 through 10 (of 10 total)
                      • You must be logged in to reply to this topic.