Προς το περιεχόμενο

systemd-notify


mad-proffessor

Προτεινόμενες αναρτήσεις

Έλα το έκανα python2 το setup.py είσαι κομπλέ στο master.

Aφου δεν απαντατε τι θέλετε στο master αφήνω τη limited χωρις python-espeak και pyinoitfy

Συνδέστε για να σχολιάσετε
Κοινοποίηση σε άλλες σελίδες

  • Απαντ. 122
  • Δημ.
  • Τελ. απάντηση

Συχνή συμμετοχή στο θέμα

Πάλι υπάρχει θέμα:

Traceback (most recent call last):
  File "setup.py", line 268, in <module>
    installer.addXuser_to_group()
  File "setup.py", line 95, in addXuser_to_group
    usermod = sub.check_call(command.split(), shell=False)
  File "/usr/lib/python2.7/subprocess.py", line 540, in check_call
    raise CalledProcessError(retcode, cmd)
subprocess.CalledProcessError: Command '['/usr/sbin/usermod', '-a', '-G', 'systemd-journal', 'ilias']' returned non-zero exit status 1

Επίσης με τις αλλαγές που βλέπω ότι έκανες στο setup.py είναι πάρα πολύ εύκολο να γίνει compatible και για python2 και για python3.
Προσθέτεις from __future__ import print_function και γράφεις τις print όπως είναι στην python3. Επίσης για την input μπορείς να κάνεις κάτι τέτοιο, αν και ίσως υπάρχει και καλύτερος τρόπος:

try:
    input = raw_input
except NameError:
    pass

Έτσι θα τρέχει και με python2 και με python3.


Επίσης αν δεν κάνω λάθος η μόνη διαφορά που έχει το systemd-notify.py και το systemd-notify3.py είναι στο shebang? :P

Συνδέστε για να σχολιάσετε
Κοινοποίηση σε άλλες σελίδες

Ρε θα με τρελάνεις πριν λίγο που τα έκανα commit έκανα install κ δεν υπήρχε πρόβλημα


Τώρα ξαναέκανα εγκατάσταση κ δεν υπάρχει πρόβλημα απο master έτρεξα

 

sudo python2 /home/myuser/systemd-notify.py/setup.py

 

Πως το τρέχεις με sudo;

Δες μήπως έχεις noexec μέσα στο sudoers ή δεν επιτρέπεις το usermod.

Δοκίμασε είτε με su -

ή με pkexec

Συνδέστε για να σχολιάσετε
Κοινοποίηση σε άλλες σελίδες

Έχω κάνει PKGBUILD και το τρέχω με το makepkg:

 

 

ilias@archpc ~/systemd-notify.py  ➜ makepkg
==> Making package: systemd-notify.py r192.8588736-1 (Wed Apr 29 16:26:25 EEST 2015)
==> Checking runtime dependencies...
==> Checking buildtime dependencies...
==> Retrieving sources...
  -> Cloning systemd-notify.py git repo...
Cloning into bare repository '/home/ilias/systemd-notify.py/systemd-notify.py'...
remote: Counting objects: 674, done.
remote: Compressing objects: 100% (77/77), done.
remote: Total 674 (delta 47), reused 0 (delta 0), pack-reused 597
Receiving objects: 100% (674/674), 101.99 KiB | 0 bytes/s, done.
Resolving deltas: 100% (431/431), done.
Checking connectivity... done.
==> Validating source files with md5sums...
    systemd-notify.py ... Skipped
==> Extracting sources...
  -> Creating working copy of systemd-notify.py git repo...
Cloning into 'systemd-notify.py'...
done.
==> Starting pkgver()...
==> Entering fakeroot environment...
==> Starting package()...
Would you like to receive notifications for the status of some services?[Y/n]: y
Which services would you like to receive notifications for?
By default we have iptables, rc-local, polkit, autovt@tty2
Type Y if you accept these or type the names of the services that you want separated by a space: y
What should be the interval between the notifications?
The default is 30 minutes
Type Y if you accept this time interval or type the moments that you want: y
Os was arch.
usermod: PAM: Authentication service cannot retrieve authentication info
Traceback (most recent call last):
  File "setup.py", line 268, in <module>
    installer.addXuser_to_group()
  File "setup.py", line 95, in addXuser_to_group
    usermod = sub.check_call(command.split(), shell=False)
  File "/usr/lib/python2.7/subprocess.py", line 540, in check_call
    raise CalledProcessError(retcode, cmd)
