summaryrefslogtreecommitdiff
path: root/guix
AgeCommit message (Expand)Author
2022-09-26gnu-maintenance: Simplify latest-savannah-release....As latest-html-release now produces mirror:// URIs where possible, the additional post-processing is not necessary anymore. As a test, try updating 'gash', the mirror:// URI remains. * gnu-maintenance.scm (latest-savannah-release): Do not call adjusted-upstream-source on the result. Signed-off-by: Ludovic Courtès <ludo@gnu.org> Maxime Devos
2022-09-26download: Switch savannah mirrors to HTTPS URLs....The URI scheme used for nongnu.freemirror.org needs to be consistent between (guix download) and (guix gnu-maintenance) to make the simplified savannah-updater (of a later commit) work. While we're at it, switch the other mirrors to https as well. http://download.savannah.gnu.org/releases-noredirect/ is left unmodified because it 404s * download.scm (%mirrors)[savannah]: Switch from http to https where possible. Signed-off-by: Ludovic Courtès <ludo@gnu.org> Maxime Devos
2022-09-26gnu-maintenance: Produce mirror:// URIs in latest-html-release....Partially fixes <https://issues.guix.gnu.org/57477>. I'm not aware of a package using both latest-html-release and mirrors, so it has not been completely tested. However, updating "yt-dlp" appears to work (except for git-fetch not being supported yet). The expression for the signature-urls field had to be tweaked to not call uri-mirror-rewrite on #false. * guix/gnu-maintenance.scm (latest-html-release)[url->research]{urls,signature-urls}: Call uri-mirror-rewrite on the URLs. Co-authored-by: Ludovic Courtès <ludo@gnu.org> Maxime Devos
2022-09-26gnu-maintenance: Produce mirror:// URIs in latest-ftp-release....Partially fixes <https://issues.guix.gnu.org/57477>. As a test, try updating gnupg. Before the patch, a ftp:// URL was produced, now the mirror:// is preserved. * guix/gnu-maintenance.scm (latest-ftp-release)[file->source]{urls,signature-urls}: Call uri-mirror-rewrite on the URLs. Signed-off-by: Ludovic Courtès <ludo@gnu.org> Maxime Devos
2022-09-26lint: Extract logic of 'check-mirror-url'....It will be useful for fixing <https://issues.guix.gnu.org/57477>. * guix/lint.scm (check-mirror-url): Extract mirror://-constructing code to ... * guix/gnu-maintenance.scm (uri-mirror-rewrite): ... here, tweaking the API and implementation in anticipation of future users. Co-authored-by: Ludovic Courtès <ludo@gnu.org> Maxime Devos
2022-09-24build-system/go: Respect #:imported-modules when cross-compiling....Previously, #:imported-modules was ignored, causing cross-compilation failures. This bug seems seems to have been introduced in e37dcf63dcea0817ffd74722ee5ff2d103aa2157. After this commit, there remain other cross-compilation problems, e.g. <https://issues.guix.gnu.org/51981> fixes one of them. * guix/build-system/go.scm (go-cross-build)[builder]: Wrap in with-imported-modules. Signed-off-by: Ludovic Courtès <ludo@gnu.org> Maxime Devos
2022-09-24narinfo: Fix misleading docstring....The misleading docstring had been here from the start, in commit cdea30e061490a521f1e9c66ff870ca98ae5d7e5. * guix/narinfo.scm (valid-narinfo?): Fix docstring. Ludovic Courtès
2022-09-24gnu: Add compression module....Move the compression record to a dedicated module so that it can be used outside (guix scripts pack) module. * guix/scripts/pack.scm (<compressor>, %compressors, lookup-compressor): Move it to ... * gnu/compression.scm: ... this new file. * gnu/ci.scm: Adapt it. * local.mk (GNU_SYSTEM_MODULES): Add it. Mathieu Othacehe
2022-09-24platforms: x86: Rename Hurd hurd to i586-gnu....* guix/platforms/x86.scm (hurd): Rename it to ... (i586-gnu): ... this variable. * gnu/system/images/hurd.scm (hurd-disk-image, hurd-barebones-disk-image, hurd-barebones-qcow2-image): Adapt those. Mathieu Othacehe
2022-09-20home: import: Use (guix read-print) to render the config file....* guix/scripts/home/import.scm (manifest+configuration-files->code): Insert calls to 'comment' and 'vertical-space'. (import-manifest): Use 'pretty-print-with-comments/splice' instead of a loop on 'pretty-print'. * tests/home-import.scm (remove-recursively): New procedure. (eval-test-with-home-environment): Use it. Ludovic Courtès
2022-09-20read-print: Add rule for 'home-bash-configuration'....* guix/read-print.scm (%newline-forms): Add 'home-bash-configuration'. Ludovic Courtès
2022-09-20read-print: Correctly support multiple same-named newline forms....Previously (home-environment (services ...)) would not be considered a "newline form". This fixes it. * guix/read-print.scm (newline-form?): Use 'vhash-foldq*' instead of 'vhash-assq' and iterate over candidates. * tests/read-print.scm: Add test. Ludovic Courtès
2022-09-20weather: Actually show the weather....* guix/scripts/weather.scm (report-server-coverage): Show a weather icon. Ludovic Courtès
2022-09-20import/cran: description->package: Use COND and computed booleans....* guix/import/cran.scm (description->package): Use COND with previously computed booleans instead of using CASE on REPOSITORY. Ricardo Wurmus
2022-09-20import/cran: download: Accept optional REF argument....* guix/import/cran.scm (download): Accept REF argument for git downloads. Ricardo Wurmus
2022-09-17gnu-maintenance: Support // URLs in latest-html-release....This makes "./pre-inst-env guix refresh -u" download the release tarball from the right place -- previously, it downloaded from https://www.libreoffice.org//download.documentfoundation.org/libreoffice/src/7.4.0/libreoffice-7.4.0.3.tar.xz?idx=1 whereas it should download from https://download.documentfoundation.org/libreoffice/src/7.4.0/libreoffice-7.4.0.3.tar.xz?idx=1 instead. * guix/gnu-maintenance.scm (latest-html-release)[url-release]: Adjust computation in the case of an absolute URI-reference without a scheme. * tests/gnu-maintenance.scm ("latest-html-release, scheme-less URIs"): Test it. Signed-off-by: Christopher Baines <mail@cbaines.net> Maxime Devos
2022-09-17import: gem: Support importing a specific version of a gem....* guix/import/gem.scm: (rubygems-fetch, gem->guix-package) (gem-recursive-import): Fix to fetch the specified version of the gem. * guix/scripts/import/gem.scm (show-help): Update the help message. (guix-import-gem): Modify so the version number to be passed to subsequent procedures. * tests/gem.scm: Add tests. * doc/guix.texi (Invoking guix import): Document. Signed-off-by: Christopher Baines <mail@cbaines.net> Taiju HIGASHI
2022-09-13import: gnome: Improve version handling logic....Before this change, we'd get: $ guix refresh gedit updating from version 40.1 to version 43.alpha... This is because the new GNOME version scheme introduced in 2021 with GNOME 40 was not treated correctly. Also, no longer ignore odd numbered minor versions, as this appears to be a declining practice in GNOME. * guix/import/gnome.scm (latest-gnome-release) <pre-release-text?>: New predicate. <even-minor-version?>: Rename to... <release-version?>: ...this. Return #f in case the version corresponds to a development release. * guix/import/gnome.scm (latest-gnome-release): Adjust accordingly. Maxim Cournoyer
2022-09-11build-system: emacs: Use new function for autoloads generation...* guix/build/emacs-utils.scm (emacs-generate-autoloads): Use 'loaddefs-generate' to create autoloads instead of 'update-directory-autoloads' if we are using a new enough Emacs Signed-off-by: Liliana Marie Prikler <liliana.prikler@gmail.com> Morgan Smith
2022-09-11build-system: emacs: Use native compilation....* guix/build/emacs-build-system.scm (add-install-to-native-load-path): New variable. (build): Replace ‘emacs-byte-compile-directory’ with ‘emacs-compile-directory’. Delete already compiled files in the working directory prior to compilation. (%standard-phases): Add ‘add-install-to-native-load-path’ after ‘expand-load-path’. Liliana Marie Prikler
2022-09-11guix: emacs-utils: Add emacs-compile-directory....* guix/build/emacs-utils.scm (emacs-compile-directory): New variable. Liliana Marie Prikler
2022-09-08syscalls: Avoid repeated calls to 'syscall->procedure'....Commit 7df4d3465d305271d4fdf4e6f886a248d63b82c4 and others changed 'mount', 'umount', & co. so they would call 'syscall->procedure' at each call. This change reverts to the previous behavior, where 'syscall->procedure' is called once. * guix/build/syscalls.scm (mount, umount, reboot, load-linux-module): Call 'syscall->procedure' only once. Ludovic Courtès
2022-09-08import: gnome: Reject version strings such as "43.alpha"....Reported by Maxim Cournoyer. This is a followup to 61b63e7fa73be8828af2b36d196c3676c974e119. * guix/import/gnome.scm (latest-gnome-release)[even-minor-version?]: Reject VERSION is the minor or micro part is not an integer. Ludovic Courtès
2022-09-08search-paths: Tweak $SSL_CERT_DIR comment....* guix/search-paths.scm ($SSL_CERT_DIR): Fix typos and tweak comment. Ludovic Courtès
2022-09-08search-paths: Clarify $GUIX_EXTENSIONS_PATH comment....* guix/search-paths.scm ($GUIX_EXTENSIONS_PATH): Clarify comment. Ludovic Courtès
2022-09-08search-paths: Remove redundant uses of 'define-public'....* guix/search-paths.scm ($GUIX_EXTENSIONS_PATH, $SSL_CERT_DIR, $SSL_CERT_FILE): Use 'define', not 'define-public'. Ludovic Courtès
2022-09-07guix: platform: Use #false instead of #f....* guix/platform.scm (<platform>): Adapt it. Mathieu Othacehe
2022-09-07profiles: Implicitly set GUIX_EXTENSIONS_PATH....* guix/build/profiles.scm (manifest-sexp->inputs+search-paths): Always return a search path for GUIX_EXTENSIONS_PATH. * guix/search-paths.scm ($GUIX_EXTENSIONS_PATH): New variable. This allows Guix to find extensions without any need for users to set GUIX_EXTENSIONS_PATH manually. Signed-off-by: Efraim Flashner <efraim@flashner.co.il> (unmatched-parenthesis
2022-09-06import: gnome: Do not require even minor for two-number version strings....That way, "guix refresh gnome-keyring" will properly return "42.1" instead of "42.0". Reported by Maxim Cournoyer. * guix/import/gnome.scm (latest-gnome-release)[even-minor-version?]: Tweak for GNOME applications. Ludovic Courtès
2022-09-04store: Open daemon connections with SOCK_CLOEXEC....Previously, 'guix shell' for example would leak the socket that's connected to the daemon. * guix/store.scm (open-unix-domain-socket, open-inet-socket): Pass SOCK_CLOEXEC to 'socket'. * tests/guix-shell.sh: Add test. Ludovic Courtès
2022-09-04store: Remove unused variable and 'socket' call....* guix/store.scm (open-inet-socket): Remove unused 'sock' variable. Ludovic Courtès
2022-09-02read-print: Improve declaration of integer bases....This is a followup to c3b1cfe76b7038f4030d7d207ffc417fed9a7ead. * guix/read-print.scm (%symbols-followed-by-octal-integers) (%symbols-followed-by-hexadecimal-integers): Remove. * guix/read-print.scm (%integer-forms): New variable. (integer->string)[form-base, octal?]: New procedures. Rewrite accordingly. Ludovic Courtès
2022-09-02read-print: Define forms for which \n, \t, etc. are not escaped....Previously, the pretty-printer would unconditionally leave everything but double-quotes and backslashes unescaped when rendering a string. With this change, the previous behavior only applies to forms listed in %NATURAL-WHITESPACE-STRING-FORMS. * guix/read-print.scm (%natural-whitespace-string-forms): New variable. (printed-string): New procedure. (pretty-print-with-comments): Use it instead of 'escaped-string'. * tests/read-print.scm: Add test. Ludovic Courtès
2022-09-01read-print: Guess the base to use for integers being printed....Fixes <https://issues.guix.gnu.org/57090>. Reported by Christopher Rodriguez <yewscion@gmail.com>. * guix/read-print.scm (%symbols-followed-by-octal-integers) (%symbols-followed-by-hexadecimal-integers): New variables. * guix/read-print.scm (integer->string): New procedure. (pretty-print-with-comments): Use it. * tests/read-print.scm: Add test. Ludovic Courtès
2022-08-31pull: Create a version 3 manifest....This makes the profile readable by older Guix instances. This is a followup to c9fbd40785a99e13a59d8e530830ce85220a9871. Fixes <https://issues.guix.gnu.org/57306>. Reported by Arun Isaac <arunisaac@systemreboot.net>. * guix/profiles.scm (%manifest-format-version): Export. * guix/scripts/package.scm (build-and-use-profile): Add #:format-version and pass it to 'profile-derivation'. * guix/scripts/pull.scm (build-and-install): Pass #:format-version 3. Ludovic Courtès
2022-08-31reconfigure: Use 'current-channels' to obtain provenance data....This reinstates a modified version of b08439809f0868a74d0bd0e14d45cb3e5dd46a8c, which contained a thinko. Previously, build-time metadata from (guix config) would be ignored when available--e.g., when running /run/current-system/profile/bin/guix. This is a followup to 316fc2acbb112bfa572ae30f95a93bcd56621234. * guix/scripts/system/reconfigure.scm (check-forward-update): Use 'current-channels' rather than 'current-profile' + 'profile-channels'. Ludovic Courtès
2022-08-30scripts: system: Check the image operating-system....* guix/scripts/system.scm (process-action): Check that the provided image has a defined operating-system. Mathieu Othacehe
2022-08-30guix system: Use standard cross and native build options....This change prevents guix system from erroring out with an ugly backtrace when it's passed an invalid value to the “--system” or “--target” option. It also adds the “--list-systems” and “--list-targets” options. The manual section about guix system doesn't mention the “--target” option, so add it there. * guix/scripts/system (show-help): Call show-cross-build-options-help and show-native-build-options-help. (%options): Remove own implementation of “system” and “target” options and use the ones in %standard-cross-build-options and %standard-native-build-options. * doc/guix.texi (Invoking guix system): Document “--target” option. Signed-off-by: Mathieu Othacehe <othacehe@gnu.org> Thiago Jung Bauermann
2022-08-30Revert "reconfigure: Use 'current-channels' to obtain provenance data."...This fixes <https://issues.guix.gnu.org/57480>. This reverts commit b08439809f0868a74d0bd0e14d45cb3e5dd46a8c. 宋文武
2022-08-30reconfigure: Use 'current-channels' to obtain provenance data....Previously, build-time metadata from (guix config) would be ignored when available--e.g., when running /run/current-system/profile/bin/guix. This is a followup to 316fc2acbb112bfa572ae30f95a93bcd56621234. * guix/scripts/system/reconfigure.scm (check-forward-update): Use 'current-channels' rather than 'current-profile' + 'profile-channels'. Ludovic Courtès
2022-08-28gexp: directory-union: Fix documentation....* guix/gexp.scm (directory-union): Fix documentation. Maxim Cournoyer
2022-08-27gnu: scons: Move to (gnu packages build-tools)....* gnu/packages/python-xyz.scm (scons, scons-python2): Move from here ... * gnu/packages/build-tools.scm (scons, scons-python2): ... to here. * gnu/packages/direct-connect.scm, gnu/packages/disk.scm, gnu/packages/game-development.scm, gnu/packages/gps.scm, gnu/packages/image.scm, gnu/packages/installers.scm, gnu/packages/web.scm, gnu/packages/xdisorg.scm: Adjust module imports accordingly. * guix/build-system/scons.scm (default-scons): Likewise. Marius Bakke
2022-08-25import/utils: beautify-description: Add case for "Implements"....* guix/import/utils.scm (beautify-description): Add case to transform sentences beginning with "Implements". Ricardo Wurmus
2022-08-19build-system/gnu: Fix docstring....* guix/build-system/gnu.scm (dist-package): Fix docstring. Andrew Tropin
2022-08-16ui: Describe package outputs....* guix/ui.scm (package->recutils): Output outputs with their descriptions, one per line. * po/packages/Makevars (XGETTEXT_OPTIONS): Add ‘output-synopsis’ as keyword. Liliana Marie Prikler
2022-08-11build-system/channel: Correctly handle store file name from (gnu ci)....This is a followup to cf60a0a906440ccb007bae1243c3e0397c3a0aba. Reported by Mathieu Othacehe <othacehe@gnu.org>. * guix/build-system/channel.scm (build-channels): Add 'string?' case. Ludovic Courtès
2022-08-10read-print: Remove unused procedure....* guix/read-print.scm (combine-vertical-space): Remove. Ludovic Courtès
2022-08-10read-print: Report missing closing parens instead of looping....Fixes <https://issues.guix.gnu.org/57093>. Reported by Mohammed AMAR-BENSABER <renken@shione.net>. Previously 'read-with-comments' would enter an infinite loop. * guix/read-print.scm (read-with-comments)[missing-closing-paren-error]: New procedure. Call it when 'loop' as called from 'liip' returns EOF. * tests/read-print.scm ("read-with-comments: missing closing paren"): New test. Ludovic Courtès
2022-08-10ssh: 'open-ssh-session' gracefully handles connection timeouts....* guix/ssh.scm (open-ssh-session): Add case for 'again. Ludovic Courtès
2022-08-10gnu: system: file-systems: Add shared flag....* gnu/build/file-systems.scm (mount-flags->bit-mask, mount-file-system): Handle shared flag. * gnu/system/file-systems.scm (invalid-file-system-flags): Add shared to known flags. * guix/build/syscalls.scm (MS_SHARED): New variable. * doc/guix.texi (File Systems): Document shared flag. Oleg Pykhalov