Age | Commit message (Expand) | Author |
2023-07-18 | guix: texlive-build-system: Improvements on non-trivial packages....* guix/build/texlive-build-system.scm (build): Ignore temporary build files
when moving runfiles around. Remove ".drv" source files prior to compiling
files. Remove need for #:TEX-DIRECTORY keyword. Handle ".ins" and ".dtx"
files in different directories.
(install): Install docfiles in "doc" output when available.
* guix/build-system/texlive.scm (texlive-build): Remove #:TEX-DIRECTORY.
* doc/guix.texi (Build Systems): Remove reference to #:TEX-DIRECTORY in
TEXLIVE-BUILD-SYSTEM documentation. Also mention it now tries to compile
".dtx" files when there is no ".ins" file.
| Nicolas Goaziou |
2023-07-17 | scripts/refresh: Remove column from spec line before sorting....We want to sort by file and line number, but the column number messes
everything up.
This is a follow-up to commit b43841c124d15eaecc41b3928f08a26dbd5c653a.
* guix/scripts/refresh.scm (guix-refresh): Trim the digits on the right of the
location string before comparing them.
| Ricardo Wurmus |
2023-07-09 | download: Remove stale Yandex GNOME mirror....* guix/download.scm (%mirrors): Remove mirror.yandex.ru from gnome.
| Tobias Geerinckx-Rice |
2023-07-09 | download: Remove broken X.org mirrors....These are still at <https://www.x.org/wiki/Releases/Download>, but
then that page hasn't been updated since 2018.
* guix/download.scm (%mirrors): Remove mirror.us.leaseweb.net and
x.cs.pu.edu.tw.
| Tobias Geerinckx-Rice |
2023-07-09 | download: Remove obsolete kernel.org mirrors....* guix/download.scm (%mirrors): Remove kernel.osuosl.org and
mirror.linux.org.au.
| Tobias Geerinckx-Rice |
2023-07-09 | download: Remove obsolete Savannah subdirectory....* guix/download.scm (%mirrors): Remove ‘releases-noredirect’ URL.
| Tobias Geerinckx-Rice |
2023-07-13 | guix: platform: Use srfi-34's raise instead of raise-exception....* guix/platform.scm (lookup-platform-by-system)
(lookup-platform-by-target)
(lookup-platform-by-target-or-system): Use srfi-34's raise instead of
raise-exception.
| Josselin Poiret |
2023-07-13 | gnu: Add libc-for-target and glibc/hurd....* gnu/packages/patches/glibc-2.37-hurd-clock_t_centiseconds.patch
* gnu/packages/patches/glibc-2.37-hurd-local-clock_gettime_MONOTONIC.patch
* gnu/packages/patches/glibc-2.37-versioned-locpath.patch: New patches.
* gnu/local.mk (dist_patch_DATA): Register them.
* gnu/packages/base.scm (glibc/hurd, libc-for-target): New variables.
(glibc/hurd-headers): Use glibc/hurd.
* gnu/packages/commencement.scm (glibc-final-with-bootstrap-bash)[outputs,
source, arguments]
(glibc-final)[source]: Use libc-for-target instead of glibc.
* gnu/packages/cross-base.scm (cross-libc/deprecated, cross-libc*): Use
libc-for-target.
This part fixes
https://issues.guix.gnu.org/63641#25
* gnu/packages/commencement.scm (%final-inputs): Change to memoized lambda
taking "system".
* gnu/packages/commencement.scm (canonical-package): Likewise, and update
user, passing (%current-system).
(make-gcc-toolchain): Update user, passing (%current-system).
* gnu/packages/base.scm (%final-inputs): Likewise.
* guix/scripts/refresh.scm (options->update-specs): Likewise.
* guix/build-system/gnu.scm (standard-packages): Add optional "system"
parameter.
(lower): Update caller.
Co-authored-by: Ludovic Courtès <ludo@gnu.org>
Co-authored-by: Janneke Nieuwenhuizen <janneke@gnu.org>
| Josselin Poiret |
2023-07-13 | shell: Really take system into account in the cache key....Fixes <https://issues.guix.gnu.org/63230>.
Previously, when running "guix shell -s X ...", OPTS would contain
something like '((system . "X") ... (system . "DEFAULT")). Thus, since
'profile-cached-gc-root' would iterate over it in this order, "DEFAULT"
would be passed to 'profile-file-cache-key' and 'profile-spec-cache-key'
instead of "X".
* guix/scripts/shell.scm (profile-cached-gc-root): Reverse OPTS before
entering 'loop'.
| Ludovic Courtès |
2023-07-12 | transformations: Allow tuning go packages....* guix/transformations.scm (build-system-with-tuning-compiler): When
checking if a microarchitecture is supported by the compiler, also check
if it is a go compiler which supports that psabi. Add a phase after
'setup-go-environment to set the go microarchitecture.
| Efraim Flashner |
2023-07-12 | guix: cpu: Add gcc-architecture->micro-architecture-level mapping....* guix/cpu.scm (gcc-architecture->micro-architecture-level): New
variable.
| Efraim Flashner |
2023-07-12 | guix: cpu: Refactor cpu->gcc-architecture....* guix/cpu.scm (cpu->gcc-architecture): Refactor to wrap all the x86_64
options inside a common letrec-syntax.
| Efraim Flashner |
2023-07-12 | guix: cpu: Rewrite fallback for x86_64 cpu->gcc-architecture....* guix/cpu.scm (cpu->gcc-architecture): Adjust the fallback case to use
cpu->micro-architecture-level.
| Efraim Flashner |
2023-07-12 | guix: cpu: Add generalized CPU matching....* guix/cpu.scm (cpu->micro-architecture-level): New variable.
| Efraim Flashner |
2023-07-12 | import/cran: Add one more package name transformation....* guix/import/cran.scm (transform-sysname): Add entry for "zlib-devel".
| Ricardo Wurmus |
2023-07-12 | refresh: Sort update specs by package location....Fixes <https://issues.guix.gnu.org/64358>.
* guix/scripts/refresh.scm (guix-refresh): Sort update specs by location from
bottom to top before updating packages.
| Ricardo Wurmus |
2023-07-11 | avahi: Fix exception when #:timeout is #f....* guix/avahi.scm (avahi-publish-service-thread): Fixes crash when timeout is
#f, which is the default for "guix publish --advertise"
Signed-off-by: Ludovic Courtès <ludo@gnu.org>
| nathan |
2023-07-11 | cache: 'file-expiration-time' uses 'lstat', not 'stat'....Fixes a bug whereby 'cached-channel-instance' would potentially consider
cache entries obsolete too early because they refer to items in the
store, which is mounted as 'noatime' on Guix System.
* guix/cache.scm (file-expiration-time): Use 'lstat' and
'false-if-exception' rather than 'stat'. This matches what (guix
scripts shell) does.
| Ludovic Courtès |
2023-07-11 | locate: Ignore unreadable manifests....Fixes <https://issues.guix.gnu.org/64187>.
* guix/scripts/locate.scm (profiles->manifest-entries): Wrap
'profile-manifest' in 'false-if-exception'.
Reported-by: Ricardo Wurmus <rekado@elephly.net>
| Ludovic Courtès |
2023-07-07 | avahi: Poll less....* guix/avahi.scm (avahi-publish-service-thread): Have #:timeout default
to #f when 'stop-loop?' is NEVER, or 500ms.
(avahi-browse-service-thread): #:timeout defaults to 500ms when
'stop-loop?' is provided.
| Ludovic Courtès |
2023-07-05 | guix: git: Set initial branch name for git-fetch....This removes the 'hint' about choosing a branch name when creating a new
git repository.
* guix/build/git.scm (git-fetch): When running 'git init' add an initial
branch name.
| Efraim Flashner |
2023-06-22 | guix: node-build-system: Delete from peerDependencies too....The current version of npm in Guix installs peerDependencies by default,
whereas previously it would just warn about missing/wrong packages.
Fixes <https://issues.guix.gnu.org/issue/64203>.
* guix/build/node-build-system.scm (delete-dependencies): Remove supplied
dependencies from peerDependencies field too.
| Lars-Dominik Braun |
2023-06-18 | Add 'guix locate'....* guix/scripts/locate.scm, tests/guix-locate.sh: New files.
* Makefile.am (MODULES): Add 'guix/scripts/locate.scm'.
(SH_TESTS): Add 'tests/guix-locate.sh'.
* po/guix/POTFILES.in: Add it.
* doc/guix.texi (Invoking guix locate): New node.
Co-authored-by: Antoine R. Dumont <antoine.romain.dumont@gmail.com>
| Ludovic Courtès |
2023-06-18 | store: Tolerate non-existent GC root directories....* guix/store/roots.scm (gc-roots): Wrap 'scandir*' call in 'catch'.
* tests/store-roots.scm ("gc-roots, initial"): New test. Move
'open-connection' call below.
| Ludovic Courtès |
2023-06-17 | gnu: Use target-hurd?, system-hurd? instead of hurd-target?, hurd-system?....* gnu/packages/hurd.scm (hurd-target?): Remove.
(hurd-system?): Move to...
* guix/utils.scm (system-hurd?): ...here.
* gnu/packages/*: Update all users, removing (gnu packages hurd) include where
now unused.
| Janneke Nieuwenhuizen |
2023-06-16 | avahi: Resolve hosts for which name resolution fails....This avoids attempts to connect to hosts that went off-line. This is
particularly important for 'guix-daemon --discover', which would so far
keep attempting to talk to LAN hosts after they vanished just because
their mDNS record hasn't expired, leading to significant delays when
fetching narinfos and substitutes.
* guix/avahi.scm (avahi-browse-service-thread)[service-resolver-callback]:
Add handler to RESOLVER-EVENT/FAILURE.
| Ludovic Courtès |
2023-06-16 | guix home: Add missing SRFI-34 import for 'raise'....Reported at <https://issues.guix.gnu.org/64031>.
* guix/scripts/home.scm: Use (srfi srfi-34), expected by
'list-generations'.
Reported-by: Steven Roose <steven@roose.io>
| Ludovic Courtès |
2023-06-16 | pull: Preserve channel ordering when using '--commit', '--url', etc....Previously using '--url', '--commit', or '--branch' would move the
'guix' channel to the front. This is okay in itself but it gratuitously
leads to a different cache key in 'cached-channel-instance'--IOW, 'guix
time-machine --commit=X' where X is already in cache would gratuitously
recompute the channel derivations.
* guix/scripts/pull.scm (channel-list): Use 'map' instead of 'find' +
'remove' + 'cons'.
| Ludovic Courtès |
2023-06-14 | packages: 'package-transitive-supported-systems' detects cycles....With this change, commands such as 'guix build' or 'guix package' report
obvious package-level cycles upfront. Derivation-level cycles are not
detected.
* guix/packages.scm (&package-cyclic-dependency-error): New condition
type.
(package-transitive-supported-systems): Define 'visited', check it, and
parameterize it.
* guix/ui.scm (call-with-error-handling): Handle
'&package-cyclic-dependency-error'.
* tests/packages.scm ("package-transitive-supported-systems detects
cycles"): Add test.
| Ludovic Courtès |
2023-06-14 | import/cran: Add another clause for ASL 2.0....* guix/import/cran.scm (string->license): Add clause for >= 2.0.
| Ricardo Wurmus |
2023-06-11 | svn-download: Do not expand keywords....Subversion keyword expansion is potentially non-reproducible as some of
them expand time strings relative to the local time zone:
https://issues.guix.gnu.org/43442#18
In practice this is not a problem in Guix since Subversion checkouts
happen in an isolated environment using the "default timezone" (UTC).
However, Software Heritage disables keyword expansion for this very
reason. By following suit, we make sure content can be retrieved from
there.
* guix/build/svn.scm (svn-fecth): Pass "--ignore-keywords" to
Subversion.
* guix/build-system/texlive.scm (%texlive-date): New variable.
* gnu/packages/java.scm (java-geronimo-xbean-reflect)
(java-geronimo-genesis-2.1): Update the source hash.
* gnu/packages/machine-learning.scm (ghmm): Likewise.
* gnu/packages/video.scm (libsmpeg, libsmpeg-with-sdl1): Likewise.
* gnu/packages/tex.scm (texlive-bin): Update the hash of the
"texlive-scripts" input, and a add a new phase that imitates
Subversion keyword expansion for scripts that need it.
(texlive-latex-base): Update the hash of the "texlive-luatexconfig"
native input.
(texlive-hyphen-base, texlive-dvipdfmx, texlive-dvips, texlive-cm)
(texlive-tex-plain, texlive-kpathsea, texlive-latexconfig)
(texlive-tetex, texlive-pdftex, texlive-xetex): Update the source
hash.
Co-authored-by: Ludovic Courtès <ludo@gnu.org>
| Timothy Sample |
2023-06-09 | records: Remove "guix" from error message....* guix/records.scm (map-fields): Tweak error message.
| Ludovic Courtès |
2023-06-09 | tests: Ensure 'elpa' test does not access the network....Previously it would try to access the real elpa.gnu.org. This would
succeed when network is available because "taxy-magit-section" is an
existing package.
* guix/import/elpa.scm (elpa-repository)
(package-from-elpa-repository?): Recognize 'gnu/http.
* tests/elpa.scm ("package-latest-release"): Use 'http' instead of
'https'. Change "taxy-magit-section" to "fake-taxy-magit-section".
| Ludovic Courtès |
2023-06-09 | import: stackage: Updater resolves inputs lazily....Fixes the "haskell-stackage" test in 'tests/lint.scm', which started
failing with e6223017d95bc615b2648f0798d9a3904d5b5f57 because the extra
HTTP GETs induced by the 'haskell-fetch' calls would fail.
* guix/import/stackage.scm (latest-lts-release): Call 'hackage-fetch'
and its continuation from within 'inputs', which is delayed. Pass it
NAME-VERSION instead of HACKAGE-NAME-VERSION.
| Ludovic Courtès |
2023-06-08 | substitute: Gracefully retry after failed partial downloads....Fixes <https://issues.guix.gnu.org/63443>.
Reported by Attila Lendvai <attila@lendvai.name>.
* guix/scripts/substitute.scm (catch-system-error): New macro.
(download-nar): Add call to 'delete-file-recursively'.
* tests/substitute.scm ("substitute, previous partial download around"):
New test.
| Ludovic Courtès |
2023-06-08 | substitute: Delete cached narinfos more than two-month old....This allows 'guix substitute' to shrink the cache a bit more, which
saves space and improves performance of cache-cleanup phases since fewer
entries need to be traversed.
* guix/scripts/substitute.scm (cached-narinfo-expiration-time): Define
'max-ttl' and use it as an upper bound.
| Ludovic Courtès |
2023-06-08 | import: Gracefully handle EPIPE....Previously, "guix import pypi f3 | head -3" would print a backtrace.
* guix/scripts/import.scm (guix-import): Wrap
'pretty-print-with-comments' call in 'leave-on-EPIPE'.
| Ludovic Courtès |
2023-06-06 | records: Use SRFI-11 instead of SRFI-71, for Guile 2.0 compatibility....This fixes a failure of 'tests/packages.scm' introduced in
b88e38d4b51b9aa0e857baeb614c000e491ad309: some of the tests import (guix
records) on the build side, which uses '%bootstrap-guile' (Guile 2.0)
where SRFI-71 is unavailable.
* guix/records.scm (match-record-inner): Use SRFI-11 instead of SRFI-71.
| Ludovic Courtès |
2023-06-05 | import/cran: Ensure current package is not among inputs....* guix/import/cran.scm (cran-package-inputs): Remove the current package from
the result.
| Ricardo Wurmus |
2023-06-04 | channels: Raise an error if dependency's introduction is malformed...* guix/channels.scm (sexp->channel-introduction): Do it.
| Josselin Poiret |
2023-06-04 | build-system: New agda-build-system....* guix/build-system/agda.scm: New file.
* guix/build/agda-build-system.scm: New file.
* Makefile.am (MODULES): Register them.
* doc/guix.texi (Build Systems): Add documentation for agda-build-system.
| Josselin Poiret |
2023-06-04 | build-system/haskell: Export default-haskell....* guix/build-system/haskell.scm: Export default-haskell.
| Josselin Poiret |
2023-06-04 | records: match-record: Do not show internal form....* guix/records.scm (lookup-field+wrapper): Attach source properties to the
field syntax object instead.
| Josselin Poiret |
2023-06-04 | records: Add MATCH-RECORD-LAMBDA....* guix/records.scm (match-record-lambda): New syntax.
* tests/records.scm ("match-record-lambda"): New test.
Signed-off-by: Josselin Poiret <dev@jpoiret.xyz>
| (unmatched-parenthesis ew syntax |
2023-06-04 | records: match-record: Support thunked and delayed fields....* guix/records.scm (match-record): Unwrap matched thunked and delayed fields.
* tests/records.scm ("match-record, thunked field",
"match-record, delayed field"): New tests.
Signed-off-by: Josselin Poiret <dev@jpoiret.xyz>
| (unmatched-parenthesis d |
2023-06-04 | records: match-record: Raise a syntax error if TYPE is nonexistent....* guix/records.scm (match-record): Raise a human-compherensible syntax error
if the given record type identifier is unbound.
Co-authored-by: Josselin Poiret <dev@jpoiret.xyz>
Signed-off-by: Josselin Poiret <dev@jpoiret.xyz>
| (unmatched-parenthesis |
2023-06-02 | environment: Fix unbound-variable bug with '--symlink'....Fixes <https://issues.guix.gnu.org/63845>.
Reported by Maxim Cournoyer <maxim.cournoyer@gmail.com>.
* guix/scripts/environment.scm (launch-environment/container): Reference
'evaluate-populate-directive' before calling 'call-with-container'.
| Ludovic Courtès |
2023-06-02 | read-print: Add 'package/inherit' special form....* guix/read-print.scm (%special-forms): Add 'package/inherit'.
| Ludovic Courtès |
2023-06-02 | ci: Reify the timestamps of evaluations....* guix/ci.scm (<evaluation>)[start-time, checkout-time,
completion-time]: New fields.
| Ludovic Courtès |
2023-06-02 | import/cran: string->license: Add another case for GPLv3+....* guix/import/cran.scm (string->license): Translate "GPL (>=3)" to gpl3+.
| Ricardo Wurmus |