Re: [DNG] initial elogind package ready / RFC
On Fri, Jan 05, 2018 at 09:08:49PM +0100, Andreas Messer wrote: > Hi there, > > I finally managed to prepare inital devuan packages for elogind. > I have split up the stuff in multiple packages, sysv init script > for elogind is prepared. Also a libpam-elogind package is build > which sets field "Provides: libpam-systemd". Thus I was able to > install (and run) Gnome 3 Desktop (gnome-session) with skipping some > "Recommends" > > If anyone like to try it out, checkout branch suites/experimental > from https://git.devuan.org/amesser/elogind.git and build with > debbuild. This is my first package, comments are welcome. Dear Andreas, that's great news. Let's have it built for experimental so that we can test it more extensively. HND KatolaZ -- [ ~.,_ Enzo Nicosia aka KatolaZ - Devuan -- Freaknet Medialab ] [ "+. katolaz [at] freaknet.org --- katolaz [at] yahoo.it ] [ @) http://kalos.mine.nu --- Devuan GNU + Linux User ] [ @@) http://maths.qmul.ac.uk/~vnicosia -- GPG: 0B5F062F ] [ (@@@) Twitter: @KatolaZ - skype: katolaz -- github: KatolaZ ] signature.asc Description: Digital signature ___ Dng mailing list Dng@lists.dyne.org https://mailinglists.dyne.org/cgi-bin/mailman/listinfo/dng
Re: [DNG] initial elogind package ready / RFC
On 1/7/18, Andreas Messerwrote: > Is there something special to setup for linitian? Or do you mean the > udev "uaccess" rule warning from udev? W: elogind: appstream-metadata-missing-modalias-provide lib/udev/rules.d/70-uaccess.rules W: elogind: appstream-metadata-missing-modalias-provide lib/udev/rules.d/71-seat.rules match rule usb:v058Fp6254d* W: elogind: appstream-metadata-missing-modalias-provide lib/udev/rules.d/71-seat.rules match rule usb:v17E9p401Ad* W: elogind: appstream-metadata-missing-modalias-provide ... use --no-tag-display-limit to see all (or pipe to a file/program) Maybe my lintian is newer as I'm on Ceres. It looks for me as false positive. ___ Dng mailing list Dng@lists.dyne.org https://mailinglists.dyne.org/cgi-bin/mailman/listinfo/dng
Re: [DNG] initial elogind package ready / RFC
On Sun, 2018-01-07 at 11:18 +0100, Andreas Messer wrote: > On Sat, Jan 06, 2018 at 09:55:44PM +0100, Adam Borowski wrote: > > On Sat, Jan 06, 2018 at 04:41:57PM +0300, Hleb Valoshka wrote: > > > On 2018-01-05 20:08, Andreas Messer wrote: > > > > If anyone like to try it out, checkout branch suites/experimental > > > > from https://git.devuan.org/amesser/elogind.git and build with > > > > debbuild. This is my first package, comments are welcome. Nice work! Since I'm soon be AFK for a month I cannot help you with either elogind or ck2. However I urge you and Hleb to sumit these packages to Debian/experimental as Adam proposed. I'll submit eudev if the time permits before the AFK duration. Thanks! ___ Dng mailing list Dng@lists.dyne.org https://mailinglists.dyne.org/cgi-bin/mailman/listinfo/dng
Re: [DNG] initial elogind package ready / RFC
On Sun, Jan 07, 2018 at 07:18:26PM +0300, Hleb Valoshka wrote: > On 1/7/18, Andreas Messerwrote: > [...] > As a temporary solution you can add lintian overrides, at least for > udev warnings. I dont see lintian udev warnings. Do i need special settings? I get the following here: W: libelogind-dev: manpage-has-errors-from-man usr/share/man/man3/sd_bus_message_append.3.gz 111: warning [p 1, 8.8i, div `3tbd1,1', 0.0i]: can't break line W: libelogind-dev: manpage-has-errors-from-man usr/share/man/man3/sd_bus_message_append_basic.3.gz 83: warning [p 1, 3.3i, div `3tbd1,1', 0.0i]: can't break line W: libelogind-dev: manpage-has-errors-from-man usr/share/man/man3/sd_event_add_signal.3.gz 38: warning [p 1, 2.5i]: can't break line W: elogind: binary-without-manpage usr/bin/elogind-inhibit Is there something special to setup for linitian? Or do you mean the udev "uaccess" rule warning from udev? cheers, Andreas -- gnuPG keyid: 8C2BAF51 fingerprint: 28EE 8438 E688 D992 3661 C753 90B3 BAAA 8C2B AF51 signature.asc Description: PGP signature ___ Dng mailing list Dng@lists.dyne.org https://mailinglists.dyne.org/cgi-bin/mailman/listinfo/dng
Re: [DNG] initial elogind package ready / RFC
On 1/7/18, Andreas Messerwrote: >> It still has some lintian warnings. > > I see, but these arent these are upstream issues? Should these fixed > with quilt patches? They are not critical, so if you have time and desire you can fix them and also send your patches to the upstream. As a temporary solution you can add lintian overrides, at least for udev warnings. > OK, thanks for the hint. I'm not sure if both packages can be used at > the same time. ck(1) and elogind can not interwork. Either the session > is listed by ck or by elogind but not by both at the same time. Don't > know how this works out with ck2. Neither me, I do not use nor gnome neither kde, lightdm works with ck2 slim should either, and they don't depend hard on logind. > Anyway, all these changes are your credit? Should I mention your name > in commit message? Should also add you to debian/copyright, right? > With E-Mail? Don't bother, these changes are so trivial so they don't require any credit in d/copyright. ___ Dng mailing list Dng@lists.dyne.org https://mailinglists.dyne.org/cgi-bin/mailman/listinfo/dng
Re: [DNG] initial elogind package ready / RFC
On Sun, Jan 07, 2018 at 04:47:41PM +0300, Hleb Valoshka wrote: > [...] > I've also made package buildable and fixed some lintian errors. I've > added --with-udevrulesdir=/lib/udev/rules.d \ to CONFFLAGS because > configure.ac invokes pkg-config to get some values from udev.pc which > is installed by udev/eudev, that's not the case for build chroots. Ah, sorry, I forgot about the autogen.sh. Should make clean checkout for build tests in future. > I've also added call to dh_missing --list-missing so you know what > files are not installed to any package. > > It still has some lintian warnings. I see, but these arent these are upstream issues? Should these fixed with quilt patches? > Both elogind and ck2 provide the very similar set of udev rules > imported from sd sources, maybe it would be better to merge them and > provide a shared data package, but this is a more distant task. OK, thanks for the hint. I'm not sure if both packages can be used at the same time. ck(1) and elogind can not interwork. Either the session is listed by ck or by elogind but not by both at the same time. Don't know how this works out with ck2. Anyway, all these changes are your credit? Should I mention your name in commit message? Should also add you to debian/copyright, right? With E-Mail? cheers, Andreas -- gnuPG keyid: 8C2BAF51 fingerprint: 28EE 8438 E688 D992 3661 C753 90B3 BAAA 8C2B AF51 signature.asc Description: PGP signature ___ Dng mailing list Dng@lists.dyne.org https://mailinglists.dyne.org/cgi-bin/mailman/listinfo/dng
Re: [DNG] initial elogind package ready / RFC
P.S. You've forgotten to make git push --tags ___ Dng mailing list Dng@lists.dyne.org https://mailinglists.dyne.org/cgi-bin/mailman/listinfo/dng
Re: [DNG] initial elogind package ready / RFC
On 1/7/18, Andreas Messerwrote: > Agree with that. I have added elogind-data now. It still contains only translations so it's better to merge it with elogind packages. See a patch attached. I've also made package buildable and fixed some lintian errors. I've added --with-udevrulesdir=/lib/udev/rules.d \ to CONFFLAGS because configure.ac invokes pkg-config to get some values from udev.pc which is installed by udev/eudev, that's not the case for build chroots. I've also added call to dh_missing --list-missing so you know what files are not installed to any package. It still has some lintian warnings. Both elogind and ck2 provide the very similar set of udev rules imported from sd sources, maybe it would be better to merge them and provide a shared data package, but this is a more distant task. From 90ffdf9cf161ffcbe8460eb2b57180bd30ef0965 Mon Sep 17 00:00:00 2001 From: Hleb Valoshka <375...@gmail.com> Date: Sun, 7 Jan 2018 16:33:17 +0300 Subject: [PATCH 2/2] Drop useless data package --- debian/control | 19 +++ debian/elogind-data.install | 1 - debian/elogind.install | 1 + 3 files changed, 4 insertions(+), 17 deletions(-) delete mode 100644 debian/elogind-data.install diff --git a/debian/control b/debian/control index ebb7ce5c7..a9afbde36 100644 --- a/debian/control +++ b/debian/control @@ -36,7 +36,6 @@ Multi-Arch: foreign Pre-Depends: debconf, ${misc:Pre-Depends} Depends: ${shlibs:Depends}, ${misc:Depends}, - elogind-data (= ${binary:Version}), libelogind0 (= ${binary:Version}), libpam-elogind (= ${binary:Version}), lsb-base (>= 3.1), @@ -54,21 +53,10 @@ Architecture: linux-any Multi-Arch: same Pre-Depends: ${misc:Pre-Depends} Depends: ${shlibs:Depends}, - ${misc:Depends}, - elogind-data (= ${binary:Version}) + ${misc:Depends} Description: user, seat and session management library This library provides access to elogind session management -Package: elogind-data -Section: admin -Priority: optional -Architecture: all -Pre-Depends: ${misc:Pre-Depends} -Depends: ${shlibs:Depends}, - ${misc:Depends}, -Description: user, seat and session management - common files - Common files of elogind - Package: libelogind-dev Section: libdevel Priority: optional @@ -87,11 +75,10 @@ Section: admin Priority: optional Architecture: linux-any Multi-Arch: same -Pre-Depends: ${misc:Pre-Depends} +Pre-Depends: ${misc:Pre-Depends} Depends: ${shlibs:Depends}, ${misc:Depends}, - libpam-runtime, - elogind-data (= ${binary:Version}) + libpam-runtime Provides: libpam-systemd Description: elogind PAM module Plugable Authentication Module to register a session with elogind diff --git a/debian/elogind-data.install b/debian/elogind-data.install deleted file mode 100644 index 363548064..0 --- a/debian/elogind-data.install +++ /dev/null @@ -1 +0,0 @@ -usr/share/locale diff --git a/debian/elogind.install b/debian/elogind.install index 9b48429ad..a749b2a39 100644 --- a/debian/elogind.install +++ b/debian/elogind.install @@ -5,6 +5,7 @@ etc/elogind/logind.conf lib/udev/rules.d/ usr/share/bash-completion/ usr/share/dbus-1/ +usr/share/locale/ # Skip license files in /usr/share/doc/elogind usr/share/doc/elogind/README usr/share/doc/elogind/NEWS -- 2.15.1 From 693be5e7cec1dcba9bb216271950d0a2b7af6e3c Mon Sep 17 00:00:00 2001 From: Hleb Valoshka <375...@gmail.com> Date: Sun, 7 Jan 2018 16:32:44 +0300 Subject: [PATCH 1/2] Make it build, fix some lintian errors. --- debian/copyright | 4 ++-- debian/libpam-elogind.postinst | 2 ++ debian/libpam-elogind.prerm| 2 ++ debian/rules | 8 ++-- 4 files changed, 12 insertions(+), 4 deletions(-) diff --git a/debian/copyright b/debian/copyright index 32a58310b..74c9617ba 100644 --- a/debian/copyright +++ b/debian/copyright @@ -1,4 +1,4 @@ -Format-Specification: https://www.debian.org/doc/packaging-manuals/copyright-format/1.0 +Format: http://www.debian.org/doc/packaging-manuals/copyright-format/1.0/ Upstream-Name: elogind Source: https://github.com/elogind/elogind @@ -47,7 +47,7 @@ License: CC0-1.0 Files: man/glib-event-glue.c: Copyright: 2014 Tom Gundersen -License: +License: Expat Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, diff --git a/debian/libpam-elogind.postinst b/debian/libpam-elogind.postinst index 96c6817ea..7e37590c5 100755 --- a/debian/libpam-elogind.postinst +++ b/debian/libpam-elogind.postinst @@ -3,3 +3,5 @@ set -e pam-auth-update --package + +#DEBHELPER# diff --git a/debian/libpam-elogind.prerm b/debian/libpam-elogind.prerm index 3c25c6451..e6187ae2a 100755 --- a/debian/libpam-elogind.prerm +++ b/debian/libpam-elogind.prerm @@ -5,3 +5,5 @@ set -e if [ "$1" =
Re: [DNG] initial elogind package ready / RFC
On Sat, Jan 06, 2018 at 09:55:44PM +0100, Adam Borowski wrote: > On Sat, Jan 06, 2018 at 04:41:57PM +0300, Hleb Valoshka wrote: > > On 2018-01-05 20:08, Andreas Messer wrote: > > > If anyone like to try it out, checkout branch suites/experimental > > > from https://git.devuan.org/amesser/elogind.git and build with > > > debbuild. This is my first package, comments are welcome. > [...] > > -> d/control & d/libelogind-data.install > > > > libelogind-data contains only l10n files, so there is no need for a > > separate package, merge libelogind-data into libelogind. > > It's a bad idea to mix arch-indep files with arch-specific. Even worse, if > this library is to be ever used by programs other than elogind itself (and > if it were not, it shouldn't be a library), it would make it impossible to > multiarchize it. Agree with that. I have added elogind-data now. > [...] cheers, Andreas -- gnuPG keyid: 8C2BAF51 fingerprint: 28EE 8438 E688 D992 3661 C753 90B3 BAAA 8C2B AF51 signature.asc Description: PGP signature ___ Dng mailing list Dng@lists.dyne.org https://mailinglists.dyne.org/cgi-bin/mailman/listinfo/dng
Re: [DNG] initial elogind package ready / RFC
On Sat, Jan 06, 2018 at 04:41:57PM +0300, Hleb Valoshka wrote: > On 2018-01-05 20:08, Andreas Messer wrote: > > If anyone like to try it out, checkout branch suites/experimental > > from https://git.devuan.org/amesser/elogind.git and build with > > debbuild. This is my first package, comments are welcome. (Note: in the comments below, my opinions are those of a Debian Developer who's not active in Devuan. I'm these days the second most active package reviewer, though, so probably they're worth some heed. I did not even look at the package yet, though.) > -> d/changelog > elogind (234.4-devuan1) experimental; urgency=medium > > This package is native to Devuan, so it's version should be 234.4-1 or > 234.4-1~exp1. I believe that it's still better to mark it as Devuan specific, especially that it's wanted for Debian as well. Less confusion this way. > -> d/control & d/libelogind-data.install > > libelogind-data contains only l10n files, so there is no need for a > separate package, merge libelogind-data into libelogind. It's a bad idea to mix arch-indep files with arch-specific. Even worse, if this library is to be ever used by programs other than elogind itself (and if it were not, it shouldn't be a library), it would make it impossible to multiarchize it. > And I suppose there is no need to check for upstart, abandoned and > unsupported afair in Dev1 sustem. And in any maintained derivative. (I'd comment more once I get around to looking at the package itself.) Meow! -- // If you believe in so-called "intellectual property", please immediately // cease using counterfeit alphabets. Instead, contact the nearest temple // of Amon, whose priests will provide you with scribal services for all // your writing needs, for Reasonable And Non-Discriminatory prices. ___ Dng mailing list Dng@lists.dyne.org https://mailinglists.dyne.org/cgi-bin/mailman/listinfo/dng
Re: [DNG] initial elogind package ready / RFC
On Sat, Jan 06, 2018 at 04:41:57PM +0300, Hleb Valoshka wrote: > On 2018-01-05 20:08, Andreas Messer wrote: > > If anyone like to try it out, checkout branch suites/experimental > > from https://git.devuan.org/amesser/elogind.git and build with > > debbuild. This is my first package, comments are welcome. First of all thank you for your elaborate review. I agree with most of your comments and adjusted accordingly. > [...] > dh $@ --builddirectory=build --with autoreconf --parallel > ``` > > Remove `--builddirectory=build` as you set it in override_dh_auto_configure > and --parallell, afaik dh is clever enough to enable it automatically. > [...] `--builddirectory` is needed for all dh_* commands. Otherwise they don't know where the build folder is and wont find the files. `--parallel` is on by default for debian/compat>=10 only. Currently I don't see any need to require debhelper>=10 when 9 is sufficient. I also found a workaround to shutdown/reboot and mounting issues with KDE5/Gnome 3: Just don't enable elogind's PAM module. In that case ck-list-session shows the session again and everything works as expected. Of course, the session is not registered with elogind now. I tried reordering pam_elogind.so and pam_ck_connector.so before that but this didn't help. For me this is very obscure - why does Gnome 3 depend on logind if it works without having the session registered with logind? Anyway, I have now changed the libpam-elogind to disabled the pam module by default. Can be manually enabled with `pam-auth-update`. cheers, Andreas -- gnuPG keyid: 8C2BAF51 fingerprint: 28EE 8438 E688 D992 3661 C753 90B3 BAAA 8C2B AF51 signature.asc Description: PGP signature ___ Dng mailing list Dng@lists.dyne.org https://mailinglists.dyne.org/cgi-bin/mailman/listinfo/dng
Re: [DNG] initial elogind package ready / RFC
On 2018-01-05 20:08, Andreas Messer wrote: > If anyone like to try it out, checkout branch suites/experimental > from https://git.devuan.org/amesser/elogind.git and build with > debbuild. This is my first package, comments are welcome. -> d/changelog elogind (234.4-devuan1) experimental; urgency=medium This package is native to Devuan, so it's version should be 234.4-1 or 234.4-1~exp1. -> d/control & d/libelogind-data.install libelogind-data contains only l10n files, so there is no need for a separate package, merge libelogind-data into libelogind. Build-Depends: debhelper, Add minimal debhelper version (>= 9) as in d/compat you have 9. -> d/elogind.init A lot of `--pidfile /run/elogin.pid' you'd better define a variable ELOGIND_PID=elogin.pid and use it instead. run_by_init() is not used anywhere. And I suppose there is no need to check for upstart, abandoned and unsupported afair in Dev1 sustem. -> d/libpam-elogind.postinst Extra newlines. -> d/libpam-elogind.prerm Extra newlines. "pam-auth-update --package --remove consolekit" s/consolekit/elogind/ -> d/elogind.install Lines looking like some/dir/* can be simplified just to some/dir/ -> libelogind-dev.install add lib/*/libelogind.so remove all *.la files usr/include/elogind/* + usr/include/elogind/systemd/* = usr/include/elogind/ -> d/rules DEB_HOST_MULTIARCH ?= $(shell dpkg-architecture -qDEB_HOST_MULTIARCH) Can be safely removed as you depend on debhelper >= 9 --enable-kdbus \ KDBus is not here, please remove. ``` autoreconf: ./autogen.sh override_dh_autoreconf: dh_autoreconf debian/rules -- autoreconf ``` It doesn't look that you need to run autogen.sh, so these targets can be safely removed. In case you really need to run autogen.sh, use the following: ``` override_dh_autoreconf: dh_autoreconf ./autogen.sh ``` ``` dh $@ --builddirectory=build --with autoreconf --parallel ``` Remove `--builddirectory=build` as you set it in override_dh_auto_configure and --parallell, afaik dh is clever enough to enable it automatically. > There are some things with package file structure which might > be improved. I'm building elogind with the options recommended > in autogen.sh. But this implies that commands and libs are > installed to /bin and /lib and some very obscure thing, elogind > itself is installed to /lib/elogind/elogind. I suggest to install > it to /usr/bin, /usr/sbin and /usr/lib as usual and dropping that > weird /lib/elogind folder? Oppinions? Agree, but lib/elogind/elogind-cgroups-agent should go to /usr/lib/elogind/elogind-cgroups-agent ___ Dng mailing list Dng@lists.dyne.org https://mailinglists.dyne.org/cgi-bin/mailman/listinfo/dng