subprocess.CalledProcessError: Command '['/usr/sbin/usermod', '-a', '-G', 'systemd-journal', 'ilias']' returned non-zero exit status 1
==> ERROR: A failure occurred in package().
    Aborting...
                                                                                                                                                                                                                   
ilias@archpc ~/systemd-notify.py  ➜

 


Στο PKGBUILD απλά τρέχω python2 setup.py:

 

pkgname=systemd-notify.py
pkgver=r192.8588736
pkgrel=1
pkgdesc='A set of python classes that provide desktop notification upon a user login and when a systemd service fails.'
arch=(any)
url='https://github.com/gkarakou/systemd-notify.py'
license=('GPL')
depends=('python2' 'python2-dbus' 'python2-gobject' 'python2-notify' 'python2-systemd')
source=("${pkgname}::git+https://github.com/gkarakou/systemd-notify.py")
md5sums=('SKIP')

pkgver() {
  cd "$pkgname"
  printf "r%s.%s" "$(git rev-list --count HEAD)" "$(git rev-parse --short HEAD)"
}

package() {
  cd "$pkgname"
  python2 setup.py
}

 


Δεν χρησιμοποιώ sudo γιατί χτίζεται σε fakeroot. Αν δημιουργηθεί το πακέτο, μετά το παιρνάς με σαν root μέσω του pacman στο πραγματικό σου σύστημα.

Συνδέστε για να σχολιάσετε
Κοινοποίηση σε άλλες σελίδες

 

 

ilias@archpc ~  ➜ ls -al /etc/pam.d
total 140
drwxr-xr-x  2 root root 4096 Apr 24 13:54 .
drwxr-xr-x 72 root root 4096 Apr 29 14:23 ..
-rw-r--r--  1 root root  160 Mar 15 16:37 chage
-rw-r--r--  1 root root  160 Mar 13 16:36 chfn
-rw-r--r--  1 root root  103 Mar 15 16:37 chgpasswd
-rw-r--r--  1 root root  174 Mar 15 16:37 chpasswd
-rw-r--r--  1 root root  160 Mar 13 16:36 chsh
-rw-r--r--  1 root root  281 Nov 24 20:37 crond
-rw-r--r--  1 root root  160 Mar 15 16:37 groupadd
-rw-r--r--  1 root root  160 Mar 15 16:37 groupdel
-rw-r--r--  1 root root  103 Mar 15 16:37 groupmems
-rw-r--r--  1 root root  160 Mar 15 16:37 groupmod
-rw-r--r--  1 root root  220 Mar 13 16:36 login
-rw-r--r--  1 root root  259 Apr 15 17:01 lxdm
-rw-r--r--  1 root root  174 Mar 15 16:37 newusers
-rw-r--r--  1 root root  127 Sep 29  2013 other
-rw-r--r--  1 root root  198 Mar 15 16:37 passwd
-rw-r--r--  1 root root  312 Feb 25  2014 polkit-1
-rw-r--r--  1 root root   87 Feb  5 22:12 postgresql
-rw-r--r--  1 root root  500 Sep 25  2014 rlogin
-rw-r--r--  1 root root  425 Sep 25  2014 rsh
-rw-r--r--  1 root root  160 Mar 15 16:37 shadow
-rw-r--r--  1 root root  232 Mar 20 06:52 sshd
-rw-r--r--  1 root root  366 Mar 13 16:36 su
-rw-r--r--  1 root root   97 Mar 22 02:49 sudo
-rw-r--r--  1 root root  366 Mar 13 16:36 su-l
-rw-r--r--  1 root root  441 Sep 29  2013 system-auth
-rw-r--r--  1 root root  131 Apr 22 04:01 systemd-user
-rw-r--r--  1 root root  143 Sep 29  2013 system-local-login
-rw-r--r--  1 root root  619 Sep 29  2013 system-login
-rw-r--r--  1 root root  143 Sep 29  2013 system-remote-login
-rw-r--r--  1 root root  260 Sep 29  2013 system-services
-rw-r--r--  1 root root  160 Mar 15 16:37 useradd
-rw-r--r--  1 root root  160 Mar 15 16:37 userdel
-rw-r--r--  1 root root  160 Mar 15 16:37 usermod
                                                                                                                                                                                                                   
ilias@archpc ~  ➜

 

 

Συνδέστε για να σχολιάσετε
Κοινοποίηση σε άλλες σελίδες

Πρέπει να επιτρέψεις να κάμει authentication το usermod, δώσε το αρχείο να δω τι έχεις μέσα

sudo vim /etc/pam.d/usermod

ότι κάνει include δωστο κ αυτο

