guix/tests
Maxim Cournoyer 11f0698243
pack: Streamline how files are included in tarballs.
Thanks to Guillem Jover <guillem@debian.org> on the OFTC's #debian-dpkg
channel for helping with troubleshooting.

Letting GNU Tar recursively walk the complete files hierarchy side-steps the
risks associated with providing a list of file names:

1. Duplicated files in the archive (recorded as hard links by GNU Tar)
2. Missing parent directories.

The above would cause dpkg to malfunction, for example by aborting early and
skipping triggers when there were missing parent directories.

* guix/scripts/pack.scm (self-contained-tarball/builder): Do not call
POPULATE-SINGLE-PROFILE-DIRECTORY, which creates extraneous files such as
/root.  Instead, call POPULATE-STORE and INSTALL-DATABASE-AND-GC-ROOTS
individually to more precisely generate the file system.  Replace the list of
files by the current directory, "." and streamline the way options are passed.
* gnu/system/file-systems.scm (reduce-directories): Remove procedure.
* tests/file-systems.scm ("reduce-directories"): Remove test.
2021-07-18 02:10:49 -04:00
..
services services: configuration: Allow specifying prefix for serializer names. 2021-06-29 12:37:33 +02: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 Properly deal with build directories containing '~'. 2020-11-16 11:21:42 +01:00
builders.scm
cache.scm
challenge.scm guix: Move narinfo code from substitute script to module. 2021-01-16 11:51:03 +00: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 tests: Fix JSON syntax error in 'crate.scm'. 2021-01-13 22:42:49 +01:00
cve-sample.json tests: Fix malformed JSON. 2020-12-21 17:47:35 +01:00
cve.scm
debug-link.scm
derivations.scm tests: do not hard code HTTP ports 2021-03-06 11:41:48 +01:00
discovery.scm
dsa.key
ed25519.key
ed25519.sec
ed25519bis.key
ed25519bis.sec
egg.scm import: Add CHICKEN egg importer. 2021-06-03 13:05:18 +02:00
elpa.scm tests: do not hard code HTTP ports 2021-03-06 11:41:48 +01:00
file-systems.scm pack: Streamline how files are included in tarballs. 2021-07-18 02:10:49 -04:00
gem.scm
gexp.scm guix: gexp: Define gexp->approximate-sexp. 2021-06-30 13:53:00 +02: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
glob.scm guix: Add globstar support. 2020-12-09 22:25:17 +01:00
gnu-maintenance.scm gnu-maintenance: 'release-file?' accepts 'v' prefix as in "PKG-v1.2.tgz". 2021-05-28 23:04:44 +02:00
go.scm import: go: Upgrade go.mod parser. 2021-07-18 01:57:17 -04:00
grafts.scm grafts: Support rewriting UTF-16 and UTF-32 store references. 2021-04-15 03:22:55 -04:00
graph.scm graph: Adjust test for recent OCaml changes. 2020-10-20 16:30:15 +02:00
gremlin.scm
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 Add powerpc64le-linux as a supported Guix architecture. 2021-03-23 23:19:57 -07: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 environment: Fix '--root' option with relative file name. 2021-01-19 17:45:38 +01: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 packages: 'package-field-location' handles 'search-path' returning #f. 2021-02-22 12:07:45 +01: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 diagnostics, ui: Adjust to 'read-error' and 'syntax-error' in Guile 3.0.6. 2021-04-29 01:22:04 +02:00
guix-repl.sh repl: Look for script files in (getcwd). 2020-09-16 16:04:01 +02:00
guix-system.sh diagnostics, ui: Adjust to 'read-error' and 'syntax-error' in Guile 3.0.6. 2021-04-29 01:22:04 +02:00
hackage.scm import: hackage: Support "common" field and imports 2021-06-25 15:12:05 +02:00
import-utils.scm import/utils: alist->package: Handle SPDX license names only as fallback. 2020-12-27 12:06:49 +01:00
inferior.scm inferior: Support querying package replacements. 2021-05-15 12:14:47 +01:00
ipfs.scm Add (guix ipfs). 2021-04-12 18:42:22 +02:00
lint.scm lint: Check for leading whitespace in description. 2021-07-13 07:25:05 +02: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 services: openntpd: Remove support for deprecated "-s" option. 2021-01-16 23:30:59 +01:00
offload.scm offload: Modify the build-machine record to accept multiple systems. 2020-08-25 13:45:27 -04:00
opam.scm import: opam: Generate license for package. 2021-05-28 11:36:03 +02:00
openpgp.scm openpgp: Fix argument order of 'fxbit-set?'. 2020-09-29 22:53:36 +02:00
pack.scm pack: Allow embedding custom control files in deb packs. 2021-07-18 02:02:34 -04:00
packages.scm tests: Optimize 'fold-available-packages' test. 2021-02-01 16:07:18 +01:00
pki.scm
print.scm
processes.scm
profiles.scm profiles: Build union of inputs in the right order. 2021-06-22 17:55:05 +02:00
publish.scm publish: Add '--negative-ttl'. 2021-05-16 23:28:11 +02:00
pypi.scm utils: Remove compatibility re-export of 'memoize'. 2020-07-25 19:11:36 +02:00
records.scm diagnostics, ui: Adjust to 'read-error' and 'syntax-error' in Guile 3.0.6. 2021-04-29 01:22:04 +02:00
rsa.key
scripts.scm
search-paths.scm
services.scm
sets.scm
signing-key.pub
signing-key.sec
size.scm
status.scm
store-database.scm database: Validate #:nar-size and #:time when registering store items. 2021-01-31 21:49:58 +01:00
store-deduplication.scm deduplicate: Create the '.links' directory lazily. 2020-12-15 17:32:12 +01:00
store-roots.scm
store.scm store: Remove 'references/substitutes'. 2021-06-08 09:25:50 +02:00
substitute.scm daemon: 'guix substitute' replies on FD 4. 2021-04-09 17:46:38 +02:00
swh.scm swh: Test proper handling of null visit snapshot URL. 2021-01-21 11:22:08 +01:00
syscalls.scm syscalls: Add 'mounts' and the <mount> record type. 2021-02-25 11:29:35 +01:00
system.scm
test.drv
texlive.scm tests: do not hard code HTTP ports 2021-03-06 11:41:48 +01:00
transformations.scm profiles: 'package->manifest-entry' preserves transformations by default. 2021-03-05 12:49:27 +01:00
ui.scm
union.scm
upstream.scm
utils.scm utils: Add string distance. 2021-02-03 12:41:28 +01:00
uuid.scm
workers.scm