diff options
| author | Steve George <steve@futurile.net> | 2024-05-30 23:07:19 +0100 |
|---|---|---|
| committer | Vagrant Cascadian <vagrant@debian.org> | 2024-05-31 11:22:04 -0700 |
| commit | fba6896f625dcbeef112387fc90abe83acae1720 (patch) | |
| tree | 6672cbeb735d4a78c8b4d44c249cf4af3fd6b65e /gnu/packages/debian.scm | |
| parent | c7888f5361fbdbe5182e7dbe90ccc12e2d95d3c3 (diff) | |
gnu: Add debian-devscripts-bts.
* gnu/packages/debian.scm (debian-devscripts-bts): New variable.
Modified-by: Vagrant Cascadian <vagrant@debian.org>
Signed-off-by: Vagrant Cascadian <vagrant@debian.org>
Change-Id: Iff64afdb1f730f3d941617bc428a57d09c0381b2
Diffstat (limited to 'gnu/packages/debian.scm')
| -rw-r--r-- | gnu/packages/debian.scm | 159 |
1 files changed, 159 insertions, 0 deletions
diff --git a/gnu/packages/debian.scm b/gnu/packages/debian.scm index a88fb04feba..415c1d515d3 100644 --- a/gnu/packages/debian.scm +++ b/gnu/packages/debian.scm | |||
| @@ -27,6 +27,7 @@ | |||
| 27 | #:use-module (guix packages) | 27 | #:use-module (guix packages) |
| 28 | #:use-module (guix build-system copy) | 28 | #:use-module (guix build-system copy) |
| 29 | #:use-module (guix build-system gnu) | 29 | #:use-module (guix build-system gnu) |
| 30 | #:use-module (guix build-system perl) | ||
| 30 | #:use-module (guix build-system trivial) | 31 | #:use-module (guix build-system trivial) |
| 31 | #:use-module (gnu packages autotools) | 32 | #:use-module (gnu packages autotools) |
| 32 | #:use-module (gnu packages backup) | 33 | #:use-module (gnu packages backup) |
| @@ -34,6 +35,7 @@ | |||
| 34 | #:use-module (gnu packages bash) | 35 | #:use-module (gnu packages bash) |
| 35 | #:use-module (gnu packages compression) | 36 | #:use-module (gnu packages compression) |
| 36 | #:use-module (gnu packages crypto) | 37 | #:use-module (gnu packages crypto) |
| 38 | #:use-module (gnu packages databases) | ||
| 37 | #:use-module (gnu packages dbm) | 39 | #:use-module (gnu packages dbm) |
| 38 | #:use-module (gnu packages gettext) | 40 | #:use-module (gnu packages gettext) |
| 39 | #:use-module (gnu packages gnupg) | 41 | #:use-module (gnu packages gnupg) |
| @@ -43,7 +45,10 @@ | |||
| 43 | #:use-module (gnu packages ncurses) | 45 | #:use-module (gnu packages ncurses) |
| 44 | #:use-module (gnu packages perl) | 46 | #:use-module (gnu packages perl) |
| 45 | #:use-module (gnu packages pkg-config) | 47 | #:use-module (gnu packages pkg-config) |
| 48 | #:use-module (gnu packages python) | ||
| 49 | #:use-module (gnu packages web) | ||
| 46 | #:use-module (gnu packages wget) | 50 | #:use-module (gnu packages wget) |
| 51 | #:use-module (srfi srfi-1) | ||
| 47 | #:use-module (srfi srfi-26)) | 52 | #:use-module (srfi srfi-26)) |
| 48 | 53 | ||
| 49 | (define-public debian-archive-keyring | 54 | (define-public debian-archive-keyring |
| @@ -236,6 +241,160 @@ contains the archive keys used for that.") | |||
| 236 | (license (list license:public-domain ; the keys | 241 | (license (list license:public-domain ; the keys |
| 237 | license:gpl2+)))) ; see debian/copyright | 242 | license:gpl2+)))) ; see debian/copyright |
| 238 | 243 | ||
| 244 | (define-public debian-devscripts-bts | ||
| 245 | (package | ||
| 246 | (name "debian-devscripts-bts") | ||
| 247 | (version "2.23.7") | ||
| 248 | (source | ||
| 249 | (origin | ||
| 250 | (method git-fetch) | ||
| 251 | (uri (git-reference | ||
| 252 | (url "https://salsa.debian.org/debian/devscripts.git") | ||
| 253 | (commit (string-append "v" version)))) | ||
| 254 | (file-name (git-file-name name version)) | ||
| 255 | (sha256 | ||
| 256 | (base32 | ||
| 257 | "031467rclglk1hdx8z2vzx5z88vpy0sk73qi8ni0sai3jx62ji75")))) | ||
| 258 | (build-system perl-build-system) | ||
| 259 | (arguments | ||
| 260 | (list | ||
| 261 | #:tests? #f ; tests assume various Debian specific capabilities | ||
| 262 | #:phases | ||
| 263 | ;; only includes the bts command as that's useful for Guix packagers | ||
| 264 | #~(modify-phases %standard-phases | ||
| 265 | (add-after 'unpack 'patch-programs | ||
| 266 | (lambda* (#:key inputs outputs #:allow-other-keys) | ||
| 267 | (with-directory-excursion "scripts" | ||
| 268 | (substitute* "bts.pl" (("/bin/bash") (which "bash"))) | ||
| 269 | (substitute* "bts.pl" (("/bin/rm") (which "rm"))) | ||
| 270 | (substitute* "bts.pl" (("/bin/cat") (which "cat"))) | ||
| 271 | ;; Avoid having to provide Debian's sensible-browser package | ||
| 272 | (substitute* "bts.pl" | ||
| 273 | (("my \\$browser;") "my $browser = $ENV{'BROWSER'};")) | ||
| 274 | (substitute* "bts.pl" | ||
| 275 | (("'sensible-browser',") "$browser,")) | ||
| 276 | ;; Use Guix's debbugs - patching the source as putting a config | ||
| 277 | ;; file into #$output/etc doesn't work | ||
| 278 | (substitute* "bts.pl" | ||
| 279 | (("= 'https://bugs.debian.org'") | ||
| 280 | "= 'https://debbugs.gnu.org'")) | ||
| 281 | (rename-file "bts.pl" "bts")))) | ||
| 282 | (delete 'configure) | ||
| 283 | (delete 'build) | ||
| 284 | (replace 'install | ||
| 285 | (lambda* (#:key inputs outputs #:allow-other-keys) | ||
| 286 | (let* ((bindir (string-append #$output "/bin")) | ||
| 287 | (bashcomp (string-append #$output | ||
| 288 | "/etc/bash_completion.d")) | ||
| 289 | (perl-lib (string-append #$output | ||
| 290 | "/lib/perl5/site_perl/Devscripts")) | ||
| 291 | (wrap.pl | ||
| 292 | (lambda (scripts keys) | ||
| 293 | (for-each | ||
| 294 | (lambda (script) | ||
| 295 | (wrap-program script | ||
| 296 | `("PERL5LIB" ":" prefix | ||
| 297 | ,(cons* | ||
| 298 | (getenv "PERL5LIB") | ||
| 299 | (string-append #$output | ||
| 300 | "/lib/perl5/site_perl") | ||
| 301 | (map | ||
| 302 | (lambda (key) | ||
| 303 | (string-append | ||
| 304 | (assoc-ref inputs key) | ||
| 305 | "/lib/perl5/site_perl")) | ||
| 306 | keys))))) | ||
| 307 | scripts))) | ||
| 308 | (doc (string-append #$output | ||
| 309 | "/share/doc/" #$name "-" #$version))) | ||
| 310 | (with-directory-excursion "scripts" | ||
| 311 | (for-each (lambda (f) (install-file f bindir)) | ||
| 312 | '("bts")) | ||
| 313 | (mkdir-p bashcomp) | ||
| 314 | (copy-file "bts.bash_completion" (string-append bashcomp "/bts"))) | ||
| 315 | (wrap.pl (find-files bindir) | ||
| 316 | (list "dpkg" | ||
| 317 | "perl-authen-sasl" | ||
| 318 | "perl-db-file" | ||
| 319 | "perl-encode" | ||
| 320 | "perl-encode-locale" | ||
| 321 | "perl-file-homedir" | ||
| 322 | "perl-file-listing" | ||
| 323 | "perl-file-which" | ||
| 324 | "perl-http-cookies" | ||
| 325 | "perl-http-daemon" | ||
| 326 | "perl-http-date" | ||
| 327 | "perl-http-message" | ||
| 328 | "perl-http-negotiate" | ||
| 329 | "perl-http-parser" | ||
| 330 | "perl-io-socket-ssl" | ||
| 331 | "perl-ipc-run" | ||
| 332 | "perl-json" | ||
| 333 | "perl-libwww" | ||
| 334 | "perl-list-compare" | ||
| 335 | "perl-lwp-protocol-https" | ||
| 336 | "perl-moo" | ||
| 337 | "perl-mozilla-ca" | ||
| 338 | "perl-net-http" | ||
| 339 | "perl-try-tiny" | ||
| 340 | "perl-uri" | ||
| 341 | "perl-www-robotrules")) | ||
| 342 | (with-directory-excursion "lib/Devscripts/" | ||
| 343 | (for-each (lambda (f) (install-file f perl-lib)) | ||
| 344 | (find-files "./"))) | ||
| 345 | (for-each (lambda (f) (install-file f doc)) | ||
| 346 | '("README"))))) | ||
| 347 | (add-after 'install 'manpage | ||
| 348 | (lambda* (#:key outputs #:allow-other-keys) | ||
| 349 | (let ( (man1 (string-append #$output "/share/man/man1")) | ||
| 350 | (man5 (string-append #$output "/share/man/man5"))) | ||
| 351 | (with-directory-excursion "scripts" | ||
| 352 | (invoke "pod2man" "--utf8" "--center=' '" "bts" "bts.1") | ||
| 353 | (install-file "bts.1" man1)) | ||
| 354 | (with-directory-excursion "doc" | ||
| 355 | (invoke "make" "devscripts.1") | ||
| 356 | (install-file "devscripts.1" man1) | ||
| 357 | (install-file "devscripts.conf.5" man5)))))))) | ||
| 358 | (inputs | ||
| 359 | (list | ||
| 360 | bash-minimal | ||
| 361 | dpkg | ||
| 362 | perl-authen-sasl | ||
| 363 | perl-db-file | ||
| 364 | perl-encode | ||
| 365 | perl-encode-locale | ||
| 366 | perl-file-homedir | ||
| 367 | perl-file-listing | ||
| 368 | perl-file-which | ||
| 369 | perl-http-cookies | ||
| 370 | perl-http-daemon | ||
| 371 | perl-http-date | ||
| 372 | perl-http-message | ||
| 373 | perl-http-negotiate | ||
| 374 | perl-http-parser | ||
| 375 | perl-io-socket-ssl | ||
| 376 | perl-ipc-run | ||
| 377 | perl-json | ||
| 378 | perl-libwww | ||
| 379 | perl-list-compare | ||
| 380 | perl-lwp-protocol-https | ||
| 381 | perl-moo | ||
| 382 | perl-mozilla-ca | ||
| 383 | perl-net-http | ||
| 384 | perl-try-tiny | ||
| 385 | perl-uri | ||
| 386 | perl-www-robotrules)) | ||
| 387 | (native-inputs | ||
| 388 | (list perl perl-libwww perl-uri pkg-config python)) | ||
| 389 | (propagated-inputs | ||
| 390 | (list perl-lwp-protocol-https)) | ||
| 391 | (home-page "https://tracker.debian.org/pkg/devscripts") | ||
| 392 | (synopsis "BTS script from Debian's devscripts") | ||
| 393 | (description "This package only provides the bts script from the Debian | ||
| 394 | devscripts archive. It's useful for Guix Developers that interact with GNU's | ||
| 395 | debbugs server.") | ||
| 396 | (license license:gpl2+))) | ||
| 397 | |||
| 239 | (define-public debootstrap | 398 | (define-public debootstrap |
| 240 | (package | 399 | (package |
| 241 | (name "debootstrap") | 400 | (name "debootstrap") |
