guix/guix
Maxim Cournoyer cfcead2e51
build-systems/gnu: Allow unpacking/repacking more kind of files.
Before this change, only plain directories, tar or zip archives were supported
as the source of a package for the GNU build system; anything else would cause
the unpack phase to fail.  Origins relying on snippets would suffer from the
same problem.

This change adds the support to use files of the following extensions: .gz,
.Z, .bz2, .lz, and .xz, even when they are not tarballs.  Files of unknown
extensions are treated as uncompressed files and supported as well.

* guix/packages.scm (patch-and-repack): Only add the compressor utility to the
PATH when the file is compressed.  Bind more inputs in the mlet, and use them
for decompressing single files.  Adjust the decompression and compression
routines.
[decompression-type]: Remove nested variable.
* guix/build/utils.scm (compressor, tarball?): New procedures.  Move
%xz-parallel-args to the new 'compression helpers' section.
* tests/packages.scm: Add tests.  Add missing copyright year for Jan.
* guix/build/gnu-build-system.scm (first-subdirectory): Return #f when no
sub-directory was found.
(unpack): Support more file types, including uncompressed plain files.
2021-01-26 22:48:35 -05:00
..
build build-systems/gnu: Allow unpacking/repacking more kind of files. 2021-01-26 22:48:35 -05:00
build-system build-system/texlive: Allow specifying SVN references with a single component. 2021-01-14 09:02:11 -05:00
import import: elpa: Updater gracefully handles missing upstream data. 2021-01-07 12:08:40 +01:00
scripts Merge branch 'staging' into 'core-updates'. 2021-01-13 23:45:53 -05:00
store Merge branch 'staging' into 'core-updates'. 2021-01-13 23:45:53 -05:00
tests
android-repo-download.scm
avahi.scm avahi: Remove poll timeout when possible. 2020-12-20 10:40:57 +01:00
base16.scm
base32.scm
base64.scm
build-system.scm
bzr-download.scm
cache.scm
channels.scm channels: Expose the default channel in %default-channel. 2020-11-28 00:06:14 +01:00
ci.scm ci: Add "evaluation" method. 2020-12-07 16:15:55 +01:00
colors.scm
combinators.scm
config.scm.in
cpio.scm linux-initrd: Add special-file->cpio-header*. 2020-11-22 11:03:31 +01:00
cve.scm
cvs-download.scm
d3.v3.js graph: Install JavaScript files. 2021-01-04 23:54:16 +01:00
deprecation.scm
derivations.scm
describe.scm
diagnostics.scm
discovery.scm
docker.scm
download.scm download: Update ImageMagick mirror list. 2020-12-13 01:05:57 +01:00
elf.scm
ftp-client.scm
gexp.scm Merge branch 'staging' into 'core-updates'. 2021-01-13 23:45:53 -05:00
git-authenticate.scm
git-download.scm
git.scm git: 'reference-available?' handles short commit IDs. 2020-12-04 23:45:09 +01:00
glob.scm guix: Add globstar support. 2020-12-09 22:25:17 +01:00
gnu-maintenance.scm
gnupg.scm
grafts.scm
graph.js graph: Install JavaScript files. 2021-01-04 23:54:16 +01:00
graph.scm graph: Install JavaScript files. 2021-01-04 23:54:16 +01:00
hg-download.scm
http-client.scm substitute: Cache and reuse connections while substituting. 2020-12-08 22:30:08 +01:00
i18n.scm
inferior.scm maint: Require Guile >= 2.2.6. 2020-12-19 23:25:01 +01:00
licenses.scm
lint.scm upstream: Make the 'updaters' parameter optional. 2021-01-07 12:08:41 +01:00
man-db.scm
memoization.scm
modules.scm
monad-repl.scm
monads.scm maint: Require Guile >= 2.2.6. 2020-12-19 23:25:01 +01:00
nar.scm database: Remove #:deduplicate? from 'register-items'. 2020-12-15 17:32:11 +01:00
openpgp.scm
packages.scm build-systems/gnu: Allow unpacking/repacking more kind of files. 2021-01-26 22:48:35 -05:00
pki.scm
profiles.scm profiles: Delete duplicate manifest entries in packages->manifest. 2020-12-07 12:48:26 +01:00
profiling.scm
progress.scm status: Do not emit ANSI escapes when stderr is not a tty. 2020-12-18 16:13:39 +01:00
quirks.scm
records.scm
remote.scm
repl.scm
scripts.scm Discover extensions via GUIX_EXTENSIONS_PATH. 2021-01-05 23:58:21 +01:00
search-paths.scm
self.scm graph: Install JavaScript files. 2021-01-04 23:54:16 +01:00
serialization.scm daemon: Delegate deduplication to 'guix substitute'. 2020-12-19 23:25:01 +01:00
sets.scm
ssh.scm ssh: Use 'guix repl' instead of 'guile'. 2020-12-23 16:03:32 +01:00
status.scm status: Do not emit ANSI escapes when stderr is not a tty. 2020-12-18 16:13:39 +01:00
store.scm store: Fix ensure-path docstring. 2020-11-23 14:10:34 +01:00
svn-download.scm
swh.scm
tests.scm build-systems/gnu: Allow unpacking/repacking more kind of files. 2021-01-26 22:48:35 -05:00
transformations.scm transformations: Add '--with-patch'. 2020-12-27 17:23:40 +01:00
ui.scm ui: Fix order of match clauses. 2021-01-07 18:10:58 +01:00
upstream.scm upstream: Make the 'updaters' parameter optional. 2021-01-07 12:08:41 +01:00
utils.scm Merge branch 'staging' into 'core-updates'. 2021-01-13 23:45:53 -05:00
workers.scm