me
/
guix
Archived
1
0
Fork 0

Merge branch 'staging' into core-updates

master
Marius Bakke 2022-09-18 16:30:21 +02:00
commit 80c76f5d8e
No known key found for this signature in database
GPG Key ID: A2A06DF2A33A54FA
25 changed files with 685 additions and 168 deletions

View File

@ -13228,6 +13228,12 @@ The command below imports metadata for the @code{rails} Ruby package:
guix import gem rails guix import gem rails
@end example @end example
You can also ask for a specific version:
@example
guix import gem @@7.0.4
@end example
@table @code @table @code
@item --recursive @item --recursive
@itemx -r @itemx -r

View File

@ -52,6 +52,7 @@
# Copyright © 2022 Artyom V. Poptsov <poptsov.artyom@gmail.com> # Copyright © 2022 Artyom V. Poptsov <poptsov.artyom@gmail.com>
# Copyright © 2022 John Kehayias <john.kehayias@protonmail.com> # Copyright © 2022 John Kehayias <john.kehayias@protonmail.com>
# Copyright © 2022 muradm <mail@muradm.net> # Copyright © 2022 muradm <mail@muradm.net>
# Copyright © 2022 Hilton Chain <hako@ultrarare.space>
# #
# This file is part of GNU Guix. # This file is part of GNU Guix.
# #
@ -1038,12 +1039,14 @@ dist_patch_DATA = \
%D%/packages/patches/emacs-highlight-stages-add-gexp.patch \ %D%/packages/patches/emacs-highlight-stages-add-gexp.patch \
%D%/packages/patches/emacs-libgit-use-system-libgit2.patch \ %D%/packages/patches/emacs-libgit-use-system-libgit2.patch \
%D%/packages/patches/emacs-lispy-fix-thread-last-test.patch \ %D%/packages/patches/emacs-lispy-fix-thread-last-test.patch \
%D%/packages/patches/emacs-polymode-fix-lexical-variable-error.patch \
%D%/packages/patches/emacs-source-date-epoch.patch \ %D%/packages/patches/emacs-source-date-epoch.patch \
%D%/packages/patches/emacs-telega-path-placeholder.patch \ %D%/packages/patches/emacs-telega-path-placeholder.patch \
%D%/packages/patches/emacs-telega-test-env.patch \ %D%/packages/patches/emacs-telega-test-env.patch \
%D%/packages/patches/emacs-wordnut-require-adaptive-wrap.patch \ %D%/packages/patches/emacs-wordnut-require-adaptive-wrap.patch \
%D%/packages/patches/emacs-yasnippet-fix-tests.patch \ %D%/packages/patches/emacs-yasnippet-fix-tests.patch \
%D%/packages/patches/emacs-kv-fix-tests.patch \ %D%/packages/patches/emacs-kv-fix-tests.patch \
%D%/packages/patches/emacs-pgtk-super-key-fix.patch \
%D%/packages/patches/enjarify-setup-py.patch \ %D%/packages/patches/enjarify-setup-py.patch \
%D%/packages/patches/enlightenment-fix-setuid-path.patch \ %D%/packages/patches/enlightenment-fix-setuid-path.patch \
%D%/packages/patches/erlang-man-path.patch \ %D%/packages/patches/erlang-man-path.patch \

View File

