summaryrefslogtreecommitdiff
path: root/guix/cpio.scm
AgeCommit message (Expand)Author
2023-02-25cpio: Properly handle Unicode characters in file names....Fixes <https://issues.guix.gnu.org/61722>. * guix/cpio.scm (file->cpio-header): Compute the file name length in bytes rather than in characters. (file->cpio-header*, special-file->cpio-header*): Likewise. (write-cpio-archive): Likewise, and write the file name as UTF-8 bytes, not textually, to avoid encoding it as ISO-8859-1. Maxim Cournoyer
2021-09-23syscalls: Deduplicate device number conversion....* guix/cpio.scm (device-number, device->major+minor): Move to, and subsequently import from, … * guix/build/syscalls.scm (device-number, device-number->major+minor): …here. Note the slight name change. (mounts): Replace 16-bit open code with a DEVICE-NUMBER call. * gnu/build/linux-boot.scm (device-number): Remove duplicate 16-bit implementation in favour of the one above. (resume-if-hibernated): Reuse DEVICE-NUMBER->MAJOR+MINOR. Tobias Geerinckx-Rice
2021-07-04cpio: Fix device number calculation....“dev_t in glibc is a 64-bit quantity, with 32-bit major and minor numbers.” — glibc's <bits/sysmacros.h> The "tests/cpio.scm" was failing because (guix cpio) treated it as a 16-bit quantity instead, leading to header mismatches with the GNU cpio reference output. * guix/cpio.scm (device-number, device->major+minor): Use all the bits. Tobias Geerinckx-Rice
2020-11-22linux-initrd: Add special-file->cpio-header*....* guix/cpio.scm (special-file->cpio-header*): New public procedure. Danny Milosavljevic
2020-11-22linux-initrd: Handle 'block-special and 'char-special cpio headers as well....* guix/cpio.scm (make-cpio-header): Handle size correctly for all file types. (mode->type): Add 'block-special, 'char-special. Danny Milosavljevic
2015-06-24linux-initrd: Produce cpio archives with zeroed timestamps, etc....* guix/cpio.scm (file->cpio-header*): New procedure. * gnu/build/linux-initrd.scm (write-cpio-archive): Add #:file->header argument to 'cpio:write-cpio-archive'. Ludovic Courtès
2015-06-24Add (guix cpio)....* guix/cpio.scm, tests/cpio.scm: New files. * Makefile.am (MODULES): Add guix/cpio.scm. (SCM_TESTS): Add tests/cpio.scm. Ludovic Courtès