diff options
Diffstat (limited to 'gnu/packages/debian.scm')
-rw-r--r-- | gnu/packages/debian.scm | 122 |
1 files changed, 119 insertions, 3 deletions
diff --git a/gnu/packages/debian.scm b/gnu/packages/debian.scm index 52e7ec223a..a82e6a07a8 100644 --- a/gnu/packages/debian.scm +++ b/gnu/packages/debian.scm @@ -1,5 +1,5 @@ ;;; GNU Guix --- Functional package management for GNU -;;; Copyright © 2018 Efraim Flashner <efraim@flashner.co.il> +;;; Copyright © 2018, 2020 Efraim Flashner <efraim@flashner.co.il> ;;; Copyright © 2018, 2020 Tobias Geerinckx-Rice <me@tobias.gr> ;;; Copyright © 2020 Marius Bakke <marius@gnu.org> ;;; @@ -26,12 +26,17 @@ #:use-module (guix build-system gnu) #:use-module (guix build-system trivial) #:use-module (gnu packages autotools) + #:use-module (gnu packages backup) #:use-module (gnu packages base) #:use-module (gnu packages compression) + #:use-module (gnu packages crypto) + #:use-module (gnu packages dbm) #:use-module (gnu packages gettext) #:use-module (gnu packages gnupg) - #:use-module (gnu packages wget) - #:use-module (gnu packages perl)) + #:use-module (gnu packages ncurses) + #:use-module (gnu packages perl) + #:use-module (gnu packages pkg-config) + #:use-module (gnu packages wget)) (define-public debian-archive-keyring (package @@ -275,3 +280,114 @@ debian/copyright for more information."))))) selectively mirror Debian and Ubuntu GNU/Linux distributions or any other apt sources typically provided by open source developers.") (license license:gpl2)))) + +(define-public dpkg + (package + (name "dpkg") + (version "1.20.5") + (source + (origin + (method git-fetch) + (uri (git-reference + (url "https://git.dpkg.org/git/dpkg/dpkg") + (commit version))) + (file-name (git-file-name name version)) + (sha256 + (base32 + "190q968g1vdz07byvfvc2gladhpq3yl765mfiacglyix3nkisy0j")))) + (build-system gnu-build-system) + (arguments + `(#:phases + (modify-phases %standard-phases + (add-before 'bootstrap 'patch-version + (lambda _ + (patch-shebang "get-version") + (with-output-to-file ".dist-version" + (lambda () (display ,version))) + #t)) + (add-after 'unpack 'set-perl-libdir + (lambda* (#:key inputs outputs #:allow-other-keys) + (let ((out (assoc-ref outputs "out")) + (perl (assoc-ref inputs "perl"))) + (setenv "PERL_LIBDIR" + (string-append out + "/lib/perl5/site_perl/" + ,(package-version perl))) + #t)))))) + (native-inputs + `(("autoconf" ,autoconf) + ("automake" ,automake) + ("gettext" ,gettext-minimal) + ("libtool" ,libtool) + ("pkg-config" ,pkg-config) + ("perl-io-string" ,perl-io-string))) + (inputs + `(("bzip2" ,bzip2) + ("libmd" ,libmd) + ("ncurses" ,ncurses) + ("perl" ,perl) + ("xz" ,xz) + ("zlib" ,zlib))) + (home-page "https://wiki.debian.org/Teams/Dpkg") + (synopsis "Debian package management system") + (description "This package provides the low-level infrastructure for +handling the installation and removal of Debian software packages.") + (license license:gpl2+))) + +(define-public reprepro + (package + (name "reprepro") + (version "5.3.0") + (source + (origin + (method git-fetch) + (uri (git-reference + (url "https://salsa.debian.org/brlink/reprepro.git/") + (commit (string-append name "-" version)))) + (file-name (git-file-name name version)) + (sha256 + (base32 + "1kn7m5rxay6q2c4vgjgm4407xx2r46skkkb6rn33m6dqk1xfkqnh")))) + (build-system gnu-build-system) + (arguments + `(#:tests? #f ; testtool not found + #:phases + (modify-phases %standard-phases + (replace 'check + (lambda* (#:key tests? #:allow-other-keys) + (if tests? + (with-directory-excursion "tests" + (invoke (which "sh") "test.sh")) + #t))) + (add-after 'install 'install-completions + (lambda* (#:key outputs #:allow-other-keys) + (let* ((out (assoc-ref outputs "out")) + (bash (string-append out "/etc/bash_completion.d/")) + (zsh (string-append out "/share/zsh/site-fucnctions/"))) + (mkdir-p bash) + (mkdir-p zsh) + (copy-file "docs/reprepro.bash_completion" + (string-append bash "reprepro")) + (copy-file "docs/reprepro.zsh_completion" + (string-append zsh "_reprepro")) + #t)))))) + (inputs + `(("bdb" ,bdb) + ("bzip2" ,bzip2) + ("gpgme" ,gpgme) + ("libarchive" ,libarchive) + ("xz" ,xz) + ("zlib" ,zlib))) + (native-inputs + `(("autoconf" ,autoconf) + ("automake" ,automake))) + (home-page "https://salsa.debian.org/brlink/reprepro") + (synopsis "Debian package repository producer") + (description "Reprepro is a tool to manage a repository of Debian packages +(@code{.deb}, @code{.udeb}, @code{.dsc}, ...). It stores files either being +injected manually or downloaded from some other repository (partially) mirrored +into one pool/ hierarchy. Managed packages and files are stored in a Berkeley +DB, so no database server is needed. Checking signatures of mirrored +repositories and creating signatures of the generated Package indices is +supported.") + (license license:gpl2))) |