all messages for Guix-related lists mirrored at yhetil.org
 help / color / mirror / code / Atom feed
From: Gabriel Hondet <gabrielhondet@gmail.com>
To: help-guix@gnu.org
Subject: udevil and setuid
Date: Mon, 24 Dec 2018 12:58:01 +0100	[thread overview]
Message-ID: <87ftunnnli.fsf@gmail.com> (raw)

[-- Attachment #1: Type: text/plain, Size: 2483 bytes --]

Hello,

I'm currently trying to package udevil
(https://ignorantguru.github.io/udevil/) for guix.  The executable needs
to have the suid.  Therefore I added a phase in the standard phases
which adds this suid (after install).  However, after building, the
resulting package in the store (at
/gnu/store/whatever-udevil-0.4.4/bin/udevil) does not have the suid
properly set.  Here is the full package specification:

#+begin_src scheme
(define-public udevil
  (package
    (name "udevil")
    (home-page "https://ignorantguru.github.io/udevil/")
    (version "0.4.4")
    (source
     (origin
       (method git-fetch)
       (uri (git-reference
             (url "https://github.com/ignorantguru/udevil")
             (commit version)))
       (file-name (git-file-name name version))
       (sha256
        (base32
         "0x9mjr9abvbxzfa9mrip5264iz1qxvsl01k3ybz95q4a7xl4jcb3"))
       (modules '((guix build utils)))
       (snippet
        '(begin
           (substitute* "src/Makefile.am" (("-o root -g root") ""))
           (substitute* "src/Makefile.in" (("-o root -g root") ""))))))
    (build-system gnu-build-system)
    (inputs
     `(("glib" ,glib)
       ("eudev" ,eudev)))
    (native-inputs
     `(("pkg-config" ,pkg-config)
       ("intltool" ,intltool)))
    (arguments
     `(#:configure-flags (list
                          (string-append "--sysconfdir="
                                         (assoc-ref %outputs "out") "/etc"))
       #:phases
       (modify-phases %standard-phases
         (add-after 'install 'set-suid
           (lambda _
             (let* ((out (assoc-ref %outputs "out"))
                    (outbin (string-append out "/bin/udevil")))
               (chmod outbin #o4555)
               #t))))))
    (synopsis "Mount without password")
    (description "udevil is a command line Linux program which mounts and
unmounts removable devices without a password, shows device info, and monitors
device changes.  It can also mount ISO files, nfs://, smb://, ftp://, ssh://
and WebDAV URLs, and tmpfs/ramfs filesystems.
@itemize @bullet
@item Intended as a hassle-free replacement for udisks
@item Highly configurable & security conscious
@item Requires no daemon running
@item To use it, just prefix a normal mount command with @code{udevil}
@item Can replace udisks in the SpaceFM file manager and the devmon
@end itemize
automounting daemon (devmon is included with udevil)")
    (license license:gpl3+)))
#+end_src

Thanks for your help

[-- Attachment #2: signature.asc --]
[-- Type: application/pgp-signature, Size: 832 bytes --]

             reply	other threads:[~2018-12-24 11:58 UTC|newest]

Thread overview: 2+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2018-12-24 11:58 Gabriel Hondet [this message]
2018-12-24 14:20 ` udevil and setuid Pierre Neidhardt

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=87ftunnnli.fsf@gmail.com \
    --to=gabrielhondet@gmail.com \
    --cc=help-guix@gnu.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
Code repositories for project(s) associated with this external index

	https://git.savannah.gnu.org/cgit/guix.git

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.