Συνδέστε για να σχολιάσετε
Κοινοποίηση σε άλλες σελίδες


ilias@archpc ~  ➜ cat /etc/pam.d/usermod
#%PAM-1.0
auth        sufficient    pam_rootok.so
auth        required    pam_unix.so
account        required    pam_unix.so
session        required    pam_unix.so
password    required    pam_permit.so
                                                                                                                                                                                                                   
ilias@archpc ~  ➜
Συνδέστε για να σχολιάσετε
Κοινοποίηση σε άλλες σελίδες

#%PAM-1.0
auth        sufficient    pam_succeed_if.so uid=0
auth        sufficient    pam_rootok.so
auth        required    pam_unix.so
account        sufficient    pam_succeed_if.so uid=0
account        required    pam_unix.so
session        sufficient    pam_succeed_if.so uid=0
session        required    pam_unix.so
password    required    pam_permit.so

βάλε αυτα μέσα

Συνδέστε για να σχολιάσετε
Κοινοποίηση σε άλλες σελίδες

Φαντάζομαι το πρόβλημα είναι ότι βρίσκεται σε fakeroot.

Μια ιδέα είναι, να σπάσεις το setup.py που έχεις σε ένα πραγματικό setup.py το οποίο θα περνάει στο σύστημα μόνο τα αρχεία που είναι απαραίτητα και ένα configure script στο οποίο θα υπάρχει όλη η υπόλοιπη λογική, οι ερωτήσεις για τα services κτλ. Έτσι ο χρήστης θα εγκαθιστά το πρόγραμμα και κάθε φορά που θέλει να αλλάξει το configuration θα τρέχει το myconfigure.

Συνδέστε για να σχολιάσετε
Κοινοποίηση σε άλλες σελίδες

Σου τρέχει έτσι με pam;

Ναι αυτο είναι το πρόβλημα.

Μια λύση είναι να βάλεις στο τέλος τη παραμετρο use_uid

auth sufficient pam_succeed_if.so uid = 0 use_uid 

αν δε τρέχει.

Σίγουρα σωστο αυτο που λές αλλα τώρα να αλλάζει ένα script το pam configuration γενικά δε ξέρω αν είναι σωστο.

Συνδέστε για να σχολιάσετε
Κοινοποίηση σε άλλες σελίδες

Ηλία δε θα κάτσω να χωρίσω σε δυο αρχεία. Θα πρέπει το configure που λές να πάει στο /etc/ και να ξαναγράφει το /etc/xdg/autostart/systemd-notify.desktop + να κάνει αλλάγες στο pam.

 Αυτο που μπορω να κάνω είναι να βάλω ένα

--------------systemd-notify.py installation wizard----------------------

πριν πάρω το input του χρήστη ωστε να ξέρει αυτος που εγκαθιστά απο pacman απο ποιο πρόγραμμα έιναι αν εγκαθιστά πολλά ταυτόχρονα και στην συνάρτηση is_archlinux()

να βάλω να γράφει το αρχείο /etc/pam.d/usermod αν θέλετε.

 

Αν έχεις όρεξη να γράψεις κάτσε κ κάντο αλλιώς πες μου να το υλοποίησω αυτο 5 λεπτά υπόθεση είναι.

Συνδέστε για να σχολιάσετε
Κοινοποίηση σε άλλες σελίδες

Το νέο link:

https://github.com/gkarakou/systemd-denotify

 

οδηγίες στη σελίδα-έπρεπε να το κάνω rename

Ο κωδικας όταν κάνετε εγκατάσταση θα απεγκαταστήσει το παλιο version και όλα τα αρχεία και θα εγκαταστήσει το καινούριο.

 

Μπήκε κ επιλογή για uninstall όλου του app

δίνετε

sudo python2 setup.py -u

μεσα απο το cloned dir.

 

Καλο είναι να μετονομαστει και εδω σε systemd-denotify απο κάποιον admin.

Συνδέστε για να σχολιάσετε
Κοινοποίηση σε άλλες σελίδες

Δημιουργήστε ένα λογαριασμό ή συνδεθείτε για να σχολιάσετε

Πρέπει να είστε μέλος για να αφήσετε σχόλιο

Δημιουργία λογαριασμού

Εγγραφείτε με νέο λογαριασμό στην κοινότητα μας. Είναι πανεύκολο!

Δημιουργία νέου λογαριασμού

Σύνδεση

Έχετε ήδη λογαριασμό; Συνδεθείτε εδώ.

Συνδεθείτε τώρα

  • Δημιουργία νέου...