elogind bugreport

Tagged: 

This topic contains 9 replies, has 3 voices, and was last updated by PutlerKaputt Mar 10-4:46 am.

Viewing 10 posts - 1 through 10 (of 10 total)
  • Author
    Posts
  • #7527
    Member
    PutlerKaputt
    PutlerKaputt

    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
    
    • This topic was modified 6 months, 2 weeks ago by PutlerKaputt.
    • This topic was modified 6 months, 2 weeks ago by PutlerKaputt.
    #7531
    Forum Admin
    anticapitalista
    anticapitalista

    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.

    #7538
    Forum Admin
    anticapitalista
    anticapitalista

    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.

    #7539
    Member
    linuxdaddy
    linuxdaddy

    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
    Member
    PutlerKaputt
    PutlerKaputt

    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
    anticapitalista

    new elogind in repos.

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

    #7562
    Member
    PutlerKaputt
    PutlerKaputt

    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.

    • This reply was modified 6 months, 2 weeks ago by PutlerKaputt.
    #7565
    Member
    PutlerKaputt
    PutlerKaputt

    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.

    • This reply was modified 6 months, 2 weeks ago by PutlerKaputt.
    #7567
    Member
    PutlerKaputt
    PutlerKaputt

    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.

    • This reply was modified 6 months, 2 weeks ago by PutlerKaputt. Reason: formating cosmetics
    #7569
    Member
    PutlerKaputt
    PutlerKaputt

    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.