Merge master into staging-next

This commit is contained in:
github-actions[bot] 2021-06-03 19:52:02 +00:00 committed by GitHub
commit a9f286f5cf
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
267 changed files with 2610 additions and 1851 deletions

View File

@ -847,7 +847,7 @@ using setup hooks.
The following is an example: The following is an example:
```nix ```nix
{ lib, buildPythonPackage, fetchPypi, hypothesis, setuptools_scm, attrs, py, setuptools, six, pluggy }: { lib, buildPythonPackage, fetchPypi, hypothesis, setuptools-scm, attrs, py, setuptools, six, pluggy }:
buildPythonPackage rec { buildPythonPackage rec {
pname = "pytest"; pname = "pytest";
@ -864,7 +864,7 @@ buildPythonPackage rec {
''; '';
checkInputs = [ hypothesis ]; checkInputs = [ hypothesis ];
nativeBuildInputs = [ setuptools_scm ]; nativeBuildInputs = [ setuptools-scm ];
propagatedBuildInputs = [ attrs py setuptools six pluggy ]; propagatedBuildInputs = [ attrs py setuptools six pluggy ];
meta = with lib; { meta = with lib; {

View File

@ -4361,6 +4361,16 @@
githubId = 54999; githubId = 54999;
name = "Ariel Nunez"; name = "Ariel Nunez";
}; };
irenes = {
name = "Irene Knapp";
email = "ireneista@gmail.com";
github = "IreneKnapp";
githubId = 157678;
keys = [{
longkeyid = "rsa4096/0xDBF252AFFB2619FD";
fingerprint = "E864 BDFA AB55 36FD C905 5195 DBF2 52AF FB26 19FD";
}];
};
ironpinguin = { ironpinguin = {
email = "michele@catalano.de"; email = "michele@catalano.de";
github = "ironpinguin"; github = "ironpinguin";
@ -7313,9 +7323,9 @@
githubId = 3159451; githubId = 3159451;
name = "Nicolas Schneider"; name = "Nicolas Schneider";
}; };
nipav = { nkpvk = {
email = "niko.pavlinek@gmail.com"; email = "niko.pavlinek@gmail.com";
github = "nipav"; github = "nkpvk";
githubId = 16385648; githubId = 16385648;
name = "Niko Pavlinek"; name = "Niko Pavlinek";
}; };

View File

@ -19,18 +19,32 @@
</section> </section>
<section xml:id="new-services"> <section xml:id="new-services">
<title>New Services</title> <title>New Services</title>
<para> <itemizedlist spacing="compact">
</para> <listitem>
<para>
<link xlink:href="https://github.com/maxmind/geoipupdate">geoipupdate</link>,
a GeoIP database updater from MaxMind. Available as
<link xlink:href="options.html#opt-services.geoipupdate.enable">services.geoipupdate</link>.
</para>
</listitem>
</itemizedlist>
</section> </section>
<section xml:id="backward-incompatibilities"> <section xml:id="backward-incompatibilities">
<title>Backward Incompatibilities</title> <title>Backward Incompatibilities</title>
<itemizedlist spacing="compact"> <itemizedlist>
<listitem> <listitem>
<para> <para>
The <literal>staticjinja</literal> package has been upgraded The <literal>staticjinja</literal> package has been upgraded
from 1.0.4 to 2.0.0 from 1.0.4 to 2.0.0
</para> </para>
</listitem> </listitem>
<listitem>
<para>
<literal>services.geoip-updater</literal> was broken and has
been replaced by
<link xlink:href="options.html#opt-services.geoipupdate.enable">services.geoipupdate</link>.
</para>
</listitem>
</itemizedlist> </itemizedlist>
</section> </section>
<section xml:id="other-notable-changes"> <section xml:id="other-notable-changes">

View File

@ -8,8 +8,15 @@ In addition to numerous new and upgraded packages, this release has the followin
## New Services ## New Services
* [geoipupdate](https://github.com/maxmind/geoipupdate), a GeoIP
database updater from MaxMind. Available as
[services.geoipupdate](options.html#opt-services.geoipupdate.enable).
## Backward Incompatibilities ## Backward Incompatibilities
* The `staticjinja` package has been upgraded from 1.0.4 to 2.0.0 * The `staticjinja` package has been upgraded from 1.0.4 to 2.0.0
* `services.geoip-updater` was broken and has been replaced by
[services.geoipupdate](options.html#opt-services.geoipupdate.enable).
## Other Notable Changes ## Other Notable Changes

View File

@ -130,7 +130,13 @@ rec {
{ {
virtualisation.qemu.package = qemu_pkg; virtualisation.qemu.package = qemu_pkg;
} }
); ) ++ [(
{
# Ensure we do not use aliases. Ideally this is only set
# when the test framework is used by Nixpkgs NixOS tests.
nixpkgs.config.allowAliases = false;
}
)];
}; };
# FIXME: get this pkg from the module system # FIXME: get this pkg from the module system

View File

@ -300,7 +300,7 @@ in
#pdns-recursor = 269; # dynamically allocated as of 2020-20-18 #pdns-recursor = 269; # dynamically allocated as of 2020-20-18
#kresd = 270; # switched to "knot-resolver" with dynamic ID #kresd = 270; # switched to "knot-resolver" with dynamic ID
rpc = 271; rpc = 271;
geoip = 272; #geoip = 272; # new module uses DynamicUser
fcron = 273; fcron = 273;
sonarr = 274; sonarr = 274;
radarr = 275; radarr = 275;

View File

@ -492,7 +492,7 @@
./services/misc/freeswitch.nix ./services/misc/freeswitch.nix
./services/misc/fstrim.nix ./services/misc/fstrim.nix
./services/misc/gammu-smsd.nix ./services/misc/gammu-smsd.nix
./services/misc/geoip-updater.nix ./services/misc/geoipupdate.nix
./services/misc/gitea.nix ./services/misc/gitea.nix
#./services/misc/gitit.nix #./services/misc/gitit.nix
./services/misc/gitlab.nix ./services/misc/gitlab.nix

View File

@ -165,6 +165,42 @@ in {
''; '';
in in
'' ''
joinByString()
{
local separator="$1"
shift
local first="$1"
shift
printf "%s" "$first" "''${@/#/$separator}"
}
# Map a relative directory path in the output from
# jenkins-job-builder (jobname) to the layout expected by jenkins:
# each directory level gets prepended "jobs/".
getJenkinsJobDir()
{
IFS='/' read -ra input_dirs <<< "$1"
printf "jobs/"
joinByString "/jobs/" "''${input_dirs[@]}"
}
# The inverse of getJenkinsJobDir (remove the "jobs/" prefixes)
getJobname()
{
IFS='/' read -ra input_dirs <<< "$1"
local i=0
local nelem=''${#input_dirs[@]}
for e in "''${input_dirs[@]}"; do
if [ $((i % 2)) -eq 1 ]; then
printf "$e"
if [ $i -lt $(( nelem - 1 )) ]; then
printf "/"
fi
fi
i=$((i + 1))
done
}
rm -rf ${jobBuilderOutputDir} rm -rf ${jobBuilderOutputDir}
cur_decl_jobs=/run/jenkins-job-builder/declarative-jobs cur_decl_jobs=/run/jenkins-job-builder/declarative-jobs
rm -f "$cur_decl_jobs" rm -f "$cur_decl_jobs"
@ -172,27 +208,27 @@ in {
# Create / update jobs # Create / update jobs
mkdir -p ${jobBuilderOutputDir} mkdir -p ${jobBuilderOutputDir}
for inputFile in ${yamlJobsFile} ${concatStringsSep " " jsonJobsFiles}; do for inputFile in ${yamlJobsFile} ${concatStringsSep " " jsonJobsFiles}; do
HOME="${jenkinsCfg.home}" "${pkgs.jenkins-job-builder}/bin/jenkins-jobs" --ignore-cache test -o "${jobBuilderOutputDir}" "$inputFile" HOME="${jenkinsCfg.home}" "${pkgs.jenkins-job-builder}/bin/jenkins-jobs" --ignore-cache test --config-xml -o "${jobBuilderOutputDir}" "$inputFile"
done done
for file in "${jobBuilderOutputDir}/"*; do find "${jobBuilderOutputDir}" -type f -name config.xml | while read -r f; do echo "$(dirname "$f")"; done | sort | while read -r dir; do
test -f "$file" || continue jobname="$(realpath --relative-to="${jobBuilderOutputDir}" "$dir")"
jobname="$(basename $file)" jenkinsjobname=$(getJenkinsJobDir "$jobname")
jobdir="${jenkinsCfg.home}/jobs/$jobname" jenkinsjobdir="${jenkinsCfg.home}/$jenkinsjobname"
echo "Creating / updating job \"$jobname\"" echo "Creating / updating job \"$jobname\""
mkdir -p "$jobdir" mkdir -p "$jenkinsjobdir"
touch "$jobdir/${ownerStamp}" touch "$jenkinsjobdir/${ownerStamp}"
cp "$file" "$jobdir/config.xml" cp "$dir"/config.xml "$jenkinsjobdir/config.xml"
echo "$jobname" >> "$cur_decl_jobs" echo "$jenkinsjobname" >> "$cur_decl_jobs"
done done
# Remove stale jobs # Remove stale jobs
for file in "${jenkinsCfg.home}"/jobs/*/${ownerStamp}; do find "${jenkinsCfg.home}" -type f -name "${ownerStamp}" | while read -r f; do echo "$(dirname "$f")"; done | sort --reverse | while read -r dir; do
test -f "$file" || continue jenkinsjobname="$(realpath --relative-to="${jenkinsCfg.home}" "$dir")"
jobdir="$(dirname $file)" grep --quiet --line-regexp "$jenkinsjobname" "$cur_decl_jobs" 2>/dev/null && continue
jobname="$(basename "$jobdir")" jobname=$(getJobname "$jenkinsjobname")
grep --quiet --line-regexp "$jobname" "$cur_decl_jobs" 2>/dev/null && continue
echo "Deleting stale job \"$jobname\"" echo "Deleting stale job \"$jobname\""
jobdir="${jenkinsCfg.home}/$jenkinsjobname"
rm -rf "$jobdir" rm -rf "$jobdir"
done done
'' + (if cfg.accessUser != "" then reloadScript else ""); '' + (if cfg.accessUser != "" then reloadScript else "");

View File

@ -1,306 +0,0 @@
{ config, lib, pkgs, ... }:
with lib;
let
cfg = config.services.geoip-updater;
dbBaseUrl = "https://geolite.maxmind.com/download/geoip/database";
randomizedTimerDelaySec = "3600";
# Use writeScriptBin instead of writeScript, so that argv[0] (logged to the
# journal) doesn't include the long nix store path hash. (Prefixing the
# ExecStart= command with '@' doesn't work because we start a shell (new
# process) that creates a new argv[0].)
geoip-updater = pkgs.writeScriptBin "geoip-updater" ''
#!${pkgs.runtimeShell}
skipExisting=0
debug()
{
echo "<7>$@"
}
info()
{
echo "<6>$@"
}
error()
{
echo "<3>$@"
}
die()
{
error "$@"
exit 1
}
waitNetworkOnline()
{
ret=1
for i in $(seq 6); do
curl_out=$("${pkgs.curl.bin}/bin/curl" \
--silent --fail --show-error --max-time 60 "${dbBaseUrl}" 2>&1)
if [ $? -eq 0 ]; then
debug "Server is reachable (try $i)"
ret=0
break
else
debug "Server is unreachable (try $i): $curl_out"
sleep 10
fi
done
return $ret
}
dbFnameTmp()
{
dburl=$1
echo "${cfg.databaseDir}/.$(basename "$dburl")"
}
dbFnameTmpDecompressed()
{
dburl=$1
echo "${cfg.databaseDir}/.$(basename "$dburl")" | sed 's/\.\(gz\|xz\)$//'
}
dbFname()
{
dburl=$1
echo "${cfg.databaseDir}/$(basename "$dburl")" | sed 's/\.\(gz\|xz\)$//'
}
downloadDb()
{
dburl=$1
curl_out=$("${pkgs.curl.bin}/bin/curl" \
--silent --fail --show-error --max-time 900 -L -o "$(dbFnameTmp "$dburl")" "$dburl" 2>&1)
if [ $? -ne 0 ]; then
error "Failed to download $dburl: $curl_out"
return 1
fi
}
decompressDb()
{
fn=$(dbFnameTmp "$1")
ret=0
case "$fn" in
*.gz)
cmd_out=$("${pkgs.gzip}/bin/gzip" --decompress --force "$fn" 2>&1)
;;
*.xz)
cmd_out=$("${pkgs.xz.bin}/bin/xz" --decompress --force "$fn" 2>&1)
;;
*)
cmd_out=$(echo "File \"$fn\" is neither a .gz nor .xz file")
false
;;
esac
if [ $? -ne 0 ]; then
error "$cmd_out"
ret=1
fi
}
atomicRename()
{
dburl=$1
mv "$(dbFnameTmpDecompressed "$dburl")" "$(dbFname "$dburl")"
}
removeIfNotInConfig()
{
# Arg 1 is the full path of an installed DB.
# If the corresponding database is not specified in the NixOS config we
# remove it.
db=$1
for cdb in ${lib.concatStringsSep " " cfg.databases}; do
confDb=$(echo "$cdb" | sed 's/\.\(gz\|xz\)$//')
if [ "$(basename "$db")" = "$(basename "$confDb")" ]; then
return 0
fi
done
rm "$db"
if [ $? -eq 0 ]; then
debug "Removed $(basename "$db") (not listed in services.geoip-updater.databases)"
else
error "Failed to remove $db"
fi
}
removeUnspecifiedDbs()
{
for f in "${cfg.databaseDir}/"*; do
test -f "$f" || continue
case "$f" in
*.dat|*.mmdb|*.csv)
removeIfNotInConfig "$f"
;;
*)
debug "Not removing \"$f\" (unknown file extension)"
;;
esac
done
}
downloadAndInstall()
{
dburl=$1
if [ "$skipExisting" -eq 1 -a -f "$(dbFname "$dburl")" ]; then
debug "Skipping existing file: $(dbFname "$dburl")"
return 0
fi
downloadDb "$dburl" || return 1
decompressDb "$dburl" || return 1
atomicRename "$dburl" || return 1
info "Updated $(basename "$(dbFname "$dburl")")"
}
for arg in "$@"; do
case "$arg" in
--skip-existing)
skipExisting=1
info "Option --skip-existing is set: not updating existing databases"
;;
*)
error "Unknown argument: $arg";;
esac
done
waitNetworkOnline || die "Network is down (${dbBaseUrl} is unreachable)"
test -d "${cfg.databaseDir}" || die "Database directory (${cfg.databaseDir}) doesn't exist"
debug "Starting update of GeoIP databases in ${cfg.databaseDir}"
all_ret=0
for db in ${lib.concatStringsSep " \\\n " cfg.databases}; do
downloadAndInstall "${dbBaseUrl}/$db" || all_ret=1
done
removeUnspecifiedDbs || all_ret=1
if [ $all_ret -eq 0 ]; then
info "Completed GeoIP database update in ${cfg.databaseDir}"
else
error "Completed GeoIP database update in ${cfg.databaseDir}, with error(s)"
fi
# Hack to work around systemd journal race:
# https://github.com/systemd/systemd/issues/2913
sleep 2
exit $all_ret
'';
in
{
options = {
services.geoip-updater = {
enable = mkOption {
default = false;
type = types.bool;
description = ''
Whether to enable periodic downloading of GeoIP databases from
maxmind.com. You might want to enable this if you, for instance, use
ntopng or Wireshark.
'';
};
interval = mkOption {
type = types.str;
default = "weekly";
description = ''
Update the GeoIP databases at this time / interval.
The format is described in
<citerefentry><refentrytitle>systemd.time</refentrytitle>
<manvolnum>7</manvolnum></citerefentry>.
To prevent load spikes on maxmind.com, the timer interval is
randomized by an additional delay of ${randomizedTimerDelaySec}
seconds. Setting a shorter interval than this is not recommended.
'';
};
databaseDir = mkOption {
type = types.path;
default = "/var/lib/geoip-databases";
description = ''
Directory that will contain GeoIP databases.
'';
};
databases = mkOption {
type = types.listOf types.str;
default = [
"GeoLiteCountry/GeoIP.dat.gz"
"GeoIPv6.dat.gz"
"GeoLiteCity.dat.xz"
"GeoLiteCityv6-beta/GeoLiteCityv6.dat.gz"
"asnum/GeoIPASNum.dat.gz"
"asnum/GeoIPASNumv6.dat.gz"
"GeoLite2-Country.mmdb.gz"
"GeoLite2-City.mmdb.gz"
];
description = ''
Which GeoIP databases to update. The full URL is ${dbBaseUrl}/ +
<literal>the_database</literal>.
'';
};
};
};
config = mkIf cfg.enable {
assertions = [
{ assertion = (builtins.filter
(x: builtins.match ".*\\.(gz|xz)$" x == null) cfg.databases) == [];
message = ''
services.geoip-updater.databases supports only .gz and .xz databases.
Current value:
${toString cfg.databases}
Offending element(s):
${toString (builtins.filter (x: builtins.match ".*\\.(gz|xz)$" x == null) cfg.databases)};
'';
}
];
users.users.geoip = {
group = "root";
description = "GeoIP database updater";
uid = config.ids.uids.geoip;
};
systemd.timers.geoip-updater =
{ description = "GeoIP Updater Timer";
partOf = [ "geoip-updater.service" ];
wantedBy = [ "timers.target" ];
timerConfig.OnCalendar = cfg.interval;
timerConfig.Persistent = "true";
timerConfig.RandomizedDelaySec = randomizedTimerDelaySec;
};
systemd.services.geoip-updater = {
description = "GeoIP Updater";
after = [ "network-online.target" "nss-lookup.target" ];
wants = [ "network-online.target" ];
preStart = ''
mkdir -p "${cfg.databaseDir}"
chmod 755 "${cfg.databaseDir}"
chown geoip:root "${cfg.databaseDir}"
'';
serviceConfig = {
ExecStart = "${geoip-updater}/bin/geoip-updater";
User = "geoip";
PermissionsStartOnly = true;
};
};
systemd.services.geoip-updater-setup = {
description = "GeoIP Updater Setup";
after = [ "network-online.target" "nss-lookup.target" ];
wants = [ "network-online.target" ];
wantedBy = [ "multi-user.target" ];
conflicts = [ "geoip-updater.service" ];
preStart = ''
mkdir -p "${cfg.databaseDir}"
chmod 755 "${cfg.databaseDir}"
chown geoip:root "${cfg.databaseDir}"
'';
serviceConfig = {
ExecStart = "${geoip-updater}/bin/geoip-updater --skip-existing";
User = "geoip";
PermissionsStartOnly = true;
# So it won't be (needlessly) restarted:
RemainAfterExit = true;
};
};
};
}

View File

@ -0,0 +1,145 @@
{ config, lib, pkgs, ... }:
let
cfg = config.services.geoipupdate;
in
{
imports = [
(lib.mkRemovedOptionModule [ "services" "geoip-updater" ] "services.geoip-updater has been removed, use services.geoipupdate instead.")
];
options = {
services.geoipupdate = {
enable = lib.mkEnableOption ''
periodic downloading of GeoIP databases using
<productname>geoipupdate</productname>.
'';
interval = lib.mkOption {
type = lib.types.str;
default = "weekly";
description = ''
Update the GeoIP databases at this time / interval.
The format is described in
<citerefentry><refentrytitle>systemd.time</refentrytitle>
<manvolnum>7</manvolnum></citerefentry>.
'';
};
settings = lib.mkOption {
description = ''
<productname>geoipupdate</productname> configuration
options. See
<link xlink:href="https://github.com/maxmind/geoipupdate/blob/main/doc/GeoIP.conf.md" />
for a full list of available options.
'';
type = lib.types.submodule {
freeformType =
with lib.types;
let
type = oneOf [str int bool];
in
attrsOf (either type (listOf type));
options = {
AccountID = lib.mkOption {
type = lib.types.int;
description = ''
Your MaxMind account ID.
'';
};
EditionIDs = lib.mkOption {
type = with lib.types; listOf (either str int);
example = [
"GeoLite2-ASN"
"GeoLite2-City"
"GeoLite2-Country"
];
description = ''
List of database edition IDs. This includes new string
IDs like <literal>GeoIP2-City</literal> and old
numeric IDs like <literal>106</literal>.
'';
};
LicenseKey = lib.mkOption {
type = lib.types.path;
description = ''
A file containing the <productname>MaxMind</productname>
license key.
'';
};
DatabaseDirectory = lib.mkOption {
type = lib.types.path;
default = "/var/lib/GeoIP";
example = "/run/GeoIP";
description = ''
The directory to store the database files in. The
directory will be automatically created, the owner
changed to <literal>geoip</literal> and permissions
set to world readable. This applies if the directory
already exists as well, so don't use a directory with
sensitive contents.
'';
};
};
};
};
};
};
config = lib.mkIf cfg.enable {
services.geoipupdate.settings = {
LockFile = "/run/geoipupdate/.lock";
};
systemd.services.geoipupdate = {
description = "GeoIP Updater";
after = [ "network-online.target" "nss-lookup.target" ];
wants = [ "network-online.target" ];
startAt = cfg.interval;
serviceConfig = {
ExecStartPre =
let
geoipupdateKeyValue = lib.generators.toKeyValue {
mkKeyValue = lib.flip lib.generators.mkKeyValueDefault " " rec {
mkValueString = v: with builtins;
if isInt v then toString v
else if isString v then v
else if true == v then "1"
else if false == v then "0"
else if isList v then lib.concatMapStringsSep " " mkValueString v
else throw "unsupported type ${typeOf v}: ${(lib.generators.toPretty {}) v}";
};
};
geoipupdateConf = pkgs.writeText "discourse.conf" (geoipupdateKeyValue cfg.settings);
script = ''
mkdir -p "${cfg.settings.DatabaseDirectory}"
chmod 755 "${cfg.settings.DatabaseDirectory}"
chown geoip "${cfg.settings.DatabaseDirectory}"
cp ${geoipupdateConf} /run/geoipupdate/GeoIP.conf
${pkgs.replace-secret}/bin/replace-secret '${cfg.settings.LicenseKey}' \
'${cfg.settings.LicenseKey}' \
/run/geoipupdate/GeoIP.conf
'';
in
"+${pkgs.writeShellScript "start-pre-full-privileges" script}";
ExecStart = "${pkgs.geoipupdate}/bin/geoipupdate -f /run/geoipupdate/GeoIP.conf";
User = "geoip";
DynamicUser = true;
ReadWritePaths = cfg.settings.DatabaseDirectory;
RuntimeDirectory = "geoipupdate";
RuntimeDirectoryMode = 0700;
};
};
};
}

View File

@ -147,6 +147,7 @@ in rec {
(onFullSupported "nixos.tests.sddm.default") (onFullSupported "nixos.tests.sddm.default")
(onFullSupported "nixos.tests.shadow") (onFullSupported "nixos.tests.shadow")
(onFullSupported "nixos.tests.simple") (onFullSupported "nixos.tests.simple")
(onFullSupported "nixos.tests.sway")
(onFullSupported "nixos.tests.switchTest") (onFullSupported "nixos.tests.switchTest")
(onFullSupported "nixos.tests.udisks2") (onFullSupported "nixos.tests.udisks2")
(onFullSupported "nixos.tests.xfce") (onFullSupported "nixos.tests.xfce")

View File

@ -1,6 +1,6 @@
f: { f: {
system ? builtins.currentSystem, system ? builtins.currentSystem,
pkgs ? import ../.. { inherit system; config = {}; }, pkgs ? import ../.. { inherit system; },
... ...
} @ args: } @ args:

View File

@ -72,10 +72,10 @@ in {
) )
with subtest("test a connection"): with subtest("test a connection"):
client.execute("systemd-run snapclient -h server -p ${toString port}") client.execute("systemd-run --unit=snapcast-client snapclient -h server -p ${toString port}")
server.wait_until_succeeds( server.wait_until_succeeds(
"journalctl -o cat -u snapserver.service | grep -q 'Hello from'" "journalctl -o cat -u snapserver.service | grep -q 'Hello from'"
) )
client.wait_until_succeeds("journalctl -o cat -u run-\* | grep -q ${toString bufferSize}") client.wait_until_succeeds("journalctl -o cat -u snapcast-client | grep -q 'buffer: ${toString bufferSize}'")
''; '';
}) })

View File

@ -14,7 +14,7 @@ in
stdenv.mkDerivation rec { stdenv.mkDerivation rec {
pname = "renoise"; pname = "renoise";
version = "3.3.1"; version = "3.3.2";
src = src =
if stdenv.hostPlatform.system == "x86_64-linux" then if stdenv.hostPlatform.system == "x86_64-linux" then
@ -24,7 +24,7 @@ stdenv.mkDerivation rec {
"https://files.renoise.com/demo/Renoise_${urlVersion version}_Demo_Linux.tar.gz" "https://files.renoise.com/demo/Renoise_${urlVersion version}_Demo_Linux.tar.gz"
"https://web.archive.org/web/https://files.renoise.com/demo/Renoise_${urlVersion version}_Demo_Linux.tar.gz" "https://web.archive.org/web/https://files.renoise.com/demo/Renoise_${urlVersion version}_Demo_Linux.tar.gz"
]; ];
sha256 = "05baicks5dx278z2dx6h5n2vabsn64niwqssgys36xy469l9m1h0"; sha256 = "0d9pnrvs93d4bwbfqxwyr3lg3k6gnzmp81m95gglzwdzczxkw38k";
} }
else else
releasePath releasePath

View File

@ -1,5 +1,5 @@
{ stdenv, lib, fetchFromGitHub, cmake, pkg-config { stdenv, lib, fetchFromGitHub, cmake, pkg-config
, alsaLib, asio, avahi, boost170, flac, libogg, libvorbis, soxr , alsaLib, asio, avahi, boost17x, flac, libogg, libvorbis, soxr
, nixosTests }: , nixosTests }:
let let
@ -34,19 +34,20 @@ in
stdenv.mkDerivation rec { stdenv.mkDerivation rec {
pname = "snapcast"; pname = "snapcast";
version = "0.24.0"; version = "0.25.0";
src = fetchFromGitHub { src = fetchFromGitHub {
owner = "badaix"; owner = "badaix";
repo = "snapcast"; repo = "snapcast";
rev = "v${version}"; rev = "v${version}";
sha256 = "13yz8alplnqwkcns3mcli01qbyy6l3h62xx0v71ygcrz371l4g9g"; sha256 = "064pcpr5dsv9hncqkrnxriva4xjv1vcxhvc69h1an8x8vn4dwgmf";
}; };
nativeBuildInputs = [ cmake pkg-config boost170.dev ]; nativeBuildInputs = [ cmake pkg-config ];
# snapcast also supports building against tremor but as we have libogg, that's # snapcast also supports building against tremor but as we have libogg, that's
# not needed # not needed
buildInputs = [ buildInputs = [
boost17x
alsaLib asio avahi flac libogg libvorbis alsaLib asio avahi flac libogg libvorbis
aixlog popl soxr aixlog popl soxr
]; ];

View File

@ -1,5 +1,7 @@
{ lib, stdenv { lib
, stdenv
, fetchFromGitHub , fetchFromGitHub
, fetchpatch
, nix-update-script , nix-update-script
, cmake , cmake
, ninja , ninja
@ -61,13 +63,22 @@ stdenv.mkDerivation rec {
glib-networking glib-networking
]; ];
patches = [
# granite 6.0.0 removed about dialogs
# see: https://github.com/needle-and-thread/vocal/issues/483
(fetchpatch {
name = "remove-about.patch";
url = "https://raw.githubusercontent.com/archlinux/svntogit-community/03543ffdb6cd52ce1a8293f3303225b3afac2431/trunk/remove-about.patch";
sha256 = "sha256-yGD7BYOTmqs4h+Odh/mB3fI1HM7GDO6F+QaHpRUD5p4=";
})
];
passthru = { passthru = {
updateScript = nix-update-script { updateScript = nix-update-script {
attrPath = pname; attrPath = pname;
}; };
}; };
meta = with lib; { meta = with lib; {
description = "The podcast client for the modern free desktop"; description = "The podcast client for the modern free desktop";
longDescription = '' longDescription = ''

View File

@ -23,7 +23,7 @@ in python3.pkgs.buildPythonApplication rec {
}; };
nativeBuildInputs = with python3.pkgs; [ nativeBuildInputs = with python3.pkgs; [
setuptools_scm setuptools-scm
docutils docutils
]; ];

View File

@ -20,7 +20,7 @@ python3Packages.buildPythonApplication rec {
python3Packages.setuptools-scm python3Packages.setuptools-scm
]; ];
# give a hint to setuptools_scm on package version # give a hint to setuptools-scm on package version
SETUPTOOLS_SCM_PRETEND_VERSION = "v${version}"; SETUPTOOLS_SCM_PRETEND_VERSION = "v${version}";
propagatedBuildInputs = with python3Packages; [ propagatedBuildInputs = with python3Packages; [

View File

@ -38,13 +38,13 @@ let
in in
stdenv.mkDerivation rec { stdenv.mkDerivation rec {
pname = "cudatext"; pname = "cudatext";
version = "1.131.0"; version = "1.133.5";
src = fetchFromGitHub { src = fetchFromGitHub {
owner = "Alexey-T"; owner = "Alexey-T";
repo = "CudaText"; repo = "CudaText";
rev = version; rev = version;
sha256 = "1zq17yi5zn4hdgrrn3c3cdk6s38fv36r66dl0dqz2z8jjd6vy4p3"; sha256 = "sha256-0QWYitlOS3x7BQpFTYDAjIgkw83IkRFfA/slyEvQUnw=";
}; };
postPatch = '' postPatch = ''

View File

@ -11,33 +11,33 @@
}, },
"ATFlatControls": { "ATFlatControls": {
"owner": "Alexey-T", "owner": "Alexey-T",
"rev": "2021.04.01", "rev": "2021.05.16",
"sha256": "12sncivsv6pvwflzzy12rpn1fjiq64n2n3bcj7630xxlrbygkhxb" "sha256": "sha256-oQW0M8Sx1bC+keOWivXwlD5SDKJuO5Sk/3HiO9HvJtY="
}, },
"ATSynEdit": { "ATSynEdit": {
"owner": "Alexey-T", "owner": "Alexey-T",
"rev": "2021.04.09", "rev": "2021.05.31",
"sha256": "1ldr2z88zywn0ccgs17vfhq55ibihjcmfjjxcqsjifrbm0y6wipp" "sha256": "sha256-4B6/I0CH9gfslwUbCTTI4kycgTHUjLGtVrCctfO6gRo="
}, },
"ATSynEdit_Cmp": { "ATSynEdit_Cmp": {
"owner": "Alexey-T", "owner": "Alexey-T",
"rev": "2021.04.01", "rev": "2021.05.03",
"sha256": "1g6zp9d7vwjisad3y1mfnk1jcbjqxp3yimm0sh1655al6qwn886m" "sha256": "sha256-zns83XA2SslHRGqa3iro0phIBlz5/neJ34TTYAKhX5Q="
}, },
"EControl": { "EControl": {
"owner": "Alexey-T", "owner": "Alexey-T",
"rev": "2021.03.16", "rev": "2021.05.27",
"sha256": "159s1rpl829bmaa4bllqhjm8z0vji1ncsd6hw2s8z8hz28n905k8" "sha256": "sha256-D0UBK69V28Izs9FgevtvX6vyDU7KpfIGJqcqpWaxU9E="
}, },
"ATSynEdit_Ex": { "ATSynEdit_Ex": {
"owner": "Alexey-T", "owner": "Alexey-T",
"rev": "2021.04.01", "rev": "2021.05.27",
"sha256": "1hq9hbv81mcymjcms97wcwcfqfpxis6h6v5m0syyih4r53khv0az" "sha256": "sha256-1zhSB6bgeW5G6RAZvhznNTpRk0uEDZnLXsk+cgElKLw="
}, },
"Python-for-Lazarus": { "Python-for-Lazarus": {
"owner": "Alexey-T", "owner": "Alexey-T",
"rev": "2021.02.18", "rev": "2021.04.16",
"sha256": "0fy6bmpdcl2aa8pb7zban6midkfwdj99x14hdghrv7cp8l4gcsg5" "sha256": "sha256-HN3Lr3uDCyNk+8+J09ivyC0LZxQ6x6SaUH4swZJBFkM="
}, },
"Emmet-Pascal": { "Emmet-Pascal": {
"owner": "Alexey-T", "owner": "Alexey-T",

View File

@ -1,56 +1,39 @@
{ fetchurl, lib, stdenv, ncurses }: { lib, stdenv, fetchurl, fetchpatch, ncurses, db }:
stdenv.mkDerivation { stdenv.mkDerivation rec {
name = "nvi-1.79"; pname = "nvi";
version = "1.81.6";
src = fetchurl { src = fetchurl {
urls = url = "https://deb.debian.org/debian/pool/main/n/nvi/nvi_${version}.orig.tar.gz";
[ "ftp://ftp.eenet.ee/pub/cpan/src/misc/nvi-1.79.tar.gz" sha256 = "13cp9iz017bk6ryi05jn7drbv7a5dyr201zqd3r4r8srj644ihwb";
"ftp://ftp.saintjoe.edu/pub/CPAN/src/misc/nvi-1.79.tar.gz"
"ftp://ftp.free.fr/.mirrors1/ftp.netbsd.org/packages/distfiles/nvi-1.79.tar.gz"
];
sha256 = "0cvf56rbylz7ksny6g2256sjg8yrsxrmbpk82r64rhi53sm8fnvm";
}; };
buildInputs = [ ncurses ]; patches = [
# Fix runtime error with modern versions of db.
(fetchpatch {
url = "https://src.fedoraproject.org/rpms/nvi/raw/f33/f/nvi-03-db4.patch";
sha256 = "1vpnly3dcldwl8gwl0jrh5yh0vhgbdhsh6xn7lnwhrawlvk6d55y";
})
# nvi tries to write to a usual tmp directory (/var/tmp), # Fix build with Glibc.
# so we will force it to use /tmp. (fetchpatch {
patchPhase = '' url = "https://src.fedoraproject.org/rpms/nvi/raw/f33/f/nvi-20-glibc_has_grantpt.patch";
sed -i build/configure \ sha256 = "1ypqj263wh53m5rgiag5c4gy1rksj2waginny1lcj34n72p2dsml";
-e s@vi_cv_path_preserve=no@vi_cv_path_preserve=/tmp/vi.recover@ \ })
-e s@/var/tmp@@ \ ];
-e s@-lcurses@-lncurses@
buildInputs = [ ncurses db ];
preConfigure = ''
cd build.unix
''; '';
configureScript = "../dist/configure";
configureFlags = [ "vi_cv_path_preserve=/tmp" ];
configurePhase = '' meta = with lib; {
mkdir mybuild
cd mybuild
../build/configure --prefix=$out --disable-curses
'';
installPhase = ''
mkdir -p $out/bin $out/share/vi/catalog
for a in dutch english french german ru_SU.KOI8-R spanish swedish; do
cp ../catalog/$a $out/share/vi/catalog
done
cp nvi $out/bin/nvi
ln -s $out/bin/nvi $out/bin/vi
ln -s $out/bin/nvi $out/bin/ex
ln -s $out/bin/nvi $out/bin/view
mkdir -p $out/share/man/man1
cp ../docs/USD.doc/vi.man/vi.1 $out/share/man/man1/nvi.1
ln -s $out/share/man/man1/nvi.1 $out/share/man/man1/vi
ln -s $out/share/man/man1/nvi.1 $out/share/man/man1/ex
ln -s $out/share/man/man1/nvi.1 $out/share/man/man1/view
ln -s $out/bin/{,vi-}nvi # create a symlink so that all vi(m) users will find it
'';
meta = {
homepage = "http://www.bostic.com/vi/";
description = "The Berkeley Vi Editor"; description = "The Berkeley Vi Editor";
license = lib.licenses.free; license = licenses.free;
broken = true; # since 2020-02-08 platforms = platforms.unix;
}; };
} }

View File

@ -3,20 +3,21 @@
, xz , xz
, wrapQtAppsHook , wrapQtAppsHook
, miniupnpc_2 , miniupnpc_2
, enableSwftools ? false
, swftools , swftools
, pythonPackages , pythonPackages
}: }:
pythonPackages.buildPythonPackage rec { pythonPackages.buildPythonPackage rec {
pname = "hydrus"; pname = "hydrus";
version = "438"; version = "441";
format = "other"; format = "other";
src = fetchFromGitHub { src = fetchFromGitHub {
owner = "hydrusnetwork"; owner = "hydrusnetwork";
repo = "hydrus"; repo = "hydrus";
rev = "v${version}"; rev = "v${version}";
sha256 = "sha256-iBJkbVUlsjt26SbDe92eIrWKQwWBhkjjeLM14Pm/obc="; sha256 = "13h4qcz0iqba4mwyvgmdqh99jy22x7kw20f3g43b5aq3qyk9ca2h";
}; };
nativeBuildInputs = [ nativeBuildInputs = [
@ -79,7 +80,7 @@ pythonPackages.buildPythonPackage rec {
postPatch = '' postPatch = ''
sed 's;os\.path\.join(\sHC\.BIN_DIR,.*;"${miniupnpc_2}/bin/upnpc";' \ sed 's;os\.path\.join(\sHC\.BIN_DIR,.*;"${miniupnpc_2}/bin/upnpc";' \
-i ./hydrus/core/networking/HydrusNATPunch.py -i ./hydrus/core/networking/HydrusNATPunch.py
'' + lib.optionalString enableSwftools ''
sed 's;os\.path\.join(\sHC\.BIN_DIR,.*;"${swftools}/bin/swfrender";' \ sed 's;os\.path\.join(\sHC\.BIN_DIR,.*;"${swftools}/bin/swfrender";' \
-i ./hydrus/core/HydrusFlashHandling.py -i ./hydrus/core/HydrusFlashHandling.py
''; '';

View File

@ -2,6 +2,7 @@
, fetchFromGitHub , fetchFromGitHub
, boost , boost
, cmake , cmake
, giflib
, ilmbase , ilmbase
, libjpeg , libjpeg
, libpng , libpng
@ -33,6 +34,7 @@ stdenv.mkDerivation rec {
buildInputs = [ buildInputs = [
boost boost
giflib
ilmbase ilmbase
libjpeg libjpeg
libpng libpng

View File

@ -3,15 +3,15 @@
}: }:
let let
pname = "josm"; pname = "josm";
version = "17833"; version = "17919";
srcs = { srcs = {
jar = fetchurl { jar = fetchurl {
url = "https://josm.openstreetmap.de/download/josm-snapshot-${version}.jar"; url = "https://josm.openstreetmap.de/download/josm-snapshot-${version}.jar";
sha256 = "sha256-i3seRVfCLXNvUkWAAPZK0XloRHuXWCNp1tqnVr7CQ7Y="; sha256 = "sha256-Bj1s3vFSHPiZNTjp7hQhu1X2v8nlynC37Cm6sMNOi3g=";
}; };
macosx = fetchurl { macosx = fetchurl {
url = "https://josm.openstreetmap.de/download/macosx/josm-macos-${version}-java16.zip"; url = "https://josm.openstreetmap.de/download/macosx/josm-macos-${version}-java16.zip";
sha256 = "sha256-PM/wNXqtEwalhorWHqVHWsaiGv60SFrHXZrb1Mw/QqQ="; sha256 = "sha256-W+s6ARA5lyRwTuRD89wm4HChb2Up5AXQwh5uk0U7pQk=";
}; };
pkg = fetchsvn { pkg = fetchsvn {
url = "https://josm.openstreetmap.de/svn/trunk/native/linux/tested"; url = "https://josm.openstreetmap.de/svn/trunk/native/linux/tested";

View File

@ -30,7 +30,7 @@ with python3.pkgs; buildPythonApplication rec {
pkginfo pkginfo
freezegun freezegun
]; ];
nativeBuildInputs = [ setuptools_scm sphinx sphinxcontrib_newsfeed ]; nativeBuildInputs = [ setuptools-scm sphinx sphinxcontrib_newsfeed ];
checkInputs = [ pytest glibcLocales ]; checkInputs = [ pytest glibcLocales ];
LC_ALL = "en_US.UTF-8"; LC_ALL = "en_US.UTF-8";

View File

@ -0,0 +1,36 @@
{ stdenv, fetchzip, makeWrapper, mono, lib }:
stdenv.mkDerivation rec {
pname = "natural-docs";
version = "2.1.1";
src = fetchzip {
url = "https://naturaldocs.org/download/natural_docs/${version}/Natural_Docs_${version}.zip";
sha256 = "03fizjgvhiw3lqyykqw1whdh97xyiy3f226c1348ll61ryjxamqw";
};
dontPatch = true;
dontConfigure = true;
dontBuild = true;
nativeBuildInputs = [ makeWrapper ];
installPhase = ''
mkdir -p $out/bin
cp -r . $out/
makeWrapper ${mono}/bin/mono $out/bin/NaturalDocs --add-flags "$out/NaturalDocs.exe"
'';
meta = with lib; {
description = "Documentation generator for multiple programming languages.";
longDescription = ''
Natural Docs is an open source documentation generator for multiple
programming languages. You document your code in a natural syntax that
reads like plain English. Natural Docs then scans your code and builds
high-quality HTML documentation from it.
'';
homepage = "https://naturaldocs.org";
license = licenses.agpl3Only;
maintainers = [ maintainers.nkpvk ];
};
}

View File

@ -1,12 +1,14 @@
{ lib, stdenv, fetchurl, imake, gccmakedep, xlibsWrapper }: { lib, stdenv, fetchFromGitHub, imake, gccmakedep, xlibsWrapper }:
stdenv.mkDerivation rec { stdenv.mkDerivation rec {
version_name = "1.2.sakura.5"; version_name = "1.2.hanami.6";
version = "1.2.5"; version = "1.2.6";
pname = "oneko"; pname = "oneko";
src = fetchurl { src = fetchFromGitHub {
url = "http://www.daidouji.com/oneko/distfiles/oneko-${version_name}.tar.gz"; owner = "IreneKnapp";
sha256 = "2c2e05f1241e9b76f54475b5577cd4fb6670de058218d04a741a04ebd4a2b22f"; repo = "oneko";
rev = version_name;
sha256 = "0vx12v5fm8ar3f1g6jbpmd3b1q652d32nc67ahkf28djbqjgcbnc";
}; };
nativeBuildInputs = [ imake gccmakedep ]; nativeBuildInputs = [ imake gccmakedep ];
buildInputs = [ xlibsWrapper ]; buildInputs = [ xlibsWrapper ];
@ -22,9 +24,9 @@ stdenv.mkDerivation rec {
chasing around your mouse cursor. chasing around your mouse cursor.
When the cat is done catching the mouse, it starts sleeping. When the cat is done catching the mouse, it starts sleeping.
''; '';
homepage = "http://www.daidouji.com/oneko/"; homepage = "https://github.com/IreneKnapp/oneko";
license = licenses.publicDomain; license = with licenses; [ publicDomain ];
maintainers = [ maintainers.xaverdh ]; maintainers = with maintainers; [ xaverdh irenes ];
platforms = platforms.unix; platforms = platforms.unix;
}; };
} }

View File

@ -17,7 +17,7 @@
sha256 = "1hdg5491phx6svrxxsxp8v6n4b25y7y4wxw7x3bxlbyhaskgj53r"; sha256 = "1hdg5491phx6svrxxsxp8v6n4b25y7y4wxw7x3bxlbyhaskgj53r";
}; };
nativeBuildInputs = [ setuptools_scm ]; nativeBuildInputs = [ setuptools-scm ];
buildInputs = [ pytest mock ]; buildInputs = [ pytest mock ];
propagatedBuildInputs = [ propagatedBuildInputs = [
six setuptools pyserial appdirs hidapi wxPython xlib wmctrl dbus-python six setuptools pyserial appdirs hidapi wxPython xlib wmctrl dbus-python

View File

@ -1,24 +1,60 @@
{ stdenv, lib, makeWrapper, fetchurl { stdenv
, dpkg, wrapGAppsHook, autoPatchelfHook , lib
, gtk3, cairo, pango, atk, gdk-pixbuf, glib , makeWrapper
, at-spi2-atk, dbus, libX11, libxcb, libXi , fetchurl
, libXcursor, libXdamage, libXrandr, libXcomposite , dpkg
, libXext, libXfixes, libXrender, libXtst, libXScrnSaver , wrapGAppsHook
, nss, nspr, alsaLib, cups, fontconfig, expat , autoPatchelfHook
, libudev0-shim, glibc, curl, openssl, libnghttp2, gsettings-desktop-schemas }: , gtk3
, cairo
, pango
, atk
, gdk-pixbuf
, glib
, at-spi2-atk
, dbus
, libX11
, libxcb
, libXi
, libXcursor
, libXdamage
, libXrandr
, libXcomposite
, libXext
, libXfixes
, libXrender
, libXtst
, libXScrnSaver
, nss
, nspr
, alsaLib
, cups
, fontconfig
, expat
, libudev0-shim
, glibc
, curl
, openssl
, libnghttp2
, gsettings-desktop-schemas
, libdrm
, mesa
}:
stdenv.mkDerivation rec { stdenv.mkDerivation rec {
pname = "polar-bookshelf"; pname = "polar-bookshelf";
version = "2.0.42"; version = "2.0.103";
# fetching a .deb because there's no easy way to package this Electron app # fetching a .deb because there's no easy way to package this Electron app
src = fetchurl { src = fetchurl {
url = "https://github.com/burtonator/polar-bookshelf/releases/download/v${version}/polar-desktop-app-${version}-amd64.deb"; url = "https://github.com/burtonator/polar-bookshelf/releases/download/v${version}/polar-desktop-app-${version}-amd64.deb";
hash = "sha256-JyO71wyE6b0iHAYs/6/WbG+OdUVUUPpJla+ZUzg0Gng="; hash = "sha256-jcq0hW698bAhVM3fLQQeKAnld33XLkHsGjS3QwUpciQ=";
}; };
buildInputs = [ buildInputs = [
libdrm
mesa
gsettings-desktop-schemas gsettings-desktop-schemas
glib glib
gtk3 gtk3
@ -60,6 +96,8 @@ stdenv.mkDerivation rec {
unpackPhase = "dpkg-deb -x $src ."; unpackPhase = "dpkg-deb -x $src .";
installPhase = '' installPhase = ''
runHook preInstall
mkdir -p $out/share/polar-bookshelf mkdir -p $out/share/polar-bookshelf
mkdir -p $out/bin mkdir -p $out/bin
mkdir -p $out/lib mkdir -p $out/lib
@ -73,6 +111,8 @@ stdenv.mkDerivation rec {
substituteInPlace $out/share/applications/polar-desktop-app.desktop \ substituteInPlace $out/share/applications/polar-desktop-app.desktop \
--replace "/opt/Polar/polar-desktop-app" "$out/bin/polar-desktop-app" --replace "/opt/Polar/polar-desktop-app" "$out/bin/polar-desktop-app"
runHook postInstall
''; '';
preFixup = '' preFixup = ''
@ -82,7 +122,7 @@ stdenv.mkDerivation rec {
meta = { meta = {
homepage = "https://getpolarized.io/"; homepage = "https://getpolarized.io/";
description = "Personal knowledge repository for PDF and web content supporting incremental reading and document annotation"; description = "Personal knowledge repository for PDF and web content supporting incremental reading and document annotation";
license = lib.licenses.gpl3; license = lib.licenses.gpl3Only;
platforms = lib.platforms.linux; platforms = lib.platforms.linux;
maintainers = [ lib.maintainers.noneucat ]; maintainers = [ lib.maintainers.noneucat ];
}; };

View File

@ -12,7 +12,7 @@ in buildPythonApplication rec {
inherit pname version; inherit pname version;
sha256 = "da0365ae9064e30c4a27526fb0d7a802fda5c8651cda6990d17be7ede89a2551"; sha256 = "da0365ae9064e30c4a27526fb0d7a802fda5c8651cda6990d17be7ede89a2551";
}; };
nativeBuildInputs = [ setuptools_scm ]; nativeBuildInputs = [ setuptools-scm ];
propagatedBuildInputs = [ pyyaml six jinja2 cerberus_1_1 ]; propagatedBuildInputs = [ pyyaml six jinja2 cerberus_1_1 ];
checkPhase = '' checkPhase = ''

View File

@ -9,7 +9,7 @@ python3Packages.buildPythonApplication rec {
sha256 = "3d694015d020a888b42564d56559213b94981ca2b32b952a49b2de4d029d2e59"; sha256 = "3d694015d020a888b42564d56559213b94981ca2b32b952a49b2de4d029d2e59";
}; };
nativeBuildInputs = [ python3Packages.setuptools_scm ]; nativeBuildInputs = [ python3Packages.setuptools-scm ];
pythonPath = with python3Packages; [ i3ipc ]; pythonPath = with python3Packages; [ i3ipc ];
# no tests # no tests

View File

@ -1,20 +1,16 @@
{ lib, stdenv, fetchFromGitHub, pkg-config, glib }: { lib, stdenv, fetchFromGitHub, pkg-config, glib }:
stdenv.mkDerivation rec { stdenv.mkDerivation {
pname = "tiramisu"; pname = "tiramisu";
version = "1.0"; version = "unstable-2021-05-20";
src = fetchFromGitHub { src = fetchFromGitHub {
owner = "Sweets"; owner = "Sweets";
repo = pname; repo = "tiramisu";
rev = version; rev = "e53833d0b5b0ae41ceb7dc434d8e25818fe62291";
sha256 = "0aw17riwgrhsmcndzh7sw2zw8xvn3d203c2gcrqi9nk5pa7fwp9m"; sha256 = "sha256-F4oaTOAQQfOkEXeBVbGH+0CHc9v9Ac08GyzHliOdAfc=";
}; };
postPatch = ''
sed -i 's/printf(element_delimiter)/printf("%s", element_delimiter)/' src/output.c
'';
buildInputs = [ glib ]; buildInputs = [ glib ];
nativeBuildInputs = [ pkg-config ]; nativeBuildInputs = [ pkg-config ];
@ -24,13 +20,13 @@ stdenv.mkDerivation rec {
meta = with lib; { meta = with lib; {
description = "Desktop notifications, the UNIX way"; description = "Desktop notifications, the UNIX way";
longDescription = '' longDescription = ''
tiramisu is a notification daemon based on dunst that outputs notifications tiramisu is a notification daemon based on dunst that outputs notifications
to STDOUT in order to allow the user to process notifications any way they to STDOUT in order to allow the user to process notifications any way they
prefer. prefer.
''; '';
homepage = "https://github.com/Sweets/tiramisu"; homepage = "https://github.com/Sweets/tiramisu";
license = licenses.mit; license = licenses.mit;
platforms = platforms.linux; platforms = platforms.linux;
maintainers = with maintainers; [ wishfort36 ]; maintainers = with maintainers; [ wishfort36 fortuneteller2k ];
}; };
} }

View File

@ -4,22 +4,23 @@
stdenv.mkDerivation rec { stdenv.mkDerivation rec {
pname = "xmrig"; pname = "xmrig";
version = "6.6.1"; version = "6.12.2";
src = fetchFromGitHub { src = fetchFromGitHub {
owner = "xmrig"; owner = "xmrig";
repo = "xmrig"; repo = "xmrig";
rev = "v${version}"; rev = "v${version}";
sha256 = "03phq1c6fylvkg5x7l0bskspr9jdfx61jy67yx2lxhymqgpbf64z"; sha256 = "1gjwh509cxs8vqz72v97cir0aazcrd9y9l0k1q5ywbl5l3yf6ryf";
}; };
nativeBuildInputs = [ cmake ]; nativeBuildInputs = [ cmake ];
buildInputs = [ libuv libmicrohttpd openssl hwloc ]; buildInputs = [ libuv libmicrohttpd openssl hwloc ];
inherit donateLevel;
patches = [ ./donate-level.patch ];
postPatch = '' postPatch = ''
substituteInPlace src/donate.h \ substituteAllInPlace src/donate.h
--replace "kDefaultDonateLevel = 5;" "kDefaultDonateLevel = ${toString donateLevel};" \
--replace "kMinimumDonateLevel = 1;" "kMinimumDonateLevel = ${toString donateLevel};"
''; '';
installPhase = '' installPhase = ''

View File

@ -0,0 +1,12 @@
diff --git a/src/donate.h b/src/donate.h
--- a/src/donate.h
+++ b/src/donate.h
@@ -46,6 +46,6 @@
*/
-constexpr const int kDefaultDonateLevel = 1;
-constexpr const int kMinimumDonateLevel = 1;
+constexpr const int kDefaultDonateLevel = @donateLevel@;
+constexpr const int kMinimumDonateLevel = @donateLevel@;
#endif /* XMRIG_DONATE_H */

View File

@ -24,6 +24,6 @@ buildPythonApplication rec {
description = "A command line oriented, sqlite powered, todo-list"; description = "A command line oriented, sqlite powered, todo-list";
homepage = "https://yokadi.github.io/index.html"; homepage = "https://yokadi.github.io/index.html";
license = licenses.gpl3Plus; license = licenses.gpl3Plus;
maintainers = [ maintainers.nipav ]; maintainers = [ maintainers.nkpvk ];
}; };
} }

View File

@ -15,13 +15,13 @@
stdenv.mkDerivation rec { stdenv.mkDerivation rec {
pname = "lagrange"; pname = "lagrange";
version = "1.4.0"; version = "1.5.0";
src = fetchFromGitHub { src = fetchFromGitHub {
owner = "skyjake"; owner = "skyjake";
repo = "lagrange"; repo = "lagrange";
rev = "v${version}"; rev = "v${version}";
sha256 = "sha256-l8k81w+ilkOk8iQTc46+HK40JQZ0dCYVAvkGTrEpZSQ="; sha256 = "sha256-W7uSyApTKBTE7bgprgCd8T5dKQ/nLYKIzFxjDMCRmZQ=";
fetchSubmodules = true; fetchSubmodules = true;
}; };

View File

@ -0,0 +1,49 @@
{ lib
, python3
, fetchFromGitHub
, wrapGAppsHook
, gobject-introspection
, libnotify
}:
python3.pkgs.buildPythonApplication rec {
pname = "deltachat-cursed";
version = "0.2.0";
src = fetchFromGitHub {
owner = "adbenitez";
repo = "deltachat-cursed";
rev = "v${version}";
sha256 = "0kbb7lh17dbkd85mcqf438qwk5masz2fxsy8ljdh23kis55nksh8";
};
nativeBuildInputs = [
wrapGAppsHook
];
buildInputs = [
gobject-introspection
libnotify
];
propagatedBuildInputs = with python3.pkgs; [
deltachat
pygobject3
urwid-readline
];
dontWrapGApps = true;
preFixup = ''
makeWrapperArgs+=("''${gappsWrapperArgs[@]}")
'';
doCheck = false; # no tests implemented
meta = with lib; {
description = "Lightweight Delta Chat client";
homepage = "https://github.com/adbenitez/deltachat-cursed";
license = licenses.gpl3Plus;
maintainers = with maintainers; [ dotlambda ];
};
}

View File

@ -6,6 +6,7 @@
, dpkg , dpkg
, atomEnv , atomEnv
, libuuid , libuuid
, libappindicator-gtk3
, pulseaudio , pulseaudio
, at-spi2-atk , at-spi2-atk
, coreutils , coreutils
@ -34,6 +35,7 @@ stdenv.mkDerivation rec {
runtimeDependencies = [ runtimeDependencies = [
(lib.getLib systemd) (lib.getLib systemd)
pulseaudio pulseaudio
libappindicator-gtk3
]; ];
preFixup = '' preFixup = ''

View File

@ -9,7 +9,7 @@ python3Packages.buildPythonApplication rec {
sha256 = "0wpfqbqjlfb9z0hafvdhkm7qw56cr9kfy6n8vb0q42dwlghpz1ff"; sha256 = "0wpfqbqjlfb9z0hafvdhkm7qw56cr9kfy6n8vb0q42dwlghpz1ff";
}; };
nativeBuildInputs = with python3Packages; [ sphinx setuptools_scm ]; nativeBuildInputs = with python3Packages; [ sphinx setuptools-scm ];
propagatedBuildInputs = with python3Packages; [ propagatedBuildInputs = with python3Packages; [
python3Packages.setuptools python3Packages.notmuch chardet dkimpy python3Packages.setuptools python3Packages.notmuch chardet dkimpy

View File

@ -9,7 +9,7 @@ python3.pkgs.buildPythonApplication rec {
sha256 = "02zjwa7zbcbqj76l0qmg7bbf3fqli60pl2apby3j4zwzcrrryczs"; sha256 = "02zjwa7zbcbqj76l0qmg7bbf3fqli60pl2apby3j4zwzcrrryczs";
}; };
nativeBuildInputs = with python3.pkgs; [ setuptools_scm ]; nativeBuildInputs = with python3.pkgs; [ setuptools-scm ];
propagatedBuildInputs = with python3.pkgs; [ propagatedBuildInputs = with python3.pkgs; [
beautifulsoup4 beautifulsoup4

View File

@ -4,6 +4,7 @@
substituteAll, substituteAll,
fetchFromGitHub, fetchFromGitHub,
isPy3k, isPy3k,
colorama,
flask, flask,
flask-httpauth, flask-httpauth,
flask-socketio, flask-socketio,
@ -22,12 +23,12 @@
}: }:
let let
version = "2.3.1"; version = "2.3.2";
src = fetchFromGitHub { src = fetchFromGitHub {
owner = "micahflee"; owner = "micahflee";
repo = "onionshare"; repo = "onionshare";
rev = "v${version}"; rev = "v${version}";
sha256 = "sha256-H09x3OF6l1HLHukGPvV2rZUjW9fxeKKMZkKbY9a2m9I="; sha256 = "sha256-mzLDvvpO82iGDnzY42wx1KCNmAxUgVhpaDVprtb+YOI=";
}; };
meta = with lib; { meta = with lib; {
description = "Securely and anonymously send and receive files"; description = "Securely and anonymously send and receive files";
@ -69,6 +70,7 @@ in rec {
]; ];
disable = !isPy3k; disable = !isPy3k;
propagatedBuildInputs = [ propagatedBuildInputs = [
colorama
flask flask
flask-httpauth flask-httpauth
flask-socketio flask-socketio

View File

@ -1,7 +1,6 @@
--- a/onionshare/gui_common.py --- a/onionshare/gui_common.py
+++ b/onionshare/gui_common.py +++ b/onionshare/gui_common.py
@@ -376,29 +376,10 @@ class GuiCommon: @@ -391,29 +391,10 @@ class GuiCommon:
} }
def get_tor_paths(self): def get_tor_paths(self):
@ -20,7 +19,7 @@
- elif self.common.platform == "Darwin": - elif self.common.platform == "Darwin":
- base_path = self.get_resource_path("tor") - base_path = self.get_resource_path("tor")
- tor_path = os.path.join(base_path, "tor") - tor_path = os.path.join(base_path, "tor")
- obfs4proxy_file_path = os.path.join(base_path, "obfs4proxy.exe") - obfs4proxy_file_path = os.path.join(base_path, "obfs4proxy")
- tor_geo_ip_file_path = os.path.join(base_path, "geoip") - tor_geo_ip_file_path = os.path.join(base_path, "geoip")
- tor_geo_ipv6_file_path = os.path.join(base_path, "geoip6") - tor_geo_ipv6_file_path = os.path.join(base_path, "geoip6")
- elif self.common.platform == "BSD": - elif self.common.platform == "BSD":

View File

@ -1,8 +1,8 @@
--- a/onionshare_cli/common.py --- a/onionshare_cli/common.py
+++ b/onionshare_cli/common.py +++ b/onionshare_cli/common.py
@@ -86,33 +86,10 @@ class Common: @@ -308,33 +308,10 @@ class Common:
return path return path
def get_tor_paths(self): def get_tor_paths(self):
- if self.platform == "Linux": - if self.platform == "Linux":
- tor_path = shutil.which("tor") - tor_path = shutil.which("tor")
@ -35,6 +35,7 @@
+ tor_geo_ip_file_path = "@geoip@/share/tor/geoip" + tor_geo_ip_file_path = "@geoip@/share/tor/geoip"
+ tor_geo_ipv6_file_path = "@geoip@/share/tor/geoip6" + tor_geo_ipv6_file_path = "@geoip@/share/tor/geoip6"
+ obfs4proxy_file_path = "@obfs4@/bin/obfs4proxy" + obfs4proxy_file_path = "@obfs4@/bin/obfs4proxy"
return ( return (
tor_path, tor_path,

View File

@ -98,6 +98,8 @@ in stdenv.mkDerivation {
rwk /tmp/tr_session_id_*, rwk /tmp/tr_session_id_*,
r /run/systemd/resolve/stub-resolv.conf, r /run/systemd/resolve/stub-resolv.conf,
r $out/share/transmission/web/**,
include <local/bin.transmission-daemon> include <local/bin.transmission-daemon>
} }
EOF EOF

View File

@ -1,5 +1,5 @@
{ lib, stdenv, fetchFromGitHub, makeWrapper, nix-update-script { lib, stdenv, fetchFromGitHub, makeWrapper, nix-update-script
, python3, git, gnupg, less , python3, git, gnupg, less, openssh
}: }:
stdenv.mkDerivation rec { stdenv.mkDerivation rec {
@ -10,9 +10,12 @@ stdenv.mkDerivation rec {
owner = "android"; owner = "android";
repo = "tools_repo"; repo = "tools_repo";
rev = "v${version}"; rev = "v${version}";
sha256 = "sha256-3FSkWpHda1jVhy/633B+ippWcbKd83IlQcJYS9Qx5wQ="; sha256 = "sha256-SuHp6C5ueUErvRiWDQNEmCybFIa7Iu7C/FtnHys9XqU=";
}; };
# Fix 'NameError: name 'ssl' is not defined'
patches = [ ./import-ssl-module.patch ];
nativeBuildInputs = [ makeWrapper ]; nativeBuildInputs = [ makeWrapper ];
buildInputs = [ python3 ]; buildInputs = [ python3 ];
@ -34,7 +37,7 @@ stdenv.mkDerivation rec {
# Important runtime dependencies # Important runtime dependencies
postFixup = '' postFixup = ''
wrapProgram $out/bin/repo --prefix PATH ":" \ wrapProgram $out/bin/repo --prefix PATH ":" \
"${lib.makeBinPath [ git gnupg less ]}" "${lib.makeBinPath [ git gnupg less openssh ]}"
''; '';
passthru = { passthru = {

View File

@ -0,0 +1,28 @@
Fix runtime error due missing import
Traceback (most recent call last):
File "/nix/store/4qqhr7g9ri3n7v6ik9ahlpvyp18wcn4p-git-repo-2.15.3/bin/.repo-wrapped", line 1339, in <module>
main(sys.argv[1:])
File "/nix/store/4qqhr7g9ri3n7v6ik9ahlpvyp18wcn4p-git-repo-2.15.3/bin/.repo-wrapped", line 1304, in main
_Init(args, gitc_init=(cmd == 'gitc-init'))
File "/nix/store/4qqhr7g9ri3n7v6ik9ahlpvyp18wcn4p-git-repo-2.15.3/bin/.repo-wrapped", line 607, in _Init
_Clone(url, dst, opt.clone_bundle, opt.quiet, opt.verbose)
File "/nix/store/4qqhr7g9ri3n7v6ik9ahlpvyp18wcn4p-git-repo-2.15.3/bin/.repo-wrapped", line 912, in _Clone
if clone_bundle and _DownloadBundle(url, cwd, quiet, verbose):
File "/nix/store/4qqhr7g9ri3n7v6ik9ahlpvyp18wcn4p-git-repo-2.15.3/bin/.repo-wrapped", line 860, in _DownloadBundle
r = urllib.request.urlopen(url, context=ssl.create_default_context())
NameError: name 'ssl' is not defined
builder for '/nix/store/4hvds8fv8xmzlm86yg9cf1lj6hrya7sg-amdvlk-src.drv' failed with exit code 1
diff --git a/repo b/repo
index 8b05def..f394b3e 100755
--- a/repo
+++ b/repo
@@ -236,6 +236,7 @@ import optparse
import re
import shutil
import stat
+import ssl
if sys.version_info[0] == 3:
import urllib.request

View File

@ -2,11 +2,11 @@
stdenv.mkDerivation rec { stdenv.mkDerivation rec {
pname = "freetube"; pname = "freetube";
version = "0.13.0"; version = "0.13.1";
src = fetchurl { src = fetchurl {
url = "https://github.com/FreeTubeApp/FreeTube/releases/download/v${version}-beta/freetube_${version}_amd64.AppImage"; url = "https://github.com/FreeTubeApp/FreeTube/releases/download/v${version}-beta/freetube_${version}_amd64.AppImage";
sha256 = "sha256-CutTSpwb0G7FZgeKf/lvWHlhOn+X5AWLvPk0cpFQ1lk="; sha256 = "sha256-DN78ASe29h7o6emCtN861arGqWKAWjjWKtsHs8jjROI=";
}; };
appimageContents = appimageTools.extractType2 { appimageContents = appimageTools.extractType2 {

View File

@ -43,13 +43,13 @@ let
in mkDerivation rec { in mkDerivation rec {
pname = "obs-studio"; pname = "obs-studio";
version = "26.1.2"; version = "27.0.0";
src = fetchFromGitHub { src = fetchFromGitHub {
owner = "obsproject"; owner = "obsproject";
repo = "obs-studio"; repo = "obs-studio";
rev = version; rev = version;
sha256 = "1plr5a7k5scxlibhbknhhk19ipk8las14dzs7v64zx7rhpj00009"; sha256 = "1n71705b9lbdff3svkmgwmbhlhhxvi8ajxqb74lm07v56a5bvi6p";
fetchSubmodules = true; fetchSubmodules = true;
}; };

View File

@ -4,14 +4,14 @@
}: }:
stdenv.mkDerivation rec { stdenv.mkDerivation rec {
version = "2.13.c.2"; version = "2.13.c.3";
pname = "i3lock-color"; pname = "i3lock-color";
src = fetchFromGitHub { src = fetchFromGitHub {
owner = "PandorasFox"; owner = "PandorasFox";
repo = "i3lock-color"; repo = "i3lock-color";
rev = version; rev = version;
sha256 = "sha256-cMj1uB2Hf7v5Rukw9c5YeUmwbdTn1+PV13bUaOWzBp0="; sha256 = "0spldmis8fvnclwwi9xvnq2rq3hmpbiv3ck5p9pjf40ismvsi16k";
}; };
nativeBuildInputs = [ autoreconfHook pkg-config ]; nativeBuildInputs = [ autoreconfHook pkg-config ];

View File

@ -38,7 +38,7 @@ python37Packages.buildPythonApplication rec {
xcffib xcffib
cairocffi-xcffib cairocffi-xcffib
setuptools setuptools
setuptools_scm setuptools-scm
dateutil dateutil
dbus-python dbus-python
mpd2 mpd2

View File

@ -3,7 +3,7 @@
, defcon, fontmath, fontparts, fontpens, fonttools, lxml , defcon, fontmath, fontparts, fontpens, fonttools, lxml
, mutatormath, pathspec, psautohint, pyclipper, pytz, regex, scour , mutatormath, pathspec, psautohint, pyclipper, pytz, regex, scour
, toml, typed-ast, ufonormalizer, ufoprocessor, unicodedata2, zopfli , toml, typed-ast, ufonormalizer, ufoprocessor, unicodedata2, zopfli
, pillow, six, bash, setuptools_scm }: , pillow, six, bash, setuptools-scm }:
buildPythonPackage rec { buildPythonPackage rec {
pname = "nototools"; pname = "nototools";
@ -22,7 +22,7 @@ buildPythonPackage rec {
sed -i 's/use_scm_version=.*,/version="${version}",/' setup.py sed -i 's/use_scm_version=.*,/version="${version}",/' setup.py
''; '';
nativeBuildInputs = [ setuptools_scm ]; nativeBuildInputs = [ setuptools-scm ];
propagatedBuildInputs = [ propagatedBuildInputs = [
afdko afdko

View File

@ -2,13 +2,13 @@
stdenv.mkDerivation rec { stdenv.mkDerivation rec {
pname = "matcha-gtk-theme"; pname = "matcha-gtk-theme";
version = "2021-05-20"; version = "2021-06-02";
src = fetchFromGitHub { src = fetchFromGitHub {
owner = "vinceliuice"; owner = "vinceliuice";
repo = pname; repo = pname;
rev = version; rev = version;
sha256 = "0jx55dn9j0395ws7507mj8px4yq4jlmms6xr9jlhp0qxnr4y1smd"; sha256 = "0wx0dgfl71wx02nrmf794xn28cvjx81vcmbnzwyyzwcbb9pacdpp";
}; };
buildInputs = [ gdk-pixbuf librsvg ]; buildInputs = [ gdk-pixbuf librsvg ];

View File

@ -1,19 +1,21 @@
{ stdenv, writeText, erlang, perl, which, gitMinimal, wget, lib }: { stdenv, writeText, erlang, perl, which, gitMinimal, wget, lib }:
{ name, version { name
, version
, src , src
, setupHook ? null , setupHook ? null
, buildInputs ? [] , buildInputs ? [ ]
, beamDeps ? [] , beamDeps ? [ ]
, postPatch ? "" , postPatch ? ""
, compilePorts ? false , compilePorts ? false
, installPhase ? null , installPhase ? null
, buildPhase ? null , buildPhase ? null
, configurePhase ? null , configurePhase ? null
, meta ? {} , meta ? { }
, enableDebugInfo ? false , enableDebugInfo ? false
, buildFlags ? [] , buildFlags ? [ ]
, ... }@attrs: , ...
}@attrs:
with lib; with lib;
@ -21,11 +23,11 @@ let
debugInfoFlag = lib.optionalString (enableDebugInfo || erlang.debugInfo) "+debug_info"; debugInfoFlag = lib.optionalString (enableDebugInfo || erlang.debugInfo) "+debug_info";
shell = drv: stdenv.mkDerivation { shell = drv: stdenv.mkDerivation {
name = "interactive-shell-${drv.name}"; name = "interactive-shell-${drv.name}";
buildInputs = [ drv ]; buildInputs = [ drv ];
}; };
pkg = self: stdenv.mkDerivation ( attrs // { pkg = self: stdenv.mkDerivation (attrs // {
app_name = name; app_name = name;
name = "${name}-${version}"; name = "${name}-${version}";
inherit version; inherit version;
@ -34,11 +36,13 @@ let
inherit src; inherit src;
setupHook = if setupHook == null setupHook =
then writeText "setupHook.sh" '' if setupHook == null
addToSearchPath ERL_LIBS "$1/lib/erlang/lib" then
'' writeText "setupHook.sh" ''
else setupHook; addToSearchPath ERL_LIBS "$1/lib/erlang/lib"
''
else setupHook;
buildInputs = buildInputs ++ [ erlang perl which gitMinimal wget ]; buildInputs = buildInputs ++ [ erlang perl which gitMinimal wget ];
propagatedBuildInputs = beamDeps; propagatedBuildInputs = beamDeps;
@ -47,30 +51,33 @@ let
++ lib.optional (enableDebugInfo || erlang.debugInfo) ''ERL_OPTS="$ERL_OPTS +debug_info"'' ++ lib.optional (enableDebugInfo || erlang.debugInfo) ''ERL_OPTS="$ERL_OPTS +debug_info"''
++ buildFlags; ++ buildFlags;
configurePhase = if configurePhase == null configurePhase =
then '' if configurePhase == null
runHook preConfigure then ''
runHook preConfigure
# We shouldnt need to do this, but it seems at times there is a *.app in # We shouldnt need to do this, but it seems at times there is a *.app in
# the repo/package. This ensures we start from a clean slate # the repo/package. This ensures we start from a clean slate
make SKIP_DEPS=1 clean make SKIP_DEPS=1 clean
runHook postConfigure runHook postConfigure
'' ''
else configurePhase; else configurePhase;
buildPhase = if buildPhase == null buildPhase =
then '' if buildPhase == null
then ''
runHook preBuild runHook preBuild
make $buildFlags "''${buildFlagsArray[@]}" make $buildFlags "''${buildFlagsArray[@]}"
runHook postBuild runHook postBuild
'' ''
else buildPhase; else buildPhase;
installPhase = if installPhase == null installPhase =
then '' if installPhase == null
then ''
runHook preInstall runHook preInstall
mkdir -p $out/lib/erlang/lib/${name} mkdir -p $out/lib/erlang/lib/${name}
@ -90,13 +97,14 @@ let
fi fi
runHook postInstall runHook postInstall
'' ''
else installPhase; else installPhase;
passthru = { passthru = {
packageName = name; packageName = name;
env = shell self; env = shell self;
inherit beamDeps; inherit beamDeps;
}; };
}); });
in fix pkg in
fix pkg

View File

@ -35,9 +35,7 @@ let
# add to ERL_LIBS so other modules can find at runtime. # add to ERL_LIBS so other modules can find at runtime.
# http://erlang.org/doc/man/code.html#code-path # http://erlang.org/doc/man/code.html#code-path
# Mix also searches the code path when compiling with the --no-deps-check # Mix also searches the code path when compiling with the --no-deps-check flag
# flag, which is why there is no complicated booterstrapper like the one
# used by buildRebar3.
setupHook = attrs.setupHook or setupHook = attrs.setupHook or
writeText "setupHook.sh" '' writeText "setupHook.sh" ''
addToSearchPath ERL_LIBS "$1/lib/erlang/lib" addToSearchPath ERL_LIBS "$1/lib/erlang/lib"

View File

@ -1,16 +1,20 @@
{ stdenv, writeText, erlang, rebar3WithPlugins, openssl, libyaml, lib }: { stdenv, writeText, erlang, rebar3WithPlugins, openssl, libyaml, lib }:
{ name, version { name
, version
, src , src
, setupHook ? null , setupHook ? null
, buildInputs ? [], beamDeps ? [], buildPlugins ? [] , buildInputs ? [ ]
, beamDeps ? [ ]
, buildPlugins ? [ ]
, postPatch ? "" , postPatch ? ""
, installPhase ? null , installPhase ? null
, buildPhase ? null , buildPhase ? null
, configurePhase ? null , configurePhase ? null
, meta ? {} , meta ? { }
, enableDebugInfo ? false , enableDebugInfo ? false
, ... }@attrs: , ...
}@attrs:
with lib; with lib;
@ -22,9 +26,9 @@ let
}; };
shell = drv: stdenv.mkDerivation { shell = drv: stdenv.mkDerivation {
name = "interactive-shell-${drv.name}"; name = "interactive-shell-${drv.name}";
buildInputs = [ drv ]; buildInputs = [ drv ];
}; };
customPhases = filterAttrs customPhases = filterAttrs
(_: v: v != null) (_: v: v != null)
@ -42,7 +46,7 @@ let
inherit src; inherit src;
setupHook = writeText "setupHook.sh" '' setupHook = writeText "setupHook.sh" ''
addToSearchPath ERL_LIBS "$1/lib/erlang/lib/" addToSearchPath ERL_LIBS "$1/lib/erlang/lib/"
''; '';
postPatch = '' postPatch = ''
@ -77,4 +81,4 @@ let
}; };
} // customPhases); } // customPhases);
in in
fix pkg fix pkg

View File

@ -61,5 +61,6 @@ in stdenv.mkDerivation rec {
license = licenses.bsd3; license = licenses.bsd3;
maintainers = with maintainers; [ justinwoo mbbx6spp cdepillabout ]; maintainers = with maintainers; [ justinwoo mbbx6spp cdepillabout ];
platforms = [ "x86_64-linux" "x86_64-darwin" ]; platforms = [ "x86_64-linux" "x86_64-darwin" ];
mainProgram = "purs";
}; };
} }

View File

@ -1,20 +1,26 @@
{ fetchFromGitHub, zlib, lib, stdenv }: { lib, stdenv, fetchFromGitHub, zlib }:
let let
libs-src = fetchFromGitHub { libs-src = fetchFromGitHub {
owner = "megatokio"; owner = "megatokio";
repo = "Libraries"; repo = "Libraries";
rev = "97ea480051b106e83a086dd42583dfd3e9d458a1"; # 2021-02-02
sha256 = "1kqmjb9660mnb0r18s1grrrisx6b73ijsinlyr97vz6992jd5dzh"; rev = "c5cb3ed512c677db6f33e2d3539dfbb6e547030b";
sha256 = "sha256-GiplhZf640uScVdKL6E/fegOgtC9SE1xgBqcX86XADk=";
}; };
in in
stdenv.mkDerivation { stdenv.mkDerivation rec {
pname = "zasm"; pname = "zasm";
version = "4.2.6"; version = "4.4.7";
src = fetchFromGitHub { src = fetchFromGitHub {
owner = "megatokio"; owner = "megatokio";
repo = "zasm"; repo = "zasm";
rev = "f1424add17a5514895a598d6b5e3982579961519"; rev = version;
sha256 = "1kqnqdqp2bfsazs6vfx2aiqanxxagn8plx8g6rc11vmr8yqnnpks"; sha256 = "sha256-Zbno8kmzss1H2FjwzHB4U7UXxa6oDfsPV80MVVFfM68=";
extraPostFetch = ''
# remove folder containing files with weird names (causes the hash to turn out differently under macOS vs. Linux)
rm -rv $out/Test
'';
}; };
buildInputs = [ zlib ]; buildInputs = [ zlib ];
@ -23,22 +29,23 @@ stdenv.mkDerivation {
ln -sf ${libs-src} Libraries ln -sf ${libs-src} Libraries
''; '';
buildPhase = '' makeFlags = [
cd Linux "CC=${stdenv.cc.targetPrefix}cc"
make "CXX=${stdenv.cc.targetPrefix}c++"
''; "LINK=${stdenv.cc.targetPrefix}c++"
"STRIP=${stdenv.cc.targetPrefix}strip"
];
installPhase = '' installPhase = ''
mkdir -p $out/bin install -Dm755 -t $out/bin zasm
mv zasm $out/bin
''; '';
meta = with lib; { meta = with lib; {
description = "Z80 / 8080 assembler (for unix-style OS)"; description = "Z80 / 8080 / Z180 assembler (for unix-style OS)";
homepage = "https://k1.spdns.de/Develop/Projects/zasm/Distributions/"; homepage = "https://k1.spdns.de/Develop/Projects/zasm/Distributions/";
license = licenses.bsd2; license = licenses.bsd2;
maintainers = [ maintainers.turbomack ]; maintainers = [ maintainers.turbomack ];
platforms = platforms.linux; platforms = platforms.unix;
badPlatforms = platforms.aarch64; badPlatforms = platforms.aarch64;
}; };
} }

View File

@ -1,12 +1,32 @@
{ pkgs, lib, stdenv, fetchFromGitHub, makeWrapper, gawk, gnum4, gnused { pkgs
, libxml2, libxslt, ncurses, openssl, perl, autoconf , lib
, stdenv
, fetchFromGitHub
, makeWrapper
, gawk
, gnum4
, gnused
, libxml2
, libxslt
, ncurses
, openssl
, perl
, autoconf
, openjdk11 ? null # javacSupport , openjdk11 ? null # javacSupport
, unixODBC ? null # odbcSupport , unixODBC ? null # odbcSupport
, libGL ? null, libGLU ? null, wxGTK ? null, wxmac ? null, xorg ? null , libGL ? null
, libGLU ? null
, wxGTK ? null
, wxmac ? null
, xorg ? null
, parallelBuild ? false , parallelBuild ? false
, systemd, wxSupport ? true , systemd
# updateScript deps , wxSupport ? true
, writeScript, common-updater-scripts, coreutils, git # updateScript deps
, writeScript
, common-updater-scripts
, coreutils
, git
}: }:
{ baseName ? "erlang" { baseName ? "erlang"
, version , version
@ -18,25 +38,42 @@
, enableThreads ? true , enableThreads ? true
, enableSmpSupport ? true , enableSmpSupport ? true
, enableKernelPoll ? true , enableKernelPoll ? true
, javacSupport ? false, javacPackages ? [ openjdk11 ] , javacSupport ? false
, odbcSupport ? false, odbcPackages ? [ unixODBC ] , javacPackages ? [ openjdk11 ]
, odbcSupport ? false
, odbcPackages ? [ unixODBC ]
, withSystemd ? stdenv.isLinux # systemd support in epmd , withSystemd ? stdenv.isLinux # systemd support in epmd
, opensslPackage ? openssl , opensslPackage ? openssl
, wxPackages ? [ libGL libGLU wxGTK xorg.libX11 ] , wxPackages ? [ libGL libGLU wxGTK xorg.libX11 ]
, preUnpack ? "", postUnpack ? "" , preUnpack ? ""
, patches ? [], patchPhase ? "", prePatch ? "", postPatch ? "" , postUnpack ? ""
, configureFlags ? [], configurePhase ? "", preConfigure ? "", postConfigure ? "" , patches ? [ ]
, buildPhase ? "", preBuild ? "", postBuild ? "" , patchPhase ? ""
, installPhase ? "", preInstall ? "", postInstall ? "" , prePatch ? ""
, postPatch ? ""
, configureFlags ? [ ]
, configurePhase ? ""
, preConfigure ? ""
, postConfigure ? ""
, buildPhase ? ""
, preBuild ? ""
, postBuild ? ""
, installPhase ? ""
, preInstall ? ""
, postInstall ? ""
, installTargets ? [ "install" "install-docs" ] , installTargets ? [ "install" "install-docs" ]
, checkPhase ? "", preCheck ? "", postCheck ? "" , checkPhase ? ""
, fixupPhase ? "", preFixup ? "", postFixup ? "" , preCheck ? ""
, meta ? {} , postCheck ? ""
, fixupPhase ? ""
, preFixup ? ""
, postFixup ? ""
, meta ? { }
}: }:
assert wxSupport -> (if stdenv.isDarwin assert wxSupport -> (if stdenv.isDarwin
then wxmac != null then wxmac != null
else libGL != null && libGLU != null && wxGTK != null && xorg != null); else libGL != null && libGLU != null && wxGTK != null && xorg != null);
assert odbcSupport -> unixODBC != null; assert odbcSupport -> unixODBC != null;
assert javacSupport -> openjdk11 != null; assert javacSupport -> openjdk11 != null;
@ -45,7 +82,8 @@ let
inherit (lib) optional optionals optionalAttrs optionalString; inherit (lib) optional optionals optionalAttrs optionalString;
wxPackages2 = if stdenv.isDarwin then [ wxmac ] else wxPackages; wxPackages2 = if stdenv.isDarwin then [ wxmac ] else wxPackages;
in stdenv.mkDerivation ({ in
stdenv.mkDerivation ({
name = "${baseName}-${version}" name = "${baseName}-${version}"
+ optionalString javacSupport "-javac" + optionalString javacSupport "-javac"
+ optionalString odbcSupport "-odbc"; + optionalString odbcSupport "-odbc";
@ -109,19 +147,20 @@ in stdenv.mkDerivation ({
passthru = { passthru = {
updateScript = updateScript =
let major = builtins.head (builtins.splitVersion version); let major = builtins.head (builtins.splitVersion version);
in writeScript "update.sh" '' in
#!${stdenv.shell} writeScript "update.sh" ''
set -ox errexit #!${stdenv.shell}
PATH=${lib.makeBinPath [ common-updater-scripts coreutils git gnused ]} set -ox errexit
latest=$(list-git-tags https://github.com/erlang/otp.git | sed -n 's/^OTP-${major}/${major}/p' | sort -V | tail -1) PATH=${lib.makeBinPath [ common-updater-scripts coreutils git gnused ]}
if [ "$latest" != "${version}" ]; then latest=$(list-git-tags https://github.com/erlang/otp.git | sed -n 's/^OTP-${major}/${major}/p' | sort -V | tail -1)
nixpkgs="$(git rev-parse --show-toplevel)" if [ "$latest" != "${version}" ]; then
nix_file="$nixpkgs/pkgs/development/interpreters/erlang/R${major}.nix" nixpkgs="$(git rev-parse --show-toplevel)"
update-source-version ${baseName}R${major} "$latest" --version-key=version --print-changes --file="$nix_file" nix_file="$nixpkgs/pkgs/development/interpreters/erlang/R${major}.nix"
else update-source-version ${baseName}R${major} "$latest" --version-key=version --print-changes --file="$nix_file"
echo "${baseName}R${major} is already up-to-date" else
fi echo "${baseName}R${major} is already up-to-date"
''; fi
'';
}; };
meta = with lib; ({ meta = with lib; ({
@ -143,24 +182,24 @@ in stdenv.mkDerivation ({
license = licenses.asl20; license = licenses.asl20;
} // meta); } // meta);
} }
// optionalAttrs (preUnpack != "") { inherit preUnpack; } // optionalAttrs (preUnpack != "") { inherit preUnpack; }
// optionalAttrs (postUnpack != "") { inherit postUnpack; } // optionalAttrs (postUnpack != "") { inherit postUnpack; }
// optionalAttrs (patches != []) { inherit patches; } // optionalAttrs (patches != [ ]) { inherit patches; }
// optionalAttrs (prePatch != "") { inherit prePatch; } // optionalAttrs (prePatch != "") { inherit prePatch; }
// optionalAttrs (patchPhase != "") { inherit patchPhase; } // optionalAttrs (patchPhase != "") { inherit patchPhase; }
// optionalAttrs (configurePhase != "") { inherit configurePhase; } // optionalAttrs (configurePhase != "") { inherit configurePhase; }
// optionalAttrs (preConfigure != "") { inherit preConfigure; } // optionalAttrs (preConfigure != "") { inherit preConfigure; }
// optionalAttrs (postConfigure != "") { inherit postConfigure; } // optionalAttrs (postConfigure != "") { inherit postConfigure; }
// optionalAttrs (buildPhase != "") { inherit buildPhase; } // optionalAttrs (buildPhase != "") { inherit buildPhase; }
// optionalAttrs (preBuild != "") { inherit preBuild; } // optionalAttrs (preBuild != "") { inherit preBuild; }
// optionalAttrs (postBuild != "") { inherit postBuild; } // optionalAttrs (postBuild != "") { inherit postBuild; }
// optionalAttrs (checkPhase != "") { inherit checkPhase; } // optionalAttrs (checkPhase != "") { inherit checkPhase; }
// optionalAttrs (preCheck != "") { inherit preCheck; } // optionalAttrs (preCheck != "") { inherit preCheck; }
// optionalAttrs (postCheck != "") { inherit postCheck; } // optionalAttrs (postCheck != "") { inherit postCheck; }
// optionalAttrs (installPhase != "") { inherit installPhase; } // optionalAttrs (installPhase != "") { inherit installPhase; }
// optionalAttrs (installTargets != []) { inherit installTargets; } // optionalAttrs (installTargets != [ ]) { inherit installTargets; }
// optionalAttrs (preInstall != "") { inherit preInstall; } // optionalAttrs (preInstall != "") { inherit preInstall; }
// optionalAttrs (fixupPhase != "") { inherit fixupPhase; } // optionalAttrs (fixupPhase != "") { inherit fixupPhase; }
// optionalAttrs (preFixup != "") { inherit preFixup; } // optionalAttrs (preFixup != "") { inherit preFixup; }
// optionalAttrs (postFixup != "") { inherit postFixup; } // optionalAttrs (postFixup != "") { inherit postFixup; }
) )

View File

@ -1,4 +1,5 @@
{ config, lib, stdenv, fetchurl, pkgs, buildPackages, callPackage { config, lib, stdenv, fetchurl, fetchFromGitHub, pkgs, buildPackages
, callPackage
, enableThreading ? true, coreutils, makeWrapper , enableThreading ? true, coreutils, makeWrapper
}: }:
@ -171,18 +172,22 @@ let
priority = 6; # in `buildEnv' (including the one inside `perl.withPackages') the library files will have priority over files in `perl` priority = 6; # in `buildEnv' (including the one inside `perl.withPackages') the library files will have priority over files in `perl`
}; };
} // optionalAttrs (stdenv.buildPlatform != stdenv.hostPlatform) rec { } // optionalAttrs (stdenv.buildPlatform != stdenv.hostPlatform) rec {
crossVersion = "e53999d0c340769792ba18d749751b0df3d1d177"; # Mar 21, 2021 crossVersion = "1.3.6";
perl-cross-src = fetchurl { perl-cross-src = fetchFromGitHub {
url = "https://github.com/arsv/perl-cross/archive/${crossVersion}.tar.gz"; name = "perl-cross-${crossVersion}";
sha256 = "14vcpwjhq667yh0cs7ism70df8l7068vn4a0ww59hdjyj7yc84i6"; owner = "arsv";
repo = "perl-cross";
rev = crossVersion;
sha256 = "0k5vyj40czbkfl7r3dcwxpc7dvdlp2xliaav358bviq3dq9vq9bb";
}; };
depsBuildBuild = [ buildPackages.stdenv.cc makeWrapper ]; depsBuildBuild = [ buildPackages.stdenv.cc makeWrapper ];
postUnpack = '' postUnpack = ''
unpackFile ${perl-cross-src} unpackFile ${perl-cross-src}
cp -R perl-cross-${crossVersion}/* perl-${version}/ chmod -R u+w ${perl-cross-src.name}
cp -R ${perl-cross-src.name}/* perl-${version}/
''; '';
configurePlatforms = [ "build" "host" "target" ]; configurePlatforms = [ "build" "host" "target" ];
@ -211,7 +216,7 @@ in {
perldevel = common { perldevel = common {
perl = pkgs.perldevel; perl = pkgs.perldevel;
buildPerl = buildPackages.perldevel; buildPerl = buildPackages.perldevel;
version = "5.33.8"; version = "5.35.0";
sha256 = "1zr6sdsfcmk86n3f8j65x07xkv29v0pi8bwc986ahmjx7x92xzgl"; sha256 = "0217nbswhkjhw60kng2p64611xna7za681kk30fkriyicd3yph6n";
}; };
} }

View File

@ -3,11 +3,11 @@
stdenv.mkDerivation rec { stdenv.mkDerivation rec {
pname = "lasso"; pname = "lasso";
version = "2.6.1"; version = "2.7.0";
src = fetchurl { src = fetchurl {
url = "https://dev.entrouvert.org/lasso/lasso-${version}.tar.gz"; url = "https://dev.entrouvert.org/lasso/lasso-${version}.tar.gz";
sha256 = "1pniisy4z9cshf6lvlz28kfa3qnwnhldb2rvkjxzc0l84g7dpa7q"; sha256 = "138x8pmj4k1pbah32z14rd8ylyx4lgz70s93m39vd17f8sjz50lj";
}; };

View File

@ -19,7 +19,7 @@ stdenv.mkDerivation rec {
patches = [ patches = [
(fetchpatch { (fetchpatch {
# https://github.com/raspberrypi/userland/pull/670 # https://github.com/raspberrypi/userland/pull/670
url = "https://github.com/raspberrypi/userland/pull/670/commits/37cb44f314ab1209fe2a0a2449ef78893b1e5f62.patch"; url = "https://github.com/raspberrypi/userland/commit/37cb44f314ab1209fe2a0a2449ef78893b1e5f62.patch";
sha256 = "1fbrbkpc4cc010ji8z4ll63g17n6jl67kdy62m74bhlxn72gg9rw"; sha256 = "1fbrbkpc4cc010ji8z4ll63g17n6jl67kdy62m74bhlxn72gg9rw";
}) })
]; ];

View File

@ -2,19 +2,17 @@
, fetchurl , fetchurl
}: }:
stdenv.mkDerivation { stdenv.mkDerivation rec {
version = "5.6.0"; version = "6.0.0.1";
pname = "papi"; pname = "papi";
src = fetchurl { src = fetchurl {
url = "https://bitbucket.org/icl/papi/get/papi-5-6-0-t.tar.gz"; url = "https://bitbucket.org/icl/papi/get/papi-${lib.replaceStrings ["."] ["-"] version}-t.tar.gz";
sha256 = "13mngf9kl0y2wfxqvkad0smdaag7k8fvw82b4312gx62nwhc1i6r"; sha256 = "1jd67yadyffzxwsqlylsi0bx8ishb0cgj2ziz1wdslaz6ylvyf9j";
}; };
NIX_CFLAGS_COMPILE = "-Wno-error=format-truncation"; setSourceRoot = ''
sourceRoot=$(echo */src)
preConfigure = ''
cd src
''; '';
doCheck = true; doCheck = true;
@ -22,9 +20,9 @@ stdenv.mkDerivation {
meta = with lib; { meta = with lib; {
homepage = "https://icl.utk.edu/papi/"; homepage = "https://icl.utk.edu/papi/";
description = "PAPI provides the tool designer and application engineer with a consistent interface and methodology for use of the performance counter hardware found in most major microprocessors"; description = "Library providing access to various hardware performance counters";
license = licenses.bsdOriginal; license = licenses.bsdOriginal;
platforms = platforms.linux; platforms = platforms.linux;
maintainers = [ maintainers.costrouc ]; maintainers = with maintainers; [ costrouc zhaofengli ];
}; };
} }

View File

@ -331,5 +331,16 @@ let
--prefix NODE_PATH : ${self.prettier}/lib/node_modules --prefix NODE_PATH : ${self.prettier}/lib/node_modules
''; '';
}; };
wavedrom-cli = super.wavedrom-cli.override {
nativeBuildInputs = [ pkgs.pkg-config self.node-pre-gyp ];
# These dependencies are required by
# https://github.com/Automattic/node-canvas.
buildInputs = with pkgs; [
pixman
cairo
pango
];
};
}; };
in self in self

View File

@ -261,6 +261,7 @@
, { "vscode-lldb-build-deps": "../../misc/vscode-extensions/vscode-lldb/build-deps" } , { "vscode-lldb-build-deps": "../../misc/vscode-extensions/vscode-lldb/build-deps" }
, "vue-cli" , "vue-cli"
, "vue-language-server" , "vue-language-server"
, "wavedrom-cli"
, "web-ext" , "web-ext"
, "webpack" , "webpack"
, "webpack-cli" , "webpack-cli"

File diff suppressed because it is too large Load Diff

View File

@ -1,4 +1,4 @@
{ lib, buildPythonPackage, fetchPypi, dnspython, pycountry, nose, setuptools_scm, six, isPy27 }: { lib, buildPythonPackage, fetchPypi, dnspython, pycountry, nose, setuptools-scm, six, isPy27 }:
buildPythonPackage rec { buildPythonPackage rec {
pname = "FormEncode"; pname = "FormEncode";
@ -16,7 +16,7 @@ buildPythonPackage rec {
sed -i 's/use_scm_version=.*,/version="${version}",/' setup.py sed -i 's/use_scm_version=.*,/version="${version}",/' setup.py
''; '';
nativeBuildInputs = [ setuptools_scm ]; nativeBuildInputs = [ setuptools-scm ];
propagatedBuildInputs = [ six ]; propagatedBuildInputs = [ six ];
checkInputs = [ dnspython pycountry nose ]; checkInputs = [ dnspython pycountry nose ];

View File

@ -1,4 +1,4 @@
{ lib, buildPythonPackage, fetchPypi, setuptools_scm, fusepy, fuse { lib, buildPythonPackage, fetchPypi, setuptools-scm, fusepy, fuse
, openssl }: , openssl }:
buildPythonPackage rec { buildPythonPackage rec {
@ -17,7 +17,7 @@ buildPythonPackage rec {
substituteInPlace tests/monkey.py --replace /etc/ssl/openssl.cnf ${openssl.out}/etc/ssl/openssl.cnf substituteInPlace tests/monkey.py --replace /etc/ssl/openssl.cnf ${openssl.out}/etc/ssl/openssl.cnf
''; '';
buildInputs = [ setuptools_scm ]; buildInputs = [ setuptools-scm ];
checkInputs = [ fusepy fuse ]; checkInputs = [ fusepy fuse ];
doCheck = false; # seems to hang, not sure doCheck = false; # seems to hang, not sure

View File

@ -2,7 +2,7 @@
, fonttools, defcon, lxml, fs, unicodedata2, zopfli, brotlipy, fontpens , fonttools, defcon, lxml, fs, unicodedata2, zopfli, brotlipy, fontpens
, brotli, fontmath, mutatormath, booleanoperations , brotli, fontmath, mutatormath, booleanoperations
, ufoprocessor, ufonormalizer, psautohint, tqdm , ufoprocessor, ufonormalizer, psautohint, tqdm
, setuptools_scm , setuptools-scm
, pytestCheckHook , pytestCheckHook
}: }:
@ -32,7 +32,7 @@ buildPythonPackage rec {
}) })
]; ];
nativeBuildInputs = [ setuptools_scm ]; nativeBuildInputs = [ setuptools-scm ];
propagatedBuildInputs = [ propagatedBuildInputs = [
booleanoperations booleanoperations

View File

@ -7,14 +7,14 @@
buildPythonPackage rec { buildPythonPackage rec {
pname = "ailment"; pname = "ailment";
version = "9.0.7491"; version = "9.0.7833";
disabled = pythonOlder "3.6"; disabled = pythonOlder "3.6";
src = fetchFromGitHub { src = fetchFromGitHub {
owner = "angr"; owner = "angr";
repo = pname; repo = pname;
rev = "v${version}"; rev = "v${version}";
sha256 = "sha256-rxrj+5cz6zNsc+zgrOp8+/XY/RZG93PJQU59mMy5lDA="; sha256 = "sha256-GUy1wETKV9Y9RYwJZqV22a0GrWkVRJRuFv/ADzPCzPg=";
}; };
propagatedBuildInputs = [ pyvex ]; propagatedBuildInputs = [ pyvex ];

View File

@ -1,28 +1,28 @@
{ lib { lib
, aiohttp , aiohttp
, async-timeout , async-timeout
, backports-zoneinfo
, buildPythonPackage , buildPythonPackage
, fetchFromGitHub , fetchFromGitHub
, fetchpatch
, poetry-core , poetry-core
, pytest-asyncio , pytest-asyncio
, pytest-timeout , pytest-timeout
, pytestCheckHook , pytestCheckHook
, pythonOlder , pythonOlder
, pytz , tzdata
}: }:
buildPythonPackage rec { buildPythonPackage rec {
pname = "aiopvpc"; pname = "aiopvpc";
version = "2.0.2"; version = "2.1.2";
disabled = pythonOlder "3.7"; disabled = pythonOlder "3.8";
format = "pyproject"; format = "pyproject";
src = fetchFromGitHub { src = fetchFromGitHub {
owner = "azogue"; owner = "azogue";
repo = pname; repo = pname;
rev = "v${version}"; rev = "v${version}";
sha256 = "1ajs4kbdlfn4h7f3d6lwkp4yl1rl7zyvj997nhsz93jjwxbajkpv"; sha256 = "0s8ki46dh39kw6qvsjcfcxa0gblyi33m3hry137kbi4lw5ws6qhr";
}; };
nativeBuildInputs = [ nativeBuildInputs = [
@ -31,7 +31,8 @@ buildPythonPackage rec {
propagatedBuildInputs = [ propagatedBuildInputs = [
aiohttp aiohttp
pytz backports-zoneinfo
tzdata
async-timeout async-timeout
]; ];
@ -41,17 +42,8 @@ buildPythonPackage rec {
pytestCheckHook pytestCheckHook
]; ];
patches = [
# Switch to poetry-core, https://github.com/azogue/aiopvpc/pull/10
(fetchpatch {
name = "use-peotry-core.patch";
url = "https://github.com/azogue/aiopvpc/commit/4bc2740ffd485a60acf579b4f3eb5ee6a353245c.patch";
sha256 = "0ynj7pqq3akdvdrvqcwnnslay3mn1q92qhk8fg95ppflzscixli6";
})
];
postPatch = '' postPatch = ''
substituteInPlace pytest.ini --replace \ substituteInPlace pyproject.toml --replace \
" --cov --cov-report term --cov-report html" "" " --cov --cov-report term --cov-report html" ""
''; '';

View File

@ -1,7 +1,7 @@
{ lib { lib
, fetchPypi , fetchPypi
, buildPythonPackage , buildPythonPackage
, setuptools_scm , setuptools-scm
, docutils , docutils
, pyparsing , pyparsing
, pytestCheckHook , pytestCheckHook
@ -16,7 +16,7 @@ buildPythonPackage rec {
sha256 = "cb12dcb49d16b168c02be128a1527ecde50211e4bd94af76ff4e67707f5a2d38"; sha256 = "cb12dcb49d16b168c02be128a1527ecde50211e4bd94af76ff4e67707f5a2d38";
}; };
nativeBuildInputs = [ setuptools_scm ]; nativeBuildInputs = [ setuptools-scm ];
propagatedBuildInputs = [ propagatedBuildInputs = [
docutils docutils
pyparsing pyparsing

View File

@ -42,14 +42,14 @@ in
buildPythonPackage rec { buildPythonPackage rec {
pname = "angr"; pname = "angr";
version = "9.0.7491"; version = "9.0.7833";
disabled = pythonOlder "3.6"; disabled = pythonOlder "3.6";
src = fetchFromGitHub { src = fetchFromGitHub {
owner = pname; owner = pname;
repo = pname; repo = pname;
rev = "v${version}"; rev = "v${version}";
sha256 = "sha256-d0EWPko3jWCexFNCWbofD6CjDIpjKb5mha2tRgtzL4M="; sha256 = "sha256-1D1FhRhFHpQSQnMAPmp78TRIx9T5LL5MIdaYV/hPCv0=";
}; };
propagatedBuildInputs = [ propagatedBuildInputs = [

View File

@ -9,14 +9,14 @@
buildPythonPackage rec { buildPythonPackage rec {
pname = "angrop"; pname = "angrop";
version = "9.0.7491"; version = "9.0.7833";
disabled = pythonOlder "3.6"; disabled = pythonOlder "3.6";
src = fetchFromGitHub { src = fetchFromGitHub {
owner = "angr"; owner = "angr";
repo = pname; repo = pname;
rev = "v${version}"; rev = "v${version}";
sha256 = "sha256-UWqHNgJ8vUbLK3n9tvwOgHyOyTXsqRJKaAPWQfqi3lo="; sha256 = "sha256-JhD4/P5/IhmLBvmG3XoIEYVkowK+dDoLuwOdMhGi5q8=";
}; };
propagatedBuildInputs = [ propagatedBuildInputs = [

View File

@ -1,4 +1,4 @@
{ lib, buildPythonPackage, fetchPypi, isPy3k, six, mock, pytestCheckHook, setuptools, setuptools_scm, toml }: { lib, buildPythonPackage, fetchPypi, isPy3k, six, mock, pytestCheckHook, setuptools, setuptools-scm, toml }:
buildPythonPackage rec { buildPythonPackage rec {
pname = "ansi2html"; pname = "ansi2html";
@ -11,7 +11,7 @@ buildPythonPackage rec {
sha256 = "0f124ea7efcf3f24f1f9398e527e688c9ae6eab26b0b84e1299ef7f94d92c596"; sha256 = "0f124ea7efcf3f24f1f9398e527e688c9ae6eab26b0b84e1299ef7f94d92c596";
}; };
nativeBuildInputs = [ setuptools_scm toml ]; nativeBuildInputs = [ setuptools-scm toml ];
propagatedBuildInputs = [ six setuptools ]; propagatedBuildInputs = [ six setuptools ];
preCheck = "export PATH=$PATH:$out/bin"; preCheck = "export PATH=$PATH:$out/bin";

View File

@ -1,5 +1,5 @@
{ lib, buildPythonPackage, fetchPypi { lib, buildPythonPackage, fetchPypi
, pytest, setuptools_scm, isPy3k }: , pytest, setuptools-scm, isPy3k }:
buildPythonPackage rec { buildPythonPackage rec {
pname = "apipkg"; pname = "apipkg";
@ -10,7 +10,7 @@ buildPythonPackage rec {
sha256 = "37228cda29411948b422fae072f57e31d3396d2ee1c9783775980ee9c9990af6"; sha256 = "37228cda29411948b422fae072f57e31d3396d2ee1c9783775980ee9c9990af6";
}; };
nativeBuildInputs = [ setuptools_scm ]; nativeBuildInputs = [ setuptools-scm ];
checkInputs = [ pytest ]; checkInputs = [ pytest ];
# Fix pytest 4 support. See: https://github.com/pytest-dev/apipkg/issues/14 # Fix pytest 4 support. See: https://github.com/pytest-dev/apipkg/issues/14

View File

@ -7,13 +7,13 @@
buildPythonPackage rec { buildPythonPackage rec {
pname = "archinfo"; pname = "archinfo";
version = "9.0.7491"; version = "9.0.7833";
src = fetchFromGitHub { src = fetchFromGitHub {
owner = "angr"; owner = "angr";
repo = pname; repo = pname;
rev = "v${version}"; rev = "v${version}";
sha256 = "sha256-5mKXpvMhdcIKgvQkmj//YigvsgozZofvv6CvMdW3BHo="; sha256 = "sha256-wieg38cHxliHU7esoSOl5ViiS/uR5yVJh9l3SEsb3mo=";
}; };
checkInputs = [ checkInputs = [

View File

@ -1,7 +1,7 @@
{ lib { lib
, buildPythonPackage , buildPythonPackage
, fetchPypi , fetchPypi
, setuptools_scm , setuptools-scm
, pyfiglet , pyfiglet
, pillow , pillow
, wcwidth , wcwidth
@ -20,7 +20,7 @@ buildPythonPackage rec {
}; };
nativeBuildInputs = [ nativeBuildInputs = [
setuptools_scm setuptools-scm
]; ];
propagatedBuildInputs = [ propagatedBuildInputs = [

View File

@ -1,6 +1,6 @@
{ lib { lib
, fetchPypi , fetchPypi
, setuptools_scm , setuptools-scm
, buildPythonPackage , buildPythonPackage
, isPy3k , isPy3k
, cython , cython
@ -25,7 +25,7 @@ buildPythonPackage rec {
sha256 = "2c194f8a429b8399de64a413a06881ea49f0525cabaa2d78fc132b9e970adc6a"; sha256 = "2c194f8a429b8399de64a413a06881ea49f0525cabaa2d78fc132b9e970adc6a";
}; };
nativeBuildInputs = [ setuptools_scm astropy-helpers astropy-extension-helpers cython jinja2 ]; nativeBuildInputs = [ setuptools-scm astropy-helpers astropy-extension-helpers cython jinja2 ];
propagatedBuildInputs = [ numpy pyerfa ]; propagatedBuildInputs = [ numpy pyerfa ];
checkInputs = [ pytest pytest-astropy ]; checkInputs = [ pytest pytest-astropy ];

View File

@ -1,5 +1,5 @@
{ lib, fetchPypi, fetchpatch, buildPythonPackage, { lib, fetchPypi, fetchpatch, buildPythonPackage,
setuptools_scm, toml, six, astroid, pytest setuptools-scm, toml, six, astroid, pytest
}: }:
buildPythonPackage rec { buildPythonPackage rec {
@ -21,7 +21,7 @@ buildPythonPackage rec {
}) })
]; ];
propagatedBuildInputs = [ setuptools_scm toml six astroid ]; propagatedBuildInputs = [ setuptools-scm toml six astroid ];
checkInputs = [ pytest ]; checkInputs = [ pytest ];

View File

@ -1,5 +1,5 @@
{ lib, buildPythonPackage, fetchPypi, { lib, buildPythonPackage, fetchPypi,
m2r, setuptools_scm, six, attrs }: m2r, setuptools-scm, six, attrs }:
buildPythonPackage rec { buildPythonPackage rec {
version = "20.2.0"; version = "20.2.0";
@ -10,7 +10,7 @@ buildPythonPackage rec {
sha256 = "7979803c74610e11ef0c0d68a2942b152df52da55336e0c9d58daf1831cbdf33"; sha256 = "7979803c74610e11ef0c0d68a2942b152df52da55336e0c9d58daf1831cbdf33";
}; };
buildInputs = [ m2r setuptools_scm ]; buildInputs = [ m2r setuptools-scm ];
propagatedBuildInputs = [ six attrs ]; propagatedBuildInputs = [ six attrs ];
# Some tests require twisetd, but twisted requires Automat to build. # Some tests require twisetd, but twisted requires Automat to build.

View File

@ -1,7 +1,7 @@
{ lib { lib
, buildPythonPackage , buildPythonPackage
, fetchPypi , fetchPypi
, setuptools_scm , setuptools-scm
, isPy3k , isPy3k
, pytest , pytest
, pytest-black , pytest-black
@ -18,7 +18,7 @@ buildPythonPackage rec {
sha256 = "d84e126e2a29e4fde8931ff8131240bbf30a0e7dbcc3897a8dbd8ea5ac11419c"; sha256 = "d84e126e2a29e4fde8931ff8131240bbf30a0e7dbcc3897a8dbd8ea5ac11419c";
}; };
nativeBuildInputs = [ setuptools_scm ]; nativeBuildInputs = [ setuptools-scm ];
checkInputs = [ pytest pytest-flake8 pytest-black pytestcov ]; checkInputs = [ pytest pytest-flake8 pytest-black pytestcov ];
# ironically, they fail a linting test, and pytest.ini forces that test suite # ironically, they fail a linting test, and pytest.ini forces that test suite

View File

@ -1,7 +1,7 @@
{ lib { lib
, buildPythonPackage , buildPythonPackage
, fetchPypi , fetchPypi
, setuptools_scm , setuptools-scm
, future , future
, isPy3k , isPy3k
, python , python
@ -18,7 +18,7 @@ buildPythonPackage rec {
sha256 = "b472c4933094306ca08ec90b2a8cbb50c34f1fb2767775169a1c1650b7b74630"; sha256 = "b472c4933094306ca08ec90b2a8cbb50c34f1fb2767775169a1c1650b7b74630";
}; };
buildInputs = [ setuptools_scm ]; buildInputs = [ setuptools-scm ];
checkInputs = [ hypothesis ]; checkInputs = [ hypothesis ];
propagatedBuildInputs = [ future ]; propagatedBuildInputs = [ future ];

View File

@ -2,7 +2,7 @@
, python , python
, buildPythonPackage , buildPythonPackage
, fetchPypi , fetchPypi
, setuptools_scm , setuptools-scm
, backports_weakref , backports_weakref
}: }:
@ -15,7 +15,7 @@ buildPythonPackage rec {
sha256 = "1c648c452e8770d759bdc5a5e2431209be70d25484e1be24876cf2168722c762"; sha256 = "1c648c452e8770d759bdc5a5e2431209be70d25484e1be24876cf2168722c762";
}; };
buildInputs = [ setuptools_scm ]; buildInputs = [ setuptools-scm ];
propagatedBuildInputs = [ backports_weakref ]; propagatedBuildInputs = [ backports_weakref ];

View File

@ -1,4 +1,4 @@
{ lib, buildPythonPackage, fetchPypi, setuptools_scm, mock }: { lib, buildPythonPackage, fetchPypi, setuptools-scm, mock }:
buildPythonPackage rec { buildPythonPackage rec {
pname = "backports.unittest_mock"; pname = "backports.unittest_mock";
@ -11,7 +11,7 @@ buildPythonPackage rec {
propagatedBuildInputs = [ mock ]; propagatedBuildInputs = [ mock ];
buildInputs = [ setuptools_scm ]; buildInputs = [ setuptools-scm ];
# does not contain tests # does not contain tests
doCheck = false; doCheck = false;

View File

@ -1,7 +1,7 @@
{ lib { lib
, buildPythonPackage , buildPythonPackage
, fetchPypi , fetchPypi
, setuptools_scm , setuptools-scm
# , backports # , backports
, python , python
}: }:
@ -14,7 +14,7 @@ buildPythonPackage rec {
sha256 = "bc4170a29915f8b22c9e7c4939701859650f2eb84184aee80da329ac0b9825c2"; sha256 = "bc4170a29915f8b22c9e7c4939701859650f2eb84184aee80da329ac0b9825c2";
}; };
buildInputs = [ setuptools_scm ]; buildInputs = [ setuptools-scm ];
# checkInputs = [ backports ]; # checkInputs = [ backports ];
# Requires backports package # Requires backports package

View File

@ -1,5 +1,5 @@
{ lib, buildPythonPackage, fetchPypi { lib, buildPythonPackage, fetchPypi
, setuptools_scm , setuptools-scm
, sphinx , sphinx
, hypothesis , hypothesis
, py , py
@ -20,7 +20,7 @@ buildPythonPackage rec {
sha256 = "4fa46f7ff96dc244abfc437383d987404ae861df797e2fd5b190e233c302be09"; sha256 = "4fa46f7ff96dc244abfc437383d987404ae861df797e2fd5b190e233c302be09";
}; };
nativeBuildInputs = [ setuptools_scm ]; nativeBuildInputs = [ setuptools-scm ];
propagatedBuildInputs = [ sphinx ]; propagatedBuildInputs = [ sphinx ];
checkInputs = [ checkInputs = [

View File

@ -1,5 +1,5 @@
{ stdenv, lib { stdenv, lib
, buildPythonPackage, fetchPypi, pythonOlder, setuptools_scm, pytestCheckHook , buildPythonPackage, fetchPypi, pythonOlder, setuptools-scm, pytestCheckHook
, aiohttp , aiohttp
, aiohttp-cors , aiohttp-cors
, appdirs , appdirs
@ -25,7 +25,7 @@ buildPythonPackage rec {
sha256 = "1cdkrl5vw26iy7s23v2zpr39m6g5xsgxhfhagzzflgfbvdc56s93"; sha256 = "1cdkrl5vw26iy7s23v2zpr39m6g5xsgxhfhagzzflgfbvdc56s93";
}; };
nativeBuildInputs = [ setuptools_scm ]; nativeBuildInputs = [ setuptools-scm ];
# Necessary for the tests to pass on Darwin with sandbox enabled. # Necessary for the tests to pass on Darwin with sandbox enabled.
# Black starts a local server and needs to bind a local address. # Black starts a local server and needs to bind a local address.

View File

@ -1,6 +1,6 @@
{ lib, buildPythonPackage, fetchPypi { lib, buildPythonPackage, fetchPypi
, fonttools, fs, pyclipper, defcon, fontpens , fonttools, fs, pyclipper, defcon, fontpens
, setuptools_scm, pytest , setuptools-scm, pytest
}: }:
buildPythonPackage rec { buildPythonPackage rec {
@ -13,7 +13,7 @@ buildPythonPackage rec {
extension = "zip"; extension = "zip";
}; };
nativeBuildInputs = [ setuptools_scm ]; nativeBuildInputs = [ setuptools-scm ];
propagatedBuildInputs = [ propagatedBuildInputs = [
fonttools fonttools

View File

@ -4,7 +4,7 @@
, fetchPypi , fetchPypi
, pytestCheckHook , pytestCheckHook
, pytest-cov , pytest-cov
, setuptools_scm , setuptools-scm
}: }:
buildPythonPackage rec { buildPythonPackage rec {
@ -16,7 +16,7 @@ buildPythonPackage rec {
sha256 = "a33aa2e5534fd74401ac95686886e655e3b2ce6383b3f958199b6e70a87c94bf"; sha256 = "a33aa2e5534fd74401ac95686886e655e3b2ce6383b3f958199b6e70a87c94bf";
}; };
nativeBuildInputs = [ setuptools_scm ]; nativeBuildInputs = [ setuptools-scm ];
checkInputs = [ checkInputs = [
pytest-cov pytest-cov

View File

@ -14,7 +14,7 @@
, requests , requests
, requests-toolbelt , requests-toolbelt
, requests-unixsocket , requests-unixsocket
, setuptools_scm , setuptools-scm
, setuptools-scm-git-archive , setuptools-scm-git-archive
, six , six
, trustme , trustme
@ -31,7 +31,7 @@ buildPythonPackage rec {
sha256 = "f137d03fd5155b1364bea557a7c98168665c239f6c8cedd8f80e81cdfac01567"; sha256 = "f137d03fd5155b1364bea557a7c98168665c239f6c8cedd8f80e81cdfac01567";
}; };
nativeBuildInputs = [ setuptools_scm setuptools-scm-git-archive ]; nativeBuildInputs = [ setuptools-scm setuptools-scm-git-archive ];
propagatedBuildInputs = [ propagatedBuildInputs = [
# install_requires # install_requires

View File

@ -1,5 +1,5 @@
{ lib, stdenv, buildPythonPackage, fetchPypi { lib, stdenv, buildPythonPackage, fetchPypi
, setuptools_scm , setuptools-scm
, cheroot, contextlib2, portend, routes, six, zc_lockfile , cheroot, contextlib2, portend, routes, six, zc_lockfile
, backports_unittest-mock, objgraph, pathpy, pytest, pytestcov, backports_functools_lru_cache, requests_toolbelt , backports_unittest-mock, objgraph, pathpy, pytest, pytestcov, backports_functools_lru_cache, requests_toolbelt
}: }:
@ -18,7 +18,7 @@ buildPythonPackage rec {
cheroot contextlib2 portend routes six zc_lockfile cheroot contextlib2 portend routes six zc_lockfile
]; ];
nativeBuildInputs = [ setuptools_scm ]; nativeBuildInputs = [ setuptools-scm ];
checkInputs = [ checkInputs = [
backports_unittest-mock objgraph pathpy pytest pytestcov backports_functools_lru_cache requests_toolbelt backports_unittest-mock objgraph pathpy pytest pytestcov backports_functools_lru_cache requests_toolbelt

View File

@ -1,5 +1,5 @@
{ lib, stdenv, buildPythonPackage, fetchPypi, isPy3k { lib, stdenv, buildPythonPackage, fetchPypi, isPy3k
, setuptools_scm , setuptools-scm
, cheroot, portend, more-itertools, zc_lockfile, routes , cheroot, portend, more-itertools, zc_lockfile, routes
, jaraco_collections , jaraco_collections
, objgraph, pytest, pytestcov, pathpy, requests_toolbelt, pytest-services , objgraph, pytest, pytestcov, pathpy, requests_toolbelt, pytest-services
@ -36,7 +36,7 @@ buildPythonPackage rec {
}) })
]; ];
nativeBuildInputs = [ setuptools_scm ]; nativeBuildInputs = [ setuptools-scm ];
propagatedBuildInputs = [ propagatedBuildInputs = [
# required # required

View File

@ -13,14 +13,14 @@
buildPythonPackage rec { buildPythonPackage rec {
pname = "claripy"; pname = "claripy";
version = "9.0.7491"; version = "9.0.7833";
disabled = pythonOlder "3.6"; disabled = pythonOlder "3.6";
src = fetchFromGitHub { src = fetchFromGitHub {
owner = "angr"; owner = "angr";
repo = pname; repo = pname;
rev = "v${version}"; rev = "v${version}";
sha256 = "sha256-M6Irec8p4l2WNrVeqUob3m2xF3JMtdp7I+LSi0iArZk="; sha256 = "sha256-C+YjpnMpz96v9QUkcdlhGl83V4UHnWAKZV2eR+vZX3c=";
}; };
# Use upstream z3 implementation # Use upstream z3 implementation

View File

@ -15,7 +15,7 @@
let let
# The binaries are following the argr projects release cycle # The binaries are following the argr projects release cycle
version = "9.0.7491"; version = "9.0.7833";
# Binary files from https://github.com/angr/binaries (only used for testing and only here) # Binary files from https://github.com/angr/binaries (only used for testing and only here)
binaries = fetchFromGitHub { binaries = fetchFromGitHub {
@ -35,7 +35,7 @@ buildPythonPackage rec {
owner = "angr"; owner = "angr";
repo = pname; repo = pname;
rev = "v${version}"; rev = "v${version}";
sha256 = "sha256-P126IcUpq7b8u74YJFBXluGIIru+UOCnmHYmJBiK9Pc="; sha256 = "sha256-P8bz50OgJifGWbWRyGXEB3FRfJHG1m9RgMatKA/XQLc=";
}; };
propagatedBuildInputs = [ propagatedBuildInputs = [

View File

@ -39,7 +39,7 @@ buildPythonPackage rec {
"test_cmd_unknown-1_txt" "test_cmd_unknown-1_txt"
]; ];
# give a hint to setuptools_scm on package version # give a hint to setuptools-scm on package version
SETUPTOOLS_SCM_PRETEND_VERSION="v${version}"; SETUPTOOLS_SCM_PRETEND_VERSION="v${version}";
meta = with lib; { meta = with lib; {

View File

@ -23,7 +23,7 @@ buildPythonPackage rec {
setuptools-scm setuptools-scm
]; ];
# give a hint to setuptools_scm on package version # give a hint to setuptools-scm on package version
SETUPTOOLS_SCM_PRETEND_VERSION = "v${version}"; SETUPTOOLS_SCM_PRETEND_VERSION = "v${version}";
propagatedBuildInputs = [ propagatedBuildInputs = [

View File

@ -1,6 +1,6 @@
{ lib, stdenv, fetchPypi, buildPythonPackage, pythonOlder, isPy3k { lib, stdenv, fetchPypi, buildPythonPackage, pythonOlder, isPy3k
, pyperclip, six, pyparsing, vim, wcwidth, colorama, attrs , pyperclip, six, pyparsing, vim, wcwidth, colorama, attrs
, contextlib2 ? null, typing ? null, setuptools_scm , contextlib2 ? null, typing ? null, setuptools-scm
, pytest, mock ? null, pytest-mock , pytest, mock ? null, pytest-mock
, which, glibcLocales , which, glibcLocales
}: }:
@ -27,7 +27,7 @@ buildPythonPackage rec {
disabled = !isPy3k; disabled = !isPy3k;
buildInputs = [ buildInputs = [
setuptools_scm setuptools-scm
]; ];
propagatedBuildInputs = [ propagatedBuildInputs = [

View File

@ -1,4 +1,4 @@
{ lib, stdenv, buildPythonPackage, fetchPypi, setuptools_scm }: { lib, stdenv, buildPythonPackage, fetchPypi, setuptools-scm }:
buildPythonPackage rec { buildPythonPackage rec {
pname = "configparser"; pname = "configparser";
@ -12,7 +12,7 @@ buildPythonPackage rec {
# No tests available # No tests available
doCheck = false; doCheck = false;
nativeBuildInputs = [ setuptools_scm ]; nativeBuildInputs = [ setuptools-scm ];
preConfigure = '' preConfigure = ''
export LC_ALL=${if stdenv.isDarwin then "en_US" else "C"}.UTF-8 export LC_ALL=${if stdenv.isDarwin then "en_US" else "C"}.UTF-8

View File

@ -1,4 +1,4 @@
{ lib, stdenv, buildPythonPackage, fetchPypi, setuptools_scm { lib, stdenv, buildPythonPackage, fetchPypi, setuptools-scm
, toml , toml
}: }:
@ -14,7 +14,7 @@ buildPythonPackage rec {
# No tests available # No tests available
doCheck = false; doCheck = false;
nativeBuildInputs = [ setuptools_scm toml ]; nativeBuildInputs = [ setuptools-scm toml ];
preConfigure = '' preConfigure = ''
export LC_ALL=${if stdenv.isDarwin then "en_US" else "C"}.UTF-8 export LC_ALL=${if stdenv.isDarwin then "en_US" else "C"}.UTF-8

View File

@ -3,7 +3,7 @@
, buildPythonPackage , buildPythonPackage
, fetchPypi , fetchPypi
, pytestrunner , pytestrunner
, setuptools_scm , setuptools-scm
, isort , isort
, mpmath , mpmath
, strategies , strategies
@ -22,7 +22,7 @@ buildPythonPackage rec {
nativeBuildInputs = [ nativeBuildInputs = [
isort isort
pytestrunner pytestrunner
setuptools_scm setuptools-scm
]; ];
propagatedBuildInputs = [ propagatedBuildInputs = [

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