aboutsummaryrefslogtreecommitdiff
path: root/pkgs/build-support
diff options
context:
space:
mode:
authorFrederik Rietdijk <fridh@fridh.nl>2020-11-27 15:09:19 +0100
committerFrederik Rietdijk <fridh@fridh.nl>2020-11-27 15:09:19 +0100
commitb2a3891e12777fa5e16bc93bc95c0d5ba256ebaf (patch)
tree220c385a8657d85bb6b305819a1842a3b1f4079c /pkgs/build-support
parent977848375167f4671a03ccc0dbf5896f4cf0d3fe (diff)
parentbe36f6f0a0ffbeef228a021f5a343f5ce7a183de (diff)
Merge master into staging-next
Diffstat (limited to 'pkgs/build-support')
-rwxr-xr-xpkgs/build-support/appimage/appimage-exec.sh10
-rw-r--r--pkgs/build-support/docker/default.nix4
-rw-r--r--pkgs/build-support/fetchfossil/default.nix4
-rw-r--r--pkgs/build-support/make-desktopitem/default.nix21
-rw-r--r--pkgs/build-support/singularity-tools/default.nix4
-rw-r--r--pkgs/build-support/vm/default.nix32
6 files changed, 41 insertions, 34 deletions
diff --git a/pkgs/build-support/appimage/appimage-exec.sh b/pkgs/build-support/appimage/appimage-exec.sh
index 82ebdd0bbe4a..7986c589667b 100755
--- a/pkgs/build-support/appimage/appimage-exec.sh
+++ b/pkgs/build-support/appimage/appimage-exec.sh
@@ -1,4 +1,6 @@
#!@shell@
+# shellcheck shell=bash
+
if [ -n "$DEBUG" ] ; then
set -x
fi
@@ -13,8 +15,10 @@ unpack() {
local out="$2"
# https://github.com/AppImage/libappimage/blob/ca8d4b53bed5cbc0f3d0398e30806e0d3adeaaab/src/libappimage/utils/MagicBytesChecker.cpp#L45-L63
- local appimageSignature=$(readelf -h "$src" | awk 'NR==2{print $10$11;}')
- local appimageType=$(readelf -h "$src" | awk 'NR==2{print $12;}')
+ local appimageSignature;
+ appimageSignature="$(LC_ALL=C readelf -h "$src" | awk 'NR==2{print $10$11;}')"
+ local appimageType;
+ appimageType="$(LC_ALL=C readelf -h "$src" | awk 'NR==2{print $12;}')"
# check AppImage signature
if [ "$appimageSignature" != "4149" ]; then
@@ -35,7 +39,7 @@ unpack() {
# multiarch offset one-liner using same method as AppImage
# see https://gist.github.com/probonopd/a490ba3401b5ef7b881d5e603fa20c93
- offset=$(readelf -h "$src" | awk 'NR==13{e_shoff=$5} NR==18{e_shentsize=$5} NR==19{e_shnum=$5} END{print e_shoff+e_shentsize*e_shnum}')
+ offset=$(LC_ALL=C readelf -h "$src" | awk 'NR==13{e_shoff=$5} NR==18{e_shentsize=$5} NR==19{e_shnum=$5} END{print e_shoff+e_shentsize*e_shnum}')
echo "Uncompress $(basename "$src") of type $appimageType @ offset $offset"
unsquashfs -q -d "$out" -o "$offset" "$src"
chmod go-w "$out"
diff --git a/pkgs/build-support/docker/default.nix b/pkgs/build-support/docker/default.nix
index 4da26ba7cfda..db1062e1b5d8 100644
--- a/pkgs/build-support/docker/default.nix
+++ b/pkgs/build-support/docker/default.nix
@@ -24,7 +24,7 @@
storeDir ? builtins.storeDir,
substituteAll,
symlinkJoin,
- utillinux,
+ util-linux,
vmTools,
writeReferencesToFile,
writeScript,
@@ -204,7 +204,7 @@ rec {
};
inherit fromImage fromImageName fromImageTag;
- nativeBuildInputs = [ utillinux e2fsprogs jshon rsync jq ];
+ nativeBuildInputs = [ util-linux e2fsprogs jshon rsync jq ];
} ''
mkdir disk
mkfs /dev/${vmTools.hd}
diff --git a/pkgs/build-support/fetchfossil/default.nix b/pkgs/build-support/fetchfossil/default.nix
index 27933b47178a..3a4876bc5de3 100644
--- a/pkgs/build-support/fetchfossil/default.nix
+++ b/pkgs/build-support/fetchfossil/default.nix
@@ -1,11 +1,11 @@
-{stdenv, fossil}:
+{stdenv, fossil, cacert}:
{name ? null, url, rev, sha256}:
stdenv.mkDerivation {
name = "fossil-archive" + (if name != null then "-${name}" else "");
builder = ./builder.sh;
- nativeBuildInputs = [fossil];
+ nativeBuildInputs = [fossil cacert];
# Envvar docs are hard to find. A link for the future:
# https://www.fossil-scm.org/index.html/doc/trunk/www/env-opts.md
diff --git a/pkgs/build-support/make-desktopitem/default.nix b/pkgs/build-support/make-desktopitem/default.nix
index 8e51dc1b8480..329286bd3628 100644
--- a/pkgs/build-support/make-desktopitem/default.nix
+++ b/pkgs/build-support/make-desktopitem/default.nix
@@ -12,16 +12,16 @@
, mimeType ? null
, categories ? null
, startupNotify ? null
-, extraDesktopEntries ? {} # Extra key-value pairs to add to the [Desktop Entry] section. This may override other values
+, extraDesktopEntries ? { } # Extra key-value pairs to add to the [Desktop Entry] section. This may override other values
, extraEntries ? "" # Extra configuration. Will be appended to the end of the file and may thus contain extra sections
, fileValidation ? true # whether to validate resulting desktop file.
}:
-
let
# like builtins.toString, but null -> null instead of null -> ""
- nullableToString = value: if value == null then null
- else if builtins.isBool value then lib.boolToString value
- else builtins.toString value;
+ nullableToString = value:
+ if value == null then null
+ else if builtins.isBool value then lib.boolToString value
+ else builtins.toString value;
# The [Desktop entry] section of the desktop file, as attribute set.
mainSection = {
@@ -39,16 +39,19 @@ let
# Map all entries to a list of lines
desktopFileStrings =
- ["[Desktop Entry]"]
+ [ "[Desktop Entry]" ]
++ builtins.filter
(v: v != null)
(lib.mapAttrsToList
(name: value: if value != null then "${name}=${value}" else null)
mainSection
)
- ++ (if extraEntries == "" then [] else ["${extraEntries}"]);
+ ++ (if extraEntries == "" then [ ] else [ "${extraEntries}" ]);
in
-runCommandLocal "${name}.desktop" {}
+runCommandLocal "${name}.desktop"
+{
+ nativeBuildInputs = [ desktop-file-utils ];
+}
(''
mkdir -p "$out/share/applications"
cat > "$out/share/applications/${name}.desktop" <<EOF
@@ -56,5 +59,5 @@ runCommandLocal "${name}.desktop" {}
EOF
'' + lib.optionalString fileValidation ''
echo "Running desktop-file validation"
- ${desktop-file-utils}/bin/desktop-file-validate "$out/share/applications/${name}.desktop"
+ desktop-file-validate "$out/share/applications/${name}.desktop"
'')
diff --git a/pkgs/build-support/singularity-tools/default.nix b/pkgs/build-support/singularity-tools/default.nix
index d937ec626682..4a54498d117c 100644
--- a/pkgs/build-support/singularity-tools/default.nix
+++ b/pkgs/build-support/singularity-tools/default.nix
@@ -7,7 +7,7 @@
, bash
, vmTools
, gawk
-, utillinux
+, util-linux
, runtimeShell
, e2fsprogs }:
@@ -47,7 +47,7 @@ rec {
runScriptFile = shellScript "run-script.sh" runScript;
result = vmTools.runInLinuxVM (
runCommand "singularity-image-${name}.img" {
- buildInputs = [ singularity e2fsprogs utillinux gawk ];
+ buildInputs = [ singularity e2fsprogs util-linux gawk ];
layerClosure = writeReferencesToFile layer;
preVM = vmTools.createEmptyImage {
size = diskSize;
diff --git a/pkgs/build-support/vm/default.nix b/pkgs/build-support/vm/default.nix
index 909cdc6da044..2f18e96e4ce2 100644
--- a/pkgs/build-support/vm/default.nix
+++ b/pkgs/build-support/vm/default.nix
@@ -151,7 +151,7 @@ rec {
# Set the system time from the hardware clock. Works around an
# apparent KVM > 1.5.2 bug.
- ${pkgs.utillinux}/bin/hwclock -s
+ ${pkgs.util-linux}/bin/hwclock -s
export NIX_STORE=${storeDir}
export NIX_BUILD_TOP=/tmp
@@ -270,7 +270,7 @@ rec {
defaultCreateRootFS = ''
mkdir /mnt
${e2fsprogs}/bin/mkfs.ext4 /dev/${hd}
- ${utillinux}/bin/mount -t ext4 /dev/${hd} /mnt
+ ${util-linux}/bin/mount -t ext4 /dev/${hd} /mnt
if test -e /mnt/.debug; then
exec ${bash}/bin/sh
@@ -317,7 +317,7 @@ rec {
with pkgs; runInLinuxVM (
stdenv.mkDerivation {
name = "extract-file";
- buildInputs = [ utillinux ];
+ buildInputs = [ util-linux ];
buildCommand = ''
ln -s ${kernel}/lib /lib
${kmod}/bin/modprobe loop
@@ -342,7 +342,7 @@ rec {
with pkgs; runInLinuxVM (
stdenv.mkDerivation {
name = "extract-file-mtd";
- buildInputs = [ utillinux mtdutils ];
+ buildInputs = [ util-linux mtdutils ];
buildCommand = ''
ln -s ${kernel}/lib /lib
${kmod}/bin/modprobe mtd
@@ -417,7 +417,7 @@ rec {
# Make the Nix store available in /mnt, because that's where the RPMs live.
mkdir -p /mnt${storeDir}
- ${utillinux}/bin/mount -o bind ${storeDir} /mnt${storeDir}
+ ${util-linux}/bin/mount -o bind ${storeDir} /mnt${storeDir}
# Newer distributions like Fedora 18 require /lib etc. to be
# symlinked to /usr.
@@ -427,7 +427,7 @@ rec {
ln -s /usr/sbin /mnt/sbin
ln -s /usr/lib /mnt/lib
ln -s /usr/lib64 /mnt/lib64
- ${utillinux}/bin/mount -t proc none /mnt/proc
+ ${util-linux}/bin/mount -t proc none /mnt/proc
''}
echo "unpacking RPMs..."
@@ -445,7 +445,7 @@ rec {
PATH=/usr/bin:/bin:/usr/sbin:/sbin $chroot /mnt \
rpm --initdb
- ${utillinux}/bin/mount -o bind /tmp /mnt/tmp
+ ${util-linux}/bin/mount -o bind /tmp /mnt/tmp
echo "installing RPMs..."
PATH=/usr/bin:/bin:/usr/sbin:/sbin $chroot /mnt \
@@ -456,8 +456,8 @@ rec {
rm /mnt/.debug
- ${utillinux}/bin/umount /mnt${storeDir} /mnt/tmp ${lib.optionalString unifiedSystemDir "/mnt/proc"}
- ${utillinux}/bin/umount /mnt
+ ${util-linux}/bin/umount /mnt${storeDir} /mnt/tmp ${lib.optionalString unifiedSystemDir "/mnt/proc"}
+ ${util-linux}/bin/umount /mnt
'';
passthru = { inherit fullName; };
@@ -587,9 +587,9 @@ rec {
# Make the Nix store available in /mnt, because that's where the .debs live.
mkdir -p /mnt/inst${storeDir}
- ${utillinux}/bin/mount -o bind ${storeDir} /mnt/inst${storeDir}
- ${utillinux}/bin/mount -o bind /proc /mnt/proc
- ${utillinux}/bin/mount -o bind /dev /mnt/dev
+ ${util-linux}/bin/mount -o bind ${storeDir} /mnt/inst${storeDir}
+ ${util-linux}/bin/mount -o bind /proc /mnt/proc
+ ${util-linux}/bin/mount -o bind /dev /mnt/dev
# Misc. files/directories assumed by various packages.
echo "initialising Dpkg DB..."
@@ -635,10 +635,10 @@ rec {
rm /mnt/.debug
- ${utillinux}/bin/umount /mnt/inst${storeDir}
- ${utillinux}/bin/umount /mnt/proc
- ${utillinux}/bin/umount /mnt/dev
- ${utillinux}/bin/umount /mnt
+ ${util-linux}/bin/umount /mnt/inst${storeDir}
+ ${util-linux}/bin/umount /mnt/proc
+ ${util-linux}/bin/umount /mnt/dev
+ ${util-linux}/bin/umount /mnt
'';
passthru = { inherit fullName; };