guix/tests
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
..
services services: Add zram-device-service. 2020-08-02 15:54:37 +03:00
accounts.scm
base16.scm
base32.scm build: Remove references to the 'nix-hash' program. 2020-08-29 16:24:17 +02:00
base64.scm
boot-parameters.scm system: Allow separated /boot and encrypted root. 2020-12-21 18:41:11 +01:00
bournish.scm
build-utils.scm utils: Allow text substitution even in the presence of NUL characters. 2021-01-08 14:10:33 -05:00
builders.scm build-systems/gnu: Allow unpacking/repacking more kind of files. 2021-01-26 22:48:35 -05:00
cache.scm
challenge.scm packages: Introduce <content-hash> and use it in <origin>. 2020-05-22 01:29:39 +02:00
channels.scm tests: Add missing copyright line. 2020-10-12 18:23:47 +02:00
civodul.key
combinators.scm
containers.scm linux-container: Reset jailed root permissions. 2020-10-01 12:51:13 +02:00
cpan.scm
cpio.scm
cran.scm
crate.scm import: crate: Skip tests when Guile-Semver is missing. 2020-12-04 16:59:26 +01:00
cve-sample.json tests: Fix malformed JSON. 2020-12-21 17:47:35 +01:00
cve.scm
debug-link.scm
derivations.scm packages: Introduce <content-hash> and use it in <origin>. 2020-05-22 01:29:39 +02:00
discovery.scm
dsa.key
ed25519.key
ed25519.sec
ed25519bis.key git-authenticate: Add tests. 2020-06-05 22:54:06 +02:00
ed25519bis.sec git-authenticate: Add tests. 2020-06-05 22:54:06 +02:00
elpa.scm import: utils: 'recursive-import' accepts an optional version parameter. 2020-12-02 22:09:23 +01:00
file-systems.scm bootloader: grub: Allow booting from a Btrfs subvolume. 2020-05-20 08:30:35 -04:00
gem.scm
gexp.scm store-copy: 'populate-store' can optionally deduplicate files. 2020-12-15 17:32:10 +01:00
git-authenticate.scm tests: Allow 'tests/git-authenticate.scm' to run when git/gpg is missing. 2020-06-28 23:26:53 +02:00
git.scm git: 'commit-difference' really excludes the ancestors of #:excluded. 2020-06-09 00:34:52 +02:00
glob.scm guix: Add globstar support. 2020-12-09 22:25:17 +01:00
gnu-maintenance.scm
grafts.scm
graph.scm graph: Adjust test for recent OCaml changes. 2020-10-20 16:30:15 +02:00
gremlin.scm gremlin: Add 'file-needed/recursive'. 2020-12-01 21:30:28 +01:00
guix-archive.sh serialization: 'restore-file' sets canonical timestamp and permissions. 2020-12-15 17:32:09 +01:00
guix-authenticate.sh authenticate: Encode strings as ISO-8859-1. 2020-09-15 14:40:20 +02:00
guix-build-branch.sh tests: Simplify shell exit status negation; 2020-09-28 21:06:36 -05:00
guix-build.sh packages: Better preserve object identity when rewriting. 2020-10-20 16:30:15 +02:00
guix-daemon.sh tests: Simplify shell exit status negation; 2020-09-28 21:06:36 -05:00
guix-describe.sh
guix-download.sh tests: Simplify shell exit status negation; 2020-09-28 21:06:36 -05:00
guix-environment-container.sh environment: Turn "lo" up in network-less containers. 2020-10-05 10:41:59 +02:00
guix-environment.sh tests: Simplify shell exit status negation; 2020-09-28 21:06:36 -05:00
guix-gc.sh tests: Simplify shell exit status negation; 2020-09-28 21:06:36 -05:00
guix-git-authenticate.sh tests: Simplify shell exit status negation; 2020-09-28 21:06:36 -05:00
guix-graph.sh tests: Simplify shell exit status negation; 2020-09-28 21:06:36 -05:00
guix-hash.sh guix hash: Honor '-H' when used alongside '-r'. 2021-01-04 11:51:48 +01:00
guix-lint.sh tests: Simplify shell exit status negation; 2020-09-28 21:06:36 -05:00
guix-pack-localstatedir.sh
guix-pack-relocatable.sh tests: pack-relocatable: Ensure commands can run in the current namespace. 2020-12-04 13:12:08 +00:00
guix-pack.sh tests: Simplify shell exit status negation; 2020-09-28 21:06:36 -05:00
guix-package-aliases.sh guix build: Record package transformations in manifest entries. 2020-10-02 23:28:09 +02:00
guix-package-net.sh tests: Simplify shell exit status negation; 2020-09-28 21:06:36 -05:00
guix-package.sh guix package: Re-apply package transformation when upgrading. 2020-10-02 23:28:09 +02:00
guix-repl.sh repl: Look for script files in (getcwd). 2020-09-16 16:04:01 +02:00
guix-system.sh tests: Test "guix system search .". 2020-11-06 16:38:12 +01:00
hackage.scm
import-utils.scm import/utils: alist->package: Handle SPDX license names only as fallback. 2020-12-27 12:06:49 +01:00
inferior.scm
lint.scm tests: lint: Add origin patch file name test cases. 2020-12-07 12:48:26 +01:00
modules.scm
monads.scm
nar.scm nar: Deduplicate files right as they are restored. 2020-12-15 17:32:09 +01:00
networking.scm
offload.scm offload: Modify the build-machine record to accept multiple systems. 2020-08-25 13:45:27 -04:00
opam.scm import: opam: Adjust test to latest 'opam->guix-package' changes. 2020-12-08 22:58:37 +01:00
openpgp.scm openpgp: Fix argument order of 'fxbit-set?'. 2020-09-29 22:53:36 +02:00
pack.scm pack: Build the store database under a UTF-8 locale. 2020-07-20 23:25:09 +02:00
packages.scm build-systems/gnu: Allow unpacking/repacking more kind of files. 2021-01-26 22:48:35 -05:00
pki.scm
print.scm
processes.scm
profiles.scm profiles: Delete duplicate manifest entries in packages->manifest. 2020-12-07 12:48:26 +01:00
publish.scm publish: Create files in the cache as #o644. 2020-11-09 23:27:09 +01:00
pypi.scm utils: Remove compatibility re-export of 'memoize'. 2020-07-25 19:11:36 +02:00
records.scm
rsa.key
scripts.scm
search-paths.scm
services.scm
sets.scm
signing-key.pub
signing-key.sec
size.scm
snix.scm
status.scm
store-database.scm database: Remove 'register-path'. 2020-12-15 17:32:11 +01:00
store-deduplication.scm deduplicate: Create the '.links' directory lazily. 2020-12-15 17:32:12 +01:00
store-roots.scm
store.scm tests: Make sure substituted items are deduplicated. 2020-12-19 23:25:01 +01:00
substitute.scm tests: Check the mtime and permissions of substituted items. 2020-12-19 23:25:01 +01:00
swh.scm tests: Fix malformed JSON. 2020-12-21 17:47:35 +01:00
syscalls.scm tests: Do not fail when network interface aliases are present. 2020-06-28 23:32:52 +02:00
system.scm
test.drv
texlive.scm
transformations.scm transformations: Add '--with-patch'. 2020-12-27 17:23:40 +01:00
ui.scm
union.scm
upstream.scm
utils.scm Use "guile-zlib" and "guile-lzlib" instead of (guix config). 2020-08-24 13:35:24 +02:00
uuid.scm
workers.scm