Merge staging-next into staging

This commit is contained in:
github-actions[bot] 2021-04-26 12:06:35 +00:00 committed by GitHub
commit e30742adc3
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
34 changed files with 571 additions and 104 deletions

View file

@ -15,6 +15,8 @@
, # size of the boot partition, is only used if partitionTableType is
# either "efi" or "hybrid"
# This will be undersized slightly, as this is actually the offset of
# the end of the partition. Generally it will be 1MiB smaller.
bootSize ? "256M"
, # The files and directories to be placed in the target file system.
@ -163,6 +165,8 @@ let format' = format; in let
closureInfo = pkgs.closureInfo { rootPaths = [ config.system.build.toplevel channelSources ]; };
blockSize = toString (4 * 1024); # ext4fs block size (not block device sector size)
prepareImage = ''
export PATH=${binPath}
@ -175,6 +179,24 @@ let format' = format; in let
echo $(( "$1" * 512 ))
}
# Given lines of numbers, adds them together
sum_lines() {
local acc=0
while read -r number; do
acc=$((acc+number))
done
echo "$acc"
}
mebibyte=$(( 1024 * 1024 ))
# Approximative percentage of reserved space in an ext4 fs over 512MiB.
# 0.05208587646484375
# × 1000, integer part: 52
compute_fudge() {
echo $(( $1 * 52 / 1000 ))
}
mkdir $out
root="$PWD/root"
@ -235,12 +257,53 @@ let format' = format; in let
${if diskSize == "auto" then ''
${if partitionTableType == "efi" || partitionTableType == "hybrid" then ''
additionalSpace=$(( ($(numfmt --from=iec '${additionalSpace}') + $(numfmt --from=iec '${bootSize}')) / 1000 ))
# Add the GPT at the end
gptSpace=$(( 512 * 34 * 1 ))
# Normally we'd need to account for alignment and things, if bootSize
# represented the actual size of the boot partition. But it instead
# represents the offset at which it ends.
# So we know bootSize is the reserved space in front of the partition.
reservedSpace=$(( gptSpace + $(numfmt --from=iec '${bootSize}') ))
'' else if partitionTableType == "legacy+gpt" then ''
# Add the GPT at the end
gptSpace=$(( 512 * 34 * 1 ))
# And include the bios_grub partition; the ext4 partition starts at 2MB exactly.
reservedSpace=$(( gptSpace + 2 * mebibyte ))
'' else if partitionTableType == "legacy" then ''
# Add the 1MiB aligned reserved space (includes MBR)
reservedSpace=$(( mebibyte ))
'' else ''
additionalSpace=$(( $(numfmt --from=iec '${additionalSpace}') / 1000 ))
reservedSpace=0
''}
diskSize=$(( $(set -- $(du -d0 $root); echo "$1") + $additionalSpace ))
truncate -s "$diskSize"K $diskImage
additionalSpace=$(( $(numfmt --from=iec '${additionalSpace}') + reservedSpace ))
# Compute required space in filesystem blocks
diskUsage=$(find . ! -type d -exec 'du' '--apparent-size' '--block-size' "${blockSize}" '{}' ';' | cut -f1 | sum_lines)
# Each inode takes space!
numInodes=$(find . | wc -l)
# Convert to bytes, inodes take two blocks each!
diskUsage=$(( (diskUsage + 2 * numInodes) * ${blockSize} ))
# Then increase the required space to account for the reserved blocks.
fudge=$(compute_fudge $diskUsage)
requiredFilesystemSpace=$(( diskUsage + fudge ))
diskSize=$(( requiredFilesystemSpace + additionalSpace ))
# Round up to the nearest mebibyte.
# This ensures whole 512 bytes sector sizes in the disk image
# and helps towards aligning partitions optimally.
if (( diskSize % mebibyte )); then
diskSize=$(( ( diskSize / mebibyte + 1) * mebibyte ))
fi
truncate -s "$diskSize" $diskImage
printf "Automatic disk size...\n"
printf " Closure space use: %d bytes\n" $diskUsage
printf " fudge: %d bytes\n" $fudge
printf " Filesystem size needed: %d bytes\n" $requiredFilesystemSpace
printf " Additional space: %d bytes\n" $additionalSpace
printf " Disk image size: %d bytes\n" $diskSize
'' else ''
truncate -s ${toString diskSize}M $diskImage
''}
@ -251,9 +314,9 @@ let format' = format; in let
# Get start & length of the root partition in sectors to $START and $SECTORS.
eval $(partx $diskImage -o START,SECTORS --nr ${rootPartition} --pairs)
mkfs.${fsType} -F -L ${label} $diskImage -E offset=$(sectorsToBytes $START) $(sectorsToKilobytes $SECTORS)K
mkfs.${fsType} -b ${blockSize} -F -L ${label} $diskImage -E offset=$(sectorsToBytes $START) $(sectorsToKilobytes $SECTORS)K
'' else ''
mkfs.${fsType} -F -L ${label} $diskImage
mkfs.${fsType} -b ${blockSize} -F -L ${label} $diskImage
''}
echo "copying staging root to image..."
@ -283,6 +346,9 @@ in pkgs.vmTools.runInLinuxVM (
# Some tools assume these exist
ln -s vda /dev/xvda
ln -s vda /dev/sda
# make systemd-boot find ESP without udev
mkdir /dev/block
ln -s /dev/vda1 /dev/block/254:1
mountPoint=/mnt
mkdir $mountPoint

View file

@ -10,7 +10,6 @@ with lib;
system.build.cloudstackImage = import ../../../lib/make-disk-image.nix {
inherit lib config pkgs;
diskSize = 8192;
format = "qcow2";
configFile = pkgs.writeText "configuration.nix"
''

View file

@ -40,8 +40,9 @@ in {
};
sizeMB = mkOption {
type = types.int;
default = if config.ec2.hvm then 2048 else 8192;
type = with types; either (enum [ "auto" ]) int;
default = "auto";
example = 8192;
description = "The size in MB of the image";
};

View file

@ -12,8 +12,8 @@ with lib;
system.build.openstackImage = import ../../../lib/make-disk-image.nix {
inherit lib config;
additionalSpace = "1024M";
pkgs = import ../../../.. { inherit (pkgs) system; }; # ensure we use the regular qemu-kvm package
diskSize = 8192;
format = "qcow2";
configFile = pkgs.writeText "configuration.nix"
''

View file

@ -9,8 +9,9 @@ in
options = {
virtualisation.azureImage.diskSize = mkOption {
type = with types; int;
default = 2048;
type = with types; either (enum [ "auto" ]) int;
default = "auto";
example = 2048;
description = ''
Size of disk image. Unit is MB.
'';

View file

@ -10,8 +10,9 @@ in
options = {
virtualisation.digitalOceanImage.diskSize = mkOption {
type = with types; int;
default = 4096;
type = with types; either (enum [ "auto" ]) int;
default = "auto";
example = 4096;
description = ''
Size of disk image. Unit is MB.
'';

View file

@ -18,8 +18,9 @@ in
options = {
virtualisation.googleComputeImage.diskSize = mkOption {
type = with types; int;
default = 1536;
type = with types; either (enum [ "auto" ]) int;
default = "auto";
example = 1536;
description = ''
Size of disk image. Unit is MB.
'';

View file

@ -9,8 +9,9 @@ in {
options = {
hyperv = {
baseImageSize = mkOption {
type = types.int;
default = 2048;
type = with types; either (enum [ "auto" ]) int;
default = "auto";
example = 2048;
description = ''
The size of the hyper-v base image in MiB.
'';

View file

@ -11,8 +11,9 @@ in {
options = {
virtualbox = {
baseImageSize = mkOption {
type = types.int;
default = 50 * 1024;
type = with types; either (enum [ "auto" ]) int;
default = "auto";
example = 50 * 1024;
description = ''
The size of the VirtualBox base image in MiB.
'';

View file

@ -18,8 +18,9 @@ in {
options = {
vmware = {
baseImageSize = mkOption {
type = types.int;
default = 2048;
type = with types; either (enum [ "auto" ]) int;
default = "auto";
example = 2048;
description = ''
The size of the VMWare base image in MiB.
'';

View file

@ -4,13 +4,13 @@
stdenv.mkDerivation rec {
pname = "flacon";
version = "6.1.0";
version = "7.0.1";
src = fetchFromGitHub {
owner = "flacon";
repo = "flacon";
rev = "v${version}";
sha256 = "04yp3aym7h70xjni9ancqv5lc4zds5a8dgw3fzgqs8k5nmh074gv";
sha256 = "sha256-35tARJkyhC8EisIyDCwuT/UUruzLjJRUuZysuqeNssM=";
};
nativeBuildInputs = [ cmake pkg-config wrapQtAppsHook ];

View file

@ -0,0 +1,69 @@
{ lib
, python3
, fetchFromGitHub
, appstream-glib
, desktop-file-utils
, gettext
, glib
, gobject-introspection
, gst_all_1
, gtk3
, libhandy
, librsvg
, meson
, ninja
, pkg-config
, wrapGAppsHook
}:
python3.pkgs.buildPythonApplication rec {
pname = "mousai";
version = "0.3.1";
format = "other";
src = fetchFromGitHub {
owner = "SeaDve";
repo = "Mousai";
rev = "v${version}";
sha256 = "0x57dci0prhlj79h74yh79cazn48rn0bckz5j3z4njk4fwc3fvfx";
};
postPatch = ''
patchShebangs build-aux/meson
'';
nativeBuildInputs = [
appstream-glib
desktop-file-utils
gettext
glib
gtk3
meson
ninja
pkg-config
wrapGAppsHook
];
buildInputs = [
gobject-introspection
gst_all_1.gstreamer
gst_all_1.gst-plugins-base
gst_all_1.gst-plugins-good
gtk3
libhandy
librsvg
];
propagatedBuildInputs = with python3.pkgs; [
pygobject3
requests
];
meta = with lib; {
description = "Identify any songs in seconds";
homepage = "https://github.com/SeaDve/Mousai";
license = licenses.gpl3Plus;
maintainers = with maintainers; [ dotlambda ];
};
}

View file

@ -12,14 +12,14 @@ assert stdenv ? glibc;
# find the downloads needed for new versions
#
# to test:
# $ for e in cpp modeling platform sdk java committers rcp rust; do nix build -f default.nix pkgs.eclipses.eclipse-${e} -o eclipse-${e}; done
# $ for e in cpp modeling platform sdk java jee committers rcp; do nix build -f default.nix pkgs.eclipses.eclipse-${e} -o eclipse-${e}; done
let
platform_major = "4";
platform_minor = "18";
year = "2020";
month = "12";
timestamp = "${year}${month}021800";
platform_minor = "19";
year = "2021";
month = "03";
timestamp = "${year}${month}031800";
gtk = gtk3;
in rec {
@ -37,7 +37,7 @@ in rec {
src =
fetchurl {
url = "https://www.eclipse.org/downloads/download.php?r=1&nf=1&file=/technology/epp/downloads/release/${year}-${month}/R/eclipse-cpp-${year}-${month}-R-linux-gtk-x86_64.tar.gz";
sha512 = "MR6ddNmBKyXCyVGlGPfq6K2zJRywy4I5QDXji3rh81eJQ6zkEguo+VvD75i/szg/+FbCVA09vDVV06JgL4SHwQ==";
sha512 = "3j0lmll0glcr9p0hf49jiaq9xr8hadsy0y58wbbkdpldj3rclxr056dkswmiw2bkypfiwrjygbli5qxyp6mz380562hc2kjwijqq476";
};
};
@ -49,7 +49,7 @@ in rec {
src =
fetchurl {
url = "https://www.eclipse.org/downloads/download.php?r=1&nf=1&file=/technology/epp/downloads/release/${year}-${month}/R/eclipse-modeling-${year}-${month}-R-linux-gtk-x86_64.tar.gz";
sha512 = "hSi3IL+fWhlUfEJYv4LFO7WNbZpiofAgNGZbEOIBS0VpeHfJ5Y6UKMKMLfQlG3hlkAL5jg/cEJKb/ad4DxHbjQ==";
sha512 = "0iqz9a3ixcbmaci6lnspdnzwd2h1fcygi54hmsl89pq3d1k5scyhcl123ixi24csi782w847bn0lq00n0zwras9akmnhsflra4mw5pz";
};
};
@ -61,7 +61,7 @@ in rec {
src =
fetchurl {
url = "https://www.eclipse.org/downloads/download.php?r=1&nf=1&file=/eclipse/downloads/drops${platform_major}/R-${platform_major}.${platform_minor}-${timestamp}/eclipse-platform-${platform_major}.${platform_minor}-linux-gtk-x86_64.tar.gz";
sha512 = "cPRa7ICogpcuwzOlzSSCEcWpwpUhQuIv6lGBKuAu9mOwj7Nz0TPaWVWNqN1541uVRXVTzcWX+mwc2UBPzWUPxg==";
sha512 = "03v1ly7j9d9qnl3d9rl5a9kp483dz8i8v3cfnh55ksm9fk8iy2fzg6wq178ggnx2z5x9k88a4wk6n647yilh2hgc2l7926imkh2j1ly";
};
};
@ -86,7 +86,7 @@ in rec {
src =
fetchurl {
url = "https://www.eclipse.org/downloads/download.php?r=1&nf=1&file=/eclipse/downloads/drops${platform_major}/R-${platform_major}.${platform_minor}-${timestamp}/eclipse-SDK-${platform_major}.${platform_minor}-linux-gtk-x86_64.tar.gz";
sha512 = "iN6z5iSJ2bhE1IH3uJj7aiaF/nSIgIAqadvaTBpE4gkgLAXgtfraFAzgcw0zJr5m2u5mULfW45hLkmIXselniQ==";
sha512 = "37m91my121pch12bwpwk5svfqkm7vl07wjx4fkhpy947v5kjf36hm6x0i45swdg7f0hk72y2qz5ka15ki5jv890qy5psj6z7ax9sys7";
};
};
@ -98,7 +98,19 @@ in rec {
src =
fetchurl {
url = "https://www.eclipse.org/downloads/download.php?r=1&nf=1&file=/technology/epp/downloads/release/${year}-${month}/R/eclipse-java-${year}-${month}-R-linux-gtk-x86_64.tar.gz";
sha512 = "HVqsWUVNNRdcaziGdNI96R9F2VMUE4nYK1VX1G3pK+srFDlkJ7+rj2sZjtWL7WcJR1XSbT03nJJzPyp01RsCvQ==";
sha512 = "3qrnj6krhrqc9rfwlim3v7kshwfhsi050pszw6xdfbj56mzr9whr7l76isbpxd5j0zipgfw3qrzrx379pdp899d35fv284ilvllzl4k";
};
};
### Eclipse Java EE
eclipse-jee = buildEclipse {
name = "eclipse-jee-${platform_major}.${platform_minor}";
description = "Eclipse IDE for Enterprise Java and Web Developers";
src =
fetchurl {
url = "https://www.eclipse.org/downloads/download.php?r=1&nf=1&file=/technology/epp/downloads/release/${year}-${month}/R/eclipse-jee-${year}-${month}-R-linux-gtk-x86_64.tar.gz";
sha512 = "04k4x9imabxddqlrgajn33ak8i58wcap40ll09xz23d1sxn9a8prh01s06ymgwg6ldg939srphvbz4112p8p0b1hl7m25a02qll91zv";
};
};
@ -110,7 +122,7 @@ in rec {
src =
fetchurl {
url = "https://www.eclipse.org/downloads/download.php?r=1&nf=1&file=/technology/epp/downloads/release/${year}-${month}/R/eclipse-committers-${year}-${month}-R-linux-gtk-x86_64.tar.gz";
sha512 = "UtI4piLNRM3TsM9PzbGgsPqTkiurJ+7Q7jVra45an4YJHtfWcGTxxwUNnRzay6cHT49AjrWtVf1bovWSDXMiQA==";
sha512 = "2yksl3w7yr1a3h4zdpa9zf394r5c185zqxhigdv858ldg46kmr9h0l2c7shbgb16kkybcnrk4x44dhjvh60x8xw6ma05klp4lp9v5va";
};
};
@ -122,19 +134,7 @@ in rec {
src =
fetchurl {
url = "https://www.eclipse.org/downloads/download.php?r=1&nf=1&file=/technology/epp/downloads/release/${year}-${month}/R/eclipse-rcp-${year}-${month}-R-linux-gtk-x86_64.tar.gz";
sha512 = "9DqNjSx1Ypdzpt1jIOJ9KFx8y+cG55K6bqkWTqnGjjDr4h4mWSzvGjHGUtFrKl92WRzQZKjNPxzVreDMcUkc/g==";
};
};
### Eclipse IDE for Rust Developers
eclipse-rust = buildEclipse {
name = "eclipse-rust-${platform_major}.${platform_minor}";
description = "Eclipse IDE for Rust Developers";
src =
fetchurl {
url = "https://www.eclipse.org/downloads/download.php?r=1&nf=1&file=/technology/epp/downloads/release/${year}-${month}/R/eclipse-rust-${year}-${month}-R-linux-gtk-x86_64.tar.gz";
sha512 = "QbaG1knCMFnVQkPeApcIamJMXPyL8zUQa0ZsTJOuTgU/fD1RiHN7/WS6ax5azzIJhpjEtj2LMU4XV+MwkzResw==";
sha512 = "3fhrhwbyqcys56c93s1vl9rbvn269nn5y3cb9f3n1qwgw6i97mim2zy98jl3r8cksf97jwsmqmsqclsgz9v799wcckv81dj1l628382";
};
};

View file

@ -248,12 +248,12 @@ rec {
cdt = buildEclipseUpdateSite rec {
name = "cdt-${version}";
# find current version at https://www.eclipse.org/cdt/downloads.php
version = "10.1.0";
version = "10.2.0";
src = fetchzip {
stripRoot = false;
url = "https://www.eclipse.org/downloads/download.php?r=1&nf=1&file=/tools/cdt/releases/10.1/${name}/${name}.zip";
sha256 = "1hbswcar3a5cw20mwrj82w9pvpkvvj6jrvqqf1lincva0r5sl7h8";
url = "https://www.eclipse.org/downloads/download.php?r=1&nf=1&file=/tools/cdt/releases/10.2/${name}/${name}.zip";
sha256 = "1r30cbpbzw3dfcsn54p6sqip86dqhydhsppjgaz60b6z138vzx49";
};
meta = with lib; {
@ -474,24 +474,6 @@ rec {
};
};
jdt = buildEclipseUpdateSite rec {
name = "jdt-${version}";
version = "4.18";
src = fetchzip {
stripRoot = false;
url = "https://www.eclipse.org/downloads/download.php?r=1&nf=1&file=/eclipse/downloads/drops4/R-${version}-202012021800/org.eclipse.jdt-${version}.zip";
sha256 = "q0O6OE2u0bdz1+nOkzXDrrOOzoEbVaXnejx4lX7uZgk=";
};
meta = with lib; {
homepage = "https://www.eclipse.org/jdt/";
description = "Eclipse Java development tools";
license = licenses.epl10;
platforms = platforms.all;
};
};
jdt-codemining = buildEclipsePlugin rec {
name = "jdt-codemining-${version}";
version = "1.0.0.201806221018";

View file

@ -0,0 +1,115 @@
{ mkDerivation, lib, fetchFromGitHub, copyDesktopItems, makeDesktopItem, qmake
, qtbase, qtxmlpatterns, qttools, qtwebkit, libGL, fontconfig, openssl, poppler
, ffmpeg, libva, alsaLib, SDL, x264, libvpx, libvorbis, libtheora, libogg
, libopus, lame, fdk_aac, libass, quazip, libXext, libXfixes }:
let
importer = mkDerivation rec {
pname = "openboard-importer";
version = "unstable-2016-10-08";
src = fetchFromGitHub {
owner = "OpenBoard-org";
repo = "OpenBoard-Importer";
rev = "47927bda021b4f7f1540b794825fb0d601875e79";
sha256 = "19zhgsimy0f070caikc4vrrqyc8kv2h6rl37sy3iggks8z0g98gf";
};
nativeBuildInputs = [ qmake ];
installPhase = ''
install -Dm755 OpenBoardImporter $out/bin/OpenBoardImporter
'';
};
in mkDerivation rec {
pname = "openboard";
version = "1.6.1";
src = fetchFromGitHub {
owner = "OpenBoard-org";
repo = "OpenBoard";
rev = "v${version}";
sha256 = "sha256-OlGXGIMghil/GG6eso20+CWo/hCjarXGs6edXX9pc/M=";
};
postPatch = ''
substituteInPlace OpenBoard.pro \
--replace '/usr/include/quazip' '${quazip}/include/quazip5' \
--replace '/usr/include/poppler' '${poppler.dev}/include/poppler'
'';
nativeBuildInputs = [ qmake copyDesktopItems ];
buildInputs = [
qtbase
qtxmlpatterns
qttools
qtwebkit
libGL
fontconfig
openssl
poppler
ffmpeg
libva
alsaLib
SDL
x264
libvpx
libvorbis
libtheora
libogg
libopus
lame
fdk_aac
libass
quazip
libXext
libXfixes
];
propagatedBuildInputs = [ importer ];
makeFlags = [ "release-install" ];
desktopItems = [
(makeDesktopItem {
name = "OpenBoard";
exec = "OpenBoard %f";
icon = "OpenBoard";
comment = "OpenBoard, an interactive white board application";
desktopName = "OpenBoard";
mimeType = "application/ubz";
categories = "Education;";
startupNotify = true;
})
];
installPhase = ''
runHook preInstall
lrelease OpenBoard.pro
# Replicated release_scripts/linux/package.sh
mkdir -p $out/opt/openboard/i18n
cp -R resources/customizations build/linux/release/product/* $out/opt/openboard/
cp resources/i18n/*.qm $out/opt/openboard/i18n/
install -m644 resources/linux/openboard-ubz.xml $out/opt/openboard/etc/
install -Dm644 resources/images/OpenBoard.png $out/share/icons/hicolor/64x64/apps/OpenBoard.png
runHook postInstall
'';
dontWrapQtApps = true;
postFixup = ''
makeWrapper $out/opt/openboard/OpenBoard $out/bin/OpenBoard \
"''${qtWrapperArgs[@]}"
'';
meta = with lib; {
description = "Interactive whiteboard application";
license = licenses.gpl3Plus;
maintainers = with maintainers; [ fufexan ];
platforms = platforms.linux;
};
}

View file

@ -1,15 +1,15 @@
{ lib, stdenv, fetchurl, asciidoc, asciidoctor, autoconf, automake, cmake,
docbook_xsl, fftw, fftwFloat, gfortran, libtool, libusb1, qtbase,
qtmultimedia, qtserialport, qttools, texinfo, wrapQtAppsHook }:
qtmultimedia, qtserialport, qttools, boost, texinfo, wrapQtAppsHook }:
stdenv.mkDerivation rec {
pname = "wsjtx";
version = "2.2.2";
version = "2.3.1";
# This is a "superbuild" tarball containing both wsjtx and a hamlib fork
src = fetchurl {
url = "http://physics.princeton.edu/pulsar/k1jt/wsjtx-${version}.tgz";
sha256 = "17agyrhclqyahgdwba8vi9sl7vq03sm00jlyrmjgv34a4czidg0w";
sha256 = "11wzh4bxp9277kbqkyrc063akkk09czgxnkpk8k07vl4s3dan3hh";
};
# Hamlib builds with autotools, wsjtx builds with cmake
@ -18,7 +18,7 @@ stdenv.mkDerivation rec {
asciidoc asciidoctor autoconf automake cmake docbook_xsl gfortran libtool
qttools texinfo wrapQtAppsHook
];
buildInputs = [ fftw fftwFloat libusb1 qtbase qtmultimedia qtserialport ];
buildInputs = [ fftw fftwFloat libusb1 qtbase qtmultimedia qtserialport boost ];
# Remove Git dependency from superbuild since sources are included
patches = [ ./super.patch ];
@ -36,6 +36,6 @@ stdenv.mkDerivation rec {
# Older licenses are for the statically-linked hamlib
license = with licenses; [ gpl3Plus gpl2Plus lgpl21Plus ];
platforms = platforms.linux;
maintainers = with maintainers; [ lasandell ];
maintainers = with maintainers; [ lasandell numinit ];
};
}

View file

@ -1,12 +1,14 @@
{ fetchurl, lib, which, ocamlPackages }:
{ fetchFromGitHub, lib, which, ocamlPackages }:
let
pname = "alt-ergo";
version = "2.3.3";
version = "2.4.0";
src = fetchurl {
url = "https://alt-ergo.ocamlpro.com/http/alt-ergo-${version}/alt-ergo-${version}.tar.gz";
sha256 = "124k2a4ikk4wdpmvgjpgl97x9skvr9qznk8m68dzsynzpv6yksaj";
src = fetchFromGitHub {
owner = "OCamlPro";
repo = pname;
rev = version;
sha256 = "1jm1yrvsg8iyfp9bb728zdx2i7yb6z7minjrfs27k5ncjqkjm65g";
};
useDune2 = true;
@ -19,6 +21,7 @@ let alt-ergo-lib = ocamlPackages.buildDunePackage rec {
pname = "alt-ergo-lib";
inherit version src useDune2 nativeBuildInputs;
configureFlags = pname;
buildInputs = with ocamlPackages; [ dune-configurator ];
propagatedBuildInputs = with ocamlPackages; [ num ocplib-simplex stdlib-shims zarith ];
}; in
@ -36,7 +39,9 @@ ocamlPackages.buildDunePackage {
configureFlags = pname;
buildInputs = [ alt-ergo-parsers ocamlPackages.menhir ];
buildInputs = [ alt-ergo-parsers ] ++ (with ocamlPackages; [
cmdliner menhir ])
;
meta = {
description = "High-performance theorem prover and SMT solver";

View file

@ -1,30 +1,29 @@
{ lib
, pythonPackages
, python3
, fetchFromGitHub
, rtmpdump
, ffmpeg_3
, ffmpeg
}:
pythonPackages.buildPythonApplication rec {
python3.pkgs.buildPythonApplication rec {
pname = "streamlink";
version = "2.0.0";
disabled = pythonPackages.pythonOlder "3.5.0";
version = "2.1.1";
src = fetchFromGitHub {
owner = "streamlink";
repo = "streamlink";
rev = version;
sha256 = "+W9Nu5Ze08r7IlUZOkkVOz582E1Bbj0a3qIQHwxSmj8=";
sha256 = "14vqh4pck3q766qln7c57n9bz8zrlgfqrpkdn8x0ac9zhlhfn1zm";
};
checkInputs = with pythonPackages; [
pytest
checkInputs = with python3.pkgs; [
pytestCheckHook
mock
requests-mock
freezegun
];
propagatedBuildInputs = (with pythonPackages; [
propagatedBuildInputs = (with python3.pkgs; [
pycryptodome
requests
iso-639
@ -33,7 +32,11 @@ pythonPackages.buildPythonApplication rec {
isodate
]) ++ [
rtmpdump
ffmpeg_3
ffmpeg
];
disabledTests = [
"test_plugin_not_in_removed_list"
];
meta = with lib; {

View file

@ -2,13 +2,13 @@
stdenv.mkDerivation rec {
pname = "qogir-theme";
version = "2021-02-09";
version = "2021-04-20";
src = fetchFromGitHub {
owner = "vinceliuice";
repo = pname;
rev = version;
sha256 = "1pilq939bqzxysw4ixd279c49bp7l74bykpprrhgc5f2klpjg1zn";
sha256 = "17ajrg5safnb6b1jbwvnysc4rvl6gkpnqdf89bammlrpkj6fr3ip";
};
buildInputs = [ gdk-pixbuf librsvg ];

View file

@ -1,4 +1,4 @@
{ fetchFromGitHub, lib, stdenv, ffmpeg_3, cmake, libpng, pkg-config, libjpeg
{ fetchFromGitHub, lib, stdenv, ffmpeg, cmake, libpng, pkg-config, libjpeg
}:
stdenv.mkDerivation rec {
@ -13,7 +13,7 @@ stdenv.mkDerivation rec {
};
nativeBuildInputs = [ cmake pkg-config ];
buildInputs = [ ffmpeg_3 libpng libjpeg ];
buildInputs = [ ffmpeg libpng libjpeg ];
cmakeFlags = [ "-DENABLE_THUMBNAILER=ON" ];
meta = with lib; {

View file

@ -0,0 +1,59 @@
{ buildDunePackage
, lib
, fetchFromGitHub
, ocaml
, hpack
, angstrom
, faraday
, base64
, psq
, httpaf
, alcotest
, yojson
, hex
}:
let
http2-frame-test-case = fetchFromGitHub {
owner = "http2jp";
repo = "http2-frame-test-case";
rev = "5c67db0d4d68e1fb7d3a241d6e01fc04d981f465";
sha256 = "16yyb37f8mk9saw7ndjs5is67yq7qa6b6y7k0c75ibxi4n9aw1r3";
};
in
buildDunePackage rec {
pname = "h2";
inherit (hpack)
version
src
useDune2
;
minimumOCamlVersion = "4.06";
propagatedBuildInputs = [
angstrom
faraday
base64
psq
hpack
httpaf
];
# Tests fail with 4.06
doCheck = lib.versionAtLeast ocaml.version "4.07";
preCheck = ''
ln -s "${http2-frame-test-case}" lib_test/http2-frame-test-case
'';
checkInputs = [
alcotest
yojson
hex
];
meta = hpack.meta // {
description = "A high-performance, memory-efficient, and scalable HTTP/2 library for OCaml";
};
}

View file

@ -0,0 +1,37 @@
{ buildDunePackage
, lib
, fetchurl
, angstrom
, faraday
}:
buildDunePackage rec {
pname = "hpack";
version = "0.8.0";
src = fetchurl {
url = "https://github.com/anmonteiro/ocaml-h2/releases/download/${version}/h2-${version}.tbz";
sha256 = "0qcn3yvyz0h419fjg9nb20csfmwmh3ihz0zb0jfzdycf5w4mlry6";
};
useDune2 = true;
minimumOCamlVersion = "4.04";
propagatedBuildInputs = [
angstrom
faraday
];
# circular dependency
doCheck = false;
meta = {
license = lib.licenses.bsd3;
description = "An HPACK (Header Compression for HTTP/2) implementation in OCaml";
homepage = "https://github.com/anmonteiro/ocaml-h2";
maintainers = with lib.maintainers; [
sternenseemann
anmonteiro
];
};
}

View file

@ -1,7 +1,7 @@
{ lib, fetchFromGitHub, buildLinux, linux_zen, ... } @ args:
let
version = "5.11.15";
version = "5.11.16";
suffix = "lqx1";
in
@ -14,7 +14,7 @@ buildLinux (args // {
owner = "zen-kernel";
repo = "zen-kernel";
rev = "v${version}-${suffix}";
sha256 = "1dwibknj4q8cd3mim679mrb4j8yi7p4q9qjcb4rwvw0yzgxmz3lv";
sha256 = "1j25r45arikjwyhbr72r1935pr7a8g2j6vshggywdiixvizvrx9b";
};
extraMeta = {

View file

@ -1,7 +1,7 @@
{ lib, fetchFromGitHub, buildLinux, ... } @ args:
let
version = "5.11.15";
version = "5.11.16";
suffix = "zen1";
in
@ -14,7 +14,7 @@ buildLinux (args // {
owner = "zen-kernel";
repo = "zen-kernel";
rev = "v${version}-${suffix}";
sha256 = "0n9wm0lpwkqd79112k03lxp4hc898nvs2jjw3hxzggn5wk4i2dz9";
sha256 = "0jyicnpqccn194jrm1mc4zq0cil7ls9l57ws3nv783vlk7b0k3gv";
};
extraMeta = {

View file

@ -27,7 +27,7 @@ stdenv.mkDerivation {
meta = with lib; {
homepage = "https://github.com/torvalds/linux/tree/master/tools/usb/usbip";
description = "allows to pass USB device from server to client over the network";
license = licenses.gpl2;
license = with licenses; [ gpl2Only gpl2Plus ];
platforms = platforms.linux;
broken = kernelOlder "4.10";
};

View file

@ -0,0 +1,29 @@
{ lib, rustPlatform, fetchFromGitHub, pkg-config, openssl }:
rustPlatform.buildRustPackage rec {
pname = "simple-http-server";
version = "0.6.1";
src = fetchFromGitHub {
owner = "TheWaWaR";
repo = pname;
rev = "v${version}";
sha256 = "01a129i1ph3m8k6zkdcqnnkqbhlqpk7qvvdsz2i2kas54csbgsww";
};
cargoSha256 = "050avk6wff8v1dlsfvxwvldmmgfakdxmhglv2bhvc2f3q8cf1d5d";
nativeBuildInputs = [ pkg-config ];
buildInputs = [ openssl ];
# Currently no tests are implemented, so we avoid building the package twice
doCheck = false;
meta = with lib; {
description = "Simple HTTP server in Rust";
homepage = "https://github.com/TheWaWaR/simple-http-server";
license = licenses.mit;
maintainers = with maintainers; [ mephistophiles ];
};
}

View file

@ -15,6 +15,8 @@ lib.makeScope newScope (self: with self; {
foreign-env = callPackage ./foreign-env { };
forgit-fish = callPackage ./forgit.nix { };
fzf-fish = callPackage ./fzf-fish.nix { };
pure = callPackage ./pure.nix { };

View file

@ -0,0 +1,22 @@
{ lib, buildFishPlugin, fetchFromGitHub, git, fzf }:
buildFishPlugin rec {
pname = "forgit";
version = "unstable-2021-04-09";
buildInputs = [ git fzf ];
src = fetchFromGitHub {
owner = "wfxr";
repo = "forgit";
rev = "7806fc3ab37ac479c315eb54b164f67ba9ed17ea";
sha256 = "sha256-a7wjuqXe3+y5zlgSLk5J31WoORbieFimvtr0FQHRY5M=";
};
meta = with lib; {
description = "A utility tool powered by fzf for using git interactively.";
homepage = "https://github.com/wfxr/forgit";
license = licenses.mit;
maintainers = with maintainers; [ happysalada ];
};
}

View file

@ -0,0 +1,25 @@
{ stdenv, lib, fetchFromGitHub, libsoundio, lame }:
stdenv.mkDerivation {
pname = "castty";
version = "unstable-2020-11-10";
src = fetchFromGitHub {
owner = "dhobsd";
repo = "castty";
rev = "333a2bafd96d56cd0bb91577ae5ba0f7d81b3d99";
sha256 = "0p84ivwsp8ds4drn0hx2ax04gp0xyq6blj1iqfsmrs4slrajdmqs";
};
buildInputs = [ libsoundio lame ];
makeFlags = [ "PREFIX=$(out)" ];
meta = with lib; {
description = "CLI tool to record audio-enabled screencasts of your terminal, for the web";
homepage = "https://github.com/dhobsd/castty";
license = licenses.bsd3;
maintainers = with maintainers; [ iblech ];
platforms = platforms.unix;
};
}

View file

@ -6,16 +6,16 @@
buildGoModule rec {
pname = "grype";
version = "0.10.2";
version = "0.11.0";
src = fetchFromGitHub {
owner = "anchore";
repo = pname;
rev = "v${version}";
sha256 = "sha256-kKzrV2TTO8NmB3x27ZStMZpSIRGwm5Ev+cPGwT50FEU=";
sha256 = "sha256-E1tJ9hEJ4GaL+S4dz6aGq3nJPpdtx0/Tfb1RzgJSe8M=";
};
vendorSha256 = "sha256-PC2n6+gPDxpG8RTAmCfK4P40yfxqlleYI6Ex4FtPjk4=";
vendorSha256 = "sha256-LUyrX/rm01tCPT6Ua6hphhf+4ycNn4tLONRyH3iTrZ4=";
propagatedBuildInputs = [ docker ];

View file

@ -0,0 +1,30 @@
From 8e309a0af0851ab54ca7c6d51b6f3d19ee42c8ee Mon Sep 17 00:00:00 2001
From: Evangelos Foutras <evangelos@foutrelis.com>
Date: Wed, 17 Mar 2021 16:36:40 +0200
Subject: [PATCH] Replace YYUSE call with void cast in src/parser.y
The YYUSE macro was renamed to YY_USE in bison 3.7.5; we might as well
avoid using it altogether and cast the unused variable to void instead.
Fixes the following linker error:
/usr/bin/ld: kafel/libkafel.a(libkafel.o): in function `kafel_yyerror':
arm_syscalls.c:(.text+0x6984): undefined reference to `YYUSE'
---
src/parser.y | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/src/parser.y b/src/parser.y
index e0f109c..0e01373 100644
--- a/kafel/src/parser.y
+++ b/kafel/src/parser.y
@@ -420,8 +420,8 @@ const_def
void yyerror(YYLTYPE * loc, struct kafel_ctxt* ctxt, yyscan_t scanner,
const char *msg) {
+ (void)scanner; /* suppress unused-parameter warning */
if (!ctxt->lexical_error) {
- YYUSE(scanner);
if (loc->filename != NULL) {
append_error(ctxt, "%s:%d:%d: %s", loc->filename, loc->first_line, loc->first_column, msg);
} else {

View file

@ -4,7 +4,7 @@
stdenv.mkDerivation rec {
pname = "nsjail";
version = "3.0";
version = "3.0"; # Bumping? Remove the bison patch.
src = fetchFromGitHub {
owner = "google";
@ -18,6 +18,11 @@ stdenv.mkDerivation rec {
buildInputs = [ libnl protobuf protobufc ];
enableParallelBuilding = true;
patches = [
# To remove after bumping 3.0
./001-fix-bison-link-error.patch
];
preBuild = ''
makeFlagsArray+=(USER_DEFINES='-DNEWUIDMAP_PATH=${shadow}/bin/newuidmap -DNEWGIDMAP_PATH=${shadow}/bin/newgidmap')
'';

View file

@ -1235,6 +1235,8 @@ in
inherit (nodePackages) castnow;
castty = callPackage ../tools/misc/castty { };
certigo = callPackage ../tools/admin/certigo { };
catcli = python3Packages.callPackage ../tools/filesystems/catcli { };
@ -7166,6 +7168,8 @@ in
openbazaar = callPackage ../applications/networking/openbazaar { };
openbazaar-client = callPackage ../applications/networking/openbazaar/client.nix { };
openboard = libsForQt5.callPackage ../applications/graphics/openboard { };
opencc = callPackage ../tools/text/opencc { };
opencl-info = callPackage ../tools/system/opencl-info { };
@ -17639,7 +17643,7 @@ in
stlport = callPackage ../development/libraries/stlport { };
streamlink = callPackage ../applications/video/streamlink { pythonPackages = python3Packages; };
streamlink = callPackage ../applications/video/streamlink { };
streamlink-twitch-gui-bin = callPackage ../applications/video/streamlink-twitch-gui/bin.nix {};
sub-batch = callPackage ../applications/video/sub-batch { };
@ -24667,6 +24671,8 @@ in
motif = callPackage ../development/libraries/motif { };
mousai = callPackage ../applications/audio/mousai { };
mozjpeg = callPackage ../applications/graphics/mozjpeg { };
easytag = callPackage ../applications/audio/easytag { };
@ -31023,6 +31029,8 @@ in
simplehttp2server = callPackage ../servers/simplehttp2server { };
simple-http-server = callPackage ../servers/simple-http-server { };
diceware = with python3Packages; toPythonApplication diceware;
xml2rfc = with python3Packages; toPythonApplication xml2rfc;

View file

@ -400,6 +400,8 @@ let
inherit (pkgs) gsl;
};
h2 = callPackage ../development/ocaml-modules/h2 { };
hacl_x25519 = callPackage ../development/ocaml-modules/hacl_x25519 { };
herelib = callPackage ../development/ocaml-modules/herelib { };
@ -412,6 +414,8 @@ let
hmap = callPackage ../development/ocaml-modules/hmap { };
hpack = callPackage ../development/ocaml-modules/hpack { };
hxd = callPackage ../development/ocaml-modules/hxd { };
imagelib = callPackage ../development/ocaml-modules/imagelib { };