Merge master into haskell-updates

This commit is contained in:
github-actions[bot]
2022-07-18 00:13:15 +00:00
committed by GitHub
106 changed files with 4323 additions and 713 deletions
+150 -14
View File
@@ -2,30 +2,159 @@
#! nix-shell -i bash -p coreutils findutils gnused nix wget
set -efuo pipefail
export LC_COLLATE=C # fix sort order
SRCS=
if [ -d "$1" ]; then
SRCS="$(pwd)/$1/srcs.nix"
. "$1/fetch.sh"
else
SRCS="$(pwd)/$(dirname $1)/srcs.nix"
. "$1"
# parse files and folders from https://download.kde.org/ and https://download.qt.io/
# you can override this function in fetch.sh
function PARSE_INDEX() {
cat "$1" | grep -o -E -e '\s+href="[^"]+\.tar\.xz"' -e '\s+href="[-_a-zA-Z0-9]+/"' | cut -d'"' -f2 | sort | uniq
}
if [ $# != 1 ]; then
echo "example use:" >&2
echo "cd nixpkgs/" >&2
echo "./maintainers/scripts/fetch-kde-qt.sh pkgs/development/libraries/qt-5/5.12" >&2
exit 1
fi
tmp=$(mktemp -d)
pushd $tmp >/dev/null
wget -nH -r -c --no-parent "${WGET_ARGS[@]}" >/dev/null
if ! echo "$1" | grep -q '^pkgs/'; then
echo "error: path argument must start with pkgs/" >&2
exit 1
fi
csv=$(mktemp)
find . -type f | while read src; do
# need absolute path for the pushd-popd block
if [ -f "$1" ]; then
echo "ok: using fetchfile $1"
fetchfilerel="$1"
fetchfile="$(readlink -f "$fetchfilerel")" # resolve absolute path
basedir="$(dirname "$fetchfile")"
basedirrel="$(dirname "$fetchfilerel")"
elif [ -d "$1" ]; then
echo "ok: using basedir $1"
basedirrel="$1"
basedir="$(readlink -f "$basedirrel")" # resolve absolute path
if ! [ -d "$basedir" ]; then
basedir="$(dirname "$basedir")"
fi
fetchfile="$basedir/fetch.sh"
else
echo 'error: $1 must be file or dir' >&2
exit 1
fi
pkgname=$(basename "$basedir")
SRCS="$basedir/srcs.nix"
srcsrel="$basedirrel/srcs.nix"
source "$fetchfile"
if [ -n "$WGET_ARGS" ]; then # old format
BASE_URL="${WGET_ARGS[0]}" # convert to new format
# validate
if ! echo "$BASE_URL" | grep -q -E '^(http|https|ftp)://'; then
printf 'error: from WGET_ARGS, converted invalid BASE_URL: %q\n' "$BASE_URL" >&2
exit 1
fi
printf 'ok: from WGET_ARGS, converted BASE_URL: %q\n' "$BASE_URL"
elif [ -n "$BASE_URL" ]; then # new format
:
else
echo "error: fetch.sh must set either WGET_ARGS or BASE_URL" >&2
exit 1
fi
tmptpl=tmp.fetch-kde-qt.$pkgname.XXXXXXXXXX
tmp=$(mktemp -d $tmptpl)
pushd $tmp >/dev/null
echo "tempdir is $tmp"
wgetargs='--quiet --show-progress'
#wgetargs='' # debug
dirlist="$BASE_URL"
filelist=""
base_url_len=${#BASE_URL}
clean_urls() {
# // -> /
sed -E 's,//+,/,g' | sed -E 's,^(http|https|ftp):/,&/,'
}
while [ -n "$dirlist" ]
do
for dirurl in $dirlist
do
echo "fetching index.html from $dirurl"
relpath=$(echo "./${dirurl:$base_url_len}" | clean_urls)
mkdir -p "$relpath"
indexfile=$(echo "$relpath/index.html" | clean_urls)
wget $wgetargs -O "$indexfile" "$dirurl"
echo "parsing $indexfile"
filedirlist="$(PARSE_INDEX "$indexfile")"
filelist_next="$(echo "$filedirlist" | grep '\.tar\.xz$' | while read file; do echo "$dirurl/$file"; done)"
filelist_next="$(echo "$filelist_next" | clean_urls)"
[ -n "$filelist" ] && filelist+=$'\n'
filelist+="$filelist_next"
dirlist="$(echo "$filedirlist" | grep -v '\.tar\.xz$' | while read dir; do echo "$dirurl/$dir"; done || true)"
dirlist="$(echo "$dirlist" | clean_urls)"
done
done
filecount=$(echo "$filelist" | wc -l)
if [ -z "$filelist" ]
then
echo "error: no files parsed from $tmp/index.html"
exit 1
fi
echo "parsed $filecount tar.xz files:"; echo "$filelist"
# most time is spent here
echo "fetching $filecount sha256 files ..."
urllist="$(echo "$filelist" | while read file; do echo "$file.sha256"; done)"
# wget -r: keep directory structure
echo "$urllist" | xargs wget $wgetargs -nH -r -c --no-parent && {
actual=$(find . -type f -name '*.sha256' | wc -l)
echo "fetching $filecount sha256 files done: got $actual files"
} || {
# workaround: in rare cases, the server does not provide the sha256 files
# for example when the release is just a few hours old
# and the servers are not yet fully synced
actual=$(find . -type f -name '*.sha256' | wc -l)
echo "fetching $filecount sha256 files failed: got only $actual files"
# TODO fetch only missing tar.xz files
echo "fetching $filecount tar.xz files ..."
urllist="$(echo "$filelist" | while read file; do echo "$BASE_URL/$file"; done)"
echo "$urllist" | xargs wget $wgetargs -nH -r -c --no-parent
echo "generating sha256 files ..."
find . -type f -name '*.tar.xz' | while read src; do
name=$(basename "$src")
sha256=$(sha256sum "$src" | cut -d' ' -f1)
echo "$sha256 $name" >"$src.sha256"
done
}
csv=$(mktemp $tmptpl.csv)
echo "writing temporary file $csv ..."
find . -type f -name '*.sha256' | while read sha256file; do
src="${sha256file%.*}" # remove extension
sha256=$(cat $sha256file | cut -d' ' -f1) # base16
sha256=$(nix-hash --type sha256 --to-base32 $sha256)
# Sanitize file name
filename=$(basename "$src" | tr '@' '_')
nameVersion="${filename%.tar.*}"
name=$(echo "$nameVersion" | sed -e 's,-[[:digit:]].*,,' | sed -e 's,-opensource-src$,,' | sed -e 's,-everywhere-src$,,')
version=$(echo "$nameVersion" | sed -e 's,^\([[:alpha:]][[:alnum:]]*-\)\+,,')
echo "$name,$version,$src,$filename" >>$csv
echo "$name,$version,$src,$filename,$sha256" >>$csv
done
files_before=$(grep -c 'src = ' "$SRCS")
echo "writing output file $SRCS ..."
cat >"$SRCS" <<EOF
# DO NOT EDIT! This file is generated automatically.
# Command: $0 $@
@@ -39,8 +168,8 @@ gawk -F , "{ print \$1 }" $csv | sort | uniq | while read name; do
latestVersion=$(echo "$versions" | sort -rV | head -n 1)
src=$(gawk -F , "/^$name,$latestVersion,/ { print \$3 }" $csv)
filename=$(gawk -F , "/^$name,$latestVersion,/ { print \$4 }" $csv)
sha256=$(gawk -F , "/^$name,$latestVersion,/ { print \$5 }" $csv)
url="${src:2}"
sha256=$(nix-hash --type sha256 --base32 --flat "$src")
cat >>"$SRCS" <<EOF
$name = {
version = "$latestVersion";
@@ -55,6 +184,13 @@ done
echo "}" >>"$SRCS"
files_after=$(grep -c 'src = ' "$SRCS")
echo "files before: $files_before"
echo "files after: $files_after"
echo "compare:"
echo "git diff $srcsrel"
popd >/dev/null
rm -fr $tmp >/dev/null
@@ -341,6 +341,15 @@
Add udev rules for the Teensy family of microcontrollers.
</para>
</listitem>
<listitem>
<para>
The <literal>pass-secret-service</literal> package now
includes systemd units from upstream, so adding it to the
NixOS <literal>services.dbus.packages</literal> option will
make it start automatically as a systemd user service when an
application tries to talk to the libsecret D-Bus API.
</para>
</listitem>
<listitem>
<para>
There is a new module for the <literal>thunar</literal>
@@ -128,6 +128,8 @@ Use `configure.packages` instead.
- Add udev rules for the Teensy family of microcontrollers.
- The `pass-secret-service` package now includes systemd units from upstream, so adding it to the NixOS `services.dbus.packages` option will make it start automatically as a systemd user service when an application tries to talk to the libsecret D-Bus API.
- There is a new module for the `thunar` program (the Xfce file manager), which depends on the `xfconf` dbus service, and also has a dbus service and a systemd unit. The option `services.xserver.desktopManager.xfce.thunarPlugins` has been renamed to `programs.thunar.plugins`, and in a future release it may be removed.
- There is a new module for the `xfconf` program (the Xfce configuration storage system), which has a dbus service.
+2
View File
@@ -215,6 +215,7 @@
./programs/systemtap.nix
./programs/starship.nix
./programs/steam.nix
./programs/streamdeck-ui.nix
./programs/sway.nix
./programs/system-config-printer.nix
./programs/thefuck.nix
@@ -1002,6 +1003,7 @@
./services/security/oauth2_proxy.nix
./services/security/oauth2_proxy_nginx.nix
./services/security/opensnitch.nix
./services/security/pass-secret-service.nix
./services/security/privacyidea.nix
./services/security/physlock.nix
./services/security/shibboleth-sp.nix
+28
View File
@@ -0,0 +1,28 @@
{ config, lib, pkgs, ... }:
with lib;
let
cfg = config.programs.streamdeck-ui;
in {
options.programs.streamdeck-ui = {
enable = mkEnableOption "streamdeck-ui";
autoStart = mkOption {
default = true;
type = types.bool;
description = "Whether streamdeck-ui should be started automatically.";
};
};
config = mkIf cfg.enable {
environment.systemPackages = with pkgs; [
streamdeck-ui
(mkIf cfg.autoStart (makeAutostartItem { name = "streamdeck-ui"; package = streamdeck-ui; }))
];
services.udev.packages = with pkgs; [ streamdeck-ui ];
};
meta.maintainers = with maintainers; [ majiir ];
}
@@ -165,7 +165,7 @@ in {
jenkins_url="http://${jenkinsCfg.listenAddress}:${toString jenkinsCfg.port}${jenkinsCfg.prefix}"
auth_file="$RUNTIME_DIRECTORY/jenkins_auth_file.txt"
trap 'rm -f "$auth_file"' EXIT
printf "${cfg.accessUser}:@password_placeholder@" >"$auth_file"
(umask 0077; printf "${cfg.accessUser}:@password_placeholder@" >"$auth_file")
"${pkgs.replace-secret}/bin/replace-secret" "@password_placeholder@" "$access_token_file" "$auth_file"
if ! "${pkgs.jenkins}/bin/jenkins-cli" -s "$jenkins_url" -auth "@$auth_file" reload-configuration; then
@@ -0,0 +1,27 @@
{ config, lib, pkgs, ... }:
with lib;
let
cfg = config.services.passSecretService;
in
{
options.services.passSecretService = {
enable = mkEnableOption "pass secret service";
package = mkOption {
type = types.package;
default = pkgs.pass-secret-service;
defaultText = literalExpression "pkgs.pass-secret-service";
description = "Which pass-secret-service package to use.";
example = literalExpression "pkgs.pass-secret-service.override { python3 = pkgs.python310 }";
};
};
config = mkIf cfg.enable {
systemd.packages = [ cfg.package ];
services.dbus.packages = [ cfg.package ];
};
meta.maintainers = with maintainers; [ aidalgol ];
}
+1
View File
@@ -413,6 +413,7 @@ in {
pam-oath-login = handleTest ./pam/pam-oath-login.nix {};
pam-u2f = handleTest ./pam/pam-u2f.nix {};
pam-ussh = handleTest ./pam/pam-ussh.nix {};
pass-secret-service = handleTest ./pass-secret-service.nix {};
pantalaimon = handleTest ./matrix/pantalaimon.nix {};
pantheon = handleTest ./pantheon.nix {};
paperless = handleTest ./paperless.nix {};
+69
View File
@@ -0,0 +1,69 @@
import ./make-test-python.nix ({ pkgs, lib, ... }: {
name = "pass-secret-service";
meta.maintainers = with lib; [ aidalgol ];
nodes.machine = { nodes, pkgs, ... }:
{
imports = [ ./common/user-account.nix ];
services.passSecretService.enable = true;
environment.systemPackages = [
# Create a script that tries to make a request to the D-Bus secrets API.
(pkgs.writers.writePython3Bin "secrets-dbus-init"
{
libraries = [ pkgs.python3Packages.secretstorage ];
} ''
import secretstorage
print("Initializing dbus connection...")
connection = secretstorage.dbus_init()
print("Requesting default collection...")
collection = secretstorage.get_default_collection(connection)
print("Done! dbus-org.freedesktop.secrets should now be active.")
'')
pkgs.pass
];
programs.gnupg = {
agent.enable = true;
agent.pinentryFlavor = "tty";
dirmngr.enable = true;
};
};
# Some of the commands are run via a virtual console because they need to be
# run under a real login session, with D-Bus running in the environment.
testScript = { nodes, ... }:
let
user = nodes.machine.config.users.users.alice;
gpg-uid = "alice@example.net";
gpg-pw = "foobar9000";
ready-file = "/tmp/secrets-dbus-init.done";
in
''
# Initialise the pass(1) storage.
machine.succeed("""
sudo -u alice gpg --pinentry-mode loopback --batch --passphrase ${gpg-pw} \
--quick-gen-key ${gpg-uid} \
""")
machine.succeed("sudo -u alice pass init ${gpg-uid}")
with subtest("Service is not running on login"):
machine.wait_until_tty_matches("1", "login: ")
machine.send_chars("alice\n")
machine.wait_until_tty_matches("1", "login: alice")
machine.wait_until_succeeds("pgrep login")
machine.wait_until_tty_matches("1", "Password: ")
machine.send_chars("${user.password}\n")
machine.wait_until_succeeds("pgrep -u alice bash")
_, output = machine.systemctl("status dbus-org.freedesktop.secrets --no-pager", "alice")
assert "Active: inactive (dead)" in output
with subtest("Service starts after a client tries to talk to the D-Bus API"):
machine.send_chars("secrets-dbus-init; touch ${ready-file}\n")
machine.wait_for_file("${ready-file}")
_, output = machine.systemctl("status dbus-org.freedesktop.secrets --no-pager", "alice")
assert "Active: active (running)" in output
'';
})
@@ -37,17 +37,14 @@ in appimageTools.wrapType2 rec {
extraInstallCommands = ''
# directory in /nix/store so readonly
cp -r ${appimageContents}/* $out
cd $out
chmod -R +w $out
mv $out/bin/${name} $out/bin/${pname}
# fixup and install desktop file
${desktop-file-utils}/bin/desktop-file-install --dir $out/share/applications \
--set-key Exec --set-value ${pname} standard-notes.desktop
mv usr/share/icons share
rm usr/lib/* AppRun standard-notes.desktop .so*
--set-key Exec --set-value ${pname} ${appimageContents}/standard-notes.desktop
ln -s ${appimageContents}/usr/share/icons share
'';
meta = with lib; {
File diff suppressed because it is too large Load Diff
@@ -1066,5 +1066,6 @@ https://github.com/folke/zen-mode.nvim/,,
https://github.com/jnurmine/zenburn/,,
https://github.com/glepnir/zephyr-nvim/,,
https://github.com/ziglang/zig.vim/,,
https://github.com/mickael-menu/zk-nvim/,HEAD,
https://github.com/troydm/zoomwintab.vim/,,
https://github.com/nanotee/zoxide.vim/,,
+59 -28
View File
@@ -1,6 +1,25 @@
{ lib, stdenv, fetchFromGitHub, pkg-config, libtool
, bzip2, zlib, libX11, libXext, libXt, fontconfig, freetype, ghostscript, libjpeg, djvulibre
, lcms2, openexr, libpng, liblqr1, librsvg, libtiff, libxml2, openjpeg, libwebp, fftw, libheif, libde265
, bzip2Support ? true, bzip2
, zlibSupport ? true, zlib
, libX11Support ? !stdenv.hostPlatform.isMinGW, libX11
, libXtSupport ? !stdenv.hostPlatform.isMinGW, libXt
, fontconfigSupport ? true, fontconfig
, freetypeSupport ? true, freetype
, ghostscriptSupport ? false, ghostscript
, libjpegSupport ? true, libjpeg
, djvulibreSupport ? true, djvulibre
, lcms2Support ? true, lcms2
, openexrSupport ? !stdenv.hostPlatform.isMinGW, openexr
, libpngSupport ? true, libpng
, liblqr1Support ? true, liblqr1
, librsvgSupport ? !stdenv.hostPlatform.isMinGW, librsvg
, libtiffSupport ? true, libtiff
, libxml2Support ? true, libxml2
, openjpegSupport ? !stdenv.hostPlatform.isMinGW, openjpeg
, libwebpSupport ? !stdenv.hostPlatform.isMinGW, libwebp
, libheifSupport ? true, libheif
, libde265Support ? true, libde265
, fftw
, ApplicationServices, Foundation
}:
@@ -30,35 +49,47 @@ stdenv.mkDerivation rec {
enableParallelBuilding = true;
configureFlags =
[ "--with-frozenpaths" ]
++ (if arch != null then [ "--with-gcc-arch=${arch}" ] else [ "--without-gcc-arch" ])
++ lib.optional (librsvg != null) "--with-rsvg"
++ lib.optional (liblqr1 != null) "--with-lqr"
++ lib.optionals (ghostscript != null)
[ "--with-gs-font-dir=${ghostscript}/share/ghostscript/fonts"
"--with-gslib"
]
++ lib.optionals (stdenv.hostPlatform.isMinGW)
[ "--enable-static" "--disable-shared" ] # due to libxml2 being without DLLs ATM
;
configureFlags = [
"--with-frozenpaths"
(lib.withFeatureAs (arch != null) "gcc-arch" arch)
(lib.withFeature librsvgSupport "rsvg")
(lib.withFeature liblqr1Support "lqr")
(lib.withFeatureAs ghostscriptSupport "gs-font-dir" "${ghostscript}/share/ghostscript/fonts")
(lib.withFeature ghostscriptSupport "gslib")
] ++ lib.optionals stdenv.hostPlatform.isMinGW [
# due to libxml2 being without DLLs ATM
"--enable-static" "--disable-shared"
];
nativeBuildInputs = [ pkg-config libtool ];
buildInputs =
[ zlib fontconfig freetype ghostscript
liblqr1 libpng libtiff libxml2 libheif libde265 djvulibre
]
++ lib.optionals (!stdenv.hostPlatform.isMinGW)
[ openexr librsvg openjpeg ]
++ lib.optionals stdenv.isDarwin
[ ApplicationServices Foundation ];
buildInputs = [ ]
++ lib.optional zlibSupport zlib
++ lib.optional fontconfigSupport fontconfig
++ lib.optional ghostscriptSupport ghostscript
++ lib.optional liblqr1Support liblqr1
++ lib.optional libpngSupport libpng
++ lib.optional libtiffSupport libtiff
++ lib.optional libxml2Support libxml2
++ lib.optional libheifSupport libheif
++ lib.optional libde265Support libde265
++ lib.optional djvulibreSupport djvulibre
++ lib.optional openexrSupport openexr
++ lib.optional librsvgSupport librsvg
++ lib.optional openjpegSupport openjpeg
++ lib.optionals stdenv.isDarwin [
ApplicationServices
Foundation
];
propagatedBuildInputs =
[ bzip2 freetype libjpeg lcms2 fftw ]
++ lib.optionals (!stdenv.hostPlatform.isMinGW)
[ libX11 libXext libXt libwebp ]
;
propagatedBuildInputs = [ fftw ]
++ lib.optional bzip2Support bzip2
++ lib.optional freetypeSupport freetype
++ lib.optional libjpegSupport libjpeg
++ lib.optional lcms2Support lcms2
++ lib.optional libX11Support libX11
++ lib.optional libXtSupport libXt
++ lib.optional libwebpSupport libwebp;
doCheck = false; # fails 6 out of 76 tests
@@ -72,7 +103,7 @@ stdenv.mkDerivation rec {
substituteInPlace "$file" --replace ${pkg-config}/bin/pkg-config \
"PKG_CONFIG_PATH='$dev/lib/pkgconfig' '${pkg-config}/bin/${pkg-config.targetPrefix}pkg-config'"
done
'' + lib.optionalString (ghostscript != null) ''
'' + lib.optionalString ghostscriptSupport ''
for la in $out/lib/*.la; do
sed 's|-lgs|-L${lib.getLib ghostscript}/lib -lgs|' -i $la
done
@@ -3,28 +3,27 @@
, fetchFromGitHub
, pkg-config
, libtool
, bzip2
, zlib
, libX11
, libXext
, libXt
, fontconfig
, freetype
, ghostscript
, libjpeg
, djvulibre
, lcms2
, openexr
, libjxl
, libpng
, liblqr1
, libraw
, librsvg
, libtiff
, libxml2
, openjpeg
, libwebp
, libheif
, bzip2Support ? true, bzip2
, zlibSupport ? true, zlib
, libX11Support ? !stdenv.hostPlatform.isMinGW, libX11
, libXtSupport ? !stdenv.hostPlatform.isMinGW, libXt
, fontconfigSupport ? true, fontconfig
, freetypeSupport ? true, freetype
, ghostscriptSupport ? false, ghostscript
, libjpegSupport ? true, libjpeg
, djvulibreSupport ? true, djvulibre
, lcms2Support ? true, lcms2
, openexrSupport ? !stdenv.hostPlatform.isMinGW, openexr
, libjxlSupport ? true, libjxl
, libpngSupport ? true, libpng
, liblqr1Support ? true, liblqr1
, librawSupport ? true, libraw
, librsvgSupport ? !stdenv.hostPlatform.isMinGW, librsvg
, libtiffSupport ? true, libtiff
, libxml2Support ? true, libxml2
, openjpegSupport ? !stdenv.hostPlatform.isMinGW, openjpeg
, libwebpSupport ? !stdenv.hostPlatform.isMinGW, libwebp
, libheifSupport ? true, libheif
, potrace
, curl
, ApplicationServices
@@ -33,6 +32,8 @@
, imagemagick
}:
assert libXtSupport -> libX11Support;
let
arch =
if stdenv.hostPlatform.system == "i686-linux" then "i686"
@@ -45,12 +46,12 @@ in
stdenv.mkDerivation rec {
pname = "imagemagick";
version = "7.1.0.43";
version = "7.1.0-43";
src = fetchFromGitHub {
owner = "ImageMagick";
repo = "ImageMagick";
rev = version;
rev = builtins.replaceStrings [ "-" ] [ "." ] version;
hash = "sha256-SOy7Ci1rzLB12ofSQBWmX86dfbr/ywsRPunHRswlAt4=";
};
@@ -59,51 +60,49 @@ stdenv.mkDerivation rec {
enableParallelBuilding = true;
configureFlags =
[ "--with-frozenpaths" ]
++ (if arch != null then [ "--with-gcc-arch=${arch}" ] else [ "--without-gcc-arch" ])
++ lib.optional (librsvg != null) "--with-rsvg"
++ lib.optional (liblqr1 != null) "--with-lqr"
++ lib.optional (libjxl != null ) "--with-jxl"
++ lib.optionals (ghostscript != null)
[
"--with-gs-font-dir=${ghostscript}/share/ghostscript/fonts"
"--with-gslib"
]
++ lib.optionals stdenv.hostPlatform.isMinGW
[ "--enable-static" "--disable-shared" ] # due to libxml2 being without DLLs ATM
;
configureFlags = [
"--with-frozenpaths"
(lib.withFeatureAs (arch != null) "gcc-arch" arch)
(lib.withFeature librsvgSupport "rsvg")
(lib.withFeature liblqr1Support "lqr")
(lib.withFeature libjxlSupport "jxl")
(lib.withFeatureAs ghostscriptSupport "gs-font-dir" "${ghostscript}/share/ghostscript/fonts")
(lib.withFeature ghostscriptSupport "gslib")
] ++ lib.optionals stdenv.hostPlatform.isMinGW [
# due to libxml2 being without DLLs ATM
"--enable-static" "--disable-shared"
];
nativeBuildInputs = [ pkg-config libtool ];
buildInputs =
[
zlib
fontconfig
freetype
ghostscript
potrace
liblqr1
libpng
libraw
libtiff
libxml2
libheif
djvulibre
libjxl
]
++ lib.optionals (!stdenv.hostPlatform.isMinGW)
[ openexr librsvg openjpeg ]
buildInputs = [ potrace ]
++ lib.optional zlibSupport zlib
++ lib.optional fontconfigSupport fontconfig
++ lib.optional ghostscriptSupport ghostscript
++ lib.optional liblqr1Support liblqr1
++ lib.optional libpngSupport libpng
++ lib.optional librawSupport libraw
++ lib.optional libtiffSupport libtiff
++ lib.optional libxml2Support libxml2
++ lib.optional libheifSupport libheif
++ lib.optional djvulibreSupport djvulibre
++ lib.optional libjxlSupport libjxl
++ lib.optional openexrSupport openexr
++ lib.optional librsvgSupport librsvg
++ lib.optional openjpegSupport openjpeg
++ lib.optionals stdenv.isDarwin [
ApplicationServices
Foundation
];
propagatedBuildInputs =
[ bzip2 freetype libjpeg lcms2 curl ]
++ lib.optionals (!stdenv.hostPlatform.isMinGW)
[ libX11 libXext libXt libwebp ]
;
propagatedBuildInputs = [ curl ]
++ lib.optional bzip2Support bzip2
++ lib.optional freetypeSupport freetype
++ lib.optional libjpegSupport libjpeg
++ lib.optional lcms2Support lcms2
++ lib.optional libX11Support libX11
++ lib.optional libXtSupport libXt
++ lib.optional libwebpSupport libwebp;
postInstall = ''
(cd "$dev/include" && ln -s ImageMagick* ImageMagick)
@@ -113,7 +112,7 @@ stdenv.mkDerivation rec {
substituteInPlace "$file" --replace pkg-config \
"PKG_CONFIG_PATH='$dev/lib/pkgconfig' '${pkg-config}/bin/${pkg-config.targetPrefix}pkg-config'"
done
'' + lib.optionalString (ghostscript != null) ''
'' + lib.optionalString ghostscriptSupport ''
for la in $out/lib/*.la; do
sed 's|-lgs|-L${lib.getLib ghostscript}/lib -lgs|' -i $la
done
+5 -1
View File
@@ -1,4 +1,4 @@
{ lib, fetchFromGitHub
{ lib, fetchFromGitHub, gitUpdater
, meson, ninja, pkg-config, wrapGAppsHook
, desktop-file-utils, gsettings-desktop-schemas, libnotify, libhandy, webkitgtk
, python3Packages, gettext
@@ -95,6 +95,10 @@ python3Packages.buildPythonApplication rec {
makeWrapperArgs+=("''${gappsWrapperArgs[@]}")
'';
passthru.updateScript = gitUpdater {
inherit pname version;
};
meta = with lib; {
description = "An easy-to-use wineprefix manager";
homepage = "https://usebottles.com/";
@@ -96,7 +96,6 @@ stdenv.mkDerivation rec {
'');
meta = with lib; {
broken = stdenv.isDarwin;
description = "Convert, upload and download data from GPS and Map programs";
longDescription = ''
GPSBabel converts waypoints, tracks, and routes between popular
@@ -1,26 +1,50 @@
{ lib, fetchFromGitHub, python3, dbus, gnupg }:
{ lib
, fetchFromGitHub
, python3
, dbus
, gnupg
, coreutils
, nixosTests
}:
python3.pkgs.buildPythonApplication rec {
pname = "pass-secret-service";
# PyPI has old alpha version. Since then the project has switched from using a
# seemingly abandoned D-Bus package pydbus and started using maintained
# dbus-next. So let's use latest from GitHub.
version = "unstable-2020-04-12";
version = "unstable-2022-03-21";
src = fetchFromGitHub {
owner = "mdellweg";
repo = "pass_secret_service";
rev = "f6fbca6ac3ccd16bfec407d845ed9257adf74dfa";
sha256 = "0rm4pbx1fiwds1v7f99khhh7x3inv9yniclwd95mrbgljk3cc6a4";
rev = "149f8557e07098eee2f46561eea61e83255ac59b";
sha256 = "sha256-+/pFi6+K8rl0Ihm6cp/emUQVtau6+Apl8/VEr9AI0Xs=";
};
patches = [
# Only needed until https://github.com/mdellweg/pass_secret_service/pull/30
# is merged.
./int_from_bytes-deprecation-fix.patch
];
# Need to specify session.conf file for tests because it won't be found under
# /etc/ in check phase.
postPatch = ''
substituteInPlace Makefile \
--replace "dbus-run-session" "dbus-run-session --config-file=${dbus}/share/dbus-1/session.conf" \
--replace '-p $(relpassstore)' '-p $(PASSWORD_STORE_DIR)'
--replace '-p $(relpassstore)' '-p $(PASSWORD_STORE_DIR)' \
--replace 'pytest-3' 'pytest'
substituteInPlace systemd/org.freedesktop.secrets.service \
--replace "/bin/false" "${coreutils}/bin/false"
substituteInPlace systemd/dbus-org.freedesktop.secrets.service \
--replace "/usr/local" "$out"
'';
postInstall = ''
mkdir -p "$out/share/dbus-1/services/" "$out/lib/systemd/user/"
cp systemd/org.freedesktop.secrets.service "$out/share/dbus-1/services/"
cp systemd/dbus-org.freedesktop.secrets.service "$out/lib/systemd/user/"
'';
propagatedBuildInputs = with python3.pkgs; [
@@ -44,17 +68,15 @@ python3.pkgs.buildPythonApplication rec {
ps.pypass
];
checkPhase = ''
runHook preCheck
make test
runHook postCheck
'';
checkTarget = "test";
passthru.tests.pass-secret-service = nixosTests.pass-secret-service;
meta = {
description = "Libsecret D-Bus API with pass as the backend";
homepage = "https://github.com/mdellweg/pass_secret_service/";
license = lib.licenses.gpl3Only;
platforms = lib.platforms.all;
maintainers = with lib.maintainers; [ jluttine ];
maintainers = with lib.maintainers; [ jluttine aidalgol ];
};
}
@@ -0,0 +1,22 @@
--- a/pass_secret_service/interfaces/session.py
+++ b/pass_secret_service/interfaces/session.py
@@ -4,7 +4,6 @@
import os
import hmac
from hashlib import sha256
-from cryptography.utils import int_from_bytes
from cryptography.hazmat.backends import default_backend
from cryptography.hazmat.primitives.ciphers import Cipher
from cryptography.hazmat.primitives.ciphers.modes import CBC
@@ -27,9 +26,9 @@ class Session(ServiceInterface, SerialMixin):
@classmethod
@run_in_executor
def _create_dh(cls, input):
- priv_key = int_from_bytes(os.urandom(0x80), "big")
+ priv_key = int.from_bytes(os.urandom(0x80), "big")
pub_key = pow(2, priv_key, dh_prime)
- shared_secret = pow(int_from_bytes(input, "big"), priv_key, dh_prime)
+ shared_secret = pow(int.from_bytes(input, "big"), priv_key, dh_prime)
salt = b"\x00" * 0x20
shared_key = hmac.new(salt, shared_secret.to_bytes(0x80, "big"), sha256).digest()
aes_key = hmac.new(shared_key, b"\x01", sha256).digest()[:0x10]
@@ -1,16 +1,35 @@
{ lib, fetchFromGitHub, makeDesktopItem, prusa-slicer, wxGTK31-gtk3 }:
{ lib, fetchFromGitHub, fetchpatch, makeDesktopItem, prusa-slicer, wxGTK31-gtk3 }:
let
appname = "SuperSlicer";
pname = "super-slicer";
description = "PrusaSlicer fork with more features and faster development cycle";
versions = {
stable = { version = "2.3.57.12"; sha256 = "sha256-lePhDRHI++9zs54bTt2/Lu6ZQ7egjJCWb752aI0s7Mw=="; };
latest = { version = "2.3.57.12"; sha256 = "sha256-lePhDRHI++9zs54bTt2/Lu6ZQ7egjJCWb752aI0s7Mw=="; };
stable = {
version = "2.3.57.12";
sha256 = "sha256-lePhDRHI++9zs54bTt2/Lu6ZQ7egjJCWb752aI0s7Mw==";
patches = null;
};
latest = {
version = "2.4.58.3";
sha256 = "sha256-pEZcBEvK4Mq8nytiXLJvta7Bk6qZRJfTNrYz7N/aUAE=";
patches = [
# Fix detection of TBB, see https://github.com/prusa3d/PrusaSlicer/issues/6355
(fetchpatch {
url = "https://github.com/prusa3d/PrusaSlicer/commit/76f4d6fa98bda633694b30a6e16d58665a634680.patch";
sha256 = "1r806ycp704ckwzgrw1940hh1l6fpz0k1ww3p37jdk6mygv53nv6";
})
# Fix compile error with boost 1.79. See https://github.com/supermerill/SuperSlicer/issues/2823
(fetchpatch {
url = "https://raw.githubusercontent.com/gentoo/gentoo/81e3ca3b7c131e8345aede89e3bbcd700e1ad567/media-gfx/superslicer/files/superslicer-2.4.58.3-boost-1.79-port-v2.patch";
sha256 = "sha256-xMbUjumPZ/7ulyRuBA76CwIv4BOpd+yKXCINSf58FxI=";
})
];
};
};
override = { version, sha256 }: super: {
inherit version pname;
override = { version, sha256, patches }: super: {
inherit version pname patches;
src = fetchFromGitHub {
owner = "supermerill";
@@ -20,8 +39,6 @@ let
fetchSubmodules = true;
};
patches = null;
# We don't need PS overrides anymore, and gcode-viewer is embedded in the binary.
postInstall = null;
separateDebugInfo = true;
+2
View File
@@ -28,6 +28,8 @@ python3.pkgs.buildPythonApplication rec {
feedgenerator
zopfli
cryptography
setuptools # needs pkg_resources
];
checkInputs = [
@@ -0,0 +1,95 @@
{ lib
, python3Packages
, fetchFromGitHub
, poetry
, copyDesktopItems
, wrapQtAppsHook
, writeText
, makeDesktopItem
, xvfb-run
}:
python3Packages.buildPythonApplication rec {
pname = "streamdeck-ui";
version = "2.0.4";
src = fetchFromGitHub {
repo = pname;
owner = "timothycrosley";
rev = "v${version}";
hash = "sha256-NV4BkHEgfxIOuLfmn0vcPNqivmHLD6v7jLdLZgnrb0Q=";
};
desktopItems = [ (makeDesktopItem {
name = "streamdeck-ui";
desktopName = "Stream Deck UI";
icon = "streamdeck-ui";
exec = "streamdeck --no-ui";
comment = "UI for the Elgato Stream Deck";
categories = [ "Utility" ];
noDisplay = true;
}) ];
postInstall =
let
udevRules = ''
SUBSYSTEM=="usb", ATTRS{idVendor}=="0fd9", ATTRS{idProduct}=="0060", TAG+="uaccess"
SUBSYSTEM=="usb", ATTRS{idVendor}=="0fd9", ATTRS{idProduct}=="0063", TAG+="uaccess"
SUBSYSTEM=="usb", ATTRS{idVendor}=="0fd9", ATTRS{idProduct}=="006c", TAG+="uaccess"
SUBSYSTEM=="usb", ATTRS{idVendor}=="0fd9", ATTRS{idProduct}=="006d", TAG+="uaccess"
SUBSYSTEM=="usb", ATTRS{idVendor}=="0fd9", ATTRS{idProduct}=="0080", TAG+="uaccess"
'';
in
''
mkdir -p "$out/etc/udev/rules.d"
cp ${writeText "70-streamdeck.rules" udevRules} $out/etc/udev/rules.d/70-streamdeck.rules
mkdir -p "$out/share/pixmaps"
cp streamdeck_ui/logo.png $out/share/pixmaps/streamdeck-ui.png
'';
dontWrapQtApps = true;
makeWrapperArgs = [ "\${qtWrapperArgs[@]}" ];
format = "pyproject";
nativeBuildInputs = [
poetry
copyDesktopItems
wrapQtAppsHook
];
propagatedBuildInputs = with python3Packages; [
setuptools
filetype
cairosvg
pillow
pynput
pyside2
streamdeck
xlib
];
checkInputs = [
xvfb-run
python3Packages.pytest
python3Packages.hypothesis-auto
];
# Ignored tests are not in a running or passing state.
# Fixes have been merged upstream but not yet released.
# Revisit these ignored tests on each update.
checkPhase = ''
xvfb-run pytest tests \
--ignore=tests/test_api.py \
--ignore=tests/test_filter.py \
--ignore=tests/test_stream_deck_monitor.py
'';
meta = with lib; {
description = "Linux compatible UI for the Elgato Stream Deck";
homepage = "https://timothycrosley.github.io/streamdeck-ui/";
license = licenses.mit;
maintainers = with maintainers; [ majiir ];
};
}
+3 -3
View File
@@ -2,16 +2,16 @@
buildGoModule rec {
pname = "tut";
version = "0.0.46";
version = "1.0.13";
src = fetchFromGitHub {
owner = "RasmusLindroth";
repo = pname;
rev = version;
sha256 = "sha256-C9kyA6QuL8sqzCooaPzSP7VOpu7jcSFCUx9oaZLZ7/w=";
sha256 = "sha256-EORvIqA2bsmNUY1euUBmEYNMU02nW0doRDmTQjt15Os=";
};
vendorSha256 = "sha256-kMGEAN/I2XsIc6zCDbhbbstYlyjDpXQsOPUzjaJqJBk=";
vendorSha256 = "sha256-ilq1sfFY6WuNACryDGjkpF5eUTan8Y6Yt26vot9XR54=";
meta = with lib; {
description = "A TUI for Mastodon with vim inspired keys";
@@ -19,9 +19,9 @@
}
},
"beta": {
"version": "104.0.5112.39",
"sha256": "0xgw1n5lcqqbs0b8bpd05f1z0q2lpajg2dxangd1yfl7y16yfxv9",
"sha256bin64": "0abprih2sh483cqv9rqs67ha3cm9744h3gdc342lgqj3x8bmspmj",
"version": "104.0.5112.48",
"sha256": "1zk4ywphcy6nrv0yf38yhl2bcq6fk34makglx31aalf2nhhw945i",
"sha256bin64": "14cx0m6jak4cma62axli0l4gqzqqh4gs7gam2dfahmwxsgcdwwn7",
"deps": {
"gn": {
"version": "2022-06-08",
@@ -32,15 +32,15 @@
}
},
"dev": {
"version": "105.0.5148.2",
"sha256": "0qnkpda0chsxgfby5g38xmpkilyz2v12mrwlayfsp2iqhc7d07vz",
"sha256bin64": "045czwsra17iclgyzsnbbjr55lrmhzf97c2k0wwjrmd59cx4b1sa",
"version": "105.0.5176.3",
"sha256": "11zdihvy1n7d3vfl88477ppbfjd3mmkdsj4pfmfqm4mpw7zgi7fy",
"sha256bin64": "08rhg2am01dbb15djh7200wsg0wb48na09i706035wnnf0d8z313",
"deps": {
"gn": {
"version": "2022-06-22",
"version": "2022-07-11",
"url": "https://gn.googlesource.com/gn",
"rev": "29accf5ac2eadfc53e687081583b7bc1592a8839",
"sha256": "0z9gaw8p88yhb7fi844pvylsbgjy3ni7bnca1yx37928fjw3ppln"
"rev": "9ef321772ecc161937db69acb346397e0ccc484d",
"sha256": "0j85kgf8c1psys6kfsq5mph8n80hcbzhr7d2blqiiysmjj0wc6ng"
}
}
},
@@ -5,14 +5,14 @@
python3Packages.buildPythonApplication rec {
pname = "flexget";
version = "3.3.19";
version = "3.3.21";
# Fetch from GitHub in order to use `requirements.in`
src = fetchFromGitHub {
owner = "flexget";
repo = "flexget";
rev = "refs/tags/v${version}";
hash = "sha256-dt4XEGJGNq0njhuJBYA6xbyTx1jkrZlJ0Pl83Xjat6I=";
hash = "sha256-0XpToyy5Q3d2IpEMaeyhTri4xCBrI3Kmy5lMTqnAqC0=";
};
postPatch = ''
@@ -44,6 +44,7 @@ python3Packages.buildPythonApplication rec {
jsonschema
loguru
more-itertools
packaging
psutil
pynzb
PyRSS2Gen
@@ -10,21 +10,14 @@ let
canary = "0.0.283";
};
version = versions.${branch};
srcs = let
darwin-ptb = fetchurl {
url = "https://dl-ptb.discordapp.net/apps/osx/${version}/DiscordPTB.dmg";
sha256 = "sha256-LS7KExVXkOv8O/GrisPMbBxg/pwoDXIOo1dK9wk1yB8=";
};
in {
srcs = rec {
x86_64-linux = {
stable = fetchurl {
url =
"https://dl.discordapp.net/apps/linux/${version}/discord-${version}.tar.gz";
url = "https://dl.discordapp.net/apps/linux/${version}/discord-${version}.tar.gz";
sha256 = "1hl01rf3l6kblx5v7rwnwms30iz8zw6dwlkjsx2f1iipljgkh5q4";
};
ptb = fetchurl {
url =
"https://dl-ptb.discordapp.net/apps/linux/${version}/discord-ptb-${version}.tar.gz";
url = "https://dl-ptb.discordapp.net/apps/linux/${version}/discord-ptb-${version}.tar.gz";
sha256 = "d78NnQZ3MkLje8mHrI6noH2iD2oEvSJ3cDnsmzQsUYc=";
};
canary = fetchurl {
@@ -32,20 +25,25 @@ let
sha256 = "sha256-OrGg4jXziesHBhQORxREN/wq776RgNGaTyjJNV4pSAU=";
};
};
x86_64-darwin = {
stable = fetchurl {
url = "https://dl.discordapp.net/apps/osx/${version}/Discord.dmg";
sha256 = "1jvlxmbfqhslsr16prsgbki77kq7i3ipbkbn67pnwlnis40y9s7p";
aarch64-darwin = {
ptb = fetchurl {
url = "https://dl-ptb.discordapp.net/apps/osx/${version}/DiscordPTB.dmg";
sha256 = "sha256-LS7KExVXkOv8O/GrisPMbBxg/pwoDXIOo1dK9wk1yB8=";
};
ptb = darwin-ptb;
canary = fetchurl {
url =
"https://dl-canary.discordapp.net/apps/osx/${version}/DiscordCanary.dmg";
url = "https://dl-canary.discordapp.net/apps/osx/${version}/DiscordCanary.dmg";
sha256 = "0mqpk1szp46mih95x42ld32rrspc6jx1j7qdaxf01whzb3d4pi9l";
};
};
# Only PTB bundles a MachO Universal binary with ARM support.
aarch64-darwin = { ptb = darwin-ptb; };
# Stable does not (yet) provide aarch64-darwin support. PTB and Canary, however, do.
x86_64-darwin =
aarch64-darwin
// {
stable = fetchurl {
url = "https://dl.discordapp.net/apps/osx/${version}/Discord.dmg";
sha256 = "1jvlxmbfqhslsr16prsgbki77kq7i3ipbkbn67pnwlnis40y9s7p";
};
};
};
src = srcs.${stdenv.hostPlatform.system}.${branch};
@@ -57,35 +55,40 @@ let
license = licenses.unfree;
maintainers = with maintainers; [ ldesgoui MP2E devins2518 ];
platforms = [ "x86_64-linux" "x86_64-darwin" ]
++ lib.optionals (branch == "ptb") [ "aarch64-darwin" ];
++ lib.optionals (branch != "stable") [ "aarch64-darwin" ];
};
package = if stdenv.isLinux then ./linux.nix else ./darwin.nix;
package =
if stdenv.isLinux
then ./linux.nix
else ./darwin.nix;
openasar = callPackage ./openasar.nix { };
packages = (builtins.mapAttrs
(_: value: callPackage package
(value // {
inherit src version openasar;
meta = meta // { mainProgram = value.binaryName; };
})
)
{
stable = rec {
pname = "discord";
binaryName = "Discord";
desktopName = "Discord";
};
ptb = rec {
pname = "discord-ptb";
binaryName = "DiscordPTB";
desktopName = "Discord PTB";
};
canary = rec {
pname = "discord-canary";
binaryName = "DiscordCanary";
desktopName = "Discord Canary";
};
}
packages = (
builtins.mapAttrs
(_: value:
callPackage package (value
// {
inherit src version openasar;
meta = meta // { mainProgram = value.binaryName; };
}))
{
stable = rec {
pname = "discord";
binaryName = "Discord";
desktopName = "Discord";
};
ptb = rec {
pname = "discord-ptb";
binaryName = "DiscordPTB";
desktopName = "Discord PTB";
};
canary = rec {
pname = "discord-canary";
binaryName = "DiscordCanary";
desktopName = "Discord Canary";
};
}
);
in packages.${branch}
in
packages.${branch}
@@ -0,0 +1,175 @@
{ lib
, writeScript
, stdenv
, fetchurl
, alsaLib
, at-spi2-atk
, at-spi2-core
, atk
, cairo
, cups
, dbus
, expat
, fontconfig
, freetype
, gdk-pixbuf
, glib
, gtk3
, harfbuzz
, libdrm
, libgcrypt
, libglvnd
, libkrb5
, libpulseaudio
, libsecret
, udev
, libxcb
, libxkbcommon
, lshw
, mesa
, nspr
, nss
, pango
, zlib
, libX11
, libXcomposite
, libXcursor
, libXdamage
, libXext
, libXfixes
, libXi
, libXrandr
, libXrender
, libXtst
, libxshmfence
, xcbutil
, xcbutilimage
, xcbutilkeysyms
, xcbutilrenderutil
, xcbutilwm
, p7zip
, wayland
, libXScrnSaver
}:
stdenv.mkDerivation rec {
pname = "webex";
version = "42.8.0.22907";
src = fetchurl {
url = "https://binaries.webex.com/WebexDesktop-Ubuntu-Blue/20220712081040/Webex_ubuntu.7z";
sha256 = "b83950cdcf978a3beda93de27b25b70554fc82fcf072a5a7ea858d2ce0d176ac";
};
buildInputs = [
alsaLib
at-spi2-atk
at-spi2-core
atk
cairo
cups
dbus
expat
fontconfig
freetype
glib
gdk-pixbuf
gtk3
harfbuzz
lshw
mesa
nspr
nss
pango
zlib
libdrm
libgcrypt
libglvnd
libkrb5
libpulseaudio
libsecret
udev
libxcb
libxkbcommon
libX11
libXcomposite
libXcursor
libXdamage
libXext
libXfixes
libXi
libXrandr
libXrender
libXtst
libxshmfence
xcbutil
xcbutilimage
libXScrnSaver
xcbutilkeysyms
xcbutilrenderutil
xcbutilwm
p7zip
wayland
];
libPath = "$out/opt/Webex/lib:$out/opt/Webex/bin:${lib.makeLibraryPath buildInputs}";
unpackPhase = ''
7z x $src
mv Webex_ubuntu/opt .
'';
postPatch = ''
substituteInPlace opt/Webex/bin/webex.desktop --replace /opt $out/opt
'';
dontPatchELF = true;
buildPhase = ''
patchelf \
--set-interpreter "$(cat $NIX_CC/nix-support/dynamic-linker)" \
--set-rpath "${libPath}" \
opt/Webex/bin/CiscoCollabHost \
opt/Webex/bin/CiscoCollabHostCef \
opt/Webex/bin/CiscoCollabHostCefWM \
opt/Webex/bin/WebexFileSelector \
opt/Webex/bin/pxgsettings
for each in $(find opt/Webex -type f | grep \\.so); do
patchelf --set-rpath "${libPath}" "$each"
done
'';
installPhase = ''
mkdir -p "$out/bin" "$out/share/applications"
cp -r opt "$out"
ln -s "$out/opt/Webex/bin/CiscoCollabHost" "$out/bin/webex"
chmod +x $out/bin/webex
mv "$out/opt/Webex/bin/webex.desktop" "$out/share/applications/webex.desktop"
'';
passthru.updateScript = writeScript "webex-update-script" ''
#!/usr/bin/env nix-shell
#!nix-shell -i bash -p curl jq common-updater-scripts
set -eou pipefail;
channel=blue
manifest=$(curl -s "https://client-upgrade-a.wbx2.com/client-upgrade/api/v1/webexteamsdesktop/upgrade/@me?channel=$channel&model=ubuntu" | jq '.manifest')
url=$(jq -r '.packageLocation' <<< "$manifest")
version=$(jq -r '.version' <<< "$manifest")
hash=$(jq -r '.checksum' <<< "$manifest")
update-source-version ${pname} "$version" "$hash" "$url" --file=./pkgs/applications/networking/instant-messengers/webex/default.nix
'';
meta = with lib; {
description = "The all-in-one app to call, meet, message, and get work done";
homepage = "https://webex.com/";
downloadPage = "https://www.webex.com/downloads.html";
license = licenses.unfree;
maintainers = with lib.maintainers; [ uvnikita ];
platforms = [ "x86_64-linux" ];
};
}
@@ -29,6 +29,6 @@ stdenv.mkDerivation rec {
changelog = "https://github.com/any1/wayvnc/releases/tag/v${version}";
license = licenses.isc;
platforms = platforms.linux;
maintainers = with maintainers; [ primeos ];
maintainers = with maintainers; [ nickcao ];
};
}
@@ -5,16 +5,16 @@
buildGoModule rec {
pname = "rclone";
version = "1.58.1";
version = "1.59.0";
src = fetchFromGitHub {
owner = pname;
repo = pname;
rev = "v${version}";
sha256 = "sha256-Hh0IVNaLAUOmdYJ6cbYFyDCLwL+0HyZdRzKnXAT0CB8=";
sha256 = "sha256-SHUAEjdcqzNiIxSsmYb71JiOhWPoi8Z2nJAReRw2M5k=";
};
vendorSha256 = "sha256-MPo1t1gzlrzAzbTOv/dSs2BH8NwlXmf6vo1DOFP2TrM=";
vendorSha256 = "sha256-ajOUvZ/0D8QL4MY6xO+hZziyUtIB0WQERU6Ov06K9I8=";
subPackages = [ "." ];
@@ -0,0 +1,15 @@
diff --git a/tests/unit/conftest.py b/tests/unit/conftest.py
index 932747c..9b3d6ac 100644
--- a/tests/unit/conftest.py
+++ b/tests/unit/conftest.py
@@ -1,9 +1,7 @@
import os
import sys
-STRICTDOC_ROOT_PATH = os.path.abspath(
- os.path.join(__file__, "../../../../strictdoc")
-)
+STRICTDOC_ROOT_PATH = "@strictdoc_root_path@"
assert os.path.exists(STRICTDOC_ROOT_PATH), "does not exist: {}".format(
STRICTDOC_ROOT_PATH
)
@@ -0,0 +1,100 @@
{ lib
, stdenv
, buildPythonApplication
, fetchFromGitHub
, python3
, pythonOlder
, html5lib
, invoke
, openpyxl
, poetry-core
, tidylib
, beautifulsoup4
, dataclasses
, datauri
, docutils
, jinja2
, lxml
, markupsafe
, pygments
, reqif
, setuptools
, textx
, xlrd
, XlsxWriter
, pytestCheckHook
}:
buildPythonApplication rec {
pname = "strictdoc";
version = "0.0.26";
format = "pyproject";
src = fetchFromGitHub {
owner = "strictdoc-project";
repo = pname;
rev = version;
sha256 = "sha256-SMAwji75AjW8CzXRKBDF+fR/a5++GhgIvkcuD+a/vp4=";
};
patches = [
./conftest.py.patch
];
postPatch = ''
substituteInPlace ./tests/unit/conftest.py \
--replace @strictdoc_root_path@ "${placeholder "out"}/${python3.sitePackages}/strictdoc"
substituteInPlace requirements.txt \
--replace "jinja2 >= 2.11.2, <3.0" "jinja2 >= 2.11.2" \
--replace "reqif >= 0.0.18, == 0.*" "reqif>=0.0.8" \
--replace "==" ">=" \
--replace "~=" ">="
'';
nativeBuildInputs = [
html5lib
invoke
openpyxl
poetry-core
tidylib
];
propagatedBuildInputs = [
beautifulsoup4
datauri
docutils
jinja2
lxml
markupsafe
pygments
reqif
setuptools
textx
xlrd
XlsxWriter
] ++ lib.optionals (pythonOlder "3.7") [
dataclasses
];
checkInputs = [
pytestCheckHook
];
pythonImportsCheck = [
"strictdoc"
];
disabledTests = [
# fixture 'fs' not found
"test_001_load_from_files"
];
meta = with lib; {
description = "Software requirements specification tool";
homepage = "https://github.com/strictdoc-project/strictdoc";
changelog = "https://github.com/strictdoc-project/strictdoc/releases";
license = licenses.asl20;
maintainers = with maintainers; [ yuu ];
};
}
@@ -1,14 +1,14 @@
{ lib, buildGoModule, fetchFromGitHub, makeWrapper, xdg-utils, installShellFiles, git }:
{ lib, buildGoModule, fetchFromGitHub, makeBinaryWrapper, xdg-utils, installShellFiles, git }:
buildGoModule rec {
pname = "lab";
version = "0.25.0";
version = "0.25.1";
src = fetchFromGitHub {
owner = "zaquestion";
repo = "lab";
rev = "v${version}";
sha256 = "sha256-7AUhH2aBRpsjUzZQGE2fHDOa1k0rMUfZJqUEKZXpJuM=";
sha256 = "sha256-VCvjP/bSd/0ywvNWPsseXn/SPkdp+BsXc/jTvB11EOk=";
};
subPackages = [ "." ];
@@ -17,16 +17,16 @@ buildGoModule rec {
doCheck = false;
nativeBuildInputs = [ makeWrapper installShellFiles ];
nativeBuildInputs = [ makeBinaryWrapper installShellFiles ];
ldflags = [ "-s" "-w" "-X main.version=${version}" ];
postInstall = ''
wrapProgram $out/bin/lab --prefix PATH ":" "${lib.makeBinPath [ git xdg-utils ]}";
for shell in bash fish zsh; do
$out/bin/lab completion $shell > lab.$shell
installShellCompletion lab.$shell
done
installShellCompletion --cmd lab \
--bash <($out/bin/lab completion bash) \
--fish <($out/bin/lab completion fish) \
--zsh <($out/bin/lab completion zsh)
'';
meta = with lib; {
@@ -8,7 +8,7 @@ let
upstreamInfo = with builtins; fromJSON (readFile ./upstream-info.json);
arch = with stdenv.hostPlatform;
if isAarch64 then "arm"
if isAarch64 then "aarch64"
else if isx86_64 then "x86_64"
else throw "no seccomp policy files available for host platform";
@@ -115,8 +115,14 @@ stdenv.mkDerivation rec {
url = "https://gitlab.com/raboof/qemu/-/commit/3fb5e8fe4434130b1167a995b2a01c077cca2cd5.patch";
sha256 = "sha256-evzrN3i4ntc/AFG0C0rezQpQbWcnx74nXO+5DLErX8o=";
})
# fix 9p on macOS host, landed in master
(fetchpatch {
name = "fix-9p-on-macos.patch";
url = "https://gitlab.com/qemu/qemu/-/commit/f5643914a9e8f79c606a76e6a9d7ea82a3fc3e65.patch";
sha256 = "sha256-8i13wU135h+YxoXFtkXweBN3hMslpWoNoeQ7Ydmn3V4=";
})
]
++ lib.optional nixosTestRunner ./force-uid0-on-9p.patch;
++ lib.optional nixosTestRunner ./force-uid0-on-9p.patch;
postPatch = ''
# Otherwise tries to ensure /var/run exists.
@@ -10,11 +10,11 @@
with lib;
stdenv.mkDerivation rec {
pname = "weston";
version = "10.0.0";
version = "10.0.1";
src = fetchurl {
url = "https://wayland.freedesktop.org/releases/${pname}-${version}.tar.xz";
sha256 = "1bj7wnadr7ssn6xw7k8ki0wpj6np3kjd2pcysfz3h0mr290rc8sw";
url = "https://gitlab.freedesktop.org/wayland/weston/-/releases/${version}/downloads/weston-${version}.tar.xz";
sha256 = "05a10gfbadyxkwgsncc5vc343f493csgh10vk0878nl6d98557la";
};
patches = [
@@ -1,6 +1,7 @@
{ lib
, stdenv
, fetchFromGitHub
, fetchpatch
, nix-update-script
, pkg-config
, meson
@@ -32,6 +33,15 @@ stdenv.mkDerivation rec {
outputs = [ "out" "dev" ];
patches = [
# Fix terminal critical warnings and possible crash when removing bookmark
# https://github.com/elementary/files/pull/2062
(fetchpatch {
url = "https://github.com/elementary/files/commit/daa5ab244b45aafdd7be49eb0bd6f052ded5b5a7.patch";
sha256 = "sha256-crGvbo9Ye9656cOy6YqNreMLE2pEMO0Rg8oz81OfJkw=";
})
];
src = fetchFromGitHub {
owner = "elementary";
repo = "files";
@@ -47,14 +47,11 @@ stdenv.mkDerivation rec {
libunwind
libuuid
openssl
] ++ lib.optionals stdenv.isLinux [
lttng-ust_2_12
]);
] ++ lib.optional stdenv.isLinux lttng-ust_2_12);
nativeBuildInputs = [
autoPatchelfHook
makeWrapper
];
] ++ lib.optional stdenv.isLinux autoPatchelfHook;
buildInputs = [
stdenv.cc.cc
@@ -46,6 +46,7 @@ coq.ocamlPackages.buildDunePackage rec {
yojson
getopt
core
core_unix
pprint
linenoise
@@ -83,6 +84,8 @@ coq.ocamlPackages.buildDunePackage rec {
doCheck = false; # Tests fail, but could not determine the reason
patches = [ ./ligo.patch ]; # fix for core >= 0.15.0
meta = with lib; {
homepage = "https://ligolang.org/";
downloadPage = "https://ligolang.org/docs/intro/installation";
+134
View File
@@ -0,0 +1,134 @@
diff --git a/ligo.opam b/ligo.opam
index d561c74d1..3a8d34feb 100644
--- a/ligo.opam
+++ b/ligo.opam
@@ -10,7 +10,9 @@ license: "MIT"
# If you change the dependencies, run `opam lock` in the root
depends: [
# Jane Street Core
- "core"
+ "core" { >= "v0.14.0" & < "v0.16.0" }
+ "core_kernel" { >= "v0.14.0" & "v0.16.0" }
+ "core_unix" { >= "v0.14.0" & "v0.16.0" }
# Tooling
"odoc" { build }
"ocamlfind" { build }
diff --git a/ligo.opam.locked b/ligo.opam.locked
index b4501cc76..c8ed8a41f 100644
--- a/ligo.opam.locked
+++ b/ligo.opam.locked
@@ -50,8 +50,9 @@ depends: [
"conf-rust" {= "0.1"}
"conf-which" {= "1"}
"coq" {= "8.13.2"}
- "core" {= "v0.14.1"}
- "core_kernel" {= "v0.14.2"}
+ "core" {= "v0.15.0"}
+ "core_kernel" {= "v0.15.0"}
+ "core_unix" {= "v0.15.0"}
"cppo" {= "1.6.8"}
"csexp" {= "1.5.1"}
"cstruct" {= "6.0.1"}
diff --git a/src/bin/cli.ml b/src/bin/cli.ml
index a6fc13e0d..ef5177868 100644
--- a/src/bin/cli.ml
+++ b/src/bin/cli.ml
@@ -12,7 +12,7 @@ let entry_point =
let source_file =
let name = "SOURCE_FILE" in
let _doc = "the path to the smart contract file." in
- Command.Param.(anon (name %: Filename.arg_type))
+ Command.Param.(anon (name %: Filename_unix.arg_type))
let package_name =
let name = "PACKAGE_NAME" in
@@ -662,7 +662,7 @@ let main = Command.group ~preserve_subcommand_order:() ~summary:"the LigoLANG co
]
let run ?argv () =
- Command.run ~version:Version.version ?argv main;
+ Command_unix.run ~version:Version.version ?argv main;
(* Effect to error code *)
match !return with
Done -> 0;
@@ -677,4 +677,3 @@ let run ?argv () =
match exn with
| Failure msg -> message msg
| exn -> message (Exn.to_string exn)
-
diff --git a/src/bin/cli_helpers.ml b/src/bin/cli_helpers.ml
index b64a17d53..8c4c43dde 100644
--- a/src/bin/cli_helpers.ml
+++ b/src/bin/cli_helpers.ml
@@ -66,7 +66,7 @@ let run_command (cmd : command) =
(fun p -> Lwt.map
(fun status ->
match status with
- Caml.Unix.WEXITED 0 -> Ok ()
+ Caml_unix.WEXITED 0 -> Ok ()
| _ -> Error ("unknown error"))
p#status) in
Lwt_main.run status
\ No newline at end of file
diff --git a/src/bin/dune b/src/bin/dune
index 295c056f3..08d980439 100644
--- a/src/bin/dune
+++ b/src/bin/dune
@@ -11,7 +11,9 @@
repl
install
cli_helpers
- ligo_api)
+ ligo_api
+ core_unix.command_unix
+ core_unix.filename_unix)
(modules cli version))
(library
diff --git a/src/main/interpreter/dune b/src/main/interpreter/dune
index c55e24a88..f9762a297 100644
--- a/src/main/interpreter/dune
+++ b/src/main/interpreter/dune
@@ -4,4 +4,4 @@
(instrumentation
(backend bisect_ppx))
(libraries tezos-011-PtHangz2-test-helpers ast_aggregated ligo_interpreter
- main_errors ligo_compile build fuzz ligo_run self_ast_typed))
+ main_errors ligo_compile build fuzz ligo_run self_ast_typed core_unix.sys_unix))
diff --git a/src/main/interpreter/interpreter.ml b/src/main/interpreter/interpreter.ml
index b0379029c..530e08c3a 100644
--- a/src/main/interpreter/interpreter.ml
+++ b/src/main/interpreter/interpreter.ml
@@ -2,6 +2,7 @@ open Simple_utils.Trace
open Simple_utils
open Ligo_interpreter.Types
open Ligo_interpreter.Combinators
+module Sys = Sys_unix
module AST = Ast_aggregated
diff --git a/vendors/ligo-utils/simple-utils/dune b/vendors/ligo-utils/simple-utils/dune
index ca9f2bf5c..62c39087b 100644
--- a/vendors/ligo-utils/simple-utils/dune
+++ b/vendors/ligo-utils/simple-utils/dune
@@ -6,6 +6,7 @@
(libraries
;; Third party
core
+ core_kernel.caml_unix
yojson
result
unix
diff --git a/vendors/ligo-utils/simple-utils/snippet.ml b/vendors/ligo-utils/simple-utils/snippet.ml
index 658f115f2..f23000590 100644
--- a/vendors/ligo-utils/simple-utils/snippet.ml
+++ b/vendors/ligo-utils/simple-utils/snippet.ml
@@ -1,7 +1,7 @@
(* used to show code snippets in error messages *)
let print_code ppf (l:Region.t) (input_line: unit -> string) =
- let dumb =String.equal (Caml.Unix.getenv "TERM") "dumb" in
+ let dumb =String.equal (Caml_unix.getenv "TERM") "dumb" in
let start = l#start#line in
let start_column = l#start#offset `Byte in
let stop = l#stop#line in
@@ -7,6 +7,7 @@ with lib; mkCoqDerivation {
owner = "math-comp";
inherit version;
defaultVersion = with versions; switch [ coq.version mathcomp.version ] [
{ cases = [ (range "8.13" "8.15") (isGe "1.12") ]; out = "1.5.2"; }
{ cases = [ (isGe "8.10") (isGe "1.11") ]; out = "1.5.1"; }
{ cases = [ (range "8.7" "8.11") "1.11.0" ]; out = "1.5.0"; }
{ cases = [ (isEq "8.11") (range "1.8" "1.10") ]; out = "1.4.0+coq-8.11"; }
@@ -16,6 +17,7 @@ with lib; mkCoqDerivation {
{ cases = [ (range "8.6" "8.7") (range "1.6.1" "1.7") ]; out = "1.0.0"; }
] null;
release = {
"1.5.2".sha256 = "sha256-0KmmSjc2AlUo6BKr9RZ4FjL9wlGISlTGU0X1Eu7l4sw=";
"1.5.1".sha256 = "0ryfml4pf1dfya16d8ma80favasmrygvspvb923n06kfw9v986j7";
"1.5.0".sha256 = "0vx9n1fi23592b3hv5p5ycy7mxc8qh1y5q05aksfwbzkk5zjkwnq";
"1.4.1".sha256 = "0kx4nx24dml1igk0w0qijmw221r5bgxhwhl5qicnxp7ab3c35s8p";
@@ -20,6 +20,6 @@ stdenv.mkDerivation rec {
homepage = "http://catch-lib.net";
license = licenses.boost;
maintainers = with maintainers; [ edwtjo knedlsepp ];
platforms = with platforms; unix;
platforms = platforms.unix ++ [ "x86_64-windows" ];
};
}
+12 -6
View File
@@ -1,19 +1,25 @@
{ lib, stdenv, fetchFromGitHub, cmake, boost, catch2, metal }:
{ lib, stdenv, fetchFromGitHub, cmake, boost, catch2 }:
stdenv.mkDerivation rec {
pname = "fcppt";
version = "3.5.0";
version = "4.2.1";
src = fetchFromGitHub {
owner = "freundlich";
repo = "fcppt";
rev = version;
sha256 = "045cmn4sym6ria96l4fsc1vrs8l4xrl1gzkmja82f4ddj8qkji2f";
sha256 = "1pcmi2ck12nanw1rnwf8lmyx85iq20897k6daxx3hw5f23j1kxv6";
};
nativeBuildInputs = [ cmake ];
buildInputs = [ boost catch2 metal ];
buildInputs = [ boost catch2 ];
cmakeFlags = [ "-DCMAKE_SKIP_BUILD_RPATH=false" "-DENABLE_BOOST=true" "-DENABLE_EXAMPLES=true" "-DENABLE_CATCH=true" "-DENABLE_TEST=true" ];
cmakeFlags = [
"-DCMAKE_SKIP_BUILD_RPATH=false"
"-DENABLE_BOOST=true"
"-DENABLE_EXAMPLES=true"
"-DENABLE_CATCH=true"
"-DENABLE_TEST=true"
];
meta = with lib; {
description = "Freundlich's C++ toolkit";
@@ -27,6 +33,6 @@ stdenv.mkDerivation rec {
homepage = "https://fcppt.org";
license = licenses.boost;
maintainers = with maintainers; [ pmiddend ];
platforms = platforms.linux;
platforms = [ "x86_64-linux" "x86_64-windows" ];
};
}
@@ -17,13 +17,13 @@
stdenv.mkDerivation rec {
pname = "libgsf";
version = "1.14.49";
version = "1.14.50";
outputs = [ "out" "dev" ];
src = fetchurl {
url = "mirror://gnome/sources/${pname}/${lib.versions.majorMinor version}/${pname}-${version}.tar.xz";
sha256 = "6evjZojwEMnm5AyJA/NzKUjeuKygMleNB9B1G9gs+Fc=";
sha256 = "bmwg0HeDOQadWDwNY3WdKX6BfqENDYl+u+ll8W4ujlI=";
};
nativeBuildInputs = [
@@ -17,14 +17,14 @@
stdenv.mkDerivation rec {
pname = "libplacebo";
version = "4.192.1";
version = "4.208.0";
src = fetchFromGitLab {
domain = "code.videolan.org";
owner = "videolan";
repo = pname;
rev = "v${version}";
sha256 = "13z2f0vwf9fgfzqgkqzvqwa8c8nkymrg5hv7xslfx53dacjfidhy";
sha256 = "161dp5781s74ca3gglaxlmchx7glyshf0wg43w98pl22n1jcm5qk";
};
nativeBuildInputs = [
@@ -1,23 +0,0 @@
{ lib, stdenv, fetchFromGitHub, cmake }:
stdenv.mkDerivation rec {
pname = "metal";
version = "2.1.2";
src = fetchFromGitHub {
owner = "brunocodutra";
repo = "metal";
rev = "v${version}";
sha256 = "sha256-1I+EZtIz/2y4+dJGBONhTlUQGHgRdvXc1ZAOC9pmStw=";
};
nativeBuildInputs = [ cmake ];
meta = with lib; {
description = "Single-header C++11 library designed to make you love template metaprogramming";
homepage = "https://github.com/brunocodutra/metal";
license = licenses.mit;
maintainers = with maintainers; [ pmiddend ];
platforms = platforms.all;
};
}
@@ -29,6 +29,6 @@ stdenv.mkDerivation rec {
changelog = "https://github.com/any1/neatvnc/releases/tag/v${version}";
license = licenses.isc;
platforms = platforms.linux;
maintainers = with maintainers; [ primeos ];
maintainers = with maintainers; [ nickcao ];
};
}
@@ -10,23 +10,23 @@ let
rev = "v3.0.0";
sha256 = "O6p2PFB7c2KE9VqWvmTaFywbW1hSzAP5V42EuemX+ls=";
};
in stdenv.mkDerivation rec {
in stdenv.mkDerivation (finalAttrs: {
pname = "nlohmann_json";
version = "3.10.5";
src = fetchFromGitHub {
owner = "nlohmann";
repo = "json";
rev = "v${version}";
rev = "v${finalAttrs.version}";
sha256 = "DTsZrdB9GcaNkx7ZKxcgCA3A9ShM5icSF0xyGguJNbk=";
};
nativeBuildInputs = [ cmake ];
cmakeFlags = [
"-DBuildTests=${if doCheck then "ON" else "OFF"}"
"-DBuildTests=${if finalAttrs.doCheck then "ON" else "OFF"}"
"-DJSON_MultipleHeaders=ON"
] ++ lib.optional doCheck "-DJSON_TestDataDirectory=${testData}";
] ++ lib.optional finalAttrs.doCheck "-DJSON_TestDataDirectory=${testData}";
doCheck = stdenv.hostPlatform == stdenv.buildPlatform;
@@ -44,4 +44,4 @@ in stdenv.mkDerivation rec {
license = licenses.mit;
platforms = platforms.all;
};
}
})
@@ -3,13 +3,13 @@
mkDerivation rec {
pname = "stellarsolver";
version = "2.2";
version = "2.3";
src = fetchFromGitHub {
owner = "rlancaste";
repo = pname;
rev = version;
sha256 = "sha256-Ay7bszR4D5KKFiVLXfweJcc8jgUSZljnZVblEx7xh8o=";
sha256 = "sha256-DSydgn9brVQlVNfW8Lnw/ZNs7aftokkCuJshgqmegpY=";
};
nativeBuildInputs = [ cmake ];
+1 -1
View File
@@ -104,7 +104,7 @@ stdenv.mkDerivation rec {
cmakeFlags = cmakeCommonFlags ++ [
"-DGIT_ARCHETYPE=1" # https://bugs.gentoo.org/814116
"-DENABLE_SHARED=ON"
"-DENABLE_SHARED=${if stdenv.hostPlatform.isStatic then "OFF" else "ON"}"
"-DHIGH_BIT_DEPTH=OFF"
"-DENABLE_HDR10_PLUS=ON"
] ++ [
@@ -1,4 +1,4 @@
{ lib, stdenv, fetchFromGitHub, fetchurl
{ lib, stdenv, fetchFromGitHub, fetchurl, fetchpatch
, ocaml, findlib, ocamlbuild, ocaml_oasis
, bitstring, camlzip, cmdliner, core_kernel, ezjsonm, fileutils, ocaml_lwt, ocamlgraph, ocurl, re, uri, zarith, piqi, piqi-ocaml, uuidm, llvm, frontc, ounit, ppx_jane, parsexp
, utop, libxml2, ncurses
@@ -64,7 +64,13 @@ stdenv.mkDerivation rec {
disableIda = "--disable-ida";
disableGhidra = "--disable-ghidra";
patches = [ ./curses_is_ncurses.patch ];
patches = [
./curses_is_ncurses.patch
(fetchpatch {
url = "https://github.com/BinaryAnalysisPlatform/bap/commit/8b1bba30ebb551256a5b15122e70d07f40184039.patch";
sha256 = "0il0ik5f6nyqyrlln3n43mz1zpqq34lfnhmp10wdsah4ck2dy75h";
})
];
preConfigure = ''
substituteInPlace oasis/elf-loader --replace bitstring.ppx ppx_bitstring
@@ -4,7 +4,7 @@
buildDunePackage rec {
pname = "biocaml";
version = "0.11.1";
version = "0.11.2";
useDune2 = true;
@@ -14,7 +14,12 @@ buildDunePackage rec {
owner = "biocaml";
repo = pname;
rev = "v${version}";
sha256 = "1il84vvypgkhdyc2j5fmgh14a58069s6ijbd5dvyl2i7jdxaazji";
sha256 = "01yw12yixs45ya1scpb9jy2f7dw1mbj7741xib2xpq3kkc1hc21s";
};
patches = fetchpatch {
url = "https://github.com/biocaml/biocaml/commit/3ef74d0eb4bb48d2fb7dd8b66fb3ad8fe0aa4d78.patch";
sha256 = "0rcvf8gwq7sz15mghl9ing722rl2zpnqif9dfxrnpdxiv0rl0731";
};
buildInputs = [ ppx_jane ppx_sexp_conv ];
@@ -1,10 +1,13 @@
{ lib
, ocaml
, fetchpatch
, fetchFromGitHub
, buildDunePackage
, base64
, bos
, core
, core_kernel
, core_unix
, lwt_react
, ocamlgraph
, ppx_sexp_conv
@@ -15,21 +18,23 @@
buildDunePackage rec {
pname = "bistro";
version = "unstable-2021-11-13";
version = "unstable-2022-05-07";
useDune2 = true;
src = fetchFromGitHub {
owner = "pveber";
repo = pname;
rev = "fb285b2c6d8adccda3c71e2293bceb01febd6624";
sha256 = "sha256-JChDU1WH8W9Czkppx9SHiVIu9/7QFWJy2A89oksp0Ek=";
rev = "d363bd2d8257babbcb6db15bd83fd6465df7c268";
sha256 = "0g11324j1s2631zzf7zxc8s0nqd4fwvcni0kbvfpfxg96gy2wwfm";
};
propagatedBuildInputs = [
base64
bos
core
core_kernel
core_unix
lwt_react
ocamlgraph
ppx_sexp_conv
@@ -1,4 +1,6 @@
{ lib
, fetchpatch
, fetchurl
, buildDunePackage
, ppx_sexp_conv
, base
@@ -47,13 +49,21 @@ buildDunePackage {
ipaddr
];
doCheck = true;
# Examples don't compile with core 0.15. See https://github.com/mirage/ocaml-cohttp/pull/864.
doCheck = false;
checkInputs = [
ounit
mirage-crypto
core
];
# Compatibility with core 0.15. No longer needed after updating cohttp to 5.0.0.
patches = fetchpatch {
url = "https://github.com/mirage/ocaml-cohttp/commit/5a7124478ed31c6b1fa6a9a50602c2ec839083b5.patch";
sha256 = "0i99rl8604xqwb6d0yzk9ws4dflbn0j4hv2nba2qscbqrrn22rw3";
};
patchFlags = "-p1 -F3";
meta = cohttp.meta // {
description = "CoHTTP implementation for the Async concurrency library";
};
@@ -1,9 +1,14 @@
{ buildDunePackage, faraday, core, async }:
{ buildDunePackage, fetchpatch, faraday, core, async }:
buildDunePackage rec {
pname = "faraday-async";
inherit (faraday) version src useDune2;
patches = fetchpatch {
url = "https://github.com/inhabitedtype/faraday/commit/31c3fc7f91ecca0f1deea10b40fd5e33bcd35f75.patch";
sha256 = "05z5gk7hxq7qvwg6f73hdhfcnx19p1dq6wqh8prx667y8zsaq2zj";
};
minimumOCamlVersion = "4.08";
propagatedBuildInputs = [ faraday core async ];
@@ -1,5 +1,5 @@
{ lib, fetchFromGitHub, buildDunePackage, core, core_kernel, pkg-config, sqlite
}:
{ lib, fetchFromGitHub, buildDunePackage, core, core_unix, pkg-config
, sqlite }:
buildDunePackage rec {
pname = "hack_parallel";
version = "1.0.1";
@@ -13,9 +13,11 @@ buildDunePackage rec {
sha256 = "0qjlkw35r4q2cm0n2x0i73zvx1xgrp6axaia2nm8zxpm49mid629";
};
patches = [ ./hack_parallel.patch ];
nativeBuildInputs = [ pkg-config ];
propagatedBuildInputs = [ core core_kernel sqlite ];
propagatedBuildInputs = [ core core_unix sqlite ];
meta = {
description =
@@ -0,0 +1,68 @@
diff --git a/src/heap/sharedMem.ml b/src/heap/sharedMem.ml
index 600e272..511b724 100644
--- a/src/heap/sharedMem.ml
+++ b/src/heap/sharedMem.ml
@@ -521,7 +521,7 @@ end = struct
let stack: t option ref = ref None
- let has_local_changes () = Core_kernel.Option.is_some (!stack)
+ let has_local_changes () = Core.Option.is_some (!stack)
let rec mem stack_opt key =
match stack_opt with
diff --git a/src/interface/memory.ml b/src/interface/memory.ml
index 3554b17..09aa1f5 100644
--- a/src/interface/memory.ml
+++ b/src/interface/memory.ml
@@ -66,10 +66,10 @@ let get_heap_handle () =
let heap_use_ratio () =
- Core_kernel.Float.of_int (SharedMemory.heap_size ()) /.
- Core_kernel.Float.of_int initial_heap_size
+ Core.Float.of_int (SharedMemory.heap_size ()) /.
+ Core.Float.of_int initial_heap_size
let slot_use_ratio () =
let { SharedMemory.used_slots; slots; _ } = SharedMemory.hash_stats () in
- Core_kernel.Float.of_int used_slots /. Core_kernel.Float.of_int slots
+ Core.Float.of_int used_slots /. Core.Float.of_int slots
diff --git a/src/interface/scheduler.ml b/src/interface/scheduler.ml
index 9b8282a..b5d41b5 100644
--- a/src/interface/scheduler.ml
+++ b/src/interface/scheduler.ml
@@ -48,7 +48,7 @@ let map_reduce
| Some exact_size when exact_size > 0 ->
(List.length work / exact_size) + 1
| _ ->
- let bucket_multiplier = Core_kernel.Int.min bucket_multiplier (1 + (List.length work / 400)) in
+ let bucket_multiplier = Core.Int.min bucket_multiplier (1 + (List.length work / 400)) in
number_of_workers * bucket_multiplier
in
MultiWorker.call
diff --git a/src/utils/dune b/src/utils/dune
index 50a4c42..45e4a5a 100644
--- a/src/utils/dune
+++ b/src/utils/dune
@@ -15,6 +15,7 @@
sysinfo)
(libraries
core
+ core_unix
str
hack_parallel.collections
hack_parallel.disk
diff --git a/src/utils/hh_logger.ml b/src/utils/hh_logger.ml
index 4c99f05..8075ed5 100644
--- a/src/utils/hh_logger.ml
+++ b/src/utils/hh_logger.ml
@@ -9,6 +9,7 @@
*)
open Core
+module Unix = Core_unix
let timestamp_string () =
let open Unix in
File diff suppressed because it is too large Load Diff
@@ -0,0 +1,13 @@
diff --git a/web_ui/element_size_hooks/visibility_tracker.ml b/web_ui/element_size_hooks/visibility_tracker.ml
index 2e5dbe0..61df433 100644
--- a/web_ui/element_size_hooks/visibility_tracker.ml
+++ b/web_ui/element_size_hooks/visibility_tracker.ml
@@ -23,8 +23,6 @@ let get_conservative_vis_bounds (element : Dom_html.element Js.t) : Bounds.t opt
and client_height = client_bounds##.height
and window_height = Dom_html.window##.innerHeight
and window_width = Dom_html.window##.innerWidth in
- let%bind.Option window_height = Js.Optdef.to_option window_height in
- let%bind.Option window_width = Js.Optdef.to_option window_width in
let window_height = Float.of_int window_height
and window_width = Float.of_int window_width
and client_width = Js.Optdef.get client_width (Fn.const 0.0)
@@ -0,0 +1,31 @@
{ lib, fetchFromGitHub, buildDunePackage, defaultVersion ? "0.15.0" }:
{ pname
, version ? defaultVersion
, hash
, minimumOCamlVersion ? "4.11"
, doCheck ? true
, buildInputs ? []
, strictDeps ? true
, ...}@args:
buildDunePackage (args // {
useDune2 = true;
inherit version buildInputs strictDeps;
inherit minimumOCamlVersion;
src = fetchFromGitHub {
owner = "janestreet";
repo = pname;
rev = "v${version}";
sha256 = hash;
};
inherit doCheck;
meta = {
license = lib.licenses.mit;
homepage = "https://github.com/janestreet/${pname}";
} // args.meta;
})
@@ -0,0 +1,22 @@
diff --git a/src/type.ml b/src/type.ml
index 8a9e648..3f3b0e9 100644
--- a/src/type.ml
+++ b/src/type.ml
@@ -31,12 +31,12 @@ let of_type_desc type_desc ~env =
| Tunivar _ -> Or_error.error_string "not handled: Tunivar"
| Tvariant _ -> Or_error.error_string "not handled: Tvariant"
| Tnil -> Or_error.error_string "not handled: Tnil"
- | Tobject (_, _) -> Or_error.error_string "not handled: Tobject"
- | Tfield (_, _, _, _) -> Or_error.error_string "not handled: Tfield"
- | Tpackage (_, _, _) -> Or_error.error_string "not handled: Tpackage"
- | Tpoly (_, _) -> Or_error.error_string "not handled: Tpoly"
+ | Tobject _ -> Or_error.error_string "not handled: Tobject"
+ | Tfield _ -> Or_error.error_string "not handled: Tfield"
+ | Tpackage _ -> Or_error.error_string "not handled: Tpackage"
+ | Tpoly _ -> Or_error.error_string "not handled: Tpoly"
| Tlink e -> walk e.desc
- | Tsubst e -> walk e.desc
+ | Tsubst (e, _) -> walk e.desc
| Ttuple es ->
let%bind tuple = List.map es ~f:(fun e -> walk e.desc) |> Or_error.all in
(match tuple with
@@ -1,6 +1,6 @@
{ lib
, buildDunePackage
, fetchurl
, fetchFromGitHub
, ppx_deriving
, bppsuite
, alcotest
@@ -16,18 +16,15 @@
buildDunePackage rec {
pname = "phylogenetics";
version = "0.1.0";
version = "unstable-2022-05-06";
src = fetchurl {
url = "https://github.com/biocaml/phylogenetics/releases/download/v${version}/${pname}-${version}.tbz";
sha256 = "sha256:064ldljzh17h8pp0c27xd1pf6c50yhccw2g3hddzhk07a95q8v16";
src = fetchFromGitHub {
owner = "biocaml";
repo = pname;
rev = "cd7c624d0f98e31b02933ca4511b9809b26d35b5";
sha256 = "sha256:0w0xyah3hj05hxg1rsa40hhma3dm1cyq0zvnjrihhf22laxap7ga";
};
# Ensure compatibility with printbox ≥ 0.6
preConfigure = ''
substituteInPlace lib/dune --replace printbox printbox-text
'';
minimalOCamlVersion = "4.08";
checkInputs = [ alcotest bppsuite ];
@@ -6,11 +6,11 @@
buildDunePackage rec {
pname = "tls";
version = "0.15.2";
version = "0.15.3";
src = fetchurl {
url = "https://github.com/mirleft/ocaml-tls/releases/download/v${version}/tls-v${version}.tbz";
sha256 = "b76371757249bbeabb12c333de4ea2a09c095767bdbbc83322538c0da1fc1e36";
url = "https://github.com/mirleft/ocaml-tls/releases/download/v${version}/tls-${version}.tbz";
sha256 = "0nj6fhgrirn8ky4hb24m3ilhr41ynzgk6bqmjs17g8rdibwmdd2x";
};
minimumOCamlVersion = "4.08";
@@ -15,11 +15,11 @@
buildPythonPackage rec {
pname = "dalle-mini";
version = "0.1.0";
version = "0.1.1";
src = fetchPypi {
inherit pname version;
sha256 = "sha256-Sbos44uWGnJLYMx/xy0wkyAJHlDhVIeOS7rnYt2W53w=";
sha256 = "sha256-/wGIuYSWEUgJmeRN5K9/xuoCs+hpFX4/Tu1un1C4ljk=";
};
format = "setuptools";
@@ -0,0 +1,37 @@
{ lib
, buildPythonPackage
, fetchFromGitHub
, pytestCheckHook
}:
buildPythonPackage rec {
pname = "datauri";
version = "1.1.0";
src = fetchFromGitHub {
owner = "fcurella";
repo = "python-datauri";
rev = "v${version}";
sha256 = "sha256-Eevd/xxKgxvvsAfI/L/KShH+PfxffBGyVwKewLgyEu0=";
};
pythonImportsCheck = [
"datauri"
];
checkInputs = [
pytestCheckHook
];
disabledTestPaths = [
# UnicodeDecodeError: 'utf-8' codec can't decode
"tests/test_file_ebcdic.txt"
];
meta = with lib; {
description = "Data URI manipulation made easy.";
homepage = "https://github.com/fcurella/python-datauri";
license = licenses.unlicense;
maintainers = with maintainers; [ yuu ];
};
}
@@ -6,13 +6,13 @@
buildPythonPackage rec {
pname = "fontParts";
version = "0.10.6";
version = "0.10.7";
disabled = pythonOlder "3.7";
src = fetchPypi {
inherit pname version;
sha256 = "sha256-mEnQWmzzZ5S8rWzmXuJDjcuoICi6Q+aneX8hGXj11Gg=";
sha256 = "sha256-u0hKI2LLWAUGIVRECk6b5y7UKgJHUx2I8R5Q+qkKxcg=";
extension = "zip";
};
@@ -6,11 +6,11 @@
buildPythonPackage rec {
pname = "hg-evolve";
version = "10.5.1";
version = "10.5.2";
src = fetchPypi {
inherit pname version;
sha256 = "sha256-JGk9PdCDXiDkP8Arw2pfpU+sEj/sCHwwHHWVwF3Ofzw=";
sha256 = "sha256-45FOAQDJgAfhlTF/XBmIfvmMM1X7LUzsHAb7NMQl9Fs=";
};
checkInputs = [
@@ -9,14 +9,14 @@
buildPythonPackage rec {
pname = "iminuit";
version = "2.12.1";
version = "2.13.0";
format = "setuptools";
disabled = pythonOlder "3.6";
src = fetchPypi {
inherit pname version;
hash = "sha256-+le1b3wpze7QL5U1p7ZYB6zWoZfyCIUQlIIiLxoCPt4=";
hash = "sha256-40eFwqLArqb/hmcv6BuAoErJ1Cp57YJJYw8lKaj2oPo=";
};
nativeBuildInputs = [
@@ -45,14 +45,14 @@
buildPythonPackage rec {
pname = "mitmproxy";
version = "8.0.0";
version = "8.1.1";
disabled = pythonOlder "3.8";
src = fetchFromGitHub {
owner = pname;
repo = pname;
rev = "v${version}";
sha256 = "sha256-Efazsi8BjBrk7lBKSn2APKHxCc7mzxNrC92BL0VsnCM=";
sha256 = "sha256-nW/WfiY6uF67qNa95tvNvSv/alP2WmzTk34LEBma/04=";
};
propagatedBuildInputs = [
@@ -110,6 +110,8 @@ buildPythonPackage rec {
# https://github.com/mitmproxy/mitmproxy/commit/36ebf11916704b3cdaf4be840eaafa66a115ac03
# Tests require terminal
"test_integration"
"test_contentview_flowview"
"test_flowview"
];
dontUsePytestXdist = true;
@@ -11,7 +11,7 @@
buildPythonPackage rec {
pname = "nessclient";
version = "0.9.16b2";
version = "0.10.0";
format = "setuptools";
disabled = pythonOlder "3.8";
@@ -19,8 +19,8 @@ buildPythonPackage rec {
src = fetchFromGitHub {
owner = "nickw444";
repo = pname;
rev = version;
sha256 = "1g3q9bv1nn1b8n6bklc05k8pac4cndzfxfr7liky0gnnbri15k81";
rev = "refs/tags/${version}";
sha256 = "sha256-zjUYdSHIMCB4cCAsOOQZ9YgmFTskzlTUs5z/xPFt01Q=";
};
propagatedBuildInputs = [
@@ -1,10 +1,10 @@
{ lib, fetchPypi, buildPythonPackage, ... }:
buildPythonPackage rec {
pname = "pygtrie";
version = "2.4.2";
version = "2.5.0";
src = fetchPypi {
inherit pname version;
sha256 = "43205559d28863358dbbf25045029f58e2ab357317a59b11f11ade278ac64692";
sha256 = "sha256-IDUUrYJutAPasdLi3dA04NFTS75NvgITuwWT9mvrpOI=";
};
meta = {
homepage = "https://github.com/mina86/pygtrie";
@@ -24,14 +24,22 @@ stdenv.mkDerivation rec {
];
nativeBuildInputs = [ cmake ninja qt5.qmake python ];
buildInputs = with qt5; [
buildInputs = (with qt5; [
qtbase qtxmlpatterns qtmultimedia qttools qtx11extras qtlocation qtscript
qtwebsockets qtwebengine qtwebchannel qtcharts qtsensors qtsvg
]) ++ [
python.pkgs.setuptools
];
propagatedBuildInputs = [ shiboken2 ];
dontWrapQtApps = true;
postInstall = ''
cd ../../..
${python.interpreter} setup.py egg_info --build-type=pyside2
cp -r PySide2.egg-info $out/${python.sitePackages}/
'';
meta = with lib; {
description = "LGPL-licensed Python bindings for Qt";
license = licenses.lgpl21;
@@ -0,0 +1,60 @@
{ lib
, buildPythonPackage
, python3
, pythonOlder
, fetchFromGitHub
, poetry-core
, beautifulsoup4
, lxml
, jinja2
, dataclasses
, pytestCheckHook
}:
buildPythonPackage rec {
pname = "reqif";
version = "0.0.8";
format = "pyproject";
src = fetchFromGitHub {
owner = "strictdoc-project";
repo = pname;
rev = version;
sha256 = "sha256-PtzRJUvv+Oee08+sdakFviKIhwfLngyal1WSWDtMELg=";
};
postPatch = ''
substituteInPlace ./tests/unit/conftest.py --replace \
"os.path.abspath(os.path.join(__file__, \"../../../../reqif\"))" \
"\"${placeholder "out"}/${python3.sitePackages}/reqif\""
substituteInPlace pyproject.toml --replace "^" ">="
substituteInPlace requirements.txt --replace "==" ">="
'';
nativeBuildInputs = [
poetry-core
];
propagatedBuildInputs = [
beautifulsoup4
lxml
jinja2
] ++ lib.optionals (pythonOlder "3.7") [
dataclasses
];
pythonImportsCheck = [
"reqif"
];
checkInputs = [
pytestCheckHook
];
meta = with lib; {
description = "Python library for ReqIF format";
homepage = "https://github.com/strictdoc-project/reqif";
license = licenses.asl20;
maintainers = with maintainers; [ yuu ];
};
}
@@ -46,7 +46,7 @@
buildPythonPackage rec {
pname = "sentry-sdk";
version = "1.7.0";
version = "1.7.2";
format = "setuptools";
disabled = pythonOlder "3.7";
@@ -55,7 +55,7 @@ buildPythonPackage rec {
owner = "getsentry";
repo = "sentry-python";
rev = version;
hash = "sha256-Wee4toHLbiwYXMtsxALetAJ+JxxN/DsNPIiZeeWNuI0=";
hash = "sha256-0VQ1P3xWC1keoXaPfIzh+uGXvRAK3nOrc6fLKIhfiHk=";
};
propagatedBuildInputs = [
@@ -17,7 +17,7 @@ stdenv.mkDerivation {
CLANG_INSTALL_DIR = llvmPackages.libclang.out;
nativeBuildInputs = [ cmake ];
buildInputs = [ llvmPackages.libclang python qt5.qtbase qt5.qtxmlpatterns ];
buildInputs = [ llvmPackages.libclang python python.pkgs.setuptools qt5.qtbase qt5.qtxmlpatterns ];
cmakeFlags = [
"-DBUILD_TESTS=OFF"
@@ -26,6 +26,9 @@ stdenv.mkDerivation {
dontWrapQtApps = true;
postInstall = ''
cd ../../..
${python.interpreter} setup.py egg_info --build-type=shiboken2
cp -r shiboken2.egg-info $out/${python.sitePackages}/
rm $out/bin/shiboken_tool.py
'';
@@ -20,7 +20,7 @@
buildPythonPackage rec {
pname = "simplisafe-python";
version = "2022.06.1";
version = "2022.07.0";
format = "pyproject";
disabled = pythonOlder "3.8";
@@ -29,7 +29,7 @@ buildPythonPackage rec {
owner = "bachya";
repo = pname;
rev = "refs/tags/${version}";
sha256 = "sha256-5zhj1EAFZ2XCeSfcFN+7gHrcPx/YrEZQ8QfcmLUboIg=";
sha256 = "sha256-v3N2f5B6BrwTb4ik2bME8OLzwsHZ3qWx+Jx1pv7KX8A=";
};
nativeBuildInputs = [
@@ -14,14 +14,14 @@
buildPythonPackage rec {
pname = "sqlite-utils";
version = "3.27";
version = "3.28";
format = "setuptools";
disabled = pythonOlder "3.6";
src = fetchPypi {
inherit pname version;
hash = "sha256-SercPK2Svrq7rEULglvjq1J3FV0x0aHHKs72HmXkTGo=";
hash = "sha256-eQsB9L4WwydWubXq4HtrfJBbZhPKU41kaHfFCwWwpTo=";
};
postPatch = ''
@@ -0,0 +1,36 @@
{ lib
, stdenv
, buildPythonPackage
, fetchPypi
, substituteAll
, pkgs
}:
buildPythonPackage rec {
pname = "streamdeck";
version = "0.9.1";
src = fetchPypi {
inherit pname version;
sha256 = "0116a376afc18f3abbf79cc1a4409f81472e19197d5641b9e97e697d105cbdc0";
};
patches = [
# substitute libusb path
(substituteAll {
src = ./hardcode-libusb.patch;
libusb = "${pkgs.hidapi}/lib/libhidapi-libusb${stdenv.hostPlatform.extensions.sharedLibrary}";
})
];
pythonImportsCheck = [ "StreamDeck" ];
doCheck = false;
meta = with lib; {
description = "Python library to control the Elgato Stream Deck";
homepage = "https://github.com/abcminiuser/python-elgato-streamdeck";
license = licenses.mit;
maintainers = with maintainers; [ majiir ];
broken = stdenv.isDarwin;
};
}
@@ -0,0 +1,13 @@
diff --git a/src/StreamDeck/Transport/LibUSBHIDAPI.py b/src/StreamDeck/Transport/LibUSBHIDAPI.py
index 824c59c..f13754e 100644
--- a/src/StreamDeck/Transport/LibUSBHIDAPI.py
+++ b/src/StreamDeck/Transport/LibUSBHIDAPI.py
@@ -110,7 +110,7 @@ class LibUSBHIDAPI(Transport):
search_library_names = {
"Windows": ["hidapi.dll", "libhidapi-0.dll"],
- "Linux": ["libhidapi-libusb.so", "libhidapi-libusb.so.0"],
+ "Linux": ["@libusb@"],
"Darwin": ["libhidapi.dylib"],
}
@@ -0,0 +1,39 @@
{ lib
, fetchFromGitHub
, buildPythonPackage
, deprecation
, docker
, wrapt
}:
buildPythonPackage rec {
pname = "testcontainers";
version = "3.5.0";
src = fetchFromGitHub {
owner = "testcontainers";
repo = "testcontainers-python";
rev = "v${version}";
sha256 = "sha256-uB3MbRVQzbUdZRxkGl635O+K17bkHIGY2JbU8R23Kt0=";
};
buildInputs = [
deprecation
docker
wrapt
];
# Tests require various container and database services running
doCheck = false;
pythonImportsCheck = [
"testcontainers"
];
meta = with lib; {
description = "Allows using docker containers for functional and integration testing";
homepage = "https://github.com/testcontainers/testcontainers-python";
license = licenses.asl20;
maintainers = with maintainers; [ onny ];
};
}
@@ -0,0 +1,178 @@
{ lib
, buildPythonPackage
, python3
, fetchFromGitHub
, mkdocs
, twine
, arpeggio
, click
, future
, setuptools
, callPackage
, gprof2dot
, html5lib
, jinja2
, memory_profiler
, psutil
, pytestCheckHook
}:
let
textx = buildPythonPackage rec {
pname = "textx";
version = "3.0.0";
format = "setuptools";
src = fetchFromGitHub {
owner = pname;
repo = pname;
rev = version;
sha256 = "sha256-uZlO82dKtWQQR5+Q7dWk3+ZoUzAjDJ8qzC4UMLCtnBk=";
};
postPatch = ''
substituteInPlace setup.cfg --replace "click >=7.0, <8.0" "click >=7.0"
'';
outputs = [
"out"
"testout"
];
nativeBuildInputs = [
mkdocs
twine
];
propagatedBuildInputs = [
arpeggio
click
future
setuptools
];
postInstall = ''
# FileNotFoundError: [Errno 2] No such file or directory: '$out/lib/python3.10/site-packages/textx/textx.tx
cp "$src/textx/textx.tx" "$out/${python3.sitePackages}/${pname}/"
# Install tests as the tests output.
mkdir $testout
cp -r tests $testout/tests
'';
pythonImportsCheck = [
"textx"
];
# Circular dependencies, do tests in passthru.tests instead.
doCheck = false;
passthru.tests = {
textxTests = callPackage ./tests.nix {
inherit
textx-data-dsl
textx-example-project
textx-flow-codegen
textx-flow-dsl
textx-types-dsl;
};
};
meta = with lib; {
description = "Domain-specific languages and parsers in Python";
homepage = "https://github.com/textx/textx/";
license = licenses.mit;
maintainers = with maintainers; [ yuu ];
};
};
textx-data-dsl = buildPythonPackage rec {
pname = "textx-data-dsl";
version = "1.0.0";
inherit (textx) src;
# `format` isn't included in the output of `mk-python-derivation`.
# So can't inherit format: `error: attribute 'format' missing`.
format = "setuptools";
pathToSourceRoot = "tests/functional/registration/projects/data_dsl";
sourceRoot = "${src.name}/" + pathToSourceRoot;
propagatedBuildInputs = [
textx
textx-types-dsl
];
meta = with lib; {
inherit (textx.meta) license maintainers;
description = "Sample textX language for testing";
homepage = textx.homepage + "tree/${version}/" + pathToSourceRoot;
};
};
textx-flow-codegen = buildPythonPackage rec {
pname = "textx-flow-codegen";
version = "1.0.0";
inherit (textx) src;
format = "setuptools";
pathToSourceRoot = "tests/functional/registration/projects/flow_codegen";
sourceRoot = "${src.name}/" + pathToSourceRoot;
propagatedBuildInputs = [
click
textx
];
meta = with lib; {
inherit (textx.meta) license maintainers;
description = "Sample textX language for testing";
homepage = textx.homepage + "tree/${version}/" + pathToSourceRoot;
};
};
textx-flow-dsl = buildPythonPackage rec {
pname = "textx-flow-dsl";
version = "1.0.0";
inherit (textx) src;
format = "setuptools";
pathToSourceRoot = "tests/functional/registration/projects/flow_dsl";
sourceRoot = "${src.name}/" + pathToSourceRoot;
propagatedBuildInputs = [
textx
];
meta = with lib; {
inherit (textx.meta) license maintainers;
description = "Sample textX language for testing";
homepage = textx.homepage + "tree/${version}/" + pathToSourceRoot;
};
};
textx-types-dsl = buildPythonPackage rec {
pname = "textx-types-dsl";
version = "1.0.0";
inherit (textx) src;
format = "setuptools";
pathToSourceRoot = "tests/functional/registration/projects/types_dsl";
sourceRoot = "${src.name}/" + pathToSourceRoot;
propagatedBuildInputs = [
textx
];
meta = with lib; {
inherit (textx.meta) license maintainers;
description = "Sample textX language for testing";
homepage = textx.homepage + "tree/${version}/" + pathToSourceRoot;
};
};
textx-example-project = buildPythonPackage rec {
pname = "textx-example-project";
version = "1.0.0";
inherit (textx) src;
format = "setuptools";
pathToSourceRoot = "tests/functional/subcommands/example_project";
sourceRoot = "${src.name}/" + pathToSourceRoot;
propagatedBuildInputs = [
textx
];
meta = with lib; {
inherit (textx.meta) license maintainers;
description = "Sample textX sub-command for testing";
homepage = textx.homepage + "tree/${version}/" + pathToSourceRoot;
};
};
in
textx
@@ -0,0 +1,53 @@
{ lib
, buildPythonPackage
, click
, gprof2dot
, html5lib
, jinja2
, memory_profiler
, psutil
, pytestCheckHook
, setuptools
, textx
, textx-data-dsl
, textx-example-project
, textx-flow-codegen
, textx-flow-dsl
, textx-types-dsl
}:
buildPythonPackage {
pname = "textx-tests";
inherit (textx) version;
srcs = textx.testout;
dontBuild = true;
dontInstall = true;
checkInputs = [
click
gprof2dot
html5lib
jinja2
memory_profiler
psutil
pytestCheckHook
setuptools
textx-data-dsl
textx-example-project
textx-flow-codegen
textx-flow-dsl
textx-types-dsl
];
pytestFlagsArray = [
"tests/functional"
];
meta = with lib; {
inherit (textx.meta) license maintainers;
description = "passthru.tests for textx";
homepage = textx.homepage + "tree/${version}/" + "tests/";
};
}
@@ -12,7 +12,7 @@
buildPythonPackage rec {
pname = "transmission-rpc";
version = "3.3.0";
version = "3.3.2";
disabled = pythonOlder "3.6";
format = "pyproject";
@@ -20,8 +20,8 @@ buildPythonPackage rec {
src = fetchFromGitHub {
owner = "Trim21";
repo = "transmission-rpc";
rev = "v${version}";
sha256 = "sha256-Ys9trQMCHqxBSaTobWt8WZwi1F8HKTUKaIxvyo6ZPP0=";
rev = "refs/tags/v${version}";
sha256 = "sha256-GkhNOKatT/hJFw1l1xrf43jtgxvJ+WVvhz83Oe0MZ6w=";
};
# remove once upstream has tagged version with dumped typing-extensions
@@ -22,6 +22,10 @@ buildPythonPackage rec {
sha256 = "155p9xhsk01z9vdml74h07svlqy6gljnx9c6qbydcr14lwghwn06";
};
patches = [
./fix-no-protocol-specified.patch
];
nativeBuildInputs = [ setuptools-scm ];
buildInputs = [ xorg.libX11 ];
propagatedBuildInputs = [ six ];
@@ -0,0 +1,13 @@
diff --git a/Xlib/xauth.py b/Xlib/xauth.py
index 2ed7dd5..303bd49 100644
--- a/Xlib/xauth.py
+++ b/Xlib/xauth.py
@@ -120,6 +120,8 @@ class Xauthority(object):
matches = {}
for efam, eaddr, enum, ename, edata in self.entries:
+ if enum == b'' and ename not in matches:
+ enum = num
if efam == family and eaddr == address and num == enum:
matches[ename] = edata
@@ -1,4 +1,15 @@
{ lib, stdenv, fetchFromGitHub, libxslt, docbook_xsl, docbook_xml_dtd_45, pcre, withZ3 ? true, z3, python3 }:
{ lib
, stdenv
, fetchFromGitHub
, pcre
, python3
, libxslt
, docbook_xsl
, docbook_xml_dtd_45
, withZ3 ? true
, z3
, which
}:
stdenv.mkDerivation rec {
pname = "cppcheck";
@@ -14,9 +25,9 @@ stdenv.mkDerivation rec {
buildInputs = [ pcre
(python3.withPackages (ps: [ps.pygments]))
] ++ lib.optionals withZ3 [ z3 ];
nativeBuildInputs = [ libxslt docbook_xsl docbook_xml_dtd_45 ];
nativeBuildInputs = [ libxslt docbook_xsl docbook_xml_dtd_45 which ];
makeFlags = [ "PREFIX=$(out)" "FILESDIR=$(out)/cfg" "HAVE_RULES=yes" ]
makeFlags = [ "PREFIX=$(out)" "MATCHCOMPILER=yes" "FILESDIR=$(out)/share/cppcheck" "HAVE_RULES=yes" ]
++ lib.optionals withZ3 [ "USE_Z3=yes" "CPPFLAGS=-DNEW_Z3=1" ];
outputs = [ "out" "man" ];
+3 -3
View File
@@ -2,16 +2,16 @@
rustPlatform.buildRustPackage rec {
pname = "bacon";
version = "2.2.0";
version = "2.2.1";
src = fetchFromGitHub {
owner = "Canop";
repo = pname;
rev = "v${version}";
sha256 = "sha256-GoaWlnlE/UfLX3HjbQXPMBOdlplParq7HHAfCUcdGLc=";
sha256 = "sha256-DpTN/Aw27M1s8T6ka1gwlI4WZ2MqP3PJ96XwxqlS0eM=";
};
cargoSha256 = "sha256-3heAu8n1Dm7ewYTSCwxtgpF2vn/D5B52BuM9qz0X7Yc=";
cargoSha256 = "sha256-yY8oFvb++vye17aSCGw5BZ/Jgd46vPNJpqK+gKRoPvw=";
buildInputs = lib.optional stdenv.isDarwin CoreServices;
@@ -17,13 +17,13 @@
stdenv.mkDerivation rec {
pname = "bear";
version = "3.0.14";
version = "3.0.19";
src = fetchFromGitHub {
owner = "rizsotto";
repo = pname;
rev = version;
sha256 = "0qy96dyd29bjvfhi46y30hli5cvshw8am0spvcv9v43660wbczd7";
sha256 = "sha256-Jj38dmzr8NDDMercfWyJrMFxGBSExCGPeG2IVEtnSxY=";
};
nativeBuildInputs = [ cmake pkg-config ];
@@ -1,22 +1,27 @@
diff --git i/source/config.h.in w/source/config.h.in
index ffcce3a..0caba6d 100644
--- i/source/config.h.in
+++ w/source/config.h.in
@@ -107,7 +107,7 @@ namespace cmd {
diff --git a/source/config.h.in b/source/config.h.in
index 6b659c2..f7bdf22 100644
--- a/source/config.h.in
+++ b/source/config.h.in
@@ -108,8 +108,8 @@ namespace cmd {
}
namespace wrapper {
- constexpr char DEFAULT_PATH[] = "@ROOT_INSTALL_PREFIX@/@PRIVATE_INSTALLDIR@/wrapper";
+ constexpr char DEFAULT_PATH[] = "@PRIVATE_INSTALLDIR@/wrapper";
constexpr char DEFAULT_DIR_PATH[] = "@ROOT_INSTALL_PREFIX@/@PRIVATE_INSTALLDIR@/wrapper.d";
- constexpr char DEFAULT_PATH[] = "@ROOT_INSTALL_PREFIX@/@CMAKE_INSTALL_LIBDIR@/bear/wrapper";
- constexpr char DEFAULT_DIR_PATH[] = "@ROOT_INSTALL_PREFIX@/@CMAKE_INSTALL_LIBDIR@/bear/wrapper.d";
+ constexpr char DEFAULT_PATH[] = "@CMAKE_INSTALL_LIBDIR@/bear/wrapper";
+ constexpr char DEFAULT_DIR_PATH[] = "@CMAKE_INSTALL_LIBDIR@/bear/wrapper.d";
constexpr char FLAG_VERBOSE[] = "--verbose";
@@ -120,7 +120,7 @@ namespace cmd {
}
namespace library {
- constexpr char DEFAULT_PATH[] = "@ROOT_INSTALL_PREFIX@/@PRIVATE_INSTALLDIR@/@CMAKE_SHARED_LIBRARY_PREFIX@exec@CMAKE_SHARED_LIBRARY_SUFFIX@";
+ constexpr char DEFAULT_PATH[] = "@PRIVATE_INSTALLDIR@/@CMAKE_SHARED_LIBRARY_PREFIX@exec@CMAKE_SHARED_LIBRARY_SUFFIX@";
constexpr char FLAG_DESTINATION[] = "--destination";
@@ -134,9 +134,9 @@ namespace cmd {
// And use the `libexec.so` path default value with a single path,
// that matches both. (The match can be achieved by the $LIB token
// expansion from the dynamic loader. See `man ld.so` for more.)
- constexpr char DEFAULT_PATH[] = "@ROOT_INSTALL_PREFIX@/$LIB/bear/@CMAKE_SHARED_LIBRARY_PREFIX@exec@CMAKE_SHARED_LIBRARY_SUFFIX@";
+ constexpr char DEFAULT_PATH[] = "$LIB/bear/@CMAKE_SHARED_LIBRARY_PREFIX@exec@CMAKE_SHARED_LIBRARY_SUFFIX@";
#else
- constexpr char DEFAULT_PATH[] = "@ROOT_INSTALL_PREFIX@/@CMAKE_INSTALL_LIBDIR@/bear/@CMAKE_SHARED_LIBRARY_PREFIX@exec@CMAKE_SHARED_LIBRARY_SUFFIX@";
+ constexpr char DEFAULT_PATH[] = "@CMAKE_INSTALL_LIBDIR@/bear/@CMAKE_SHARED_LIBRARY_PREFIX@exec@CMAKE_SHARED_LIBRARY_SUFFIX@";
#endif
constexpr char KEY_REPORTER[] = "INTERCEPT_REPORT_COMMAND";
constexpr char KEY_DESTINATION[] = "INTERCEPT_REPORT_DESTINATION";
@@ -20,7 +20,7 @@
python3.pkgs.buildPythonApplication rec {
pname = "cambalache";
version = "0.10.2";
version = "0.10.3";
format = "other";
@@ -29,7 +29,7 @@ python3.pkgs.buildPythonApplication rec {
owner = "jpu";
repo = pname;
rev = version;
sha256 = "sha256-/0HMtNR9R/Oq1ZoBaLe4iU0OOVZUozuo8gP0j9J8hdc=";
sha256 = "sha256-Xm8h3BBRibdLCeI/OeprF5dCCiNrfJCg7aE24uleCds=";
};
nativeBuildInputs = [
File diff suppressed because it is too large Load Diff
+3
View File
@@ -26,6 +26,8 @@ let
sha256 = "0k60hj8wcrvrk0isr210vnalylkd63ria1kgz5n49inl7w1hfwpv";
};
patches = [ ./comby.patch ];
nativeBuildInputs = [
ocamlPackages.ppx_deriving
ocamlPackages.ppx_deriving_yojson
@@ -35,6 +37,7 @@ let
buildInputs = [
ocamlPackages.core
ocamlPackages.core_kernel
ocamlPackages.ocaml_pcre
ocamlPackages.mparser
ocamlPackages.mparser-pcre
@@ -5,13 +5,13 @@
python3.pkgs.buildPythonApplication rec {
pname = "sqlfluff";
version = "1.2.0";
version = "1.2.1";
src = fetchFromGitHub {
owner = pname;
repo = pname;
rev = "refs/tags/${version}";
hash = "sha256-n5DprvSbli7wEV+oRA+U5UnaAGPit2Zd2gFb9fCgG8A=";
hash = "sha256-BTb01EKPBBTZR8g3RkW0llj169wk6Y7Ui4UoCR+YWsc=";
};
propagatedBuildInputs = with python3.pkgs; [
+3 -3
View File
@@ -2,14 +2,14 @@
rustPlatform.buildRustPackage rec {
pname = "dprint";
version = "0.29.1";
version = "0.30.3";
src = fetchCrate {
inherit pname version;
sha256 = "sha256-uLNZUIp8+fKr6l+vi8rqjXn9PrwAmpYnYuwtYjl2y+o=";
sha256 = "sha256-/lptdZEcnbBQL9hYj0xyI95fMT22tGy8zeQz+8VwMog=";
};
cargoSha256 = "sha256-bmbrnzUZfHvO5waMixZoD0DmWxVGtUXhIwZLLlHqPhs=";
cargoSha256 = "sha256-BJGOaZgY03CYC8fa0wnlDmc9SO72lrLmdafovFD3BBI=";
buildInputs = lib.optionals stdenv.isDarwin [ Security ];
@@ -61,7 +61,7 @@ rustPlatform.buildRustPackage rec {
mv rustup-init rustup
binlinks=(
cargo rustc rustdoc rust-gdb rust-lldb rls rustfmt cargo-fmt
cargo-clippy clippy-driver cargo-miri
cargo-clippy clippy-driver cargo-miri rust-gdbgui
)
for link in ''${binlinks[@]}; do
ln -s rustup $link
+6 -5
View File
@@ -2,13 +2,13 @@
stdenv.mkDerivation rec {
pname = "age";
version = "0.6.0";
version = "1.0.0-rc1";
src = fetchFromGitHub {
owner = "apache";
repo = "incubator-age";
repo = "age";
rev = "v${version}";
sha256 = "1cl6p9qz2yhgm603ljlyjdn0msk3hzga1frjqsmqmpp3nw4dbkka";
sha256 = "sha256-b5cBpS5xWaohRZf5H0DwzNq0BodqWDjkAP44osPVYps=";
};
buildInputs = [ postgresql ];
@@ -54,10 +54,11 @@ stdenv.mkDerivation rec {
};
meta = with lib; {
broken = true;
# Only supports PostgreSQL 11 https://github.com/apache/age/issues/225
broken = versions.major postgresql.version != "11";
description = "A graph database extension for PostgreSQL";
homepage = "https://age.apache.org/";
changelog = "https://github.com/apache/incubator-age/releases/tag/v${version}";
changelog = "https://github.com/apache/age/raw/v${version}/RELEASE";
maintainers = with maintainers; [ ];
platforms = postgresql.meta.platforms;
license = licenses.asl20;
+2 -2
View File
@@ -2,7 +2,7 @@
stdenv.mkDerivation rec {
pname = "pg_cron";
version = "1.4.1";
version = "1.4.2";
buildInputs = [ postgresql ];
@@ -10,7 +10,7 @@ stdenv.mkDerivation rec {
owner = "citusdata";
repo = pname;
rev = "v${version}";
sha256 = "1fknr7z1m24dpp4hm5s6y5phdns7yvvj88cl481wjhw8bigz6kns";
sha256 = "sha256-P0Fd10Q1p+KrExb35G6otHpc6pD61WnMll45H2jkevM=";
};
installPhase = ''
+2 -2
View File
@@ -6,13 +6,13 @@
buildGoModule rec {
pname = "boulder";
version = "2022-07-05";
version = "2022-07-11";
src = fetchFromGitHub {
owner = "letsencrypt";
repo = "boulder";
rev = "release-${version}";
sha256 = "sha256-WhQOpMeZe+oBitsHPe9kpFt0K1niU4Q9IvlOoDseXDM=";
sha256 = "sha256-fDKB7q2e+qdHt+t/BQWX7LkpyiZQtZSHp/x5uv0/c7c=";
leaveDotGit = true;
postFetch = ''
cd $out
+3 -3
View File
@@ -2,7 +2,7 @@
rustPlatform.buildRustPackage rec {
pname = "dua";
version = "2.17.7";
version = "2.17.8";
buildInputs = lib.optionals stdenv.isDarwin [ libiconv Foundation ];
@@ -10,7 +10,7 @@ rustPlatform.buildRustPackage rec {
owner = "Byron";
repo = "dua-cli";
rev = "v${version}";
sha256 = "sha256-FiTjN4coOJZ3Uu9LfaJxcpvVKS+5MVYWQPmwllBh1Jg=";
sha256 = "sha256-zlXv5RY/JRDS2vzC/LhSumZX+OOeaFoOmLq5TaulGDY=";
# Remove unicode file names which leads to different checksums on HFS+
# vs. other filesystems because of unicode normalisation.
postFetch = ''
@@ -18,7 +18,7 @@ rustPlatform.buildRustPackage rec {
'';
};
cargoSha256 = "sha256-xCHbS+D7ss85hklv9xftJTsctvQlAjkKtuJbTt5R8nM=";
cargoSha256 = "sha256-PSAhRUODedmJg67K00W0RQ5LycMme2bidL4L8gd6qkw=";
doCheck = false;
+9 -3
View File
@@ -20,11 +20,17 @@ ocamlPackages.buildDunePackage rec {
sha256 = "1k3m7bjq5yrrq7vhnbdykni65dsqhq6knnv9wvwq3svb3n07z4w3";
};
# compatibility with core >= 0.15
patches = [ ./flitter.patch ];
# https://github.com/alexozer/flitter/issues/28
postPatch = ''
for f in src/colors.ml src/duration.ml src/event_loop.ml src/splits.ml; do
for f in src/*.ml; do
substituteInPlace "$f" \
--replace 'Unix.gettimeofday' 'Caml_unix.gettimeofday'
--replace 'Unix.gettimeofday' 'Caml_unix.gettimeofday' \
--replace 'Core_kernel' 'Core' \
--replace 'sexp_option' 'option[@sexp.option]' \
--replace 'sexp_list' 'list[@sexp.list]'
done
'';
@@ -33,7 +39,7 @@ ocamlPackages.buildDunePackage rec {
];
buildInputs = with ocamlPackages; [
core
core_unix
lwt_ppx
sexp_pretty
color
+13
View File
@@ -0,0 +1,13 @@
diff --git a/src/dune b/src/dune
index a50b09a..54cc770 100644
--- a/src/dune
+++ b/src/dune
@@ -1,7 +1,7 @@
(library
(name flitter)
(wrapped false)
- (libraries core lwt.unix notty notty.unix re color sexp_pretty)
+ (libraries core core_kernel.caml_unix lwt.unix notty notty.unix re color sexp_pretty)
(preprocess (pps lwt_ppx ppx_sexp_conv))
)
+2 -2
View File
@@ -4,8 +4,8 @@ with ocamlPackages;
janePackage {
pname = "patdiff";
hash = "1yslj6xxyv8rx8y5s1civ1zq8y6vvxmkszdds958zdm1p1ign54r";
buildInputs = [ core patience_diff ocaml_pcre ];
hash = "0623a7n5r659rkxbp96g361mvxkcgc6x9lcbkm3glnppplk5kxr9";
propagatedBuildInputs = [ core_unix patience_diff ocaml_pcre ];
meta = {
description = "File Diff using the Patience Diff algorithm";
};

Some files were not shown because too many files have changed in this diff Show More