mirror of
https://github.com/SebastianWendel/nixpkgs.git
synced 2024-09-21 04:49:01 +02:00
Merge staging-next into staging
This commit is contained in:
commit
b511c637c8
|
@ -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; {
|
||||||
|
|
|
@ -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";
|
||||||
};
|
};
|
||||||
|
|
|
@ -19,18 +19,32 @@
|
||||||
</section>
|
</section>
|
||||||
<section xml:id="new-services">
|
<section xml:id="new-services">
|
||||||
<title>New Services</title>
|
<title>New Services</title>
|
||||||
|
<itemizedlist spacing="compact">
|
||||||
|
<listitem>
|
||||||
<para>
|
<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>
|
</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">
|
||||||
|
|
|
@ -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
|
||||||
|
|
|
@ -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
|
||||||
|
|
|
@ -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;
|
||||||
|
|
|
@ -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
|
||||||
|
|
|
@ -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 "");
|
||||||
|
|
|
@ -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;
|
|
||||||
};
|
|
||||||
};
|
|
||||||
|
|
||||||
};
|
|
||||||
}
|
|
145
nixos/modules/services/misc/geoipupdate.nix
Normal file
145
nixos/modules/services/misc/geoipupdate.nix
Normal 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;
|
||||||
|
};
|
||||||
|
};
|
||||||
|
};
|
||||||
|
}
|
|
@ -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")
|
||||||
|
|
|
@ -1,6 +1,6 @@
|
||||||
f: {
|
f: {
|
||||||
system ? builtins.currentSystem,
|
system ? builtins.currentSystem,
|
||||||
pkgs ? import ../.. { inherit system; config = {}; },
|
pkgs ? import ../.. { inherit system; },
|
||||||
...
|
...
|
||||||
} @ args:
|
} @ args:
|
||||||
|
|
||||||
|
|
|
@ -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}'")
|
||||||
'';
|
'';
|
||||||
})
|
})
|
||||||
|
|
|
@ -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
|
||||||
|
|
|
@ -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
|
||||||
];
|
];
|
||||||
|
|
|
@ -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 = ''
|
||||||
|
|
|
@ -23,7 +23,7 @@ in python3.pkgs.buildPythonApplication rec {
|
||||||
};
|
};
|
||||||
|
|
||||||
nativeBuildInputs = with python3.pkgs; [
|
nativeBuildInputs = with python3.pkgs; [
|
||||||
setuptools_scm
|
setuptools-scm
|
||||||
docutils
|
docutils
|
||||||
];
|
];
|
||||||
|
|
||||||
|
|
|
@ -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; [
|
||||||
|
|
|
@ -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 = ''
|
||||||
|
|
|
@ -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",
|
||||||
|
|
|
@ -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;
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
|
|
@ -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
|
||||||
'';
|
'';
|
||||||
|
|
|
@ -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
|
||||||
|
|
|
@ -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";
|
||||||
|
|
|
@ -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";
|
||||||
|
|
||||||
|
|
36
pkgs/applications/misc/natural-docs/default.nix
Normal file
36
pkgs/applications/misc/natural-docs/default.nix
Normal 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 ];
|
||||||
|
};
|
||||||
|
}
|
|
@ -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;
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
|
|
@ -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
|
||||||
|
|
|
@ -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 ];
|
||||||
};
|
};
|
||||||
|
|
|
@ -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 = ''
|
||||||
|
|
|
@ -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
|
||||||
|
|
|
@ -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 ];
|
||||||
|
@ -31,6 +27,6 @@ stdenv.mkDerivation rec {
|
||||||
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 ];
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
|
|
@ -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 = ''
|
||||||
|
|
12
pkgs/applications/misc/xmrig/donate-level.patch
Normal file
12
pkgs/applications/misc/xmrig/donate-level.patch
Normal 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 */
|
|
@ -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 ];
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
|
|
@ -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;
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|
|
@ -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 ];
|
||||||
|
};
|
||||||
|
}
|
|
@ -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 = ''
|
||||||
|
|
|
@ -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
|
||||||
|
|
|
@ -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
|
||||||
|
|
|
@ -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
|
||||||
|
|
|
@ -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":
|
||||||
|
|
|
@ -1,6 +1,6 @@
|
||||||
--- 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):
|
||||||
|
@ -38,3 +38,4 @@
|
||||||
|
|
||||||
return (
|
return (
|
||||||
tor_path,
|
tor_path,
|
||||||
|
|
||||||
|
|
|
@ -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
|
||||||
|
|
|
@ -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 = {
|
||||||
|
|
|
@ -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
|
|
@ -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 {
|
||||||
|
|
|
@ -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;
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|
|
@ -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 ];
|
||||||
|
|
|
@ -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
|
||||||
|
|
|
@ -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
|
||||||
|
|
|
@ -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 ];
|
||||||
|
|
|
@ -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;
|
||||||
|
|
||||||
|
@ -25,7 +27,7 @@ let
|
||||||
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,8 +36,10 @@ let
|
||||||
|
|
||||||
inherit src;
|
inherit src;
|
||||||
|
|
||||||
setupHook = if setupHook == null
|
setupHook =
|
||||||
then writeText "setupHook.sh" ''
|
if setupHook == null
|
||||||
|
then
|
||||||
|
writeText "setupHook.sh" ''
|
||||||
addToSearchPath ERL_LIBS "$1/lib/erlang/lib"
|
addToSearchPath ERL_LIBS "$1/lib/erlang/lib"
|
||||||
''
|
''
|
||||||
else setupHook;
|
else setupHook;
|
||||||
|
@ -47,7 +51,8 @@ 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 =
|
||||||
|
if configurePhase == null
|
||||||
then ''
|
then ''
|
||||||
runHook preConfigure
|
runHook preConfigure
|
||||||
|
|
||||||
|
@ -59,7 +64,8 @@ let
|
||||||
''
|
''
|
||||||
else configurePhase;
|
else configurePhase;
|
||||||
|
|
||||||
buildPhase = if buildPhase == null
|
buildPhase =
|
||||||
|
if buildPhase == null
|
||||||
then ''
|
then ''
|
||||||
runHook preBuild
|
runHook preBuild
|
||||||
|
|
||||||
|
@ -69,7 +75,8 @@ let
|
||||||
''
|
''
|
||||||
else buildPhase;
|
else buildPhase;
|
||||||
|
|
||||||
installPhase = if installPhase == null
|
installPhase =
|
||||||
|
if installPhase == null
|
||||||
then ''
|
then ''
|
||||||
runHook preInstall
|
runHook preInstall
|
||||||
|
|
||||||
|
@ -98,5 +105,6 @@ let
|
||||||
env = shell self;
|
env = shell self;
|
||||||
inherit beamDeps;
|
inherit beamDeps;
|
||||||
};
|
};
|
||||||
});
|
});
|
||||||
in fix pkg
|
in
|
||||||
|
fix pkg
|
||||||
|
|
|
@ -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"
|
||||||
|
|
|
@ -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;
|
||||||
|
|
||||||
|
@ -77,4 +81,4 @@ let
|
||||||
};
|
};
|
||||||
} // customPhases);
|
} // customPhases);
|
||||||
in
|
in
|
||||||
fix pkg
|
fix pkg
|
||||||
|
|
|
@ -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";
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
|
|
@ -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;
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
|
|
@ -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,7 +147,8 @@ 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
|
||||||
|
writeScript "update.sh" ''
|
||||||
#!${stdenv.shell}
|
#!${stdenv.shell}
|
||||||
set -ox errexit
|
set -ox errexit
|
||||||
PATH=${lib.makeBinPath [ common-updater-scripts coreutils git gnused ]}
|
PATH=${lib.makeBinPath [ common-updater-scripts coreutils git gnused ]}
|
||||||
|
@ -145,7 +184,7 @@ in stdenv.mkDerivation ({
|
||||||
}
|
}
|
||||||
// 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; }
|
||||||
|
@ -158,7 +197,7 @@ in stdenv.mkDerivation ({
|
||||||
// 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; }
|
||||||
|
|
|
@ -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";
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
|
|
@ -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";
|
||||||
|
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|
|
@ -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";
|
||||||
})
|
})
|
||||||
];
|
];
|
||||||
|
|
|
@ -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 ];
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
|
|
@ -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
|
||||||
|
|
|
@ -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"
|
||||||
|
|
1931
pkgs/development/node-packages/node-packages.nix
generated
1931
pkgs/development/node-packages/node-packages.nix
generated
File diff suppressed because it is too large
Load diff
|
@ -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 ];
|
||||||
|
|
|
@ -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
|
||||||
|
|
|
@ -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
|
||||||
|
|
|
@ -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 ];
|
||||||
|
|
|
@ -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" ""
|
||||||
'';
|
'';
|
||||||
|
|
||||||
|
|
|
@ -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
|
||||||
|
|
|
@ -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 = [
|
||||||
|
|
|
@ -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 = [
|
||||||
|
|
|
@ -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";
|
||||||
|
|
|
@ -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
|
||||||
|
|
|
@ -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 = [
|
||||||
|
|
|
@ -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 = [
|
||||||
|
|
|
@ -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 ];
|
||||||
|
|
||||||
|
|
|
@ -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 ];
|
||||||
|
|
||||||
|
|
|
@ -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.
|
||||||
|
|
|
@ -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
|
||||||
|
|
|
@ -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 ];
|
||||||
|
|
||||||
|
|
|
@ -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 ];
|
||||||
|
|
||||||
|
|
|
@ -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;
|
||||||
|
|
|
@ -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
|
||||||
|
|
|
@ -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 = [
|
||||||
|
|
|
@ -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.
|
||||||
|
|
|
@ -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
|
||||||
|
|
|
@ -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
|
||||||
|
|
|
@ -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
|
||||||
|
|
|
@ -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
|
||||||
|
|
|
@ -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
|
||||||
|
|
|
@ -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
|
||||||
|
|
|
@ -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 = [
|
||||||
|
|
|
@ -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; {
|
||||||
|
|
|
@ -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 = [
|
||||||
|
|
|
@ -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 = [
|
||||||
|
|
|
@ -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
|
||||||
|
|
|
@ -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
|
||||||
|
|
|
@ -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
Loading…
Reference in a new issue