@ -1348,6 +1348,28 @@ color scheme used by Visual Studio Code.")
Apprentice and Sourcerer.") Apprentice and Sourcerer.")
(license license:gpl3+)))) (license license:gpl3+))))
(define-public emacs-suneater-theme
(package
(name "emacs-suneater-theme")
(version "2.0.0")
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://git.sr.ht/~plattfot/suneater-theme")
(commit version)))
(sha256
(base32
"0nlam8f8ly86y7p2dn10y9ixnm7bhmigsx7si4cjynh6aiyczyds"))
(file-name (git-file-name name version))))
(build-system emacs-build-system)
(home-page "https://git.sr.ht/~plattfot/suneater-theme")
(synopsis "Minimalistic dark theme for Emacs")
(description
"Suneater is a dark, minimalistic Emacs theme. It was based on Sunburst
theme but now takes more inspiration from the Nano theme.")
(license license:gpl3+)))
(define-public emacs-treepy (define-public emacs-treepy
(package (package
(name "emacs-treepy") (name "emacs-treepy")
@ -2572,6 +2594,30 @@ light user interface.")
within a specified width. It is useful for displaying long track titles.") within a specified width. It is useful for displaying long track titles.")
(license license:gpl3+))) (license license:gpl3+)))
(define-public emacs-emprise
(package
(name "emacs-emprise")
(version "0.3.0")
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://git.sr.ht/~plattfot/emprise")
(commit (string-append "v" version))))
(sha256
(base32
"0yddvvpjdcgsiwv24jbddkgl5r1lxgz037akjln6z9acx9qrc8px"))
(file-name (git-file-name name version))))
(build-system emacs-build-system)
(home-page "https://sr.ht/~plattfot/emprise")
(synopsis "Control MPRIS supported media players from Emacs")
(description "This package provides a set of commands to control media
players that supports the Media Player Remote Interfacing
Specification (MPRIS) protocol from Emacs. It uses Emacs' Completing Read
framework as the user interface, which integrates well with Vertico or
Selectrum.")
(license license:gpl3+)))
;;; ;;;
;;; Miscellaneous. ;;; Miscellaneous.
@ -2605,6 +2651,31 @@ This package turns this into an O(1) operation. It does so by assigning a
letter to each link using avy.") letter to each link using avy.")
(license license:gpl3+))) (license license:gpl3+)))
(define-public emacs-app-launcher
;; XXX: Upstream did not tag any commit so far. Base version is extracted
;; from Version keyword.
(let ((commit "d5015e394b0a666a8c7c4d4bdf786266e773b145")
(revision "0"))
(package
(name "emacs-app-launcher")
(version (git-version "0.1" revision commit))
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/SebastienWae/app-launcher")
(commit commit)))
(file-name (git-file-name name version))
(sha256
(base32 "0l97ajy27awydyd4gc6323wyhpm5vm2db6i0lp5gqaxi9fp7jivp"))))
(build-system emacs-build-system)
(home-page "https://github.com/SebastienWae/app-launcher")
(synopsis "Use Emacs standard completion to launch applications")
(description "This package defines the @code{app-launcher-run-app}
command, which uses Emacs standard completion to select an application
installed on your machine and launch it.")
(license license:gpl3+))))
(define-public emacs-auto-sudoedit (define-public emacs-auto-sudoedit
(package (package
(name "emacs-auto-sudoedit") (name "emacs-auto-sudoedit")
@ -6162,6 +6233,64 @@ and retrieving information using the SQLite program through Elisp programming.
It is not intended as a user interface.") It is not intended as a user interface.")
(license license:gpl3+)))) (license license:gpl3+))))
(define-public emacs-sqlite3-api
(package
(name "emacs-sqlite3-api")
(version "0.16")
(source (origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/pekingduck/emacs-sqlite3-api")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(base32
"0yrfwb3yvhp1ib4izxh1ds68b3zw8gjkjhlk1kivarxnfjnjnly2"))))
(build-system emacs-build-system)
(arguments
(list
#:tests? (not (%current-target-system))
#:test-command #~(list "make" "test" "EMACS=emacs")
#:modules '((guix build emacs-build-system)
(guix build emacs-utils)
(guix build utils))
#:phases
#~(modify-phases %standard-phases
(add-after 'unpack 'patch-module-load
(lambda _
(make-file-writable "sqlite3.el")
(emacs-substitute-sexps "sqlite3.el"
("(require 'sqlite3-api nil t)"
(string-append
"(module-load \"" #$output "/lib/sqlite3-api.so\")")))))
(add-before 'check 'build-emacs-module
(lambda _
;; Remove code that fetches constants from the SQLite website
;; and the call to generate a timestamp.
(invoke "sed" "--in-place" "3,4d;24,28d;31d" "tools/gen-consts.sh")
;; Remove filter logic from the script that generates the constants.
(invoke "sed" "--in-place" "7,11d;18,22d" "tools/gen-consts.py")
;; Generate the consts.c file.
(invoke "make" "--directory=tools")
;; Remove the SQLITE_STATIC and SQLITE_TRANSIENT
;; constants. They cause a compilation warning and would have
;; been removed by the original script.
(invoke "sed" "--in-place" "/ifdef SQLITE_STATIC/,+2d" "consts.c")
(invoke "sed" "--in-place" "/ifdef SQLITE_TRANSIENT/,+2d" "consts.c")
;; Compile the shared object file.
(invoke "make" #$(string-append "CC=" (cc-for-target)))
;; Move the shared object file into /lib.
(install-file "sqlite3-api.so"
(string-append #$output "/lib")))))))
(native-inputs (list python sed))
(inputs (list sqlite))
(home-page "https://github.com/pekingduck/emacs-sqlite3-api")
(synopsis "Dynamic module for Emacs to access the SQLite C interface")
(description "This package provides a dynamic module for Emacs that allows
direct access to the SQLite C interface. It only exposes a subset of the full
SQLite C interface, but should satisfy most user's needs.")
(license license:gpl3+)))
(define-public emacs-sr-speedbar (define-public emacs-sr-speedbar
(let ((commit "77a83fb50f763a465c021eca7343243f465b4a47") (let ((commit "77a83fb50f763a465c021eca7343243f465b4a47")
(revision "0")) (revision "0"))
@ -6725,14 +6854,14 @@ user.")
(define-public emacs-subed (define-public emacs-subed
(package (package
(name "emacs-subed") (name "emacs-subed")
(version "1.0.8") (version "1.0.9")
(source (origin (source (origin
(method url-fetch) (method url-fetch)
(uri (string-append "https://elpa.nongnu.org/nongnu/subed-" (uri (string-append "https://elpa.nongnu.org/nongnu/subed-"
version ".tar")) version ".tar"))
(sha256 (sha256
(base32 (base32
"05dx4ywma7n73d0cihf4v8ayihm7gmfqpzvdycq4yk0zkxb958z1")))) "192m7pg8hiqx7ppr1sk6n5qjcbz78dmcg6m14syq12ll07zfpcm0"))))
(arguments (arguments
(list (list
#:tests? #t #:tests? #t
@ -15755,7 +15884,7 @@ gnugo-image-display-mode}.")
(define-public emacs-transpose-frame (define-public emacs-transpose-frame
(package (package
(name "emacs-transpose-frame") (name "emacs-transpose-frame")
(version "0.2.0") (version "0.2.1")
(source (source
(origin (origin
(method git-fetch) (method git-fetch)
@ -15764,7 +15893,7 @@ gnugo-image-display-mode}.")
(commit (string-append "v" version)))) (commit (string-append "v" version))))
(file-name (git-file-name name version)) (file-name (git-file-name name version))
(sha256 (sha256
(base32 "01j4ci0c52r2c31hc9r4p7nsb6s8blmvg50g9n5v5h3afjl1c35v")))) (base32 "0m9jmfwwhgkwxbq3y000ymx7parbgqr7gq3yjm2wh1ll747gv51y"))))
(build-system emacs-build-system) (build-system emacs-build-system)
(home-page "https://www.emacswiki.org/emacs/TransposeFrame") (home-page "https://www.emacswiki.org/emacs/TransposeFrame")
(synopsis "Transpose window arrangement in current frame") (synopsis "Transpose window arrangement in current frame")
@ -15773,6 +15902,31 @@ functions which allows users to transpose windows arrangement in currently
selected frame.") selected frame.")
(license license:bsd-2))) (license license:bsd-2)))
(define-public emacs-transpose-mark
;; XXX: Upstream made no release so far, and did not add a Version keyword.
(let ((commit "667327602004794de97214cf336ac61650ef75b7")
(revision "0"))
(package
(name "emacs-transpose-mark")
(version (git-version "0" revision commit))
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/kwrooijen/transpose-mark")
(commit commit)))
(file-name (git-file-name name version))
(sha256
(base32 "03wc50vn1kmrgnzzhs06pwpap2p2rx84wwzxw0hawsg1f1l35m2x"))))
(build-system emacs-build-system)
(home-page "https://github.com/kwrooijen/transpose-mark")
(synopsis "Library for transposing lines and regions")
(description "Transpose mark provides some commands that makes
transposing lines and regions easier. You can mark a line and transpose it
with a line at point, or mark a region and transpose it with another region
a point. The plugin provides visual feedback for marked regions.")
(license license:gpl3+))))
(define-public emacs-key-chord (define-public emacs-key-chord
(package (package
(name "emacs-key-chord") (name "emacs-key-chord")
@ -16574,7 +16728,7 @@ which avoids some of the issues with using Emacss built-in Url library.")
(define-public emacs-ement (define-public emacs-ement
(package (package
(name "emacs-ement") (name "emacs-ement")
(version "0.1.3") (version "0.1.4")
(source (source
(origin (origin
(method git-fetch) (method git-fetch)
@ -16583,7 +16737,7 @@ which avoids some of the issues with using Emacss built-in Url library.")
(commit (string-append "v" version)))) (commit (string-append "v" version))))
(file-name (git-file-name name version)) (file-name (git-file-name name version))
(sha256 (sha256
(base32 "075mwlc616rr86zgli36n6r8w09c5cvlk43by0f1xzla5rmiza8r")))) (base32 "1kms6l14h6ig8kphzpkxv16z7gpvcwvcfsp5ljssdnrx0c7dzz16"))))
(build-system emacs-build-system) (build-system emacs-build-system)
(arguments (arguments
`(#:emacs ,emacs)) ;need libxml support `(#:emacs ,emacs)) ;need libxml support
@ -17525,7 +17679,10 @@ contexts.
(commit (string-append "v" version)))) (commit (string-append "v" version))))
(file-name (git-file-name name version)) (file-name (git-file-name name version))
(sha256 (sha256
(base32 "18ssl2h861dm2jkd3df6wkfr48p8zk337dbvpq5522kia7fq1lbn")))) (base32 "18ssl2h861dm2jkd3df6wkfr48p8zk337dbvpq5522kia7fq1lbn"))
(patches
;; XXX: Cherry-picked from upstream, remove when bumping to 0.2.3.
(search-patches "emacs-polymode-fix-lexical-variable-error.patch"))))
(build-system emacs-build-system) (build-system emacs-build-system)
(home-page "https://github.com/polymode/polymode") (home-page "https://github.com/polymode/polymode")
(synopsis "Framework for multiple Emacs modes based on indirect buffers") (synopsis "Framework for multiple Emacs modes based on indirect buffers")
@ -19292,7 +19449,7 @@ files to be expanded upon opening them.")
(define-public emacs-parsebib (define-public emacs-parsebib
(package (package
(name "emacs-parsebib") (name "emacs-parsebib")
(version "4.2") (version "4.3")
(source (source
(origin (origin
(method git-fetch) (method git-fetch)
@ -19301,7 +19458,7 @@ files to be expanded upon opening them.")
(commit version))) (commit version)))
(file-name (git-file-name name version)) (file-name (git-file-name name version))
(sha256 (sha256
(base32 "0da4b6d65bq9xhyhq7h9g315zg6g5q9435vz870la966rgav5szd")))) (base32 "0vcl2wvxwpr62c9ym0fm3qaxzhjcrpk4r6r0zaqhkvlf8qr3rg8y"))))
(build-system emacs-build-system) (build-system emacs-build-system)
(home-page "https://github.com/joostkremers/parsebib") (home-page "https://github.com/joostkremers/parsebib")
(synopsis "Library for parsing @file{.bib} files") (synopsis "Library for parsing @file{.bib} files")
@ -19619,7 +19776,7 @@ that it can display an error message showing how the parser fails.")
(define-public emacs-move-text (define-public emacs-move-text
(package (package
(name "emacs-move-text") (name "emacs-move-text")
(version "2.0.8") (version "2.0.10")
(source (source
(origin (origin
(method git-fetch) (method git-fetch)
@ -19628,7 +19785,7 @@ that it can display an error message showing how the parser fails.")
(commit version))) (commit version)))
(file-name (git-file-name name version)) (file-name (git-file-name name version))
(sha256 (sha256
(base32 "06jxk5g23822gfmwrxhc34zand3dr8p2wjh1zs3j61ibz6n0nmz1")))) (base32 "0pxvipjp9xvr9zwiwij943jgpy7fk8pxphbdj0vrg8ar5avlqiam"))))
(build-system emacs-build-system) (build-system emacs-build-system)
(home-page "https://github.com/emacsfodder/move-text") (home-page "https://github.com/emacsfodder/move-text")
(synopsis "Move current line or region with M-up or M-down") (synopsis "Move current line or region with M-up or M-down")
@ -21005,7 +21162,7 @@ and doesn't require memorisation of commands.
(define-public emacs-logview (define-public emacs-logview
(package (package
(name "emacs-logview") (name "emacs-logview")
(version "0.15") (version "0.15.1")
(source (source
(origin (origin
(method git-fetch) (method git-fetch)
@ -21014,7 +21171,7 @@ and doesn't require memorisation of commands.
(commit version))) (commit version)))
(file-name (git-file-name name version)) (file-name (git-file-name name version))
(sha256 (sha256
(base32 "08bn7fj336krlrsf7flk0fgx9mdkd44vq8sxyx6s1c1q5bc0hqnk")))) (base32 "1khri5632pjirj191x3ps94s4pyrwapf1pbrkmqqp0d26b50d3s2"))))
(propagated-inputs (propagated-inputs
(list emacs-datetime emacs-extmap)) (list emacs-datetime emacs-extmap))
(build-system emacs-build-system) (build-system emacs-build-system)
@ -30320,14 +30477,14 @@ detected language.")
(define-public emacs-persist (define-public emacs-persist
(package (package
(name "emacs-persist") (name "emacs-persist")
(version "0.4") (version "0.5")
(source (source
(origin (origin
(method url-fetch) (method url-fetch)
(uri (string-append "https://elpa.gnu.org/packages/" (uri (string-append "https://elpa.gnu.org/packages/"
"persist-" version ".tar")) "persist-" version ".tar"))
(sha256 (sha256
(base32 "0gpxy41qawzss2526j9a7lys60vqma1lvamn4bfabwza7gfhac0q")))) (base32 "090n4479zs82by7a3vb551gyjvv8lpfcylk43ywr2lfyssc9xiq0"))))
(build-system emacs-build-system) (build-system emacs-build-system)
(home-page "http://elpa.gnu.org/packages/persist.html") (home-page "http://elpa.gnu.org/packages/persist.html")
(synopsis "Persist variables between Emacs sessions") (synopsis "Persist variables between Emacs sessions")
@ -30655,6 +30812,34 @@ conventions.")
snippets for Emacs.") snippets for Emacs.")
(license license:expat)))) (license license:expat))))
(define-public emacs-orca
;; XXX: Upstream did not tag any commit so far. Base version is extracted
;; from Version keyword.
(let ((commit "0687f416a5573f63b691d384454f5a793266ed97")
(revision "0"))
(package
(name "emacs-orca")
(version (git-version "0.1.0" revision commit))
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/abo-abo/orca")
(commit commit)))
(sha256
(base32 "00a363vkqvryw5s7pj0kh8pqq5vvbf1pmbzz0b1z1fckwr49sv0f"))))
(build-system emacs-build-system)
(propagated-inputs (list emacs-zoutline))
(home-page "https://github.com/abo-abo/orca")
(synopsis "Handler for Org Capture")
(description
"This package provides several convenient recipes for configuring Org
Capture, mainly for capturing from a browser. It can match URLs and inject
the capture in a targeted Org file, under a targeted heading. The more this
package is configured, the less refiling is needed on your captures: they will
go directly to where they belong.")
(license license:gpl3+))))
(define-public emacs-org-roam (define-public emacs-org-roam
(package (package
(name "emacs-org-roam") (name "emacs-org-roam")
@ -30717,6 +30902,34 @@ as a plug-and-play solution for anyone already using Org mode for their
personal wiki.") personal wiki.")
(license license:gpl3+))) (license license:gpl3+)))
(define-public emacs-org-roam-ui
(let ((commit "c75fc7506ee7f03840a9a93ed9336d7ed24551aa")
(revision "0"))
(package
(name "emacs-org-roam-ui")
(version (git-version "0.1" revision commit))
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/org-roam/org-roam-ui")
(commit commit)))
(sha256
(base32 "0mkcd2622np8s5qz2zvx7lch6dc586xqmn6914gi4ym7nvklf3zy"))))
(build-system emacs-build-system)
(arguments
(list #:include #~(cons "^out" %default-include)))
(propagated-inputs
(list emacs-org-roam emacs-simple-httpd emacs-websocket))
(home-page "https://github.com/org-roam/org-roam-ui")
(synopsis "Web User Interface for Org Roam")
(description
"Org Roam UI is meant as a successor of Org Roam server that extends
functionality of Org Roam with a web app that runs side-by-side with Emacs,
providing a web interface for navigating around notes created within Org
Roam.")
(license license:gpl3+))))
(define-public emacs-org-roam-bibtex (define-public emacs-org-roam-bibtex
(package (package
(name "emacs-org-roam-bibtex") (name "emacs-org-roam-bibtex")
@ -31575,14 +31788,14 @@ work on alists, hash-table and arrays. All functions are prefixed with
(define-public emacs-xref (define-public emacs-xref
(package (package
(name "emacs-xref") (name "emacs-xref")
(version "1.5.0") (version "1.5.1")
(source (source
(origin (origin
(method url-fetch) (method url-fetch)
(uri (string-append "https://elpa.gnu.org/packages/xref-" (uri (string-append "https://elpa.gnu.org/packages/xref-"
version ".tar")) version ".tar"))
(sha256 (sha256
(base32 "0xl6aiwkjbgs44c3wxk6s85diydm3y5lsd7znb0dhbqb7milid2d")))) (base32 "131jxsc1sl8q3r9drhylwyfig9qjjkj3hilv3npidp868pr7xdna"))))
(build-system emacs-build-system) (build-system emacs-build-system)
(home-page "http://elpa.gnu.org/packages/xref.html") (home-page "http://elpa.gnu.org/packages/xref.html")
(synopsis "Cross-referencing commands") (synopsis "Cross-referencing commands")
@ -32155,14 +32368,14 @@ are prefixed with @code{seq-} and work on lists, strings, and vectors.")
(define-public emacs-setup (define-public emacs-setup
(package (package
(name "emacs-setup") (name "emacs-setup")
(version "1.3.0") (version "1.3.1")
(source (source
(origin (origin
(method url-fetch) (method url-fetch)
(uri (string-append "https://elpa.gnu.org/packages/setup-" (uri (string-append "https://elpa.gnu.org/packages/setup-"
version ".tar")) version ".tar"))
(sha256 (sha256
(base32 "0r13ry73jm31j8fq7v1sh0k113fr4blfkiz85696bdpah2pnca87")))) (base32 "0n9zjclf4b2sr8c8zd37fs45p25p3856frm419c9hch69hhcsv3a"))))
(build-system emacs-build-system) (build-system emacs-build-system)
(home-page "https://git.sr.ht/~pkal/setup") (home-page "https://git.sr.ht/~pkal/setup")
(synopsis "Helpful configuration macro") (synopsis "Helpful configuration macro")

View File

@ -409,6 +409,10 @@ languages.")
(package (package
(inherit emacs-next) (inherit emacs-next)
(name "emacs-next-pgtk") (name "emacs-next-pgtk")
(source
(origin
(inherit (package-source emacs-next))
(patches (search-patches "emacs-pgtk-super-key-fix.patch"))))
(arguments (arguments
(substitute-keyword-arguments (package-arguments emacs-next) (substitute-keyword-arguments (package-arguments emacs-next)
((#:configure-flags flags #~'()) ((#:configure-flags flags #~'())

View File

@ -447,8 +447,15 @@ converts any cubic curves to quadratic. The most useful function is probably
(sha256 (sha256
(base32 "068hm62s1iphyg66w96vgiif6ahpcsaf8fr44rk6jdf71f6fyqd5")))) (base32 "068hm62s1iphyg66w96vgiif6ahpcsaf8fr44rk6jdf71f6fyqd5"))))
(build-system python-build-system) (build-system python-build-system)
(arguments
(list #:phases
#~(modify-phases %standard-phases
(replace 'check
(lambda* (#:key tests? #:allow-other-keys)
(when tests?
(invoke "pytest" "-vv")))))))
(native-inputs (native-inputs
(list python-pytest python-pytest-runner python-setuptools-scm)) (list python-pytest python-setuptools-scm))
(propagated-inputs (propagated-inputs
(list python-booleanoperations (list python-booleanoperations
python-cffsubr python-cffsubr

View File

@ -2366,7 +2366,14 @@ visualization.")
(version-major version) "/SAGA%20-%20" version (version-major version) "/SAGA%20-%20" version
"/saga-" version ".tar.gz")) "/saga-" version ".tar.gz"))
(sha256 (sha256
(base32 "008izjs6gvj09abxf16ssl1xy0ay3ljq4jswbggp6wiiq459minv")))) (base32 "008izjs6gvj09abxf16ssl1xy0ay3ljq4jswbggp6wiiq459minv"))
(modules '((guix build utils)))
(snippet
'(substitute* "saga-gis/src/tools/docs/docs_pdf/doc_pdf.cpp"
(("^#include <hpdf\\.h>\n" all)
(string-append all "#include <hpdf_version.h>\n"))
(("\\bHPDF_PROJECTING_SCUARE_END\\b")
"HPDF_PROJECTING_SQUARE_END")))))
(build-system cmake-build-system) (build-system cmake-build-system)
(native-inputs (native-inputs
(list pkg-config swig)) (list pkg-config swig))

View File

@ -2293,6 +2293,7 @@ The gnome-about program helps find which version of GNOME is installed.")
(build-system meson-build-system) (build-system meson-build-system)
(arguments (arguments
`(#:configure-flags '("-Dlogind=libelogind") `(#:configure-flags '("-Dlogind=libelogind")
#:meson ,meson-0.60
#:phases #:phases
(modify-phases %standard-phases (modify-phases %standard-phases
(add-after 'unpack 'skip-gtk-update-icon-cache (add-after 'unpack 'skip-gtk-update-icon-cache
@ -5815,7 +5816,10 @@ services for numerous locations.")
"-Dsystemd=false" "-Dsystemd=false"
;; Otherwise, the RUNPATH will lack the final path component. ;; Otherwise, the RUNPATH will lack the final path component.
(string-append "-Dc_link_args=-Wl,-rpath=" #$output (string-append "-Dc_link_args=-Wl,-rpath=" #$output
"/lib/gnome-settings-daemon-3.0")) "/lib/gnome-settings-daemon-3.0:"
;; Also add NSS because for some reason Meson
;; > 0.60 does not add it automatically (XXX).
(search-input-directory %build-inputs "lib/nss")))
#:phases #:phases
#~(modify-phases %standard-phases #~(modify-phases %standard-phases
(add-before 'configure 'set-baobab-file-name (add-before 'configure 'set-baobab-file-name
@ -9613,7 +9617,8 @@ can add your own files to the collection.")
"15wmikwk62cdi93gas77nqh4fbhlrxrncyfmcd1gfa34jbn7vnsa")))) "15wmikwk62cdi93gas77nqh4fbhlrxrncyfmcd1gfa34jbn7vnsa"))))
(build-system meson-build-system) (build-system meson-build-system)
(arguments (arguments
'(#:glib-or-gtk? #t `(#:meson ,meson-0.60
#:glib-or-gtk? #t
#:phases #:phases
(modify-phases %standard-phases (modify-phases %standard-phases
(add-after 'unpack 'skip-gtk-update-icon-cache (add-after 'unpack 'skip-gtk-update-icon-cache
@ -9655,6 +9660,8 @@ beautifying border effects.")
(base32 (base32
"1qvrxrk1h8bd75xwasxbvlkqrw6xkavjimvc7sslkw6lvb3z86jp")))) "1qvrxrk1h8bd75xwasxbvlkqrw6xkavjimvc7sslkw6lvb3z86jp"))))
(build-system meson-build-system) (build-system meson-build-system)
(arguments
(list #:meson meson-0.60))
(native-inputs (native-inputs
`(("glib:bin" ,glib "bin") ; for glib-compile-schemas, gio-2.0. `(("glib:bin" ,glib "bin") ; for glib-compile-schemas, gio-2.0.
("gtk+-bin" ,gtk+ "bin") ; for gtk-update-icon-cache ("gtk+-bin" ,gtk+ "bin") ; for gtk-update-icon-cache
@ -12022,6 +12029,7 @@ desktop environment.")
gspell gspell
gtk gtk
gjs gjs
libadwaita
libsecret libsecret
libsoup libsoup
telepathy-glib telepathy-glib

View File

@ -476,7 +476,21 @@ the GStreamer multimedia framework.")
(arguments (arguments
(list #:phases (list #:phases
#~(modify-phases %standard-phases #~(modify-phases %standard-phases
#$@%common-gstreamer-phases))) #$@%common-gstreamer-phases
#$@(if (string-prefix? "i686" (or (%current-target-system)
(%current-system)))
;; FIXME: These tests consistently fail in the Guix CI:
;; https://issues.guix.gnu.org/57868
'((add-after 'unpack 'disable-systemclock-test
(lambda _
(substitute* "tests/check/gst/gstsystemclock.c"
(("tcase_add_test \\(tc_chain, \
test_stress_cleanup_unschedule.*")
"")
(("tcase_add_test \\(tc_chain, \
test_stress_reschedule.*")
"")))))
'()))))
(propagated-inputs (propagated-inputs
;; In gstreamer-1.0.pc: ;; In gstreamer-1.0.pc:
;; Requires: glib-2.0, gobject-2.0 ;; Requires: glib-2.0, gobject-2.0
@ -880,7 +894,7 @@ model to base your own plug-in on, here it is.")
openjpeg openjpeg
;; openni2 ;; openni2
opensles opensles
openssl openssl-1.1
opus opus
orc orc
pango pango

View File

@ -324,14 +324,18 @@ many popular formats.")
(snippet (snippet
'(begin '(begin
(for-each (for-each
(lambda (dir) (lambda (dir)
(delete-file-recursively (delete-file-recursively
(string-append "ThirdParty/" dir "/vtk" dir))) (string-append "ThirdParty/" dir "/vtk" dir)))
;; pugixml depended upon unconditionally ;; pugixml depended upon unconditionally
'("doubleconversion" "eigen" "expat" "freetype" "gl2ps" '("doubleconversion" "eigen" "expat" "freetype" "gl2ps"
"glew" "hdf5" "jpeg" "jsoncpp" "libproj" "libxml2" "lz4" "glew" "hdf5" "jpeg" "jsoncpp" "libharu" "libproj"
"netcdf" "ogg" "png" "sqlite" "theora" "tiff" "zlib")) "libxml2" "lz4" "netcdf" "ogg" "png" "sqlite" "theora"
#t)))) "tiff" "zlib"))
(substitute* "IO/ExportPDF/vtkPDFContextDevice2D.cxx"
(("\\bHPDF_UINT16 (noPen|dash|dot|denseDot|dashDot|dashDotDot)\\b"
_ var)
(string-append "HPDF_REAL " var)))))))
(properties `((release-monitoring-url . "https://vtk.org/download/"))) (properties `((release-monitoring-url . "https://vtk.org/download/")))
(build-system cmake-build-system) (build-system cmake-build-system)
(arguments (arguments
@ -348,6 +352,7 @@ many popular formats.")
"-DVTK_MODULE_USE_EXTERNAL_VTK_hdf5=ON" "-DVTK_MODULE_USE_EXTERNAL_VTK_hdf5=ON"
"-DVTK_MODULE_USE_EXTERNAL_VTK_jpeg=ON" "-DVTK_MODULE_USE_EXTERNAL_VTK_jpeg=ON"
"-DVTK_MODULE_USE_EXTERNAL_VTK_jsoncpp=ON" "-DVTK_MODULE_USE_EXTERNAL_VTK_jsoncpp=ON"
"-DVTK_MODULE_USE_EXTERNAL_VTK_libharu=ON"
"-DVTK_MODULE_USE_EXTERNAL_VTK_libproj=ON" "-DVTK_MODULE_USE_EXTERNAL_VTK_libproj=ON"
"-DVTK_MODULE_USE_EXTERNAL_VTK_libxml2=ON" "-DVTK_MODULE_USE_EXTERNAL_VTK_libxml2=ON"
"-DVTK_MODULE_USE_EXTERNAL_VTK_lz4=ON" "-DVTK_MODULE_USE_EXTERNAL_VTK_lz4=ON"
@ -381,6 +386,7 @@ many popular formats.")
glew glew
glu glu
hdf5 hdf5
libharu
libjpeg-turbo libjpeg-turbo
jsoncpp jsoncpp
libtheora libtheora

View File

@ -353,17 +353,17 @@ corresponding UPSTREAM-SOURCE (an origin), using the given DEBLOB-SCRIPTS."
;; The current "stable" kernels. That is, the most recently released major ;; The current "stable" kernels. That is, the most recently released major
;; versions that are still supported upstream. ;; versions that are still supported upstream.
(define-public linux-libre-5.19-version "5.19.8") (define-public linux-libre-5.19-version "5.19.9")
(define-public linux-libre-5.19-gnu-revision "gnu") (define-public linux-libre-5.19-gnu-revision "gnu")
(define deblob-scripts-5.19 (define deblob-scripts-5.19
(linux-libre-deblob-scripts (linux-libre-deblob-scripts
linux-libre-5.19-version linux-libre-5.19-version
linux-libre-5.19-gnu-revision linux-libre-5.19-gnu-revision
(base32 "1lk90psz33ldb8aiaws4iayhycl5bmywr6badvzffjpr87s5phxw") (base32 "1lk90psz33ldb8aiaws4iayhycl5bmywr6badvzffjpr87s5phxw")
(base32 "1ph67fvg5qvlkh4cynrrmvkngkb0sw6k90b1mwy9466s24khn05i"))) (base32 "092myqjixvy1k3ylcj0hfc4whfxapjvxsxm4gk30a3jv5dnh7mly")))
(define-public linux-libre-5.19-pristine-source (define-public linux-libre-5.19-pristine-source
(let ((version linux-libre-5.19-version) (let ((version linux-libre-5.19-version)
(hash (base32 "1kl7fifsa6vsm34xg3kd2svhx18n771hfj67nhwnlalmb9whhqv1"))) (hash (base32 "0dvzjbyknzlx4ndz77fsm6v28fj2chxbq1z85fbc3bckcscbbm8a")))
(make-linux-libre-source version (make-linux-libre-source version
(%upstream-linux-source version hash) (%upstream-linux-source version hash)
deblob-scripts-5.19))) deblob-scripts-5.19)))
@ -372,22 +372,22 @@ corresponding UPSTREAM-SOURCE (an origin), using the given DEBLOB-SCRIPTS."
;; The "longterm" kernels — the older releases with long-term upstream support. ;; The "longterm" kernels — the older releases with long-term upstream support.
;; Here are the support timelines: ;; Here are the support timelines:
;; <https://www.kernel.org/category/releases.html> ;; <https://www.kernel.org/category/releases.html>
(define-public linux-libre-5.15-version "5.15.67") (define-public linux-libre-5.15-version "5.15.68")
(define-public linux-libre-5.15-gnu-revision "gnu") (define-public linux-libre-5.15-gnu-revision "gnu")
(define deblob-scripts-5.15 (define deblob-scripts-5.15
(linux-libre-deblob-scripts (linux-libre-deblob-scripts
linux-libre-5.15-version linux-libre-5.15-version
linux-libre-5.15-gnu-revision linux-libre-5.15-gnu-revision
(base32 "0vj60bra81fmbx3lz924czbhxs4dmvd4d584g9mcs80b7c4q52kg") (base32 "0vj60bra81fmbx3lz924czbhxs4dmvd4d584g9mcs80b7c4q52kg")
(base32 "1r189c704jvizk452zcsm9v3g27ybjcjchjwxazsy3nx0wdwx7si"))) (base32 "048r4synfax2ajyzlmp672b68yshxwlfccdah2vz1kh88rqfmgsc")))
(define-public linux-libre-5.15-pristine-source (define-public linux-libre-5.15-pristine-source
(let ((version linux-libre-5.15-version) (let ((version linux-libre-5.15-version)
(hash (base32 "0h7r2k59jsw8ykb2p7nxrpazbwx1n5p3nmfbbj1lhib91fldjiys"))) (hash (base32 "0zlb44bwpc0hwfynzz5v5b3lkv4aha7w5737ns1qb8cvbk5v7fqp")))
(make-linux-libre-source version (make-linux-libre-source version
(%upstream-linux-source version hash) (%upstream-linux-source version hash)
deblob-scripts-5.15))) deblob-scripts-5.15)))
(define-public linux-libre-5.10-version "5.10.142") (define-public linux-libre-5.10-version "5.10.143")
(define-public linux-libre-5.10-gnu-revision "gnu1") (define-public linux-libre-5.10-gnu-revision "gnu1")
(define deblob-scripts-5.10 (define deblob-scripts-5.10
(linux-libre-deblob-scripts (linux-libre-deblob-scripts
@ -397,12 +397,12 @@ corresponding UPSTREAM-SOURCE (an origin), using the given DEBLOB-SCRIPTS."
(base32 "1981axxswghza3iadp94q54y8w30h9w9vyq4cbjiiv9alvbv0pb8"))) (base32 "1981axxswghza3iadp94q54y8w30h9w9vyq4cbjiiv9alvbv0pb8")))
(define-public linux-libre-5.10-pristine-source (define-public linux-libre-5.10-pristine-source
(let ((version linux-libre-5.10-version) (let ((version linux-libre-5.10-version)
(hash (base32 "0s52vfvw5pgnq7gq9n66ib05ryhkxwv765f16862l5gykbdynirz"))) (hash (base32 "14af0lsvgh1k0fh283d0nrm1pkrk2kaf2mz0ab59vlvjybg9wb7s")))
(make-linux-libre-source version (make-linux-libre-source version
(%upstream-linux-source version hash) (%upstream-linux-source version hash)
deblob-scripts-5.10))) deblob-scripts-5.10)))
(define-public linux-libre-5.4-version "5.4.212") (define-public linux-libre-5.4-version "5.4.213")
(define-public linux-libre-5.4-gnu-revision "gnu1") (define-public linux-libre-5.4-gnu-revision "gnu1")
(define deblob-scripts-5.4 (define deblob-scripts-5.4
(linux-libre-deblob-scripts (linux-libre-deblob-scripts
@ -412,12 +412,12 @@ corresponding UPSTREAM-SOURCE (an origin), using the given DEBLOB-SCRIPTS."
(base32 "1vnjbdyssa7dwyjl9kg35alwvf7yh597cl74yr1wy2gk5bc9paw6"))) (base32 "1vnjbdyssa7dwyjl9kg35alwvf7yh597cl74yr1wy2gk5bc9paw6")))
(define-public linux-libre-5.4-pristine-source (define-public linux-libre-5.4-pristine-source
(let ((version linux-libre-5.4-version) (let ((version linux-libre-5.4-version)
(hash (base32 "1hngr4hsrcd6hmlyvc3msy5racniav2jagp5abmp7xsxv0yjxiq9"))) (hash (base32 "1wdssqmac66zqsnq5lx2z8ampa0rd3qswg0gm1sh6n3y8xlf2z76")))
(make-linux-libre-source version (make-linux-libre-source version
(%upstream-linux-source version hash) (%upstream-linux-source version hash)
deblob-scripts-5.4))) deblob-scripts-5.4)))
(define-public linux-libre-4.19-version "4.19.257") (define-public linux-libre-4.19-version "4.19.258")
(define-public linux-libre-4.19-gnu-revision "gnu1") (define-public linux-libre-4.19-gnu-revision "gnu1")
(define deblob-scripts-4.19 (define deblob-scripts-4.19
(linux-libre-deblob-scripts (linux-libre-deblob-scripts
@ -427,12 +427,12 @@ corresponding UPSTREAM-SOURCE (an origin), using the given DEBLOB-SCRIPTS."
(base32 "00i91lx938nqlgy63hiricqd0fnbbf26vgya9c5lb7m1f4x324im"))) (base32 "00i91lx938nqlgy63hiricqd0fnbbf26vgya9c5lb7m1f4x324im")))
(define-public linux-libre-4.19-pristine-source (define-public linux-libre-4.19-pristine-source
(let ((version linux-libre-4.19-version) (let ((version linux-libre-4.19-version)
(hash (base32 "0izaldl2l2zsshkd07qsnr9x6ikipmj5jp7lxr8dyz7kf2m17pga"))) (hash (base32 "002sw8b272dzkp3vff0x89sbj5p3vrrikqygfdgrsxv7k3w4459x")))
(make-linux-libre-source version (make-linux-libre-source version
(%upstream-linux-source version hash) (%upstream-linux-source version hash)
deblob-scripts-4.19))) deblob-scripts-4.19)))
(define-public linux-libre-4.14-version "4.14.292") (define-public linux-libre-4.14-version "4.14.293")
(define-public linux-libre-4.14-gnu-revision "gnu1") (define-public linux-libre-4.14-gnu-revision "gnu1")
(define deblob-scripts-4.14 (define deblob-scripts-4.14
(linux-libre-deblob-scripts (linux-libre-deblob-scripts
@ -442,12 +442,12 @@ corresponding UPSTREAM-SOURCE (an origin), using the given DEBLOB-SCRIPTS."
(base32 "00i91lx938nqlgy63hiricqd0fnbbf26vgya9c5lb7m1f4x324im"))) (base32 "00i91lx938nqlgy63hiricqd0fnbbf26vgya9c5lb7m1f4x324im")))
(define-public linux-libre-4.14-pristine-source (define-public linux-libre-4.14-pristine-source
(let ((version linux-libre-4.14-version) (let ((version linux-libre-4.14-version)
(hash (base32 "0zc97qy62dhc5xkjnvsfn4lpl4dgrj23hlxvxcr4cr8sj0hxzx3h"))) (hash (base32 "047gl9nqrvpi9jaxlmhfnx848qvnrhf13710ka8fwn3lyv22k342")))
(make-linux-libre-source version (make-linux-libre-source version
(%upstream-linux-source version hash) (%upstream-linux-source version hash)
deblob-scripts-4.14))) deblob-scripts-4.14)))
(define-public linux-libre-4.9-version "4.9.327") (define-public linux-libre-4.9-version "4.9.328")
(define-public linux-libre-4.9-gnu-revision "gnu1") (define-public linux-libre-4.9-gnu-revision "gnu1")
(define deblob-scripts-4.9 (define deblob-scripts-4.9
(linux-libre-deblob-scripts (linux-libre-deblob-scripts
@ -457,7 +457,7 @@ corresponding UPSTREAM-SOURCE (an origin), using the given DEBLOB-SCRIPTS."
(base32 "0bib3641dbcqdkx3anna3caxnsg3nw9cnmhcklq0s93g3m57041h"))) (base32 "0bib3641dbcqdkx3anna3caxnsg3nw9cnmhcklq0s93g3m57041h")))
(define-public linux-libre-4.9-pristine-source (define-public linux-libre-4.9-pristine-source
(let ((version linux-libre-4.9-version) (let ((version linux-libre-4.9-version)
(hash (base32 "1lh63viynf9f7vl0a52mnal8jack9lbqfsfammwkxi3kafpw30r2"))) (hash (base32 "1px2np3k796cjwq1sp9gfxyql6hqyqya82vq9cb5y0canq6fqmg8")))
(make-linux-libre-source version (make-linux-libre-source version
(%upstream-linux-source version hash) (%upstream-linux-source version hash)
deblob-scripts-4.9))) deblob-scripts-4.9)))

View File

@ -1253,45 +1253,45 @@ of xmpppy.")
"3.9" "3.9"
"/site-packages")))))) "/site-packages"))))))
(native-inputs (native-inputs
`(("gettext" ,gettext-minimal) (list gettext-minimal
("glib:bin" ,glib "bin") `(,glib "bin")
("gobject-introspection" ,gobject-introspection) gobject-introspection
("gtk+:bin" ,gtk+ "bin") `(,gtk+ "bin")
("python-distutils-extra" ,python-distutils-extra) python-distutils-extra
("python-setuptools" ,python-setuptools) python-setuptools
("xorg-server" ,xorg-server-for-tests))) xorg-server-for-tests))
(inputs (inputs
`(("avahi" ,avahi) (list avahi
("dbus" ,dbus) dbus
("farstream" ,farstream) farstream
("geoclue" ,geoclue) geoclue
("glib" ,glib) glib
("glib-networking" ,glib-networking) glib-networking
("gsettings-desktop-schemas" ,gsettings-desktop-schemas) gsettings-desktop-schemas
("gsound",gsound) gsound
("gspell" ,gspell) gspell
("gstreamer" ,gstreamer) gstreamer
("gst-plugins-base" ,gst-plugins-base) gst-plugins-base
("gtk+" ,gtk+) gtk+
("gtksourceview" ,gtksourceview-4) gtksourceview-4
("gupnp-igd" ,gupnp-igd) gupnp-igd
("libappindicator" ,libappindicator) libappindicator
("libnice" ,libnice) libnice
("libsecret" ,libsecret) libsecret
("libsoup" ,libsoup) libsoup
("libxss" ,libxscrnsaver) libxscrnsaver
("network-manager" ,network-manager) network-manager
("python-css-parser" ,python-css-parser) python-css-parser
("python-dbus" ,python-dbus) python-dbus
("python-gssapi" ,python-gssapi) python-gssapi
("python-keyring" ,python-keyring) python-keyring
("python-nbxmpp" ,python-nbxmpp) python-nbxmpp
("python-packaging" ,python-packaging) python-packaging
("python-pillow" ,python-pillow) python-pillow
("python-precis-i18n" ,python-precis-i18n) python-precis-i18n
("python-pycairo" ,python-pycairo) python-pycairo
("python-pygobject" ,python-pygobject) python-pygobject
("python-pyopenssl" ,python-pyopenssl))) python-pyopenssl))
(propagated-inputs (propagated-inputs
(list dconf)) (list dconf))
(synopsis "Fully-featured XMPP client") (synopsis "Fully-featured XMPP client")

View File

@ -155,7 +155,7 @@ time-stamping or reference clock, sub-microsecond accuracy is possible.")
#t)))) #t))))
(native-inputs (list which pkg-config)) (native-inputs (list which pkg-config))
(inputs (inputs
`(("openssl" ,openssl) `(("openssl" ,openssl-1.1)
("libevent" ,libevent) ("libevent" ,libevent)
;; Build with POSIX capabilities support on GNU/Linux. This allows 'ntpd' ;; Build with POSIX capabilities support on GNU/Linux. This allows 'ntpd'
;; to run as non-root (when invoked with '-u'.) ;; to run as non-root (when invoked with '-u'.)

View File

@ -0,0 +1,49 @@
From a897516fc5ec380938115ad42023f279d128fc1e Mon Sep 17 00:00:00 2001
From: Andrew Tropin <andrew@trop.in>
Date: Fri, 16 Sep 2022 15:24:19 +0300
Subject: [PATCH] Workaround gtk bug for superkey handling
https://gitlab.gnome.org/GNOME/gtk/-/issues/4913
https://debbugs.gnu.org/cgi/bugreport.cgi?bug=55362
Patch based on Thomas Jost's suggestion.
---
src/pgtkterm.c | 9 +++++----
1 file changed, 5 insertions(+), 4 deletions(-)
diff --git a/src/pgtkterm.c b/src/pgtkterm.c
index 491ba33882..d5a9970693 100644
--- a/src/pgtkterm.c
+++ b/src/pgtkterm.c
@@ -5051,7 +5051,7 @@ pgtk_gtk_to_emacs_modifiers (struct pgtk_display_info *dpyinfo, int state)
mod |= mod_ctrl;
if (state & GDK_META_MASK || state & GDK_MOD1_MASK)
mod |= mod_meta;
- if (state & GDK_SUPER_MASK)
+ if (state & GDK_SUPER_MASK || state & GDK_MOD4_MASK)
mod |= mod_super;
if (state & GDK_HYPER_MASK)
mod |= mod_hyper;
@@ -5184,7 +5184,7 @@ key_press_event (GtkWidget *widget, GdkEvent *event, gpointer *user_data)
/* While super is pressed, the input method will always always
resend the key events ignoring super. As a workaround, don't
filter key events with super or hyper pressed. */
- if (!(event->key.state & (GDK_SUPER_MASK | GDK_HYPER_MASK)))
+ if (!(event->key.state & (GDK_SUPER_MASK | GDK_MOD4_MASK | GDK_HYPER_MASK)))
{
if (pgtk_im_filter_keypress (f, &event->key))
return TRUE;
@@ -5199,8 +5199,9 @@ key_press_event (GtkWidget *widget, GdkEvent *event, gpointer *user_data)
/* make_lispy_event turns chars into control chars.
Don't do it here because XLookupString is too eager. */
state &= ~GDK_CONTROL_MASK;
- state &= ~(GDK_META_MASK
- | GDK_SUPER_MASK | GDK_HYPER_MASK | GDK_MOD1_MASK);
+ state &= ~(GDK_META_MASK | GDK_MOD1_MASK
+ | GDK_SUPER_MASK | GDK_MOD4_MASK
+ | GDK_HYPER_MASK);
nbytes = event->key.length;
if (nbytes > copy_bufsiz)
--
2.37.3

View File

@ -0,0 +1,37 @@
From 8b83fa772a71efc9dc030c43db2cba944e4338c1 Mon Sep 17 00:00:00 2001
From: Kien Nguyen <kien.n.quang@gmail.com>
Date: Wed, 19 May 2021 23:15:01 +0900
Subject: [PATCH] Fix using of temporary lexical variable causes error in
native compiling
---
polymode-core.el | 6 +++---
1 file changed, 3 insertions(+), 3 deletions(-)
diff --git a/polymode-core.el b/polymode-core.el
index e7d40be..ef316f8 100644
--- a/polymode-core.el
+++ b/polymode-core.el
@@ -2088,14 +2088,14 @@ Elements of LIST can be either strings or symbols."
(stringp pm--output-file)
(pm--file-mod-time pm--output-file)))
(imt (and omt (pm--file-mod-time pm--input-file)))
- (action (if is-exporter "exporting" "weaving"))
(ofile (if (and imt (time-less-p imt omt))
(progn
(message "Not re-%s as input file '%s' hasn't changed"
- (file-name-nondirectory ifile) action)
+ (if is-exporter "exporting" "weaving")
+ (file-name-nondirectory ifile))
pm--output-file)
(message "%s '%s' with '%s' ..."
- (capitalize action)
+ (if is-exporter "EXPORTING" "WEAVING")
(file-name-nondirectory ifile)
(eieio-object-name processor))
(let ((fn (with-no-warnings
base-commit: 44265e35161d77f6eaa09388ea2256b89bd5dcc8
--
2.37.2

View File

@ -22,6 +22,7 @@
;;; Copyright © 2020 Timotej Lazar <timotej.lazar@araneo.si> ;;; Copyright © 2020 Timotej Lazar <timotej.lazar@araneo.si>
;;; Copyright © 2020, 2022 Maxim Cournoyer <maxim.cournoyer@gmail.com> ;;; Copyright © 2020, 2022 Maxim Cournoyer <maxim.cournoyer@gmail.com>
;;; Copyright © 2021 Maxime Devos <maximedevos@telenet.be> ;;; Copyright © 2021 Maxime Devos <maximedevos@telenet.be>
;;; Copyright © 2022 Paul A. Patience <paul@apatience.com>
;;; ;;;
;;; This file is part of GNU Guix. ;;; This file is part of GNU Guix.
;;; ;;;
@ -385,36 +386,37 @@ Poppler PDF rendering library.")
(define-public libharu (define-public libharu
(package (package
(name "libharu") (name "libharu")
(version "2.3.0") (version "2.4.2")
(source (origin (source
(method git-fetch) (origin
(uri (git-reference (method git-fetch)
(url "https://github.com/libharu/libharu") (uri (git-reference
(commit (string-append (url "https://github.com/libharu/libharu")
"RELEASE_" (commit (string-append "v" version))))
(string-join (string-split version #\.) "_"))))) (file-name (git-file-name name version))
(file-name (git-file-name name version)) (sha256
(sha256 (base32 "1jwzqvv81zf5f7zssyixhyjirlp9ddwkbaabd177syb1bxljlsdc"))))
(base32 (build-system cmake-build-system)
"15s9hswnl3qqi7yh29jyrg0hma2n99haxznvcywmsp8kjqlyg75q")))) (arguments
(build-system gnu-build-system) (list #:tests? #f ; No tests
(arguments #:phases
`(#:configure-flags #~(modify-phases %standard-phases
(list (string-append "--with-zlib=" (add-after 'unpack 'patch-cmake
(assoc-ref %build-inputs "zlib")) (lambda _
(string-append "--with-png=" (substitute* "CMakeLists.txt"
(assoc-ref %build-inputs "libpng"))))) (("^install\\(FILES (README\\.md CHANGES) INSTALL DESTINATION .*\\)"
(inputs _ files)
(list zlib libpng)) (format #f "install(FILES ~a DESTINATION ~a/share/doc/~a-~a)"
(native-inputs files #$output #$name #$version))))))))
(list autoconf automake libtool)) (inputs
(home-page "http://libharu.org/") (list libpng zlib))
(synopsis "Library for generating PDF files") (home-page "http://libharu.org/")
(description (synopsis "Library for generating PDF files")
"libHaru is a library for generating PDF files. libHaru does not support (description
"libHaru is a library for generating PDF files. libHaru does not support
reading and editing of existing PDF files.") reading and editing of existing PDF files.")
(license license:zlib))) (license license:zlib)))
(define-public xpdf (define-public xpdf
(package (package

View File

@ -381,7 +381,7 @@
("libzip" ,libzip) ("libzip" ,libzip)
("oniguruma" ,oniguruma) ("oniguruma" ,oniguruma)
("openldap" ,openldap) ("openldap" ,openldap)
("openssl" ,openssl) ("openssl" ,openssl-1.1)
("pcre" ,pcre2) ("pcre" ,pcre2)
("postgresql" ,postgresql) ("postgresql" ,postgresql)
("readline" ,readline) ("readline" ,readline)

View File

@ -269,14 +269,14 @@ colors, styles, options and details.")
(define-public asymptote (define-public asymptote
(package (package
(name "asymptote") (name "asymptote")
(version "2.82") (version "2.83")
(source (source
(origin (origin
(method url-fetch) (method url-fetch)
(uri (string-append "mirror://sourceforge/asymptote/" (uri (string-append "mirror://sourceforge/asymptote/"
version "/asymptote-" version ".src.tgz")) version "/asymptote-" version ".src.tgz"))
(sha256 (sha256
(base32 "13blmsapbai4hqynyj1r1sjpypdv6frfassl2f2x7j2ql1dbqvsg")) (base32 "18w8nf0p1b3h74sk1b7w96kq5gcaq09idi4771ini7p594gsfg7y"))
(modules '((guix build utils))) (modules '((guix build utils)))
(snippet (snippet
;; Remove bundled RapidJSON. ;; Remove bundled RapidJSON.

View File

@ -348,13 +348,13 @@ library.")
(define-public python-pandas (define-public python-pandas
(package (package
(name "python-pandas") (name "python-pandas")
(version "1.4.2") (version "1.4.4")
(source (source
(origin (origin
(method url-fetch) (method url-fetch)
(uri (pypi-uri "pandas" version)) (uri (pypi-uri "pandas" version))
(sha256 (sha256
(base32 "04lsak3j5hq2hk0vfjf532rdxdqmg2akamdl4yl3qipihp2izg4j")))) (base32 "0ryv66s9cvd27q6a985vv556k2qlnlrdna2z7qc7bdhphrrhsv5b"))))
(build-system python-build-system) (build-system python-build-system)
(arguments (arguments
`(#:modules ((guix build utils) `(#:modules ((guix build utils)

View File

@ -117,6 +117,9 @@
elogind-service elogind-service
elogind-service-type elogind-service-type
%gdm-file-system
gdm-file-system-service
%fontconfig-file-system %fontconfig-file-system
fontconfig-file-system-service fontconfig-file-system-service
@ -1232,6 +1235,13 @@ when they log out."
(flags '(read-only)) (flags '(read-only))
(check? #f))) (check? #f)))
(define %gdm-file-system
(file-system
(device "none")
(mount-point "/var/lib/gdm")
(type "tmpfs")
(check? #f)))
;; The global fontconfig cache directory can sometimes contain stale entries, ;; The global fontconfig cache directory can sometimes contain stale entries,
;; possibly referencing fonts that have been GC'd, so mount it read-only. ;; possibly referencing fonts that have been GC'd, so mount it read-only.
;; As mentioned https://debbugs.gnu.org/cgi/bugreport.cgi?bug=36924#8 and ;; As mentioned https://debbugs.gnu.org/cgi/bugreport.cgi?bug=36924#8 and
@ -1240,6 +1250,15 @@ when they log out."
(simple-service 'fontconfig-file-system (simple-service 'fontconfig-file-system
file-system-service-type file-system-service-type
(list %fontconfig-file-system))) (list %fontconfig-file-system)))
;; Avoid stale caches and stale user IDs being reused between system
;; reconfigurations, which would crash GDM and render the system unusable.
;; GDM doesn't require persisting anything valuable there anyway.
(define gdm-file-system-service
(simple-service 'gdm-file-system
file-system-service-type
(list %gdm-file-system)))
;;; ;;;
;;; AccountsService service. ;;; AccountsService service.
@ -1750,6 +1769,10 @@ applications needing access to be root.")
(list (file-append nfs-utils "/sbin/mount.nfs") (list (file-append nfs-utils "/sbin/mount.nfs")
(file-append ntfs-3g "/sbin/mount.ntfs-3g")))) (file-append ntfs-3g "/sbin/mount.ntfs-3g"))))
;; This is a volatile read-write file system mounted at /var/lib/gdm,
;; to avoid GDM stale cache and permission issues.
gdm-file-system-service
;; The global fontconfig cache directory can sometimes contain ;; The global fontconfig cache directory can sometimes contain
;; stale entries, possibly referencing fonts that have been GC'd, ;; stale entries, possibly referencing fonts that have been GC'd,
;; so mount it read-only. ;; so mount it read-only.

View File

@ -818,27 +818,6 @@ the GNOME desktop environment.")
(home-directory "/var/lib/gdm") (home-directory "/var/lib/gdm")
(shell (file-append shadow "/sbin/nologin"))))) (shell (file-append shadow "/sbin/nologin")))))
(define %gdm-activation
;; Ensure /var/lib/gdm is owned by the "gdm" user. This is normally the
;; case but could be wrong if the "gdm" user was created, then removed, and
;; then recreated under a different UID/GID: <https://bugs.gnu.org/37423>.
(with-imported-modules '((guix build utils))
#~(begin
(use-modules (guix build utils))
(let* ((gdm (getpwnam "gdm"))
(uid (passwd:uid gdm))
(gid (passwd:gid gdm))
(st (stat "/var/lib/gdm" #f)))
;; Recurse into /var/lib/gdm only if it has wrong ownership.
(when (and st
(or (not (= uid (stat:uid st)))
(not (= gid (stat:gid st)))))
(for-each (lambda (file)
(chown file uid gid))
(find-files "/var/lib/gdm"
#:directories? #t)))))))
(define dbus-daemon-wrapper (define dbus-daemon-wrapper
(program-file (program-file
"gdm-dbus-wrapper" "gdm-dbus-wrapper"
@ -1022,8 +1001,6 @@ the GNOME desktop environment.")
(extensions (extensions
(list (service-extension shepherd-root-service-type (list (service-extension shepherd-root-service-type
gdm-shepherd-service) gdm-shepherd-service)
(service-extension activation-service-type
(const %gdm-activation))
(service-extension account-service-type (service-extension account-service-type
(const %gdm-accounts)) (const %gdm-accounts))
(service-extension pam-root-service-type (service-extension pam-root-service-type

View File

@ -2,6 +2,7 @@
;;; Copyright © 2010, 2011, 2012, 2013, 2014, 2015, 2016, 2017, 2018, 2019, 2020, 2021 Ludovic Courtès <ludo@gnu.org> ;;; Copyright © 2010, 2011, 2012, 2013, 2014, 2015, 2016, 2017, 2018, 2019, 2020, 2021 Ludovic Courtès <ludo@gnu.org>
;;; Copyright © 2012, 2013 Nikita Karetnikov <nikita@karetnikov.org> ;;; Copyright © 2012, 2013 Nikita Karetnikov <nikita@karetnikov.org>
;;; Copyright © 2021 Simon Tournier <zimon.toutoune@gmail.com> ;;; Copyright © 2021 Simon Tournier <zimon.toutoune@gmail.com>
;;; Copyright © 2022 Maxime Devos <maximedevos@telenet.be>
;;; ;;;
;;; This file is part of GNU Guix. ;;; This file is part of GNU Guix.
;;; ;;;
@ -499,6 +500,12 @@ are unavailable."
(base-url (string-append base-url directory)) (base-url (string-append base-url directory))
(url (cond ((and=> (string->uri url) uri-scheme) ;full URL? (url (cond ((and=> (string->uri url) uri-scheme) ;full URL?
url) url)
;; full URL, except for URI scheme. Reuse the URI
;; scheme of the document that contains the link.
((string-prefix? "//" url)
(string-append
(symbol->string (uri-scheme (string->uri base-url)))
":" url))
((string-prefix? "/" url) ;absolute path? ((string-prefix? "/" url) ;absolute path?
(let ((uri (string->uri base-url))) (let ((uri (string->uri base-url)))
(uri->string (uri->string

View File

@ -5,6 +5,7 @@
;;; Copyright © 2020, 2021 Ludovic Courtès <ludo@gnu.org> ;;; Copyright © 2020, 2021 Ludovic Courtès <ludo@gnu.org>
;;; Copyright © 2020 Martin Becze <mjbecze@riseup.net> ;;; Copyright © 2020 Martin Becze <mjbecze@riseup.net>
;;; Copyright © 2021 Sarah Morgensen <iskarian@mgsn.dev> ;;; Copyright © 2021 Sarah Morgensen <iskarian@mgsn.dev>
;;; Copyright © 2022 Taiju HIGASHI <higashi@taiju.info>
;;; ;;;
;;; This file is part of GNU Guix. ;;; This file is part of GNU Guix.
;;; ;;;
@ -81,10 +82,12 @@
(requirements gem-dependency-requirements)) ;string (requirements gem-dependency-requirements)) ;string
(define (rubygems-fetch name) (define* (rubygems-fetch name #:optional version)
"Return a <gem> record for the package NAME, or #f on failure." "Return a <gem> record for the package NAME and VERSION, or #f on failure. If VERSION is #f or missing, return the latest version gem."
(and=> (json-fetch (and=> (json-fetch
(string-append "https://rubygems.org/api/v1/gems/" name ".json")) (if version
(string-append "https://rubygems.org/api/v2/rubygems/" name "/versions/" version ".json")
(string-append "https://rubygems.org/api/v1/gems/" name ".json")))
json->gem)) json->gem))
(define (ruby-package-name name) (define (ruby-package-name name)
@ -122,8 +125,11 @@ VERSION, HASH, HOME-PAGE, DESCRIPTION, DEPENDENCIES, and LICENSES."
(define* (gem->guix-package package-name #:key (repo 'rubygems) version) (define* (gem->guix-package package-name #:key (repo 'rubygems) version)
"Fetch the metadata for PACKAGE-NAME from rubygems.org, and return the "Fetch the metadata for PACKAGE-NAME from rubygems.org, and return the
`package' s-expression corresponding to that package, or #f on failure." `package' s-expression corresponding to that package, or #f on failure.
(let ((gem (rubygems-fetch package-name))) Optionally include a VERSION string to fetch a specific version gem."
(let ((gem (if version
(rubygems-fetch package-name version)
(rubygems-fetch package-name))))
(if gem (if gem
(let* ((dependencies-names (map gem-dependency-name (let* ((dependencies-names (map gem-dependency-name
(gem-dependencies-runtime (gem-dependencies-runtime
@ -189,4 +195,5 @@ package on RubyGems."
(recursive-import package-name (recursive-import package-name
#:repo '() #:repo '()
#:repo->guix-package gem->guix-package #:repo->guix-package gem->guix-package
#:guix-name ruby-package-name)) #:guix-name ruby-package-name
#:version version))

View File

@ -4,6 +4,7 @@
;;; Copyright © 2021 Sarah Morgensen <iskarian@mgsn.dev> ;;; Copyright © 2021 Sarah Morgensen <iskarian@mgsn.dev>
;;; Copyright © 2021 Brice Waegeneire <brice@waegenei.re> ;;; Copyright © 2021 Brice Waegeneire <brice@waegenei.re>
;;; Copyright © 2021 Simon Tournier <zimon.toutoune@gmail.com> ;;; Copyright © 2021 Simon Tournier <zimon.toutoune@gmail.com>
;;; Copyright © 2022 Taiju HIGASHI <higashi@taiju.info>
;;; ;;;
;;; This file is part of GNU Guix. ;;; This file is part of GNU Guix.
;;; ;;;
@ -31,6 +32,7 @@
#:use-module (srfi srfi-37) #:use-module (srfi srfi-37)
#:use-module (ice-9 match) #:use-module (ice-9 match)
#:use-module (ice-9 format) #:use-module (ice-9 format)
#:use-module (ice-9 receive)
#:export (guix-import-gem)) #:export (guix-import-gem))
@ -42,8 +44,9 @@
'()) '())
(define (show-help) (define (show-help)
(display (G_ "Usage: guix import gem PACKAGE-NAME (display (G_ "Usage: guix import gem PACKAGE-NAME[@VERSION] Import and
Import and convert the RubyGems package for PACKAGE-NAME.\n")) convert the RubyGems package for PACKAGE-NAME. Optionally, a version can be
specified after the at-sign (@) character.\n"))
(display (G_ " (display (G_ "
-h, --help display this help and exit")) -h, --help display this help and exit"))
(display (G_ " (display (G_ "
@ -86,21 +89,23 @@ Import and convert the RubyGems package for PACKAGE-NAME.\n"))
(_ #f)) (_ #f))
(reverse opts)))) (reverse opts))))
(match args (match args
((package-name) ((spec)
(let ((code (if (assoc-ref opts 'recursive) (receive (package-name package-version)
(map (match-lambda (package-name->name+version spec)
((and ('package ('name name) . rest) pkg) (let ((code (if (assoc-ref opts 'recursive)
`(define-public ,(string->symbol name) (map (match-lambda
,pkg)) ((and ('package ('name name) . rest) pkg)
(_ #f)) `(define-public ,(string->symbol name)
(gem-recursive-import package-name 'rubygems)) ,pkg))
(let ((sexp (gem->guix-package package-name))) (_ #f))
(if sexp sexp #f))))) (gem-recursive-import package-name package-version))
(match code (let ((sexp (gem->guix-package package-name #:version package-version)))
((or #f '(#f)) (if sexp sexp #f)))))
(leave (G_ "failed to download meta-data for package '~a'~%") (match code
package-name)) ((or #f '(#f))
(_ code)))) (leave (G_ "failed to download meta-data for package '~a'~%")
package-name))
(_ code)))))
(() (()
(leave (G_ "too few arguments~%"))) (leave (G_ "too few arguments~%")))
((many ...) ((many ...)

View File

@ -3,6 +3,7 @@
;;; Copyright © 2016 Ricardo Wurmus <rekado@elephly.net> ;;; Copyright © 2016 Ricardo Wurmus <rekado@elephly.net>
;;; Copyright © 2018 Oleg Pykhalov <go.wigust@gmail.com> ;;; Copyright © 2018 Oleg Pykhalov <go.wigust@gmail.com>
;;; Copyright © 2021 Sarah Morgensen <iskarian@mgsn.dev> ;;; Copyright © 2021 Sarah Morgensen <iskarian@mgsn.dev>
;;; Copyright © 2022 Taiju HIGASHI <higashi@taiju.info>
;;; ;;;
;;; This file is part of GNU Guix. ;;; This file is part of GNU Guix.
;;; ;;;
@ -44,6 +45,22 @@
\"licenses\": [\"MIT\", \"Apache 2.0\"] \"licenses\": [\"MIT\", \"Apache 2.0\"]
}") }")
(define test-foo-v2-json
"{
\"name\": \"foo\",
\"version\": \"2.0.0\",
\"sha\": \"f3676eafca9987cb5fe263df1edf2538bf6dafc712b30e17be3543a9680547a8\",
\"info\": \"A cool gem\",
\"homepage_uri\": \"https://example.com\",
\"dependencies\": {
\"runtime\": [
{ \"name\": \"bundler\" },
{ \"name\": \"bar\" }
]
},
\"licenses\": [\"MIT\", \"Apache 2.0\"]
}")
(define test-bar-json (define test-bar-json
"{ "{
\"name\": \"bar\", \"name\": \"bar\",
@ -103,6 +120,35 @@
(x (x
(pk 'fail x #f))))) (pk 'fail x #f)))))
(test-assert "gem->guix-package with a specific version"
;; Replace network resources with sample data.
(mock ((guix http-client) http-fetch
(lambda (url . rest)
(match url
("https://rubygems.org/api/v2/rubygems/foo/versions/2.0.0.json"
(values (open-input-string test-foo-v2-json)
(string-length test-foo-v2-json)))
(_ (error "Unexpected URL: " url)))))
(match (gem->guix-package "foo" #:version "2.0.0")
(('package
('name "ruby-foo")
('version "2.0.0")
('source ('origin
('method 'url-fetch)
('uri ('rubygems-uri "foo" 'version))
('sha256
('base32
"1a270mlajhrmpqbhxcqjqypnvgrq4pgixpv3w9gwp1wrrapnwrzk"))))
('build-system 'ruby-build-system)
('propagated-inputs ('list 'bundler 'ruby-bar))
('synopsis "A cool gem")
('description "This package provides a cool gem")
('home-page "https://example.com")
('license ('list 'license:expat 'license:asl2.0)))
#t)
(x
(pk 'fail x #f)))))
(test-assert "gem-recursive-import" (test-assert "gem-recursive-import"
;; Replace network resources with sample data. ;; Replace network resources with sample data.
(mock ((guix http-client) http-fetch (mock ((guix http-client) http-fetch
@ -170,4 +216,71 @@
(x (x
(pk 'fail x #f))))) (pk 'fail x #f)))))
(test-assert "gem-recursive-import with a specific version"
;; Replace network resources with sample data.
(mock ((guix http-client) http-fetch
(lambda (url . rest)
(match url
("https://rubygems.org/api/v2/rubygems/foo/versions/2.0.0.json"
(values (open-input-string test-foo-v2-json)
(string-length test-foo-v2-json)))
("https://rubygems.org/api/v1/gems/bar.json"
(values (open-input-string test-bar-json)
(string-length test-bar-json)))
("https://rubygems.org/api/v1/gems/bundler.json"
(values (open-input-string test-bundler-json)
(string-length test-bundler-json)))
(_ (error "Unexpected URL: " url)))))
(match (gem-recursive-import "foo" "2.0.0")
((('package
('name "ruby-bar")
('version "1.0.0")
('source
('origin
('method 'url-fetch)
('uri ('rubygems-uri "bar" 'version))
('sha256
('base32
"1a270mlajhrmpqbhxcqjqypnvgrq4pgixpv3w9gwp1wrrapnwrzk"))))
('build-system 'ruby-build-system)
('propagated-inputs ('list 'bundler))
('synopsis "Another cool gem")
('description "Another cool gem")
('home-page "https://example.com")
('license #f)) ;no licensing info
('package
('name "ruby-bundler")
('version "1.14.2")
('source
('origin
('method 'url-fetch)
('uri ('rubygems-uri "bundler" 'version))
('sha256
('base32
"1446xiz7zg0bz7kgx9jv84y0s4hpsg61dj5l3qb0i00avc1kxd9v"))))
('build-system 'ruby-build-system)
('synopsis "Ruby gem bundler")
('description "Ruby gem bundler")
('home-page "https://bundler.io/")
('license 'license:expat))
('package
('name "ruby-foo")
('version "2.0.0")
('source
('origin
('method 'url-fetch)
('uri ('rubygems-uri "foo" 'version))
('sha256
('base32
"1a270mlajhrmpqbhxcqjqypnvgrq4pgixpv3w9gwp1wrrapnwrzk"))))
('build-system 'ruby-build-system)
('propagated-inputs ('list 'bundler 'ruby-bar))
('synopsis "A cool gem")
('description "This package provides a cool gem")
('home-page "https://example.com")
('license ('list 'license:expat 'license:asl2.0))))
#t)
(x
(pk 'fail x #f)))))
(test-end "gem") (test-end "gem")

View File

@ -1,5 +1,6 @@
;;; GNU Guix --- Functional package management for GNU ;;; GNU Guix --- Functional package management for GNU
;;; Copyright © 2015, 2021 Ludovic Courtès <ludo@gnu.org> ;;; Copyright © 2015, 2021 Ludovic Courtès <ludo@gnu.org>
;;; Copyright © 2022 Maxime Devos <maximedevos@telenet.be>
;;; ;;;
;;; This file is part of GNU Guix. ;;; This file is part of GNU Guix.
;;; ;;;
@ -18,6 +19,10 @@
(define-module (test-gnu-maintenance) (define-module (test-gnu-maintenance)
#:use-module (guix gnu-maintenance) #:use-module (guix gnu-maintenance)
#:use-module (guix tests)
#:use-module (guix tests http)
#:use-module (guix upstream)
#:use-module (guix utils)
#:use-module (srfi srfi-1) #:use-module (srfi srfi-1)
#:use-module (srfi srfi-64) #:use-module (srfi srfi-64)
#:use-module (ice-9 match)) #:use-module (ice-9 match))
@ -55,4 +60,28 @@
("mpg321_0.3.2.orig.tar.gz" "0.3.2") ("mpg321_0.3.2.orig.tar.gz" "0.3.2")
("bvi-1.4.1.src.tar.gz" "1.4.1"))))) ("bvi-1.4.1.src.tar.gz" "1.4.1")))))
(test-assert "latest-html-release, scheme-less URIs"
(with-http-server
`((200 "<html xmlns=\"http://www.w3.org/1999/xhtml\">
<head>
<title>Releases (on another domain)!</title>
</head>
<body
<a href=\"//another-site/foo-2.tar.gz\">version 1</a>
</body>
</html>"))
(let ()
(define package
(dummy-package "foo"
(source
(dummy-origin
(uri (string-append (%local-url) "/foo-1.tar.gz"))))
(properties
`((release-monitoring-url . ,(%local-url))))))
(define update ((upstream-updater-latest %generic-html-updater) package))
(define expected-new-url "http://another-site/foo-2.tar.gz")
(and (pk 'u update)
(equal? (upstream-source-version update) "2")
(equal? (list expected-new-url) (upstream-source-urls update))))))
(test-end) (test-end)