Project import generated by Copybara.

GitOrigin-RevId: 1ca6b0a0cc38dbba0441202535c92841dd39d1ae
This commit is contained in:
Default email 2021-06-04 10:07:49 +01:00
parent 18bad4282a
commit 5a8b500490
594 changed files with 28490 additions and 4840 deletions

View file

@ -1,7 +1,9 @@
name: NixOS manual checks name: NixOS manual checks
permissions: read-all
on: on:
pull_request: pull_request_target:
branches-ignore: branches-ignore:
- 'release-**' - 'release-**'
paths: paths:
@ -14,6 +16,9 @@ jobs:
if: github.repository_owner == 'NixOS' if: github.repository_owner == 'NixOS'
steps: steps:
- uses: actions/checkout@v2 - uses: actions/checkout@v2
with:
# pull_request_target checks out the base branch by default
ref: refs/pull/${{ github.event.pull_request.number }}/merge
- uses: cachix/install-nix-action@v12 - uses: cachix/install-nix-action@v12
- name: Check DocBook files generated from Markdown are consistent - name: Check DocBook files generated from Markdown are consistent
run: | run: |

View file

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

View file

@ -373,7 +373,7 @@ hashes need to be specified since they are not available through the
lock file. For example: lock file. For example:
``` ```
cargoDeps = { cargoDeps = rustPlatform.importCargoLock {
lockFile = ./Cargo.lock; lockFile = ./Cargo.lock;
outputHashes = { outputHashes = {
"rand-0.8.3" = "0ya2hia3cn31qa8894s3av2s8j5bjwb6yq92k0jsnlx7jid0jwqa"; "rand-0.8.3" = "0ya2hia3cn31qa8894s3av2s8j5bjwb6yq92k0jsnlx7jid0jwqa";

View file

@ -760,6 +760,11 @@ lib.mapAttrs (n: v: v // { shortName = n; }) ({
# channel and NixOS images. # channel and NixOS images.
}; };
unicode-dfs-2015 = spdx {
spdxId = "Unicode-DFS-2015";
fullName = "Unicode License Agreement - Data Files and Software (2015)";
};
unicode-dfs-2016 = spdx { unicode-dfs-2016 = spdx {
spdxId = "Unicode-DFS-2016"; spdxId = "Unicode-DFS-2016";
fullName = "Unicode License Agreement - Data Files and Software (2016)"; fullName = "Unicode License Agreement - Data Files and Software (2016)";

View file

@ -481,11 +481,11 @@ rec {
riscv-multiplatform = { riscv-multiplatform = {
linux-kernel = { linux-kernel = {
name = "riscv-multiplatform"; name = "riscv-multiplatform";
target = "vmlinux"; target = "Image";
autoModules = true; autoModules = true;
baseConfig = "defconfig"; baseConfig = "defconfig";
DTB = true;
extraConfig = '' extraConfig = ''
FTRACE n
SERIAL_OF_PLATFORM y SERIAL_OF_PLATFORM y
''; '';
}; };

View file

@ -64,6 +64,16 @@
fingerprint = "F466 A548 AD3F C1F1 8C88 4576 8702 7528 B006 D66D"; fingerprint = "F466 A548 AD3F C1F1 8C88 4576 8702 7528 B006 D66D";
}]; }];
}; };
_0xbe7a = {
email = "nix@be7a.de";
name = "Bela Stoyan";
github = "0xbe7a";
githubId = 6232980;
keys = [{
longkeyid = "rsa4096/0x6510870A77F49A99";
fingerprint = "2536 9E86 1AA5 9EB7 4C47 B138 6510 870A 77F4 9A99";
}];
};
_1000101 = { _1000101 = {
email = "b1000101@pm.me"; email = "b1000101@pm.me";
github = "1000101"; github = "1000101";
@ -3031,6 +3041,16 @@
githubId = 147284; githubId = 147284;
name = "Jason Felice"; name = "Jason Felice";
}; };
erdnaxe = {
email = "erdnaxe@crans.org";
github = "erdnaxe";
githubId = 2663216;
name = "Alexandre Iooss";
keys = [{
longkeyid = "rsa4096/0x6C79278F3FCDCC02";
fingerprint = "2D37 1AD2 7E2B BC77 97E1 B759 6C79 278F 3FCD CC02";
}];
};
ericbmerritt = { ericbmerritt = {
email = "eric@afiniate.com"; email = "eric@afiniate.com";
github = "ericbmerritt"; github = "ericbmerritt";
@ -4335,6 +4355,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";
@ -7287,9 +7317,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";
}; };
@ -10025,6 +10055,12 @@
githubId = 27386; githubId = 27386;
name = "Milan Svoboda"; name = "Milan Svoboda";
}; };
tfc = {
email = "jacek@galowicz.de";
github = "tfc";
githubId = 29044;
name = "Jacek Galowicz";
};
tg-x = { tg-x = {
email = "*@tg-x.net"; email = "*@tg-x.net";
github = "tg-x"; github = "tg-x";

View file

@ -436,6 +436,18 @@ machine.systemctl("list-jobs --no-pager", "any-user") # spawns a shell for `any-
</para> </para>
</listitem> </listitem>
</varlistentry> </varlistentry>
<varlistentry>
<term>
<methodname>shell_interact</methodname>
</term>
<listitem>
<para>
Allows you to directly interact with the guest shell.
This should only be used during test development, not in production tests.
Killing the interactive session with <literal>Ctrl-d</literal> or <literal>Ctrl-c</literal> also ends the guest session.
</para>
</listitem>
</varlistentry>
</variablelist> </variablelist>
</para> </para>

View file

@ -12,15 +12,44 @@
</para> </para>
</listitem> </listitem>
</itemizedlist> </itemizedlist>
<section xml:id="backward-incompatibilities"> <section xml:id="highlights">
<title>Backward incompatibilities</title> <title>Highlights</title>
<para>
</para>
</section>
<section xml:id="new-services">
<title>New Services</title>
<itemizedlist spacing="compact"> <itemizedlist spacing="compact">
<listitem>
<para>
<link xlink:href="https://github.com/maxmind/geoipupdate">geoipupdate</link>,
a GeoIP database updater from MaxMind. Available as
<link xlink:href="options.html#opt-services.geoipupdate.enable">services.geoipupdate</link>.
</para>
</listitem>
</itemizedlist>
</section>
<section xml:id="backward-incompatibilities">
<title>Backward Incompatibilities</title>
<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">
<title>Other Notable Changes</title>
<para>
</para>
</section>
</section> </section>

View file

@ -402,10 +402,9 @@
</term> </term>
<listitem> <listitem>
<para> <para>
Equivalent to <option>--no-build-nix</option> Equivalent to <option>--no-build-nix</option>. This option is
<option>--show-trace</option>. This option is useful if you call useful if you call <command>nixos-rebuild</command> frequently
<command>nixos-rebuild</command> frequently (e.g. if youre hacking on (e.g. if youre hacking on a NixOS module).
a NixOS module).
</para> </para>
</listitem> </listitem>
</varlistentry> </varlistentry>

View file

@ -795,7 +795,7 @@ environment.systemPackages = [
<listitem> <listitem>
<para> <para>
In the <option>security.acme</option> module, use of <literal>--reuse-key</literal> In the <option>security.acme</option> module, use of <literal>--reuse-key</literal>
parameter for Lego has been removed. It was introduced for HKPK, but this security parameter for Lego has been removed. It was introduced for HKPK, but this security
feature is now deprecated. It is a better security practice to rotate key pairs feature is now deprecated. It is a better security practice to rotate key pairs
instead of always keeping the same. If you need to keep this parameter, you can add instead of always keeping the same. If you need to keep this parameter, you can add
it back using <literal>extraLegoRenewFlags</literal> as an option for the it back using <literal>extraLegoRenewFlags</literal> as an option for the

View file

@ -4,6 +4,19 @@ In addition to numerous new and upgraded packages, this release has the followin
* Support is planned until the end of April 2022, handing over to 22.05. * Support is planned until the end of April 2022, handing over to 22.05.
## Backward incompatibilities ## Highlights
## 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
* 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

View file

@ -21,6 +21,7 @@ import shutil
import socket import socket
import subprocess import subprocess
import sys import sys
import telnetlib
import tempfile import tempfile
import time import time
import traceback import traceback
@ -455,6 +456,16 @@ class Machine:
return (status_code, output) return (status_code, output)
output += chunk output += chunk
def shell_interact(self) -> None:
"""Allows you to interact with the guest shell
Should only be used during test development, not in the production test."""
self.connect()
self.log("Terminal is ready (there is no prompt):")
telnet = telnetlib.Telnet()
telnet.sock = self.shell # type: ignore
telnet.interact()
def succeed(self, *commands: str) -> str: def succeed(self, *commands: str) -> str:
"""Execute each command and check that it succeeds.""" """Execute each command and check that it succeeds."""
output = "" output = ""

View file

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

View file

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

View file

@ -492,7 +492,7 @@
./services/misc/freeswitch.nix ./services/misc/freeswitch.nix
./services/misc/fstrim.nix ./services/misc/fstrim.nix
./services/misc/gammu-smsd.nix ./services/misc/gammu-smsd.nix
./services/misc/geoip-updater.nix ./services/misc/geoipupdate.nix
./services/misc/gitea.nix ./services/misc/gitea.nix
#./services/misc/gitit.nix #./services/misc/gitit.nix
./services/misc/gitlab.nix ./services/misc/gitlab.nix
@ -947,6 +947,7 @@
./services/web-apps/nextcloud.nix ./services/web-apps/nextcloud.nix
./services/web-apps/nexus.nix ./services/web-apps/nexus.nix
./services/web-apps/plantuml-server.nix ./services/web-apps/plantuml-server.nix
./services/web-apps/plausible.nix
./services/web-apps/pgpkeyserver-lite.nix ./services/web-apps/pgpkeyserver-lite.nix
./services/web-apps/matomo.nix ./services/web-apps/matomo.nix
./services/web-apps/moinmoin.nix ./services/web-apps/moinmoin.nix

View file

@ -965,7 +965,7 @@ in
mr ${pkgs.apparmor-pam}/lib/security/pam_apparmor.so, mr ${pkgs.apparmor-pam}/lib/security/pam_apparmor.so,
'' + '' +
optionalString (isEnabled (cfg: cfg.enableKwallet)) '' optionalString (isEnabled (cfg: cfg.enableKwallet)) ''
mr ${pkgs.plasma5.kwallet-pam}/lib/security/pam_kwallet5.so, mr ${pkgs.plasma5Packages.kwallet-pam}/lib/security/pam_kwallet5.so,
'' + '' +
optionalString config.virtualisation.lxc.lxcfs.enable '' optionalString config.virtualisation.lxc.lxcfs.enable ''
mr ${pkgs.lxc}/lib/security/pam_cgfs.so mr ${pkgs.lxc}/lib/security/pam_cgfs.so

View file

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

View file

@ -333,6 +333,7 @@ in {
before = [ "mailman.service" "mailman-web-setup.service" "mailman-uwsgi.service" "hyperkitty.service" ]; before = [ "mailman.service" "mailman-web-setup.service" "mailman-uwsgi.service" "hyperkitty.service" ];
requiredBy = [ "mailman.service" "mailman-web-setup.service" "mailman-uwsgi.service" "hyperkitty.service" ]; requiredBy = [ "mailman.service" "mailman-web-setup.service" "mailman-uwsgi.service" "hyperkitty.service" ];
path = with pkgs; [ jq ]; path = with pkgs; [ jq ];
serviceConfig.Type = "oneshot";
script = '' script = ''
mailmanDir=/var/lib/mailman mailmanDir=/var/lib/mailman
mailmanWebDir=/var/lib/mailman-web mailmanWebDir=/var/lib/mailman-web

View file

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

View file

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

View file

@ -122,6 +122,15 @@ in
''; '';
}; };
sftpServerExecutable = mkOption {
type = types.str;
example = "internal-sftp";
description = ''
The sftp server executable. Can be a path or "internal-sftp" to use
the sftp server built into the sshd binary.
'';
};
sftpFlags = mkOption { sftpFlags = mkOption {
type = with types; listOf str; type = with types; listOf str;
default = []; default = [];
@ -386,6 +395,7 @@ in
}; };
services.openssh.moduliFile = mkDefault "${cfgc.package}/etc/ssh/moduli"; services.openssh.moduliFile = mkDefault "${cfgc.package}/etc/ssh/moduli";
services.openssh.sftpServerExecutable = mkDefault "${cfgc.package}/libexec/sftp-server";
environment.etc = authKeysFiles // environment.etc = authKeysFiles //
{ "ssh/moduli".source = cfg.moduliFile; { "ssh/moduli".source = cfg.moduliFile;
@ -505,7 +515,7 @@ in
''} ''}
${optionalString cfg.allowSFTP '' ${optionalString cfg.allowSFTP ''
Subsystem sftp ${cfgc.package}/libexec/sftp-server ${concatStringsSep " " cfg.sftpFlags} Subsystem sftp ${cfg.sftpServerExecutable} ${concatStringsSep " " cfg.sftpFlags}
''} ''}
PermitRootLogin ${cfg.permitRootLogin} PermitRootLogin ${cfg.permitRootLogin}

View file

@ -89,7 +89,7 @@ in {
# create database # create database
services.mysql = mkIf cfg.createDatabase { services.mysql = mkIf cfg.createDatabase {
enable = true; enable = true;
package = mkDefault pkgs.mysql; package = mkDefault pkgs.mariadb;
ensureUsers = [{ ensureUsers = [{
name = "engelsystem"; name = "engelsystem";
ensurePermissions = { "engelsystem.*" = "ALL PRIVILEGES"; }; ensurePermissions = { "engelsystem.*" = "ALL PRIVILEGES"; };

View file

@ -0,0 +1,273 @@
{ lib, pkgs, config, ... }:
with lib;
let
cfg = config.services.plausible;
# FIXME consider using LoadCredential as soon as it actually works.
envSecrets = ''
export ADMIN_USER_PWD="$(<${cfg.adminUser.passwordFile})"
export SECRET_KEY_BASE="$(<${cfg.server.secretKeybaseFile})"
${optionalString (cfg.mail.smtp.passwordFile != null) ''
export SMTP_USER_PWD="$(<${cfg.mail.smtp.passwordFile})"
''}
'';
in {
options.services.plausible = {
enable = mkEnableOption "plausible";
adminUser = {
name = mkOption {
default = "admin";
type = types.str;
description = ''
Name of the admin user that plausible will created on initial startup.
'';
};
email = mkOption {
type = types.str;
example = "admin@localhost";
description = ''
Email-address of the admin-user.
'';
};
passwordFile = mkOption {
type = types.either types.str types.path;
description = ''
Path to the file which contains the password of the admin user.
'';
};
activate = mkEnableOption "activating the freshly created admin-user";
};
database = {
clickhouse = {
setup = mkEnableOption "creating a clickhouse instance" // { default = true; };
url = mkOption {
default = "http://localhost:8123/default";
type = types.str;
description = ''
The URL to be used to connect to <package>clickhouse</package>.
'';
};
};
postgres = {
setup = mkEnableOption "creating a postgresql instance" // { default = true; };
dbname = mkOption {
default = "plausible";
type = types.str;
description = ''
Name of the database to use.
'';
};
socket = mkOption {
default = "/run/postgresql";
type = types.str;
description = ''
Path to the UNIX domain-socket to communicate with <package>postgres</package>.
'';
};
};
};
server = {
disableRegistration = mkOption {
default = true;
type = types.bool;
description = ''
Whether to prohibit creating an account in plausible's UI.
'';
};
secretKeybaseFile = mkOption {
type = types.either types.path types.str;
description = ''
Path to the secret used by the <literal>phoenix</literal>-framework. Instructions
how to generate one are documented in the
<link xlink:href="https://hexdocs.pm/phoenix/Mix.Tasks.Phx.Gen.Secret.html#content">
framework docs</link>.
'';
};
port = mkOption {
default = 8000;
type = types.port;
description = ''
Port where the service should be available.
'';
};
baseUrl = mkOption {
type = types.str;
description = ''
Public URL where plausible is available.
'';
};
};
mail = {
email = mkOption {
default = "hello@plausible.local";
type = types.str;
description = ''
The email id to use for as <emphasis>from</emphasis> address of all communications
from Plausible.
'';
};
smtp = {
hostAddr = mkOption {
default = "localhost";
type = types.str;
description = ''
The host address of your smtp server.
'';
};
hostPort = mkOption {
default = 25;
type = types.port;
description = ''
The port of your smtp server.
'';
};
user = mkOption {
default = null;
type = types.nullOr types.str;
description = ''
The username/email in case SMTP auth is enabled.
'';
};
passwordFile = mkOption {
default = null;
type = with types; nullOr (either str path);
description = ''
The path to the file with the password in case SMTP auth is enabled.
'';
};
enableSSL = mkEnableOption "SSL when connecting to the SMTP server";
retries = mkOption {
type = types.ints.unsigned;
default = 2;
description = ''
Number of retries to make until mailer gives up.
'';
};
};
};
};
config = mkIf cfg.enable {
assertions = [
{ assertion = cfg.adminUser.activate -> cfg.database.postgres.setup;
message = ''
Unable to automatically activate the admin-user if no locally managed DB for
postgres (`services.plausible.database.postgres.setup') is enabled!
'';
}
];
services.postgresql = mkIf cfg.database.postgres.setup {
enable = true;
};
services.clickhouse = mkIf cfg.database.clickhouse.setup {
enable = true;
};
systemd.services = mkMerge [
{
plausible = {
inherit (pkgs.plausible.meta) description;
documentation = [ "https://plausible.io/docs/self-hosting" ];
wantedBy = [ "multi-user.target" ];
after = optional cfg.database.postgres.setup "plausible-postgres.service";
requires = optional cfg.database.clickhouse.setup "clickhouse.service"
++ optionals cfg.database.postgres.setup [
"postgresql.service"
"plausible-postgres.service"
];
environment = {
# NixOS specific option to avoid that it's trying to write into its store-path.
# See also https://github.com/lau/tzdata#data-directory-and-releases
TZDATA_DIR = "/var/lib/plausible/elixir_tzdata";
# Configuration options from
# https://plausible.io/docs/self-hosting-configuration
PORT = toString cfg.server.port;
DISABLE_REGISTRATION = boolToString cfg.server.disableRegistration;
RELEASE_TMP = "/var/lib/plausible/tmp";
ADMIN_USER_NAME = cfg.adminUser.name;
ADMIN_USER_EMAIL = cfg.adminUser.email;
DATABASE_SOCKET_DIR = cfg.database.postgres.socket;
DATABASE_NAME = cfg.database.postgres.dbname;
CLICKHOUSE_DATABASE_URL = cfg.database.clickhouse.url;
BASE_URL = cfg.server.baseUrl;
MAILER_EMAIL = cfg.mail.email;
SMTP_HOST_ADDR = cfg.mail.smtp.hostAddr;
SMTP_HOST_PORT = toString cfg.mail.smtp.hostPort;
SMTP_RETRIES = toString cfg.mail.smtp.retries;
SMTP_HOST_SSL_ENABLED = boolToString cfg.mail.smtp.enableSSL;
SELFHOST = "true";
} // (optionalAttrs (cfg.mail.smtp.user != null) {
SMTP_USER_NAME = cfg.mail.smtp.user;
});
path = [ pkgs.plausible ]
++ optional cfg.database.postgres.setup config.services.postgresql.package;
serviceConfig = {
DynamicUser = true;
PrivateTmp = true;
WorkingDirectory = "/var/lib/plausible";
StateDirectory = "plausible";
ExecStartPre = "@${pkgs.writeShellScript "plausible-setup" ''
${envSecrets}
${pkgs.plausible}/createdb.sh
${pkgs.plausible}/migrate.sh
${optionalString cfg.adminUser.activate ''
if ! ${pkgs.plausible}/init-admin.sh | grep 'already exists'; then
psql -d plausible <<< "UPDATE users SET email_verified=true;"
fi
''}
''} plausible-setup";
ExecStart = "@${pkgs.writeShellScript "plausible" ''
${envSecrets}
plausible start
''} plausible";
};
};
}
(mkIf cfg.database.postgres.setup {
# `plausible' requires the `citext'-extension.
plausible-postgres = {
after = [ "postgresql.service" ];
bindsTo = [ "postgresql.service" ];
requiredBy = [ "plausible.service" ];
partOf = [ "plausible.service" ];
serviceConfig.Type = "oneshot";
unitConfig.ConditionPathExists = "!/var/lib/plausible/.db-setup";
script = ''
mkdir -p /var/lib/plausible/
PSQL() {
/run/wrappers/bin/sudo -Hu postgres ${config.services.postgresql.package}/bin/psql --port=5432 "$@"
}
PSQL -tAc "CREATE ROLE plausible WITH LOGIN;"
PSQL -tAc "CREATE DATABASE plausible WITH OWNER plausible;"
PSQL -d plausible -tAc "CREATE EXTENSION IF NOT EXISTS citext;"
touch /var/lib/plausible/.db-setup
'';
};
})
];
};
meta.maintainers = with maintainers; [ ma27 ];
meta.doc = ./plausible.xml;
}

View file

@ -0,0 +1,51 @@
<chapter xmlns="http://docbook.org/ns/docbook"
xmlns:xlink="http://www.w3.org/1999/xlink"
xmlns:xi="http://www.w3.org/2001/XInclude"
version="5.0"
xml:id="module-services-plausible">
<title>Plausible</title>
<para>
<link xlink:href="https://plausible.io/">Plausible</link> is a privacy-friendly alternative to
Google analytics.
</para>
<section xml:id="module-services-plausible-basic-usage">
<title>Basic Usage</title>
<para>
At first, a secret key is needed to be generated. This can be done with e.g.
<screen><prompt>$ </prompt>openssl rand -base64 64</screen>
</para>
<para>
After that, <package>plausible</package> can be deployed like this:
<programlisting>{
services.plausible = {
<link linkend="opt-services.plausible.enable">enable</link> = true;
adminUser = {
<link linkend="opt-services.plausible.adminUser.activate">activate</link> = true; <co xml:id='ex-plausible-cfg-activate' />
<link linkend="opt-services.plausible.adminUser.email">email</link> = "admin@localhost";
<link linkend="opt-services.plausible.adminUser.passwordFile">passwordFile</link> = "/run/secrets/plausible-admin-pwd";
};
server = {
<link linkend="opt-services.plausible.server.baseUrl">baseUrl</link> = "http://analytics.example.org";
<link linkend="opt-services.plausible.server.secretKeybaseFile">secretKeybaseFile</link> = "/run/secrets/plausible-secret-key-base"; <co xml:id='ex-plausible-cfg-secretbase' />
};
};
}</programlisting>
<calloutlist>
<callout arearefs='ex-plausible-cfg-activate'>
<para>
<varname>activate</varname> is used to skip the email verification of the admin-user that's
automatically created by <package>plausible</package>. This is only supported if
<package>postgresql</package> is configured by the module. This is done by default, but
can be turned off with <xref linkend="opt-services.plausible.database.postgres.setup" />.
</para>
</callout>
<callout arearefs='ex-plausible-cfg-secretbase'>
<para>
<varname>secretKeybaseFile</varname> is a path to the file which contains the secret generated
with <package>openssl</package> as described above.
</para>
</callout>
</calloutlist>
</para>
</section>
</chapter>

View file

@ -256,6 +256,17 @@ in
default = []; default = [];
description = "Other GNOME Flashback sessions to enable."; description = "Other GNOME Flashback sessions to enable.";
}; };
panelModulePackages = mkOption {
default = [ pkgs.gnome.gnome-applets ];
type = types.listOf types.path;
description = ''
Packages containing modules that should be made available to <literal>gnome-panel</literal> (usually for applets).
If you're packaging something to use here, please install the modules in <literal>$out/lib/gnome-panel/modules</literal>.
'';
example = literalExample "[ pkgs.gnome.gnome-applets ]";
};
}; };
}; };
@ -318,6 +329,7 @@ in
(wm: (wm:
pkgs.gnome.gnome-flashback.mkSessionForWm { pkgs.gnome.gnome-flashback.mkSessionForWm {
inherit (wm) wmName wmLabel wmCommand enableGnomePanel; inherit (wm) wmName wmLabel wmCommand enableGnomePanel;
inherit (cfg.flashback) panelModulePackages;
} }
) flashbackWms; ) flashbackWms;

View file

@ -1,10 +1,20 @@
{ pkgs, lib, config, ... }: { pkgs, lib, config, ... }:
let let
cfg = config.virtualisation.containerd; cfg = config.virtualisation.containerd;
containerdConfigChecked = pkgs.runCommand "containerd-config-checked.toml" { nativeBuildInputs = [pkgs.containerd]; } ''
containerd -c ${cfg.configFile} config dump >/dev/null configFile = if cfg.configFile == null then
ln -s ${cfg.configFile} $out settingsFormat.generate "containerd.toml" cfg.settings
else
cfg.configFile;
containerdConfigChecked = pkgs.runCommand "containerd-config-checked.toml" {
nativeBuildInputs = [ pkgs.containerd ];
} ''
containerd -c ${configFile} config dump >/dev/null
ln -s ${configFile} $out
''; '';
settingsFormat = pkgs.formats.toml {};
in in
{ {
@ -13,10 +23,21 @@ in
configFile = lib.mkOption { configFile = lib.mkOption {
default = null; default = null;
description = "path to containerd config file"; description = ''
Path to containerd config file.
Setting this option will override any configuration applied by the settings option.
'';
type = nullOr path; type = nullOr path;
}; };
settings = lib.mkOption {
type = settingsFormat.type;
default = {};
description = ''
Verbatim lines to add to containerd.toml
'';
};
args = lib.mkOption { args = lib.mkOption {
default = {}; default = {};
description = "extra args to append to the containerd cmdline"; description = "extra args to append to the containerd cmdline";
@ -25,9 +46,19 @@ in
}; };
config = lib.mkIf cfg.enable { config = lib.mkIf cfg.enable {
virtualisation.containerd.args.config = lib.mkIf (cfg.configFile != null) (toString containerdConfigChecked); warnings = lib.optional (cfg.configFile != null) ''
`virtualisation.containerd.configFile` is deprecated. use `virtualisation.containerd.settings` instead.
'';
environment.systemPackages = [pkgs.containerd]; virtualisation.containerd = {
args.config = toString containerdConfigChecked;
settings = {
plugins.cri.containerd.snapshotter = lib.mkIf config.boot.zfs.enabled "zfs";
plugins.cri.cni.bin_dir = lib.mkDefault "${pkgs.cni-plugins}/bin";
};
};
environment.systemPackages = [ pkgs.containerd ];
systemd.services.containerd = { systemd.services.containerd = {
description = "containerd - container runtime"; description = "containerd - container runtime";
@ -37,7 +68,7 @@ in
containerd containerd
runc runc
iptables iptables
]; ] ++ lib.optional config.boot.zfs.enabled config.boot.zfs.package;
serviceConfig = { serviceConfig = {
ExecStart = ''${pkgs.containerd}/bin/containerd ${lib.concatStringsSep " " (lib.cli.toGNUCommandLine {} cfg.args)}''; ExecStart = ''${pkgs.containerd}/bin/containerd ${lib.concatStringsSep " " (lib.cli.toGNUCommandLine {} cfg.args)}'';
Delegate = "yes"; Delegate = "yes";

View file

@ -48,6 +48,23 @@ in
description = "containers.conf configuration"; description = "containers.conf configuration";
}; };
containersConf.cniPlugins = mkOption {
type = types.listOf types.package;
defaultText = ''
[
pkgs.cni-plugins
]
'';
example = lib.literalExample ''
[
pkgs.cniPlugins.dnsname
]
'';
description = ''
CNI plugins to install on the system.
'';
};
registries = { registries = {
search = mkOption { search = mkOption {
type = types.listOf types.str; type = types.listOf types.str;
@ -97,8 +114,11 @@ in
}; };
config = lib.mkIf cfg.enable { config = lib.mkIf cfg.enable {
virtualisation.containers.containersConf.cniPlugins = [ pkgs.cni-plugins ];
virtualisation.containers.containersConf.settings = { virtualisation.containers.containersConf.settings = {
network.cni_plugin_dirs = [ "${pkgs.cni-plugins}/bin/" ]; network.cni_plugin_dirs = map (p: "${lib.getBin p}/bin") cfg.containersConf.cniPlugins;
engine = { engine = {
init_path = "${pkgs.catatonit}/bin/catatonit"; init_path = "${pkgs.catatonit}/bin/catatonit";
} // lib.optionalAttrs cfg.ociSeccompBpfHook.enable { } // lib.optionalAttrs cfg.ociSeccompBpfHook.enable {

View file

@ -0,0 +1,36 @@
{ config, lib, pkgs, ... }:
let
inherit (lib)
mkOption
mkIf
types
;
cfg = config.virtualisation.podman;
in
{
options = {
virtualisation.podman = {
defaultNetwork.dnsname.enable = mkOption {
type = types.bool;
default = false;
description = ''
Enable DNS resolution in the default podman network.
'';
};
};
};
config = {
virtualisation.containers.containersConf.cniPlugins = mkIf cfg.defaultNetwork.dnsname.enable [ pkgs.dnsname-cni ];
virtualisation.podman.defaultNetwork.extraPlugins =
lib.optional cfg.defaultNetwork.dnsname.enable {
type = "dnsname";
domainName = "dns.podman";
capabilities.aliases = true;
};
};
}

View file

@ -2,6 +2,7 @@
let let
cfg = config.virtualisation.podman; cfg = config.virtualisation.podman;
toml = pkgs.formats.toml { }; toml = pkgs.formats.toml { };
json = pkgs.formats.json { };
inherit (lib) mkOption types; inherit (lib) mkOption types;
@ -22,9 +23,23 @@ let
done done
''; '';
net-conflist = pkgs.runCommand "87-podman-bridge.conflist" {
nativeBuildInputs = [ pkgs.jq ];
extraPlugins = builtins.toJSON cfg.defaultNetwork.extraPlugins;
jqScript = ''
. + { "plugins": (.plugins + $extraPlugins) }
'';
} ''
jq <${cfg.package}/etc/cni/net.d/87-podman-bridge.conflist \
--argjson extraPlugins "$extraPlugins" \
"$jqScript" \
>$out
'';
in in
{ {
imports = [ imports = [
./podman-dnsname.nix
./podman-network-socket.nix ./podman-network-socket.nix
(lib.mkRenamedOptionModule [ "virtualisation" "podman" "libpod" ] [ "virtualisation" "containers" "containersConf" ]) (lib.mkRenamedOptionModule [ "virtualisation" "podman" "libpod" ] [ "virtualisation" "containers" "containersConf" ])
]; ];
@ -99,6 +114,13 @@ in
''; '';
}; };
defaultNetwork.extraPlugins = lib.mkOption {
type = types.listOf json.type;
default = [];
description = ''
Extra CNI plugin configurations to add to podman's default network.
'';
};
}; };
@ -107,7 +129,7 @@ in
environment.systemPackages = [ cfg.package ] environment.systemPackages = [ cfg.package ]
++ lib.optional cfg.dockerCompat dockerCompat; ++ lib.optional cfg.dockerCompat dockerCompat;
environment.etc."cni/net.d/87-podman-bridge.conflist".source = "${cfg.package}/etc/cni/net.d/87-podman-bridge.conflist"; environment.etc."cni/net.d/87-podman-bridge.conflist".source = net-conflist;
virtualisation.containers = { virtualisation.containers = {
enable = true; # Enable common /etc/containers configuration enable = true; # Enable common /etc/containers configuration

View file

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

View file

@ -330,11 +330,13 @@ in
php80 = handleTest ./php { php = pkgs.php80; }; php80 = handleTest ./php { php = pkgs.php80; };
pinnwand = handleTest ./pinnwand.nix {}; pinnwand = handleTest ./pinnwand.nix {};
plasma5 = handleTest ./plasma5.nix {}; plasma5 = handleTest ./plasma5.nix {};
plausible = handleTest ./plausible.nix {};
pleroma = handleTestOn [ "x86_64-linux" "aarch64-linux" ] ./pleroma.nix {}; pleroma = handleTestOn [ "x86_64-linux" "aarch64-linux" ] ./pleroma.nix {};
plikd = handleTest ./plikd.nix {}; plikd = handleTest ./plikd.nix {};
plotinus = handleTest ./plotinus.nix {}; plotinus = handleTest ./plotinus.nix {};
podgrab = handleTest ./podgrab.nix {}; podgrab = handleTest ./podgrab.nix {};
podman = handleTestOn ["x86_64-linux"] ./podman.nix {}; podman = handleTestOn ["x86_64-linux"] ./podman.nix {};
podman-dnsname = handleTestOn ["x86_64-linux"] ./podman-dnsname.nix {};
podman-tls-ghostunnel = handleTestOn ["x86_64-linux"] ./podman-tls-ghostunnel.nix {}; podman-tls-ghostunnel = handleTestOn ["x86_64-linux"] ./podman-tls-ghostunnel.nix {};
pomerium = handleTestOn ["x86_64-linux"] ./pomerium.nix {}; pomerium = handleTestOn ["x86_64-linux"] ./pomerium.nix {};
postfix = handleTest ./postfix.nix {}; postfix = handleTest ./postfix.nix {};

View file

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

View file

@ -0,0 +1,46 @@
import ./make-test-python.nix ({ pkgs, lib, ... }: {
name = "plausible";
meta = with lib.maintainers; {
maintainers = [ ma27 ];
};
machine = { pkgs, ... }: {
virtualisation.memorySize = 4096;
services.plausible = {
enable = true;
adminUser = {
email = "admin@example.org";
passwordFile = "${pkgs.writeText "pwd" "foobar"}";
activate = true;
};
server = {
baseUrl = "http://localhost:8000";
secretKeybaseFile = "${pkgs.writeText "dont-try-this-at-home" "nannannannannannannannannannannannannannannannannannannan_batman!"}";
};
};
};
testScript = ''
start_all()
machine.wait_for_unit("plausible.service")
machine.wait_for_open_port(8000)
machine.succeed("curl -f localhost:8000 >&2")
csrf_token = machine.succeed(
"curl -c /tmp/cookies localhost:8000/login | grep '_csrf_token' | sed -E 's,.*value=\"(.*)\".*,\\1,g'"
)
machine.succeed(
f"curl -b /tmp/cookies -f -X POST localhost:8000/login -F email=admin@example.org -F password=foobar -F _csrf_token={csrf_token.strip()} -D headers"
)
# By ensuring that the user is redirected to the dashboard after login, we
# also make sure that the automatic verification of the module works.
machine.succeed(
"[[ $(grep 'location: ' headers | cut -d: -f2- | xargs echo) == /sites* ]]"
)
machine.shutdown()
'';
})

View file

@ -0,0 +1,42 @@
import ./make-test-python.nix (
{ pkgs, lib, ... }:
let
inherit (pkgs) writeTextDir python3 curl;
webroot = writeTextDir "index.html" "<h1>Hi</h1>";
in
{
name = "podman-dnsname";
meta = {
maintainers = with lib.maintainers; [ roberth ] ++ lib.teams.podman.members;
};
nodes = {
podman = { pkgs, ... }: {
virtualisation.podman.enable = true;
virtualisation.podman.defaultNetwork.dnsname.enable = true;
};
};
testScript = ''
podman.wait_for_unit("sockets.target")
with subtest("DNS works"): # also tests inter-container tcp routing
podman.succeed("tar cv --files-from /dev/null | podman import - scratchimg")
podman.succeed(
"podman run -d --name=webserver -v /nix/store:/nix/store -v /run/current-system/sw/bin:/bin -w ${webroot} scratchimg ${python3}/bin/python -m http.server 8000"
)
podman.succeed("podman ps | grep webserver")
podman.succeed("""
for i in `seq 0 120`; do
podman run --rm --name=client -v /nix/store:/nix/store -v /run/current-system/sw/bin:/bin scratchimg ${curl}/bin/curl http://webserver:8000 >/dev/console \
&& exit 0
sleep 0.5
done
exit 1
""")
podman.succeed("podman stop webserver")
podman.succeed("podman rm webserver")
'';
}
)

View file

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

View file

@ -14,7 +14,7 @@ python3Packages.buildPythonApplication rec {
}; };
propagatedBuildInputs = with pkgs; [ propagatedBuildInputs = with pkgs; [
python3Packages.numpy flac vorbis-tools ffmpeg_3 faad2 lame python3Packages.numpy flac vorbis-tools ffmpeg faad2 lame
]; ];
# There are no tests # There are no tests

View file

@ -0,0 +1,33 @@
{ lib, stdenv, fetchurl, pkg-config, libsndfile, portaudio, gtk2 }:
stdenv.mkDerivation rec {
pname = "gnaural";
version = "20110606";
src = fetchurl {
url = "mirror://sourceforge/${pname}/${pname}_${version}.tar.xz";
hash = "sha256-0a09DUMfHEIGYuIYSBGJalBiIHIgejr/KVDXCFgKBb8=";
};
nativeBuildInputs = [ pkg-config ];
buildInputs = [ gtk2 libsndfile portaudio ];
postInstall = ''
mkdir -p $out/share/applications
substitute \
$out/share/gnome/apps/Multimedia/gnaural.desktop \
$out/share/applications/gnaural.desktop \
--replace \
"/usr/share/gnaural/pixmaps/gnaural-icon.png" \
"$out/share/gnaural/pixmaps/gnaural-icon.png" \
rm -rf $out/share/gnome
'';
meta = with lib; {
description = "Programmable auditory binaural-beat synthesizer";
homepage = "http://gnaural.sourceforge.net/";
maintainers = with maintainers; [ ehmry ];
license = with licenses; [ gpl2Only ];
};
}

View file

@ -14,16 +14,16 @@ let
in in
rustPlatform.buildRustPackage rec { rustPlatform.buildRustPackage rec {
pname = "ncspot"; pname = "ncspot";
version = "0.7.2"; version = "0.7.3";
src = fetchFromGitHub { src = fetchFromGitHub {
owner = "hrkfdn"; owner = "hrkfdn";
repo = "ncspot"; repo = "ncspot";
rev = "v${version}"; rev = "v${version}";
sha256 = "0ww7ipyvcdphbkzjpvdqs1s3bqk3rj3jdy1n3bnk76csw9vgn2zi"; sha256 = "0lfly3d8pag78pabmna4i6xjwzi65dx1mwfmsk7nx64brq3iypbq";
}; };
cargoSha256 = "1mrjp5p3iryxzgg6ca9zjwm8n6w0ljs108ll0wkwgfih6rip7ba4"; cargoSha256 = "0a6d41ll90fza6k3lixjqzwxim98q6zbkqa3zvxvs7q5ydzg8nsp";
cargoBuildFlags = [ "--no-default-features" "--features" "${lib.concatStringsSep "," features}" ]; cargoBuildFlags = [ "--no-default-features" "--features" "${lib.concatStringsSep "," features}" ];

View file

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

View file

@ -1,16 +1,21 @@
{ lib, stdenv, fetchFromGitHub { lib
, stdenv
, fetchFromGitHub
, autoreconfHook , autoreconfHook
, alsaLib, python, SDL }: , alsaLib
, python
, SDL
}:
stdenv.mkDerivation rec { stdenv.mkDerivation rec {
pname = "schismtracker"; pname = "schismtracker";
version = "20200412"; version = "20210525";
src = fetchFromGitHub { src = fetchFromGitHub {
owner = pname; owner = pname;
repo = pname; repo = pname;
rev = version; rev = version;
sha256 = "1n6cgjiw3vkv7a1h1nki5syyjxjb6icknr9s049w2jrag10bxssn"; sha256 = "06ybkbqry7f7lmzgwb9s7ipafshl5gdj98lcjsjkcbnywj8r9b3h";
}; };
configureFlags = [ "--enable-dependency-tracking" ] configureFlags = [ "--enable-dependency-tracking" ]
@ -23,8 +28,8 @@ stdenv.mkDerivation rec {
meta = with lib; { meta = with lib; {
description = "Music tracker application, free reimplementation of Impulse Tracker"; description = "Music tracker application, free reimplementation of Impulse Tracker";
homepage = "http://schismtracker.org/"; homepage = "http://schismtracker.org/";
license = licenses.gpl2; license = licenses.gpl2Plus;
platforms = [ "x86_64-linux" "i686-linux" "x86_64-darwin" ]; platforms = platforms.unix;
maintainers = with maintainers; [ ftrvxmtrx ]; maintainers = with maintainers; [ ftrvxmtrx ];
}; };
} }

View file

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

View file

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

View file

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

View file

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

View file

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

View file

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

View file

@ -242,12 +242,12 @@ in
clion = buildClion rec { clion = buildClion rec {
name = "clion-${version}"; name = "clion-${version}";
version = "2021.1.1"; /* updated by script */ version = "2021.1.2"; /* updated by script */
description = "C/C++ IDE. New. Intelligent. Cross-platform"; description = "C/C++ IDE. New. Intelligent. Cross-platform";
license = lib.licenses.unfree; license = lib.licenses.unfree;
src = fetchurl { src = fetchurl {
url = "https://download.jetbrains.com/cpp/CLion-${version}.tar.gz"; url = "https://download.jetbrains.com/cpp/CLion-${version}.tar.gz";
sha256 = "0xzlkf3gq6fcb0q9mcj8k39880l8h21pb1lz0xl2dqj8cfwpws9h"; /* updated by script */ sha256 = "1zx9qwjx7hwjq25y474yj7sxvp9bqnq9l53afs6d4h6131lhjkcz"; /* updated by script */
}; };
wmClass = "jetbrains-clion"; wmClass = "jetbrains-clion";
update-channel = "CLion RELEASE"; # channel's id as in http://www.jetbrains.com/updates/updates.xml update-channel = "CLion RELEASE"; # channel's id as in http://www.jetbrains.com/updates/updates.xml
@ -255,12 +255,12 @@ in
datagrip = buildDataGrip rec { datagrip = buildDataGrip rec {
name = "datagrip-${version}"; name = "datagrip-${version}";
version = "2021.1.1"; /* updated by script */ version = "2021.1.2"; /* updated by script */
description = "Your Swiss Army Knife for Databases and SQL"; description = "Your Swiss Army Knife for Databases and SQL";
license = lib.licenses.unfree; license = lib.licenses.unfree;
src = fetchurl { src = fetchurl {
url = "https://download.jetbrains.com/datagrip/${name}.tar.gz"; url = "https://download.jetbrains.com/datagrip/${name}.tar.gz";
sha256 = "0smg0qbk3mnm2543w0nlvnyvbwmprf0p3z2spwrmcmfagv50crrx"; /* updated by script */ sha256 = "1znb4m7sv7xqi1mq3yw0m51m06wfwmhhxmvck0xkv8s0cfg18qim"; /* updated by script */
}; };
wmClass = "jetbrains-datagrip"; wmClass = "jetbrains-datagrip";
update-channel = "DataGrip RELEASE"; update-channel = "DataGrip RELEASE";
@ -268,12 +268,12 @@ in
goland = buildGoland rec { goland = buildGoland rec {
name = "goland-${version}"; name = "goland-${version}";
version = "2021.1.1"; /* updated by script */ version = "2021.1.2"; /* updated by script */
description = "Up and Coming Go IDE"; description = "Up and Coming Go IDE";
license = lib.licenses.unfree; license = lib.licenses.unfree;
src = fetchurl { src = fetchurl {
url = "https://download.jetbrains.com/go/${name}.tar.gz"; url = "https://download.jetbrains.com/go/${name}.tar.gz";
sha256 = "02fyrq4px9w34amincgjgm6maxpxn445j5h4nfbskx7z428ynx25"; /* updated by script */ sha256 = "0g20r7yn4r2h08wv3i8bnnma8x4jljixsbmfml8kixk0pzfhv4px"; /* updated by script */
}; };
wmClass = "jetbrains-goland"; wmClass = "jetbrains-goland";
update-channel = "GoLand RELEASE"; update-channel = "GoLand RELEASE";
@ -281,12 +281,12 @@ in
idea-community = buildIdea rec { idea-community = buildIdea rec {
name = "idea-community-${version}"; name = "idea-community-${version}";
version = "2021.1.1"; /* updated by script */ version = "2021.1.2"; /* updated by script */
description = "Integrated Development Environment (IDE) by Jetbrains, community edition"; description = "Integrated Development Environment (IDE) by Jetbrains, community edition";
license = lib.licenses.asl20; license = lib.licenses.asl20;
src = fetchurl { src = fetchurl {
url = "https://download.jetbrains.com/idea/ideaIC-${version}.tar.gz"; url = "https://download.jetbrains.com/idea/ideaIC-${version}.tar.gz";
sha256 = "1say19p7kgx4b2ccs9bv61phllzhl8gmrd1fp1a5cnagya7vl1c5"; /* updated by script */ sha256 = "03i5f6p0abr9yfs9fg90fg7hb1a7zar9q4d4iiag30cmndwpslg2"; /* updated by script */
}; };
wmClass = "jetbrains-idea-ce"; wmClass = "jetbrains-idea-ce";
update-channel = "IntelliJ IDEA RELEASE"; update-channel = "IntelliJ IDEA RELEASE";
@ -294,12 +294,12 @@ in
idea-ultimate = buildIdea rec { idea-ultimate = buildIdea rec {
name = "idea-ultimate-${version}"; name = "idea-ultimate-${version}";
version = "2021.1.1"; /* updated by script */ version = "2021.1.2"; /* updated by script */
description = "Integrated Development Environment (IDE) by Jetbrains, requires paid license"; description = "Integrated Development Environment (IDE) by Jetbrains, requires paid license";
license = lib.licenses.unfree; license = lib.licenses.unfree;
src = fetchurl { src = fetchurl {
url = "https://download.jetbrains.com/idea/ideaIU-${version}-no-jbr.tar.gz"; url = "https://download.jetbrains.com/idea/ideaIU-${version}-no-jbr.tar.gz";
sha256 = "19zi4njz79z8gi458kz1m0sia79y3rhbayix4rmh93mwfc0npkii"; /* updated by script */ sha256 = "0mw4acaik1bkr7gqbwgs3i8f8px8zw95hm1zxgd5gd5kh88n17x5"; /* updated by script */
}; };
wmClass = "jetbrains-idea"; wmClass = "jetbrains-idea";
update-channel = "IntelliJ IDEA RELEASE"; update-channel = "IntelliJ IDEA RELEASE";
@ -359,12 +359,12 @@ in
rider = buildRider rec { rider = buildRider rec {
name = "rider-${version}"; name = "rider-${version}";
version = "2021.1.2"; /* updated by script */ version = "2021.1.3"; /* updated by script */
description = "A cross-platform .NET IDE based on the IntelliJ platform and ReSharper"; description = "A cross-platform .NET IDE based on the IntelliJ platform and ReSharper";
license = lib.licenses.unfree; license = lib.licenses.unfree;
src = fetchurl { src = fetchurl {
url = "https://download.jetbrains.com/rider/JetBrains.Rider-${version}.tar.gz"; url = "https://download.jetbrains.com/rider/JetBrains.Rider-${version}.tar.gz";
sha256 = "1a28pi18j0cb2wxhw1vnfg9gqsgf2kyfg0hl4xgqp50gzv7i3aam"; /* updated by script */ sha256 = "0k2vpndpachq6g767v2dwfa3xc8mssv0i7wwpm05dgqirpn4n0dw"; /* updated by script */
}; };
wmClass = "jetbrains-rider"; wmClass = "jetbrains-rider";
update-channel = "Rider RELEASE"; update-channel = "Rider RELEASE";
@ -385,12 +385,12 @@ in
webstorm = buildWebStorm rec { webstorm = buildWebStorm rec {
name = "webstorm-${version}"; name = "webstorm-${version}";
version = "2021.1.1"; /* updated by script */ version = "2021.1.2"; /* updated by script */
description = "Professional IDE for Web and JavaScript development"; description = "Professional IDE for Web and JavaScript development";
license = lib.licenses.unfree; license = lib.licenses.unfree;
src = fetchurl { src = fetchurl {
url = "https://download.jetbrains.com/webstorm/WebStorm-${version}.tar.gz"; url = "https://download.jetbrains.com/webstorm/WebStorm-${version}.tar.gz";
sha256 = "1hici40qsxj2fw29g68i6hr1vhr0h7xrlhkialy74ah53wi7myz1"; /* updated by script */ sha256 = "0q4hn6npm0c30v23d30dnphd6wajif0im1b9vjwa121lqi997l34"; /* updated by script */
}; };
wmClass = "jetbrains-webstorm"; wmClass = "jetbrains-webstorm";
update-channel = "WebStorm RELEASE"; update-channel = "WebStorm RELEASE";

View file

@ -2,20 +2,20 @@
buildGoModule rec { buildGoModule rec {
pname = "micro"; pname = "micro";
version = "2.0.8"; version = "2.0.9";
src = fetchFromGitHub { src = fetchFromGitHub {
owner = "zyedidia"; owner = "zyedidia";
repo = pname; repo = pname;
rev = "v${version}"; rev = "v${version}";
sha256 = "1b51fvc9hrjfl8acr3yybp66xfll7d43412qwi76wxwarn06gkci"; sha256 = "sha256-8QtucdamxVwHuuhQhVQuvTNbqY5p97LKSB23617p4ow=";
}; };
nativeBuildInputs = [ installShellFiles ]; nativeBuildInputs = [ installShellFiles ];
subPackages = [ "cmd/micro" ]; subPackages = [ "cmd/micro" ];
vendorSha256 = "19iqvl63g9y6gkzfmv87rrgj4c4y6ngh467ss94rzrhaybj2b2d8"; vendorSha256 = "sha256-bkD125ePdKcVgmNilOMZgUK6A8KWxaBOGKs8AvvIboI=";
buildFlagsArray = [ "-ldflags=-s -w -X github.com/zyedidia/micro/v2/internal/util.Version=${version} -X github.com/zyedidia/micro/v2/internal/util.CommitHash=${src.rev}" ]; buildFlagsArray = [ "-ldflags=-s -w -X github.com/zyedidia/micro/v2/internal/util.Version=${version} -X github.com/zyedidia/micro/v2/internal/util.CommitHash=${src.rev}" ];

View file

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

View file

@ -3,13 +3,13 @@
mkDerivation rec { mkDerivation rec {
pname = "texstudio"; pname = "texstudio";
version = "3.1.1"; version = "3.1.2";
src = fetchFromGitHub { src = fetchFromGitHub {
owner = "${pname}-org"; owner = "${pname}-org";
repo = pname; repo = pname;
rev = version; rev = version;
sha256 = "sha256-MFCQwhdF+WCTqDt4q5qw431y/zqEy9vHudcUYb4BYNQ="; sha256 = "0h5g1sirsy1f2xlq85c1ik1s52gycfipy9yx0flgaw8m4wmhz26v";
}; };
nativeBuildInputs = [ qmake wrapQtAppsHook pkg-config ]; nativeBuildInputs = [ qmake wrapQtAppsHook pkg-config ];

View file

@ -1,6 +1,7 @@
{ lib, stdenv, fetchFromGitHub, libpng, python3 { lib, stdenv, fetchFromGitHub, libpng, python3
, libGLU, libGL, qtbase, wrapQtAppsHook, ncurses , libGLU, libGL, qtbase, wrapQtAppsHook, ncurses
, cmake, flex, lemon , cmake, flex, lemon
, makeDesktopItem, copyDesktopItems
}: }:
let let
@ -27,12 +28,35 @@ in
sed -i "s,python3,${python3.executable}," CMakeLists.txt sed -i "s,python3,${python3.executable}," CMakeLists.txt
''; '';
postInstall = lib.optionalString stdenv.isLinux ''
install -Dm644 $src/deploy/icon.svg $out/share/icons/hicolor/scalable/apps/antimony.svg
install -Dm644 ${./mimetype.xml} $out/share/mime/packages/antimony.xml
'';
buildInputs = [ buildInputs = [
libpng python3 python3.pkgs.boost libpng python3 python3.pkgs.boost
libGLU libGL qtbase ncurses libGLU libGL qtbase ncurses
]; ];
nativeBuildInputs = [ cmake flex lemon wrapQtAppsHook ]; nativeBuildInputs = [ cmake flex lemon wrapQtAppsHook copyDesktopItems ];
desktopItems = [
(makeDesktopItem {
name = "antimony";
desktopName = "Antimony";
comment="Tree-based Modeler";
genericName = "CAD Application";
exec = "antimony %f";
icon = "antimony";
terminal = "false";
categories = "Graphics;Science;Engineering";
mimeType = "application/x-extension-sb;application/x-antimony;";
extraEntries = ''
StartupWMClass=antimony
Version=1.0
'';
})
];
cmakeFlags= [ cmakeFlags= [
"-DGITREV=${gitRev}" "-DGITREV=${gitRev}"

View file

@ -0,0 +1,7 @@
<?xml version="1.0" encoding="UTF-8"?>
<mime-info xmlns="http://www.freedesktop.org/standards/shared-mime-info">
<mime-type type="application/x-antimony">
<comment xml:lang="en">Antimony model</comment>
<glob pattern="*.sb"/>
</mime-type>
</mime-info>

View file

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

View file

@ -54,6 +54,10 @@ stdenv.mkDerivation rec {
substituteAll ${./nufraw.thumbnailer} $out/share/thumbnailers/${pname}.thumbnailer substituteAll ${./nufraw.thumbnailer} $out/share/thumbnailers/${pname}.thumbnailer
''; '';
# Fixes an upstream issue where headers with templates were included in an extern-C scope
# which caused the build to fail
patches = [ ./move-extern-c.patch ];
meta = with lib; { meta = with lib; {
homepage = "https://nufraw.sourceforge.io/"; homepage = "https://nufraw.sourceforge.io/";
description = "Utility to read and manipulate raw images from digital cameras"; description = "Utility to read and manipulate raw images from digital cameras";

View file

@ -0,0 +1,21 @@
diff --git a/uf_glib.h b/uf_glib.h
index c1a17bd..8a10800 100644
--- a/uf_glib.h
+++ b/uf_glib.h
@@ -13,13 +13,13 @@
#ifndef _UF_GLIB_H
#define _UF_GLIB_H
+#include <glib.h>
+#include <glib/gstdio.h>
+
#ifdef __cplusplus
extern "C" {
#endif
-#include <glib.h>
-#include <glib/gstdio.h>
-
// g_win32_locale_filename_from_utf8 is needed only on win32
#ifdef _WIN32
#define uf_win32_locale_filename_from_utf8(__some_string__) \

View file

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

View file

@ -2,7 +2,7 @@
, libxml2, gnutls, sane-backends }: , libxml2, gnutls, sane-backends }:
stdenv.mkDerivation rec { stdenv.mkDerivation rec {
pname = "sane-airscan"; pname = "sane-airscan";
version = "0.99.24"; version = "0.99.26";
nativeBuildInputs = [ meson ninja pkg-config ]; nativeBuildInputs = [ meson ninja pkg-config ];
buildInputs = [ avahi gnutls libjpeg libpng libxml2 sane-backends ]; buildInputs = [ avahi gnutls libjpeg libpng libxml2 sane-backends ];
@ -11,7 +11,7 @@ stdenv.mkDerivation rec {
owner = "alexpevzner"; owner = "alexpevzner";
repo = pname; repo = pname;
rev = version; rev = version;
sha256 = "sha256-2zSLC9P7Q/GMefHvmrUz6nV2hgScb4BhPAkahNBouqk="; sha256 = "08snfg5zx9924ryww0kxf1kgl085yw7fg6l4f1kzlhcmqf1958w5";
}; };
meta = with lib; { meta = with lib; {

View file

@ -1,36 +1,47 @@
{ lib, mkDerivation, fetchurl, cmake, pkg-config, sword, boost, clucene_core { lib, mkDerivation, fetchurl, cmake, pkg-config, sword, boost, clucene_core
, qtbase, qttools, qtsvg, qtwebkit , qtbase, qttools, qtsvg, perlPackages, docbook_xml_dtd_45
}: , docbook_xsl_ns }:
mkDerivation rec { mkDerivation rec {
version = "2.11.2"; version = "3.0";
pname = "bibletime"; pname = "bibletime";
src = fetchurl { src = fetchurl {
url = "mirror://sourceforge/bibletime/${pname}-${version}.tar.xz"; url =
sha256 = "1s5bvmwbz1gyp3ml8sghpc00h8nhdvx2iyq96iri30kwx1y1jy6i"; "https://github.com/bibletime/bibletime/releases/download/v${version}/${pname}-${version}.tar.xz";
sha256 = "08i6nb9a7z0jpsq76q0kr62hw6ph9chqjpjcvkimbcj4mmifzgnn";
}; };
nativeBuildInputs = [ cmake pkg-config ]; nativeBuildInputs = [ cmake pkg-config docbook_xml_dtd_45 ];
buildInputs = [ buildInputs = [
sword boost clucene_core sword
qtbase qttools qtsvg qtwebkit boost
]; clucene_core
qtbase
qttools
qtsvg
perlPackages.Po4a
];
preConfigure = '' preConfigure = ''
export CLUCENE_HOME=${clucene_core}; export CLUCENE_HOME=${clucene_core};
export SWORD_HOME=${sword}; export SWORD_HOME=${sword};
''; '';
cmakeFlags = [ "-DUSE_QT_WEBKIT=ON" "-DCMAKE_BUILD_TYPE=Debug" ]; cmakeFlags = [
"-DBUILD_HOWTO_PDF=OFF"
"-DBUILD_HANDBOOK_PDF=OFF"
"-DBT_DOCBOOK_XSL_HTML_CHUNK_XSL=${docbook_xsl_ns}/share/xml/docbook-xsl-ns/html/chunk.xsl"
"-DBT_DOCBOOK_XSL_PDF_DOCBOOK_XSL=${docbook_xsl_ns}/share/xml/docbook-xsl-ns/html/chunk.xsl"
];
meta = { meta = {
description = "A Qt4 Bible study tool"; description = "A Qt4 Bible study tool";
homepage = "http://www.bibletime.info/"; homepage = "http://www.bibletime.info/";
platforms = lib.platforms.linux; platforms = lib.platforms.linux;
license = lib.licenses.gpl2; license = lib.licenses.gpl2Plus;
maintainers = [ lib.maintainers.piotr ]; maintainers = [ lib.maintainers.piotr ];
}; };
} }

View file

@ -1,5 +1,4 @@
diff --git a/build_files/cmake/platform/platform_apple.cmake b/build_files/cmake/platform/platform_apple.cmake diff --git a/build_files/cmake/platform/platform_apple.cmake b/build_files/cmake/platform/platform_apple.cmake
index 31da529..90308aa 100644
--- a/build_files/cmake/platform/platform_apple.cmake --- a/build_files/cmake/platform/platform_apple.cmake
+++ b/build_files/cmake/platform/platform_apple.cmake +++ b/build_files/cmake/platform/platform_apple.cmake
@@ -77,7 +77,6 @@ else() @@ -77,7 +77,6 @@ else()
@ -10,7 +9,7 @@ index 31da529..90308aa 100644
endif() endif()
# Prefer lib directory paths # Prefer lib directory paths
@@ -113,10 +112,6 @@ if(WITH_CODEC_SNDFILE) @@ -114,10 +113,6 @@ if(WITH_CODEC_SNDFILE)
find_library(_sndfile_VORBIS_LIBRARY NAMES vorbis HINTS ${LIBDIR}/ffmpeg/lib) find_library(_sndfile_VORBIS_LIBRARY NAMES vorbis HINTS ${LIBDIR}/ffmpeg/lib)
find_library(_sndfile_VORBISENC_LIBRARY NAMES vorbisenc HINTS ${LIBDIR}/ffmpeg/lib) find_library(_sndfile_VORBISENC_LIBRARY NAMES vorbisenc HINTS ${LIBDIR}/ffmpeg/lib)
list(APPEND LIBSNDFILE_LIBRARIES list(APPEND LIBSNDFILE_LIBRARIES
@ -21,16 +20,16 @@ index 31da529..90308aa 100644
) )
print_found_status("SndFile libraries" "${LIBSNDFILE_LIBRARIES}") print_found_status("SndFile libraries" "${LIBSNDFILE_LIBRARIES}")
@@ -133,7 +128,7 @@ if(WITH_PYTHON) @@ -134,7 +129,7 @@ if(WITH_PYTHON)
# normally cached but not since we include them with blender # normally cached but not since we include them with blender
set(PYTHON_INCLUDE_DIR "${LIBDIR}/python/include/python${PYTHON_VERSION}m") set(PYTHON_INCLUDE_DIR "${LIBDIR}/python/include/python${PYTHON_VERSION}")
set(PYTHON_EXECUTABLE "${LIBDIR}/python/bin/python${PYTHON_VERSION}m") set(PYTHON_EXECUTABLE "${LIBDIR}/python/bin/python${PYTHON_VERSION}")
- set(PYTHON_LIBRARY ${LIBDIR}/python/lib/libpython${PYTHON_VERSION}m.a) - set(PYTHON_LIBRARY ${LIBDIR}/python/lib/libpython${PYTHON_VERSION}.a)
+ set(PYTHON_LIBRARY "${LIBDIR}/python/lib/libpython${PYTHON_VERSION}m.dylib") + set(PYTHON_LIBRARY ${LIBDIR}/python/lib/libpython${PYTHON_VERSION}.dylib)
set(PYTHON_LIBPATH "${LIBDIR}/python/lib/python${PYTHON_VERSION}") set(PYTHON_LIBPATH "${LIBDIR}/python/lib/python${PYTHON_VERSION}")
# set(PYTHON_LINKFLAGS "-u _PyMac_Error") # won't build with this enabled # set(PYTHON_LINKFLAGS "-u _PyMac_Error") # won't build with this enabled
else() else()
@@ -174,9 +169,7 @@ endif() @@ -175,9 +170,7 @@ endif()
if(WITH_CODEC_FFMPEG) if(WITH_CODEC_FFMPEG)
set(FFMPEG_FIND_COMPONENTS set(FFMPEG_FIND_COMPONENTS
avcodec avdevice avformat avutil avcodec avdevice avformat avutil
@ -41,7 +40,7 @@ index 31da529..90308aa 100644
find_package(FFmpeg) find_package(FFmpeg)
endif() endif()
@@ -267,7 +260,6 @@ if(WITH_BOOST) @@ -275,7 +268,6 @@ if(WITH_BOOST)
endif() endif()
if(WITH_INTERNATIONAL OR WITH_CODEC_FFMPEG) if(WITH_INTERNATIONAL OR WITH_CODEC_FFMPEG)
@ -49,7 +48,7 @@ index 31da529..90308aa 100644
endif() endif()
if(WITH_PUGIXML) if(WITH_PUGIXML)
@@ -451,7 +443,7 @@ else() @@ -476,7 +468,7 @@ else()
set(CMAKE_CXX_FLAGS_RELEASE "-O2 -mdynamic-no-pic") set(CMAKE_CXX_FLAGS_RELEASE "-O2 -mdynamic-no-pic")
endif() endif()

View file

@ -1,7 +1,7 @@
{ config, stdenv, lib, fetchurl, fetchzip, boost, cmake, ffmpeg, gettext, glew { config, stdenv, lib, fetchurl, fetchzip, boost, cmake, ffmpeg, gettext, glew
, ilmbase, libXi, libX11, libXext, libXrender , ilmbase, libXi, libX11, libXext, libXrender
, libjpeg, libpng, libsamplerate, libsndfile , libjpeg, libpng, libsamplerate, libsndfile
, libtiff, libGLU, libGL, openal, opencolorio, openexr, openimagedenoise, openimageio2, openjpeg, python3Packages , libtiff, libGLU, libGL, openal, opencolorio, openexr, openimagedenoise, openimageio2, openjpeg, python39Packages
, openvdb, libXxf86vm, tbb, alembic , openvdb, libXxf86vm, tbb, alembic
, zlib, fftw, opensubdiv, freetype, jemalloc, ocl-icd, addOpenGLRunpath , zlib, fftw, opensubdiv, freetype, jemalloc, ocl-icd, addOpenGLRunpath
, jackaudioSupport ? false, libjack2 , jackaudioSupport ? false, libjack2
@ -17,7 +17,7 @@
with lib; with lib;
let let
python = python3Packages.python; python = python39Packages.python;
optix = fetchzip { optix = fetchzip {
url = "https://developer.download.nvidia.com/redist/optix/v7.0/OptiX-7.0.0-include.zip"; url = "https://developer.download.nvidia.com/redist/optix/v7.0/OptiX-7.0.0-include.zip";
sha256 = "1b3ccd3197anya2bj3psxdrvrpfgiwva5zfv2xmyrl73nb2dvfr7"; sha256 = "1b3ccd3197anya2bj3psxdrvrpfgiwva5zfv2xmyrl73nb2dvfr7";
@ -26,16 +26,16 @@ let
in in
stdenv.mkDerivation rec { stdenv.mkDerivation rec {
pname = "blender"; pname = "blender";
version = "2.92.0"; version = "2.93.0";
src = fetchurl { src = fetchurl {
url = "https://download.blender.org/source/${pname}-${version}.tar.xz"; url = "https://download.blender.org/source/${pname}-${version}.tar.xz";
sha256 = "15a5vffn18a920286x0avbc2rap56k6y531wgibq68r90g2cz4g7"; sha256 = "0f2rpqa39sir6g90khd2d2fs4kss0zhk7vya1nscf5yp8r566fxs";
}; };
patches = lib.optional stdenv.isDarwin ./darwin.patch; patches = lib.optional stdenv.isDarwin ./darwin.patch;
nativeBuildInputs = [ cmake makeWrapper python3Packages.wrapPython llvmPackages.llvm.dev ] nativeBuildInputs = [ cmake makeWrapper python39Packages.wrapPython llvmPackages.llvm.dev ]
++ optionals cudaSupport [ addOpenGLRunpath ]; ++ optionals cudaSupport [ addOpenGLRunpath ];
buildInputs = buildInputs =
[ boost ffmpeg gettext glew ilmbase [ boost ffmpeg gettext glew ilmbase
@ -64,7 +64,7 @@ stdenv.mkDerivation rec {
++ optional cudaSupport cudatoolkit ++ optional cudaSupport cudatoolkit
++ optional colladaSupport opencollada ++ optional colladaSupport opencollada
++ optional spaceNavSupport libspnav; ++ optional spaceNavSupport libspnav;
pythonPath = with python3Packages; [ numpy requests ]; pythonPath = with python39Packages; [ numpy requests ];
postPatch = '' postPatch = ''
# allow usage of dynamically linked embree # allow usage of dynamically linked embree
@ -78,16 +78,12 @@ stdenv.mkDerivation rec {
--replace '${"$"}{LIBDIR}/openmp' \ --replace '${"$"}{LIBDIR}/openmp' \
'${llvmPackages.openmp}' '${llvmPackages.openmp}'
substituteInPlace build_files/cmake/platform/platform_apple.cmake \ substituteInPlace build_files/cmake/platform/platform_apple.cmake \
--replace 'set(PYTHON_VERSION 3.7)' \
'set(PYTHON_VERSION ${python.pythonVersion})' \
--replace '${"$"}{PYTHON_VERSION}m' \
'${"$"}{PYTHON_VERSION}' \
--replace '${"$"}{LIBDIR}/python' \ --replace '${"$"}{LIBDIR}/python' \
'${python}' \ '${python}' \
--replace '${"$"}{LIBDIR}/opencollada' \ --replace '${"$"}{LIBDIR}/opencollada' \
'${opencollada}' \ '${opencollada}' \
--replace '${"$"}{PYTHON_LIBPATH}/site-packages/numpy' \ --replace '${"$"}{PYTHON_LIBPATH}/site-packages/numpy' \
'${python3Packages.numpy}/${python.sitePackages}/numpy' '${python39Packages.numpy}/${python.sitePackages}/numpy'
'' else '' '' else ''
substituteInPlace extern/clew/src/clew.c --replace '"libOpenCL.so"' '"${ocl-icd}/lib/libOpenCL.so"' substituteInPlace extern/clew/src/clew.c --replace '"libOpenCL.so"' '"${ocl-icd}/lib/libOpenCL.so"'
''); '');
@ -109,8 +105,8 @@ stdenv.mkDerivation rec {
"-DPYTHON_VERSION=${python.pythonVersion}" "-DPYTHON_VERSION=${python.pythonVersion}"
"-DWITH_PYTHON_INSTALL=OFF" "-DWITH_PYTHON_INSTALL=OFF"
"-DWITH_PYTHON_INSTALL_NUMPY=OFF" "-DWITH_PYTHON_INSTALL_NUMPY=OFF"
"-DPYTHON_NUMPY_PATH=${python3Packages.numpy}/${python.sitePackages}" "-DPYTHON_NUMPY_PATH=${python39Packages.numpy}/${python.sitePackages}"
"-DPYTHON_NUMPY_INCLUDE_DIRS=${python3Packages.numpy}/${python.sitePackages}/numpy/core/include" "-DPYTHON_NUMPY_INCLUDE_DIRS=${python39Packages.numpy}/${python.sitePackages}/numpy/core/include"
"-DWITH_PYTHON_INSTALL_REQUESTS=OFF" "-DWITH_PYTHON_INSTALL_REQUESTS=OFF"
"-DWITH_OPENVDB=ON" "-DWITH_OPENVDB=ON"
"-DWITH_TBB=ON" "-DWITH_TBB=ON"

View file

@ -1,4 +1,6 @@
{ stdenv, mkDerivation, lib, fetchFromGitHub, qmake, qttools, qttranslations }: { stdenv, mkDerivation, lib, fetchFromGitHub, substituteAll
, qmake, qttools, qttranslations
}:
mkDerivation rec { mkDerivation rec {
pname = "gpxlab"; pname = "gpxlab";
@ -11,8 +13,13 @@ mkDerivation rec {
sha256 = "080vnwcciqblfrbfyz9gjhl2lqw1hkdpbgr5qfrlyglkd4ynjd84"; sha256 = "080vnwcciqblfrbfyz9gjhl2lqw1hkdpbgr5qfrlyglkd4ynjd84";
}; };
nativeBuildInputs = [ qmake ]; patches = (substituteAll {
buildInputs = [ qttools qttranslations ]; # See https://github.com/NixOS/nixpkgs/issues/86054
src = ./fix-qttranslations-path.patch;
inherit qttranslations;
});
nativeBuildInputs = [ qmake qttools ];
preConfigure = '' preConfigure = ''
lrelease GPXLab/locale/*.ts lrelease GPXLab/locale/*.ts
@ -24,8 +31,6 @@ mkDerivation rec {
wrapQtApp $out/Applications/GPXLab.app/Contents/MacOS/GPXLab wrapQtApp $out/Applications/GPXLab.app/Contents/MacOS/GPXLab
''; '';
enableParallelBuilding = true;
meta = with lib; { meta = with lib; {
homepage = "https://github.com/BourgeoisLab/GPXLab"; homepage = "https://github.com/BourgeoisLab/GPXLab";
description = "Program to show and manipulate GPS tracks"; description = "Program to show and manipulate GPS tracks";
@ -33,8 +38,8 @@ mkDerivation rec {
GPXLab is an application to display and manage GPS tracks GPXLab is an application to display and manage GPS tracks
previously recorded with a GPS tracker. previously recorded with a GPS tracker.
''; '';
license = licenses.gpl3; license = licenses.gpl3Only;
maintainers = with maintainers; [ sikmir ]; maintainers = with maintainers; [ sikmir ];
platforms = with platforms; linux ++ darwin; platforms = platforms.unix;
}; };
} }

View file

@ -0,0 +1,17 @@
diff --git i/GPXLab/main.cpp w/GPXLab/main.cpp
index b12d2dd..58d37c5 100644
--- i/GPXLab/main.cpp
+++ w/GPXLab/main.cpp
@@ -19,10 +19,10 @@ int main(int argc, char *argv[])
app.installTranslator(&gpxlab);
QTranslator qt;
-#if defined(Q_OS_WIN32) || defined(Q_OS_MAC)
+#if defined(Q_OS_WIN32)
qt.load(QLocale::system(), "qt", "_", TRANSLATIONS_DIR);
#else
- qt.load(QLocale::system(), "qt", "_", QLibraryInfo::location(QLibraryInfo::TranslationsPath));
+ qt.load(QLocale::system(), "qt", "_", QLatin1String("@qttranslations@/translations"));
#endif
app.installTranslator(&qt);

View file

@ -0,0 +1,37 @@
{ lib, stdenv, fetchFromGitHub, meson, ninja, pkg-config, systemd, inih }:
stdenv.mkDerivation rec {
pname = "iptsd";
version = "0.4";
src = fetchFromGitHub {
owner = "linux-surface";
repo = pname;
rev = "v${version}";
sha256 = "sha256-CoPgkt7n2kk7WlQHe0RjNlxfp2Nd8BbIE2gyf0bOBy4=";
};
nativeBuildInputs = [ meson ninja pkg-config ];
buildInputs = [ systemd inih ];
# Original installs udev rules and service config into global paths
postPatch = ''
substituteInPlace meson.build \
--replace "install_dir: unitdir" "install_dir: datadir" \
--replace "install_dir: rulesdir" "install_dir: datadir" \
'';
mesonFlags = [
"-Dsystemd=true"
"-Dsample_config=false"
"-Ddebug_tool=false"
];
meta = with lib; {
description = "Userspace daemon for Intel Precise Touch & Stylus";
homepage = "https://github.com/linux-surface/iptsd";
license = licenses.gpl2Only;
maintainers = with maintainers; [ tomberek ];
platforms = platforms.linux;
};
}

View file

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

View file

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

View file

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

View file

@ -20,13 +20,13 @@ assert withNerdIcons -> withIcons == false;
stdenv.mkDerivation rec { stdenv.mkDerivation rec {
pname = "nnn"; pname = "nnn";
version = "4.0"; version = "4.1.1";
src = fetchFromGitHub { src = fetchFromGitHub {
owner = "jarun"; owner = "jarun";
repo = pname; repo = pname;
rev = "v${version}"; rev = "v${version}";
sha256 = "0cbxgss9j0bvsp3czjx1kpm9id7c5xxmjfnvjyk3pfd69ygif2kl"; sha256 = "09z37lv57nbp0l1ax28558jk5jv91lb22bgaclirvdyz2qp47xhj";
}; };
configFile = lib.optionalString (conf != null) (builtins.toFile "nnn.h" conf); configFile = lib.optionalString (conf != null) (builtins.toFile "nnn.h" conf);

View file

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

View file

@ -2,13 +2,13 @@
mkDerivation rec { mkDerivation rec {
pname = "openrgb"; pname = "openrgb";
version = "0.5"; version = "0.6";
src = fetchFromGitLab { src = fetchFromGitLab {
owner = "CalcProgrammer1"; owner = "CalcProgrammer1";
repo = "OpenRGB"; repo = "OpenRGB";
rev = "release_${version}"; rev = "release_${version}";
sha256 = "001x2ycfmlb9s21sp91aw5gxizcn6kzm8x7bvkps4b1iq0ap5fzv"; sha256 = "sha256-x/wGD39Jm/kmcTEZP3BnLXxyv/jkPOJd6mLCO0dp5wM=";
}; };
nativeBuildInputs = [ qmake pkg-config ]; nativeBuildInputs = [ qmake pkg-config ];

View file

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

View file

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

View file

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

View file

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

View file

@ -0,0 +1,38 @@
{ lib, fetchFromGitHub, gobject-introspection, gtk3, gtksourceview3, wrapGAppsHook, python3Packages }:
python3Packages.buildPythonApplication rec {
pname = "skytemple";
version = "1.2.3";
src = fetchFromGitHub {
owner = "SkyTemple";
repo = pname;
rev = version;
sha256 = "0l2c4qngv58j6zkp0va6m96zksx8gqn3mjc3isqybfnhjr6nd3v9";
};
buildInputs = [ gobject-introspection gtk3 gtksourceview3 ];
nativeBuildInputs = [ gobject-introspection wrapGAppsHook ];
propagatedBuildInputs = with python3Packages; [
natsort
packaging
pycairo
pygal
pypresence
setuptools
skytemple-dtef
skytemple-eventserver
skytemple-files
skytemple-icons
skytemple-ssb-debugger
];
doCheck = false; # there are no tests
meta = with lib; {
homepage = "https://github.com/SkyTemple/skytemple";
description = "ROM hacking tool for Pokémon Mystery Dungeon Explorers of Sky";
license = licenses.gpl3Plus;
maintainers = with maintainers; [ xfix ];
};
}

View file

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

View file

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

View file

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

View file

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

View file

@ -90,11 +90,11 @@ in
stdenv.mkDerivation rec { stdenv.mkDerivation rec {
pname = "brave"; pname = "brave";
version = "1.24.86"; version = "1.25.68";
src = fetchurl { src = fetchurl {
url = "https://github.com/brave/brave-browser/releases/download/v${version}/brave-browser_${version}_amd64.deb"; url = "https://github.com/brave/brave-browser/releases/download/v${version}/brave-browser_${version}_amd64.deb";
sha256 = "VKUs8PPyAbuH91Zck0QTiFCEUOMDlLT4Itv4MXi4Ygg="; sha256 = "OBf42L6pctflNLjtcbnw2wKo7TisRSMF3SriDPFlB6I=";
}; };
dontConfigure = true; dontConfigure = true;

View file

@ -31,9 +31,9 @@
} }
}, },
"dev": { "dev": {
"version": "92.0.4515.20", "version": "92.0.4515.40",
"sha256": "0xmpmjpxr4bgy62d71ky9asxwbgnx60mrp9f1dxm9nm92dv6w0ac", "sha256": "1v0vmnzdqq7d2rqp1sam8nk7z20xg5l9lnlpqjxj30y8k37gzh8p",
"sha256bin64": "1la5mrh33izl7nf1rr899ljh448ckpqz2bp0vac83vb8952krm05", "sha256bin64": "12kfzgg0fhlrvr3ci1gzsn5rzdwr4dc2k3sj45j4dn7wnrjlpmbx",
"deps": { "deps": {
"gn": { "gn": {
"version": "2021-05-07", "version": "2021-05-07",

View file

@ -32,10 +32,10 @@ rec {
firefox-esr-78 = common rec { firefox-esr-78 = common rec {
pname = "firefox-esr"; pname = "firefox-esr";
ffversion = "78.10.1esr"; ffversion = "78.11.0esr";
src = fetchurl { src = fetchurl {
url = "mirror://mozilla/firefox/releases/${ffversion}/source/firefox-${ffversion}.source.tar.xz"; url = "mirror://mozilla/firefox/releases/${ffversion}/source/firefox-${ffversion}.source.tar.xz";
sha512 = "a22773d9b3f0dca253805257f358a906769d23f15115e3a8851024f701e27dee45f056f7d34ebf1fcde0a3f91ec299639c2a12556e938a232cdea9e59835fde1"; sha512 = "d02fc2eda587155b1c54ca12a6c5cde220a29f41f154f1c9b71ae8f966d8cc9439201a5b241e03fc0795b74e2479f7aa5d6b69f70b7639432e5382f321f7a6f4";
}; };
meta = { meta = {

View file

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

View file

@ -31,12 +31,12 @@ let
in mkDerivationWith python3Packages.buildPythonApplication rec { in mkDerivationWith python3Packages.buildPythonApplication rec {
pname = "qutebrowser"; pname = "qutebrowser";
version = "2.2.2"; version = "2.2.3";
# the release tarballs are different from the git checkout! # the release tarballs are different from the git checkout!
src = fetchurl { src = fetchurl {
url = "https://github.com/qutebrowser/qutebrowser/releases/download/v${version}/${pname}-${version}.tar.gz"; url = "https://github.com/qutebrowser/qutebrowser/releases/download/v${version}/${pname}-${version}.tar.gz";
sha256 = "11vjp20gzmdjj09b7wxzn7ar6viih0bk76y618yqsyqqkffylmbq"; sha256 = "sha256-BoP168jxj94nvkrcgC83fPw/TPRsI2PbCooqzWNF62I=";
}; };
# Needs tox # Needs tox

View file

@ -1,4 +1,11 @@
{ buildGoModule, fetchFromGitHub, lib, dnsmasq }: {
buildGoModule,
dnsmasq,
fetchFromGitHub,
lib,
nixosTests,
makeWrapper,
}:
buildGoModule rec { buildGoModule rec {
pname = "cni-plugin-dnsname"; pname = "cni-plugin-dnsname";
@ -11,10 +18,9 @@ buildGoModule rec {
sha256 = "sha256-hHkQOHDso92gXFCz40iQ7j2cHTEAMsaeW8MCJV2Otqo="; sha256 = "sha256-hHkQOHDso92gXFCz40iQ7j2cHTEAMsaeW8MCJV2Otqo=";
}; };
patches = [ ./hardcode-dnsmasq-path.patch ]; nativeBuildInputs = [ makeWrapper ];
postInstall = ''
postPatch = '' wrapProgram $out/bin/dnsname --prefix PATH : ${lib.makeBinPath [ dnsmasq ]}
substituteInPlace plugins/meta/dnsname/service.go --replace '@DNSMASQ@' '${dnsmasq}/bin/dnsmasq'
''; '';
vendorSha256 = null; vendorSha256 = null;
@ -22,6 +28,10 @@ buildGoModule rec {
doCheck = false; # NOTE: requires root privileges doCheck = false; # NOTE: requires root privileges
passthru.tests = {
inherit (nixosTests) podman-dnsname;
};
meta = with lib; { meta = with lib; {
description = "DNS name resolution for containers"; description = "DNS name resolution for containers";
homepage = "https://github.com/containers/dnsname"; homepage = "https://github.com/containers/dnsname";

View file

@ -1,19 +0,0 @@
diff --git a/plugins/meta/dnsname/service.go b/plugins/meta/dnsname/service.go
index fc05f75..f6b4caf 100644
--- a/plugins/meta/dnsname/service.go
+++ b/plugins/meta/dnsname/service.go
@@ -16,10 +16,14 @@ import (
// newDNSMasqFile creates a new instance of a dnsNameFile
func newDNSMasqFile(domainName, networkInterface, networkName string) (dnsNameFile, error) {
+ /*
dnsMasqBinary, err := exec.LookPath("dnsmasq")
if err != nil {
return dnsNameFile{}, errors.Errorf("the dnsmasq cni plugin requires the dnsmasq binary be in PATH")
}
+ */
+ _ = errors.Errorf // XXX(mikroskeem): reduce diff
+ dnsMasqBinary := "@DNSMASQ@"
masqConf := dnsNameFile{
ConfigFile: makePath(networkName, confFileName),
Domain: domainName,

View file

@ -10,13 +10,13 @@
buildGoModule rec { buildGoModule rec {
pname = "nerdctl"; pname = "nerdctl";
version = "0.8.2"; version = "0.8.3";
src = fetchFromGitHub { src = fetchFromGitHub {
owner = "containerd"; owner = "containerd";
repo = pname; repo = pname;
rev = "v${version}"; rev = "v${version}";
sha256 = "sha256-GPOrC9gL9lPv5SUldFxTS8ZT9YboPoDdqOAfwD0qGBQ="; sha256 = "sha256-mBoqyDfGho2e4RuFwkiU2R+zb38LzByWtH4pOhguueY=";
}; };
vendorSha256 = "sha256-S3Gp7HkBIZNZ8rkp64XaUQUj1TggGwI9FMrVkyLCQWA="; vendorSha256 = "sha256-S3Gp7HkBIZNZ8rkp64XaUQUj1TggGwI9FMrVkyLCQWA=";

View file

@ -70,10 +70,10 @@
"owner": "hashicorp", "owner": "hashicorp",
"provider-source-address": "registry.terraform.io/hashicorp/aws", "provider-source-address": "registry.terraform.io/hashicorp/aws",
"repo": "terraform-provider-aws", "repo": "terraform-provider-aws",
"rev": "v3.39.0", "rev": "v3.43.0",
"sha256": "05clqnrgh8ydwnsb1bacg9is7pzwqz5ncr806xgvryxybp8lz2jg", "sha256": "05rv93y9hf0l869q6i581748rw4bahvsgggj0h7cwjnf7xap0sxj",
"vendorSha256": "104cmwlzrcggb6fd1h7igy30g8542mzzzb6i54ldn5s1dahhprmb", "vendorSha256": "1m6pkrpknslqnv60cz5739gp5nxc7xhga402wkl37gdagmadkmrk",
"version": "3.39.0" "version": "3.43.0"
}, },
"azuread": { "azuread": {
"owner": "hashicorp", "owner": "hashicorp",

View file

@ -164,8 +164,8 @@ in rec {
}); });
terraform_0_15 = pluggable (generic { terraform_0_15 = pluggable (generic {
version = "0.15.4"; version = "0.15.5";
sha256 = "14pxnmxy0c7idn8vgns70fxm2835gbz5vd1hmwzvhm394vr62frp"; sha256 = "18f4a6l24s3cym7gk40agxikd90i56q84wziskw1spy9rgv2yx6d";
vendorSha256 = "12hrpxay6k3kz89ihyhl91c4lw4wp821ppa245w9977fq09fhnx0"; vendorSha256 = "12hrpxay6k3kz89ihyhl91c4lw4wp821ppa245w9977fq09fhnx0";
patches = [ ./provider-path-0_15.patch ]; patches = [ ./provider-path-0_15.patch ];
passthru = { inherit plugins; }; passthru = { inherit plugins; };

View file

@ -21,11 +21,11 @@
stdenv.mkDerivation rec { stdenv.mkDerivation rec {
pname = "zeek"; pname = "zeek";
version = "4.0.1"; version = "4.0.2";
src = fetchurl { src = fetchurl {
url = "https://download.zeek.org/zeek-${version}.tar.gz"; url = "https://download.zeek.org/zeek-${version}.tar.gz";
sha256 = "0ficl4i012gfv4mdbdclgvi6gyq338gw9gb6k58k1drw8c7qk6k5"; sha256 = "15gxxgg7nmfmswlbxhvcp6alq5k9wpvrm5cwyf1qfd7xsfli61sm";
}; };
nativeBuildInputs = [ cmake flex bison file ]; nativeBuildInputs = [ cmake flex bison file ];

View file

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

View file

@ -11,11 +11,11 @@ let
in in
stdenv.mkDerivation rec { stdenv.mkDerivation rec {
pname = "jitsi-meet-electron"; pname = "jitsi-meet-electron";
version = "2.8.5"; version = "2.8.6";
src = fetchurl { src = fetchurl {
url = "https://github.com/jitsi/jitsi-meet-electron/releases/download/v${version}/jitsi-meet-x86_64.AppImage"; url = "https://github.com/jitsi/jitsi-meet-electron/releases/download/v${version}/jitsi-meet-x86_64.AppImage";
sha256 = "0r3jj3qjx38l1g733vhrwcm2yg7ppp23ciz84x2kqq51mlzr84c6"; sha256 = "sha256-kLX8SZERlyNVSvszkV/fkQh/Z/Z20PAPJ9eug2oKlqI=";
name = "${pname}-${version}.AppImage"; name = "${pname}-${version}.AppImage";
}; };

View file

@ -13,13 +13,13 @@
mkDerivation rec { mkDerivation rec {
pname = "kdeltachat"; pname = "kdeltachat";
version = "unstable-2021-05-22"; version = "unstable-2021-05-31";
src = fetchFromSourcehut { src = fetchFromSourcehut {
owner = "~link2xt"; owner = "~link2xt";
repo = "kdeltachat"; repo = "kdeltachat";
rev = "9c22c6d6a03f620f14f289b464354159b8a76f6b"; rev = "318ae67c17f3e64532bad23c2a61a93446db553d";
sha256 = "1qmal6dng8ynp5mrkrgykz78c8zp1gbv53s479qvj0h3axrp2s8p"; sha256 = "1qy0hlp0r91sqn26ai9isxw4rl8kcmmb10a2p9yqynhm8py3dfn4";
}; };
nativeBuildInputs = [ nativeBuildInputs = [

View file

@ -1,7 +1,7 @@
{ lib, stdenv, buildPythonApplication, fetchFromGitHub, pythonOlder, { lib, stdenv, buildPythonApplication, fetchFromGitHub, pythonOlder,
attrs, aiohttp, appdirs, click, keyring, Logbook, peewee, janus, attrs, aiohttp, appdirs, click, keyring, Logbook, peewee, janus,
prompt_toolkit, matrix-nio, dbus-python, pydbus, notify2, pygobject3, prompt_toolkit, matrix-nio, dbus-python, pydbus, notify2, pygobject3,
setuptools, fetchpatch, setuptools, fetchpatch, installShellFiles,
pytest, faker, pytest-aiohttp, aioresponses, pytest, faker, pytest-aiohttp, aioresponses,
@ -56,6 +56,10 @@ buildPythonApplication rec {
aioresponses aioresponses
]; ];
nativeBuildInputs = [
installShellFiles
];
# darwin has difficulty communicating with server, fails some integration tests # darwin has difficulty communicating with server, fails some integration tests
doCheck = !stdenv.isDarwin; doCheck = !stdenv.isDarwin;
@ -63,6 +67,10 @@ buildPythonApplication rec {
pytest pytest
''; '';
postInstall = ''
installManPage docs/man/*.[1-9]
'';
meta = with lib; { meta = with lib; {
description = "An end-to-end encryption aware Matrix reverse proxy daemon"; description = "An end-to-end encryption aware Matrix reverse proxy daemon";
homepage = "https://github.com/matrix-org/pantalaimon"; homepage = "https://github.com/matrix-org/pantalaimon";

View file

@ -1,30 +1,59 @@
{ lib, buildPythonApplication, fetchFromGitHub, pythonOlder { lib
, pytest, aiodns, slixmpp, pyinotify, potr, mpd2, cffi, pkg-config, setuptools }: , aiodns
, buildPythonApplication
, cffi
, fetchFromGitHub
, mpd2
, pkg-config
, potr
, pyasn1
, pyasn1-modules
, pyinotify
, pytestCheckHook
, pythonOlder
, setuptools
, slixmpp
, typing-extensions
}:
buildPythonApplication rec { buildPythonApplication rec {
pname = "poezio"; pname = "poezio";
version = "0.13.1"; version = "0.13.1";
disabled = pythonOlder "3.4";
disabled = pythonOlder "3.4"; src = fetchFromGitHub {
owner = pname;
repo = pname;
rev = "v${version}";
sha256 = "041y61pcbdb86s04qwp8s1g6bp84yskc7vdizwpi2hz18y01x5fy";
};
checkInputs = [ pytest ]; nativeBuildInputs = [
propagatedBuildInputs = [ aiodns slixmpp pyinotify potr mpd2 cffi setuptools ]; pkg-config
nativeBuildInputs = [ pkg-config ]; ];
src = fetchFromGitHub { propagatedBuildInputs = [
owner = pname; aiodns
repo = pname; cffi
rev = "v${version}"; mpd2
sha256 = "041y61pcbdb86s04qwp8s1g6bp84yskc7vdizwpi2hz18y01x5fy"; potr
}; pyasn1
pyasn1-modules
pyinotify
setuptools
slixmpp
] ++ lib.optionals (pythonOlder "3.7") [
typing-extensions
];
checkPhase = '' checkInputs = [
pytest pytestCheckHook
''; ];
meta = with lib; { meta = with lib; {
description = "Free console XMPP client"; description = "Free console XMPP client";
homepage = "https://poez.io"; homepage = "https://poez.io";
license = licenses.mit; license = licenses.zlib;
maintainers = [ maintainers.lsix ]; maintainers = [ maintainers.lsix ];
}; };
} }

View file

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

View file

@ -2,11 +2,11 @@
, pkg-config, cmake, ninja, python3, wrapGAppsHook, wrapQtAppsHook, removeReferencesTo , pkg-config, cmake, ninja, python3, wrapGAppsHook, wrapQtAppsHook, removeReferencesTo
, qtbase, qtimageformats, gtk3, libsForQt5, enchant2, lz4, xxHash , qtbase, qtimageformats, gtk3, libsForQt5, enchant2, lz4, xxHash
, dee, ffmpeg, openalSoft, minizip, libopus, alsaLib, libpulseaudio, range-v3 , dee, ffmpeg, openalSoft, minizip, libopus, alsaLib, libpulseaudio, range-v3
, tl-expected, hunspell, glibmm, webkitgtk , tl-expected, hunspell, glibmm, webkitgtk, libtgvoip
# Transitive dependencies: # Transitive dependencies:
, pcre, xorg, util-linux, libselinux, libsepol, epoxy , pcre, xorg, util-linux, libselinux, libsepol, epoxy
, at-spi2-core, libXtst, libthai, libdatrie , at-spi2-core, libXtst, libthai, libdatrie
, xdg-utils , xdg-utils, libsysprof-capture, libpsl, brotli
}: }:
with lib; with lib;
@ -20,27 +20,33 @@ with lib;
let let
tg_owt = callPackage ./tg_owt.nix {}; tg_owt = callPackage ./tg_owt.nix {};
webviewPatch = fetchpatch {
url = "https://raw.githubusercontent.com/archlinux/svntogit-community/013eff77a13b6c2629a04e07a4d09dbe60c8ca48/trunk/fix-webview-includes.patch";
sha256 = "0112zaysf3f02dd4bgqc5hwg66h1bfj8r4yjzb06sfi0pl9vl96l";
};
in mkDerivation rec { in mkDerivation rec {
pname = "telegram-desktop"; pname = "telegram-desktop";
version = "2.7.4"; version = "2.7.5";
# Telegram-Desktop with submodules # Telegram-Desktop with submodules
src = fetchurl { src = fetchurl {
url = "https://github.com/telegramdesktop/tdesktop/releases/download/v${version}/tdesktop-${version}-full.tar.gz"; url = "https://github.com/telegramdesktop/tdesktop/releases/download/v${version}/tdesktop-${version}-full.tar.gz";
sha256 = "1cigqvxa8lp79y7sp2w2izmmikxaxzrq9bh5ns3cy16z985nyllp"; sha256 = "sha256-9GxBw5ii9Musjq7D3KMf/P5BA4h690EgXRbhynHwO98=";
}; };
patches = [
# fixes issue with ffmpeg>=4.4 crashes, hasn't been upstreamed yet
(fetchpatch {
url = "https://raw.githubusercontent.com/gentoo/gentoo/1c91884873968997be4b0c954169d04dc839f1db/net-im/telegram-desktop/files/tdesktop-2.7.4-voice-crash.patch";
sha256 = "sha256-inLXcP70yJlkkmdeXlc3HRL7Vt+Sf00LLJG33gwBKdY=";
})
(fetchpatch {
url = "https://raw.githubusercontent.com/gentoo/gentoo/1c91884873968997be4b0c954169d04dc839f1db/net-im/telegram-desktop/files/tdesktop-2.7.4-voice-ffmpeg44.patch";
sha256 = "sha256-p57LipNf7BDhVvNKRuicVqx0vU6IBL/Cvr5BAfLF4Hs=";
})
];
postPatch = '' postPatch = ''
substituteInPlace Telegram/lib_spellcheck/spellcheck/platform/linux/linux_enchant.cpp \ substituteInPlace Telegram/lib_spellcheck/spellcheck/platform/linux/linux_enchant.cpp \
--replace '"libenchant-2.so.2"' '"${enchant2}/lib/libenchant-2.so.2"' --replace '"libenchant-2.so.2"' '"${enchant2}/lib/libenchant-2.so.2"'
substituteInPlace Telegram/CMakeLists.txt \ substituteInPlace Telegram/CMakeLists.txt \
--replace '"''${TDESKTOP_LAUNCHER_BASENAME}.appdata.xml"' '"''${TDESKTOP_LAUNCHER_BASENAME}.metainfo.xml"' --replace '"''${TDESKTOP_LAUNCHER_BASENAME}.appdata.xml"' '"''${TDESKTOP_LAUNCHER_BASENAME}.metainfo.xml"'
patch -d Telegram/lib_webview -p1 < "${webviewPatch}"
''; '';
# We want to run wrapProgram manually (with additional parameters) # We want to run wrapProgram manually (with additional parameters)
@ -53,10 +59,10 @@ in mkDerivation rec {
qtbase qtimageformats gtk3 libsForQt5.kwayland libsForQt5.libdbusmenu enchant2 lz4 xxHash qtbase qtimageformats gtk3 libsForQt5.kwayland libsForQt5.libdbusmenu enchant2 lz4 xxHash
dee ffmpeg openalSoft minizip libopus alsaLib libpulseaudio range-v3 dee ffmpeg openalSoft minizip libopus alsaLib libpulseaudio range-v3
tl-expected hunspell glibmm webkitgtk tl-expected hunspell glibmm webkitgtk
tg_owt tg_owt libtgvoip
# Transitive dependencies: # Transitive dependencies:
pcre xorg.libpthreadstubs xorg.libXdmcp util-linux libselinux libsepol epoxy pcre xorg.libpthreadstubs xorg.libXdmcp util-linux libselinux libsepol epoxy
at-spi2-core libXtst libthai libdatrie at-spi2-core libXtst libthai libdatrie libsysprof-capture libpsl brotli
]; ];
cmakeFlags = [ cmakeFlags = [

View file

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

View file

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

View file

@ -1,665 +1,665 @@
{ {
version = "78.10.2"; version = "78.11.0";
sources = [ sources = [
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/78.10.2/linux-x86_64/af/thunderbird-78.10.2.tar.bz2"; { url = "http://archive.mozilla.org/pub/thunderbird/releases/78.11.0/linux-x86_64/af/thunderbird-78.11.0.tar.bz2";
locale = "af"; locale = "af";
arch = "linux-x86_64"; arch = "linux-x86_64";
sha256 = "095f6e89aa3f1fcd2b2f92bb56777d10fa997dec6aa3098a3109511e2b07927b"; sha256 = "061da958c7e0b52c76cc3152cf541eabd855e7189f976b9743792e52ab733ea8";
} }
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/78.10.2/linux-x86_64/ar/thunderbird-78.10.2.tar.bz2"; { url = "http://archive.mozilla.org/pub/thunderbird/releases/78.11.0/linux-x86_64/ar/thunderbird-78.11.0.tar.bz2";
locale = "ar"; locale = "ar";
arch = "linux-x86_64"; arch = "linux-x86_64";
sha256 = "2a4e1461f291711196ef0cc717824d364ddc35ef24e7fc202b05939c59e8409f"; sha256 = "915ca02f6e7639adef01d8e332133762bd3f88df6a1c12e86a86c04010efcd69";
} }
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/78.10.2/linux-x86_64/ast/thunderbird-78.10.2.tar.bz2"; { url = "http://archive.mozilla.org/pub/thunderbird/releases/78.11.0/linux-x86_64/ast/thunderbird-78.11.0.tar.bz2";
locale = "ast"; locale = "ast";
arch = "linux-x86_64"; arch = "linux-x86_64";
sha256 = "361e614c83311619ab64e61b1ade46b3f36093b7ba9c5d3fdd8046bb7e0e7f59"; sha256 = "6a1995efbca69e251ca70af570b02d94a99f83ef7927d667f9f856febc53ff40";
} }
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/78.10.2/linux-x86_64/be/thunderbird-78.10.2.tar.bz2"; { url = "http://archive.mozilla.org/pub/thunderbird/releases/78.11.0/linux-x86_64/be/thunderbird-78.11.0.tar.bz2";
locale = "be"; locale = "be";
arch = "linux-x86_64"; arch = "linux-x86_64";
sha256 = "f86b8494488b18c9892daaf6d4c62234bfd060b8313107c4a638862d94ba1950"; sha256 = "28c87eb1651bb4fd00d8b52b3f0a4e0520ceeed76305ea124915c238562f28a2";
} }
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/78.10.2/linux-x86_64/bg/thunderbird-78.10.2.tar.bz2"; { url = "http://archive.mozilla.org/pub/thunderbird/releases/78.11.0/linux-x86_64/bg/thunderbird-78.11.0.tar.bz2";
locale = "bg"; locale = "bg";
arch = "linux-x86_64"; arch = "linux-x86_64";
sha256 = "0f47d29aaa13aa5018f3cb28b10547586f22123f1cabc161610c83c60aa357eb"; sha256 = "24bb2cd51bdf4e99fe88a13c70289f3896cb17c911d556150f1c6e216f3ef5ce";
} }
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/78.10.2/linux-x86_64/br/thunderbird-78.10.2.tar.bz2"; { url = "http://archive.mozilla.org/pub/thunderbird/releases/78.11.0/linux-x86_64/br/thunderbird-78.11.0.tar.bz2";
locale = "br"; locale = "br";
arch = "linux-x86_64"; arch = "linux-x86_64";
sha256 = "ada5fba11311e356fc1b016728bb5c229e85f1900c0b102e3a392de4124c8022"; sha256 = "473fe2acadfa6e4f6ba8eddcfd4377c3eeb583f6510461e6f51b9dcd89d36ace";
} }
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/78.10.2/linux-x86_64/ca/thunderbird-78.10.2.tar.bz2"; { url = "http://archive.mozilla.org/pub/thunderbird/releases/78.11.0/linux-x86_64/ca/thunderbird-78.11.0.tar.bz2";
locale = "ca"; locale = "ca";
arch = "linux-x86_64"; arch = "linux-x86_64";
sha256 = "6f74a52f34f9449fb1530f308b738b7af2854b1cc9a5301a1f771bf36e0bcbc7"; sha256 = "d128adb596f6be2a940a2544ad653c812c177b3d08ddac7de716fc3ce603b71c";
} }
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/78.10.2/linux-x86_64/cak/thunderbird-78.10.2.tar.bz2"; { url = "http://archive.mozilla.org/pub/thunderbird/releases/78.11.0/linux-x86_64/cak/thunderbird-78.11.0.tar.bz2";
locale = "cak"; locale = "cak";
arch = "linux-x86_64"; arch = "linux-x86_64";
sha256 = "3fb516dce71d9e44ad509724a61c92f3d45cddf9c82f9fdf0f948fdbc2549583"; sha256 = "cff975db463997677d392264e55bd73a3c1a36e34991f8bcbb0673980f428589";
} }
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/78.10.2/linux-x86_64/cs/thunderbird-78.10.2.tar.bz2"; { url = "http://archive.mozilla.org/pub/thunderbird/releases/78.11.0/linux-x86_64/cs/thunderbird-78.11.0.tar.bz2";
locale = "cs"; locale = "cs";
arch = "linux-x86_64"; arch = "linux-x86_64";
sha256 = "47b70bdc716049edae3beffacef19dcab5abafc0b2f674f04980983d07ba6acd"; sha256 = "90836d8c099594ca0e459d7d07232ab47d811cafc79ca5ad2999186f242fa8c2";
} }
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/78.10.2/linux-x86_64/cy/thunderbird-78.10.2.tar.bz2"; { url = "http://archive.mozilla.org/pub/thunderbird/releases/78.11.0/linux-x86_64/cy/thunderbird-78.11.0.tar.bz2";
locale = "cy"; locale = "cy";
arch = "linux-x86_64"; arch = "linux-x86_64";
sha256 = "279b9a9190fc7033ee223b72b361d715f5f3ddc701c51bf18bd325b667450a12"; sha256 = "2a844b7afe834dc6e0ad291a6d5cb9ca0389d703f9a8ca385aabf5e5f012c4c5";
} }
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/78.10.2/linux-x86_64/da/thunderbird-78.10.2.tar.bz2"; { url = "http://archive.mozilla.org/pub/thunderbird/releases/78.11.0/linux-x86_64/da/thunderbird-78.11.0.tar.bz2";
locale = "da"; locale = "da";
arch = "linux-x86_64"; arch = "linux-x86_64";
sha256 = "19340a3dcdec6ba26eb08c0a65cb0790bfa4c0ead09126fa8cdd2aa3cbb692dc"; sha256 = "a37075627a6955abfc15508d2bb4a16ba330a4c64c89f95084635319ad5106e6";
} }
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/78.10.2/linux-x86_64/de/thunderbird-78.10.2.tar.bz2"; { url = "http://archive.mozilla.org/pub/thunderbird/releases/78.11.0/linux-x86_64/de/thunderbird-78.11.0.tar.bz2";
locale = "de"; locale = "de";
arch = "linux-x86_64"; arch = "linux-x86_64";
sha256 = "09fb186c140013906af953729e7c42047c415e57b6a34562b7638f517ed5a03b"; sha256 = "6e03c8b0f791cc09b04b3114e8b44950de974beabf0563705af625ac1226dbb2";
} }
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/78.10.2/linux-x86_64/dsb/thunderbird-78.10.2.tar.bz2"; { url = "http://archive.mozilla.org/pub/thunderbird/releases/78.11.0/linux-x86_64/dsb/thunderbird-78.11.0.tar.bz2";
locale = "dsb"; locale = "dsb";
arch = "linux-x86_64"; arch = "linux-x86_64";
sha256 = "12903ffe77c9e678b418ab5cfe76d3babd36aeef286a9976fd85f1051c2a2fd7"; sha256 = "546f10d4653940798540797deeec54287cd1275b5ebf350661d49cd313228ddb";
} }
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/78.10.2/linux-x86_64/el/thunderbird-78.10.2.tar.bz2"; { url = "http://archive.mozilla.org/pub/thunderbird/releases/78.11.0/linux-x86_64/el/thunderbird-78.11.0.tar.bz2";
locale = "el"; locale = "el";
arch = "linux-x86_64"; arch = "linux-x86_64";
sha256 = "74ac5f4175a6cacbcb9643761b022fe52cff03afe9754acb53effc1a5735cb7f"; sha256 = "b6fa7ae657a03c4f91905e95931af05b9af588a067a03a3a8a0d9faa8d40b59d";
} }
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/78.10.2/linux-x86_64/en-CA/thunderbird-78.10.2.tar.bz2"; { url = "http://archive.mozilla.org/pub/thunderbird/releases/78.11.0/linux-x86_64/en-CA/thunderbird-78.11.0.tar.bz2";
locale = "en-CA"; locale = "en-CA";
arch = "linux-x86_64"; arch = "linux-x86_64";
sha256 = "5a1be335a0a4534308bc6b3c8bee8c592475b7b2b65a070412c7cf44de0e183f"; sha256 = "5507e9b74cea95681a2c7c21cb5127a7369366bbdaa6a24dbafc7a4fbe11b924";
} }
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/78.10.2/linux-x86_64/en-GB/thunderbird-78.10.2.tar.bz2"; { url = "http://archive.mozilla.org/pub/thunderbird/releases/78.11.0/linux-x86_64/en-GB/thunderbird-78.11.0.tar.bz2";
locale = "en-GB"; locale = "en-GB";
arch = "linux-x86_64"; arch = "linux-x86_64";
sha256 = "da6b0e21275e49202cbbab6a85e4601550ba21b8de5535ef0e252df6d693a2c2"; sha256 = "fcaa2b652b43367fcb720e8386cdc92346318bab67fd720c5958e7ec236c0844";
} }
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/78.10.2/linux-x86_64/en-US/thunderbird-78.10.2.tar.bz2"; { url = "http://archive.mozilla.org/pub/thunderbird/releases/78.11.0/linux-x86_64/en-US/thunderbird-78.11.0.tar.bz2";
locale = "en-US"; locale = "en-US";
arch = "linux-x86_64"; arch = "linux-x86_64";
sha256 = "3f35551b1bf9b588c7e16810312fe8274bd06283974913e881ca5e7b6035666d"; sha256 = "688a2f7274581fa4735a6d2f8166ba262999694889635bf3bc30ac77ad746fb3";
} }
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/78.10.2/linux-x86_64/es-AR/thunderbird-78.10.2.tar.bz2"; { url = "http://archive.mozilla.org/pub/thunderbird/releases/78.11.0/linux-x86_64/es-AR/thunderbird-78.11.0.tar.bz2";
locale = "es-AR"; locale = "es-AR";
arch = "linux-x86_64"; arch = "linux-x86_64";
sha256 = "22e962bbd6d38f4eec50d31638bb7d895f2a7be1c626b42605bffb071328a468"; sha256 = "506a63de366968c6a3e66503def57e621cc2458ccf07ccc53ffdad72fdab8914";
} }
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/78.10.2/linux-x86_64/es-ES/thunderbird-78.10.2.tar.bz2"; { url = "http://archive.mozilla.org/pub/thunderbird/releases/78.11.0/linux-x86_64/es-ES/thunderbird-78.11.0.tar.bz2";
locale = "es-ES"; locale = "es-ES";
arch = "linux-x86_64"; arch = "linux-x86_64";
sha256 = "2237c69f5b2bb8e0b975be18ec5413c46aacf6a8910120d90707909acd7b1e26"; sha256 = "974acf65d509929d6b8175ac99a2886f17d4dbc4a6b8d4ef50e82585e1ea9fe6";
} }
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/78.10.2/linux-x86_64/et/thunderbird-78.10.2.tar.bz2"; { url = "http://archive.mozilla.org/pub/thunderbird/releases/78.11.0/linux-x86_64/et/thunderbird-78.11.0.tar.bz2";
locale = "et"; locale = "et";
arch = "linux-x86_64"; arch = "linux-x86_64";
sha256 = "630f76686314f7214cc672a7b2f9d501cf34350dd5da5c8e03564e1debc1ff63"; sha256 = "504c97962170388d6fe249c24b6f5a62025ebf9bf4b30b65fbfd3baf12756809";
} }
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/78.10.2/linux-x86_64/eu/thunderbird-78.10.2.tar.bz2"; { url = "http://archive.mozilla.org/pub/thunderbird/releases/78.11.0/linux-x86_64/eu/thunderbird-78.11.0.tar.bz2";
locale = "eu"; locale = "eu";
arch = "linux-x86_64"; arch = "linux-x86_64";
sha256 = "63c62c592f00c35f2489ca7806dd2861fd1179ad367ac14529dfe117b3050bae"; sha256 = "b4c4bd5b228f2b945dc8f280b12a72dd68dff10562c4f19b5a27fa94a95d9128";
} }
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/78.10.2/linux-x86_64/fa/thunderbird-78.10.2.tar.bz2"; { url = "http://archive.mozilla.org/pub/thunderbird/releases/78.11.0/linux-x86_64/fa/thunderbird-78.11.0.tar.bz2";
locale = "fa"; locale = "fa";
arch = "linux-x86_64"; arch = "linux-x86_64";
sha256 = "b750c02dfff907d6d530d4e7b481fbd9115c02fcd5eb22da6d76f163f2f66cf3"; sha256 = "4384d9579304ec344f616e00a51bebbf5038e212cc54d07586182fce9558af91";
} }
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/78.10.2/linux-x86_64/fi/thunderbird-78.10.2.tar.bz2"; { url = "http://archive.mozilla.org/pub/thunderbird/releases/78.11.0/linux-x86_64/fi/thunderbird-78.11.0.tar.bz2";
locale = "fi"; locale = "fi";
arch = "linux-x86_64"; arch = "linux-x86_64";
sha256 = "fd385a85a1e28b75730ca8ca73181c5571a3ebbb51ae1c095bea8f174db3f37f"; sha256 = "89bba8ff928caa79b8b1947be761388e441f01655f200f4a7fb9d9894b3ea4e6";
} }
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/78.10.2/linux-x86_64/fr/thunderbird-78.10.2.tar.bz2"; { url = "http://archive.mozilla.org/pub/thunderbird/releases/78.11.0/linux-x86_64/fr/thunderbird-78.11.0.tar.bz2";
locale = "fr"; locale = "fr";
arch = "linux-x86_64"; arch = "linux-x86_64";
sha256 = "f0b8be6aa87f221262725785eee2a06b4bb0e191f2ce9350f40c6f62014272c9"; sha256 = "c2953ff1879ed8f80f6b9f1a26c08ba1f5969e8b47b81a3eb3ab690698142bbb";
} }
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/78.10.2/linux-x86_64/fy-NL/thunderbird-78.10.2.tar.bz2"; { url = "http://archive.mozilla.org/pub/thunderbird/releases/78.11.0/linux-x86_64/fy-NL/thunderbird-78.11.0.tar.bz2";
locale = "fy-NL"; locale = "fy-NL";
arch = "linux-x86_64"; arch = "linux-x86_64";
sha256 = "242760433a15d6509bcd617f82a2a3b2a27c34197420fafb02cc8bca17d0163b"; sha256 = "58057f7bb143512c1171296413050178f0a7a0651513e7c67d153af5874aa382";
} }
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/78.10.2/linux-x86_64/ga-IE/thunderbird-78.10.2.tar.bz2"; { url = "http://archive.mozilla.org/pub/thunderbird/releases/78.11.0/linux-x86_64/ga-IE/thunderbird-78.11.0.tar.bz2";
locale = "ga-IE"; locale = "ga-IE";
arch = "linux-x86_64"; arch = "linux-x86_64";
sha256 = "5b21caf17170642158945dfaa383729226ace99f789b7ed7babb08ea98bdaf8d"; sha256 = "94c070e79bba7a43f3fcc8b0b1759e424366f3ced72e2e53c5fe75689602a0ed";
} }
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/78.10.2/linux-x86_64/gd/thunderbird-78.10.2.tar.bz2"; { url = "http://archive.mozilla.org/pub/thunderbird/releases/78.11.0/linux-x86_64/gd/thunderbird-78.11.0.tar.bz2";
locale = "gd"; locale = "gd";
arch = "linux-x86_64"; arch = "linux-x86_64";
sha256 = "21b2d8d9107bcc4e4d0a453f9eace739e349c31d556672114fcc9ef7bc81e0ea"; sha256 = "a655074ab7d0f86318199ab32b77c889ccfd366f6a0d9d43b4bbeba54ae2ee1a";
} }
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/78.10.2/linux-x86_64/gl/thunderbird-78.10.2.tar.bz2"; { url = "http://archive.mozilla.org/pub/thunderbird/releases/78.11.0/linux-x86_64/gl/thunderbird-78.11.0.tar.bz2";
locale = "gl"; locale = "gl";
arch = "linux-x86_64"; arch = "linux-x86_64";
sha256 = "32329f7d8f0256c0012ffd0d5a88f7abeff22d89adb6d1ffdaca05cb74a6a9e4"; sha256 = "2835735ebf7f518aaf8d16ca3cedd3e7f7414e0cc1177a185b6e896da7e2c87f";
} }
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/78.10.2/linux-x86_64/he/thunderbird-78.10.2.tar.bz2"; { url = "http://archive.mozilla.org/pub/thunderbird/releases/78.11.0/linux-x86_64/he/thunderbird-78.11.0.tar.bz2";
locale = "he"; locale = "he";
arch = "linux-x86_64"; arch = "linux-x86_64";
sha256 = "453f0348607ef24799f190ecae102ee35cf21212c3ee978ac275457177c5d91a"; sha256 = "804c359b76026631e5a0ecf40258782f24f0be4d34b700b2aa0532607e4c5651";
} }
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/78.10.2/linux-x86_64/hr/thunderbird-78.10.2.tar.bz2"; { url = "http://archive.mozilla.org/pub/thunderbird/releases/78.11.0/linux-x86_64/hr/thunderbird-78.11.0.tar.bz2";
locale = "hr"; locale = "hr";
arch = "linux-x86_64"; arch = "linux-x86_64";
sha256 = "845dcc473833cc306dea211448a9719ab72daa57bf952e8260e28d5df616cd92"; sha256 = "d7278bc20c7eb6c071648b639064338ae8cf7535476c0493b642d45c0ae9804d";
} }
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/78.10.2/linux-x86_64/hsb/thunderbird-78.10.2.tar.bz2"; { url = "http://archive.mozilla.org/pub/thunderbird/releases/78.11.0/linux-x86_64/hsb/thunderbird-78.11.0.tar.bz2";
locale = "hsb"; locale = "hsb";
arch = "linux-x86_64"; arch = "linux-x86_64";
sha256 = "179e106128bda04f3109e76023031e8441e174bacf4fc4f8976c7bce4be291f9"; sha256 = "fb520d80d1505b50b8d9e2a43c10512e001b120790c823eb41dcc076e68eca51";
} }
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/78.10.2/linux-x86_64/hu/thunderbird-78.10.2.tar.bz2"; { url = "http://archive.mozilla.org/pub/thunderbird/releases/78.11.0/linux-x86_64/hu/thunderbird-78.11.0.tar.bz2";
locale = "hu"; locale = "hu";
arch = "linux-x86_64"; arch = "linux-x86_64";
sha256 = "59901e6396d16776c281c83f3cace029b8b1f9171ce58918d9af86144ffbb576"; sha256 = "20639f623995f76b2f7d5f8d81e08145767d2a67d97fbd31542599abd4c80a57";
} }
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/78.10.2/linux-x86_64/hy-AM/thunderbird-78.10.2.tar.bz2"; { url = "http://archive.mozilla.org/pub/thunderbird/releases/78.11.0/linux-x86_64/hy-AM/thunderbird-78.11.0.tar.bz2";
locale = "hy-AM"; locale = "hy-AM";
arch = "linux-x86_64"; arch = "linux-x86_64";
sha256 = "5bcde77ed1459713d8a33ccb34a003f3e863f53a6f4fe853d8a5982eca3d0cef"; sha256 = "bf4c1fcaa9bf928607dade6d8fd16b47fff6c248c07ef86fcb20c0b3a6841ba1";
} }
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/78.10.2/linux-x86_64/id/thunderbird-78.10.2.tar.bz2"; { url = "http://archive.mozilla.org/pub/thunderbird/releases/78.11.0/linux-x86_64/id/thunderbird-78.11.0.tar.bz2";
locale = "id"; locale = "id";
arch = "linux-x86_64"; arch = "linux-x86_64";
sha256 = "994e5971a0e269bb392f5b54b79ee58c42f222eb593c72a0515df5a12784a423"; sha256 = "03665c9cfdd39e8ebb568151a28ecf02e425bae4241de74bdb47a0f9f38e26ba";
} }
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/78.10.2/linux-x86_64/is/thunderbird-78.10.2.tar.bz2"; { url = "http://archive.mozilla.org/pub/thunderbird/releases/78.11.0/linux-x86_64/is/thunderbird-78.11.0.tar.bz2";
locale = "is"; locale = "is";
arch = "linux-x86_64"; arch = "linux-x86_64";
sha256 = "725b7dc0b9528b868794cd94e1c845c2f9816825b8e3f8f6de466e84ddf02447"; sha256 = "1efb313ae0fc03d402f306ca0258ea4c784a762a642f947065e154c382e9135b";
} }
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/78.10.2/linux-x86_64/it/thunderbird-78.10.2.tar.bz2"; { url = "http://archive.mozilla.org/pub/thunderbird/releases/78.11.0/linux-x86_64/it/thunderbird-78.11.0.tar.bz2";
locale = "it"; locale = "it";
arch = "linux-x86_64"; arch = "linux-x86_64";
sha256 = "036516a7978eb98407e6ce97cbcb5c4269f0fe72ae2955dfab925812912be28d"; sha256 = "95e1c07248c8ef1ab36b8a57729615a4f2ab9a4cb6148f1b0bca20554901ffca";
} }
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/78.10.2/linux-x86_64/ja/thunderbird-78.10.2.tar.bz2"; { url = "http://archive.mozilla.org/pub/thunderbird/releases/78.11.0/linux-x86_64/ja/thunderbird-78.11.0.tar.bz2";
locale = "ja"; locale = "ja";
arch = "linux-x86_64"; arch = "linux-x86_64";
sha256 = "c9c05bb9423e4f72ef782322da54d5d6e2f751e3dea812dced5956cfbfe4f494"; sha256 = "95c592c41b1199bc280c219a8b4873e2bdb18171c4cccff4809a5a87ccb52d0f";
} }
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/78.10.2/linux-x86_64/ka/thunderbird-78.10.2.tar.bz2"; { url = "http://archive.mozilla.org/pub/thunderbird/releases/78.11.0/linux-x86_64/ka/thunderbird-78.11.0.tar.bz2";
locale = "ka"; locale = "ka";
arch = "linux-x86_64"; arch = "linux-x86_64";
sha256 = "75f096a651b8538f6565dc67158a9398d5c97799da708f12e7ad781c99aa458a"; sha256 = "85566d54dd72a9ae9d6e3e5b85ed2ad01fe7d6e08e33b02985bc4e78e55dc5e9";
} }
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/78.10.2/linux-x86_64/kab/thunderbird-78.10.2.tar.bz2"; { url = "http://archive.mozilla.org/pub/thunderbird/releases/78.11.0/linux-x86_64/kab/thunderbird-78.11.0.tar.bz2";
locale = "kab"; locale = "kab";
arch = "linux-x86_64"; arch = "linux-x86_64";
sha256 = "edfe5788049f41860e958bc3f04c4b61c5199a1c1c969338d09218813e6dbbbf"; sha256 = "cf7f8a9975f9ce163bba8438121cd8090a498877d65d91694aac198f4307bc90";
} }
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/78.10.2/linux-x86_64/kk/thunderbird-78.10.2.tar.bz2"; { url = "http://archive.mozilla.org/pub/thunderbird/releases/78.11.0/linux-x86_64/kk/thunderbird-78.11.0.tar.bz2";
locale = "kk"; locale = "kk";
arch = "linux-x86_64"; arch = "linux-x86_64";
sha256 = "e838db372ca7e93c69261883b0803baf076109192c0524fd7d159d4111eec76a"; sha256 = "9ef1e12e02ed3e8a05f58da73e0221ac6545c515eb2e236b4a99b4594afc10af";
} }
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/78.10.2/linux-x86_64/ko/thunderbird-78.10.2.tar.bz2"; { url = "http://archive.mozilla.org/pub/thunderbird/releases/78.11.0/linux-x86_64/ko/thunderbird-78.11.0.tar.bz2";
locale = "ko"; locale = "ko";
arch = "linux-x86_64"; arch = "linux-x86_64";
sha256 = "b3245edbcd50e24f81804eef56246bc00112d7d2303633777ab29e4560ef7595"; sha256 = "6d028659f0b239b81dae7dfe44b96015ef1a217cddb135fee3bd8884e7b442c5";
} }
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/78.10.2/linux-x86_64/lt/thunderbird-78.10.2.tar.bz2"; { url = "http://archive.mozilla.org/pub/thunderbird/releases/78.11.0/linux-x86_64/lt/thunderbird-78.11.0.tar.bz2";
locale = "lt"; locale = "lt";
arch = "linux-x86_64"; arch = "linux-x86_64";
sha256 = "60a8d3e6b634277c41bcc89287e2034ba41cf251d354209d2f7bfe01f7042258"; sha256 = "90f11349d4f5a674457f541b4edadd83b6a8f32f56eaa0a4d49e9b2c26dbbe47";
} }
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/78.10.2/linux-x86_64/ms/thunderbird-78.10.2.tar.bz2"; { url = "http://archive.mozilla.org/pub/thunderbird/releases/78.11.0/linux-x86_64/ms/thunderbird-78.11.0.tar.bz2";
locale = "ms"; locale = "ms";
arch = "linux-x86_64"; arch = "linux-x86_64";
sha256 = "c39efc74560d6eab6183b4af517d6eb538a4e17b2a943e59b4d1760bf31f8259"; sha256 = "f235748f67ad749d8b020288df8c7251bcbd9d1bc4bb979554928f54270c1f88";
} }
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/78.10.2/linux-x86_64/nb-NO/thunderbird-78.10.2.tar.bz2"; { url = "http://archive.mozilla.org/pub/thunderbird/releases/78.11.0/linux-x86_64/nb-NO/thunderbird-78.11.0.tar.bz2";
locale = "nb-NO"; locale = "nb-NO";
arch = "linux-x86_64"; arch = "linux-x86_64";
sha256 = "f663e884cad7ded824f03952a8c563e317dd5768962fb13e3e484cfdf2061e42"; sha256 = "de2bfc3bfc2f285a42cbcc800867395d132a56f3aaed8ff687c9e95706164ad0";
} }
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/78.10.2/linux-x86_64/nl/thunderbird-78.10.2.tar.bz2"; { url = "http://archive.mozilla.org/pub/thunderbird/releases/78.11.0/linux-x86_64/nl/thunderbird-78.11.0.tar.bz2";
locale = "nl"; locale = "nl";
arch = "linux-x86_64"; arch = "linux-x86_64";
sha256 = "e4a48f5b5d3ea2310b0236f030086defb6c3e07c0cc21a1123979c31b5a7020e"; sha256 = "4b7be1a4717a4b42bdf3b7583b2a1fa6cc9cfcad52ac7fafa4435230dec70048";
} }
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/78.10.2/linux-x86_64/nn-NO/thunderbird-78.10.2.tar.bz2"; { url = "http://archive.mozilla.org/pub/thunderbird/releases/78.11.0/linux-x86_64/nn-NO/thunderbird-78.11.0.tar.bz2";
locale = "nn-NO"; locale = "nn-NO";
arch = "linux-x86_64"; arch = "linux-x86_64";
sha256 = "5724f509e78558ba4f81b695e8ede6530ed11c355544a717791f21de2e9bd13a"; sha256 = "0ba39f2e8b6895216d97e13809749fb6a1237c5bfd0c1f8ef9e365218d1422e4";
} }
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/78.10.2/linux-x86_64/pa-IN/thunderbird-78.10.2.tar.bz2"; { url = "http://archive.mozilla.org/pub/thunderbird/releases/78.11.0/linux-x86_64/pa-IN/thunderbird-78.11.0.tar.bz2";
locale = "pa-IN"; locale = "pa-IN";
arch = "linux-x86_64"; arch = "linux-x86_64";
sha256 = "d0c0b1f7fdf8096f2b68361a2d0d50b96b763f4b06b59ad83299cd3a50fb64f4"; sha256 = "2bf07cc1f213c20b2f181cd104eb6cdd6b5f885ccff2774817ad95840addf3ef";
} }
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/78.10.2/linux-x86_64/pl/thunderbird-78.10.2.tar.bz2"; { url = "http://archive.mozilla.org/pub/thunderbird/releases/78.11.0/linux-x86_64/pl/thunderbird-78.11.0.tar.bz2";
locale = "pl"; locale = "pl";
arch = "linux-x86_64"; arch = "linux-x86_64";
sha256 = "a6960122b0a16afb23151039da5b815e3fa49924459a7e2977c5a6ed757456a2"; sha256 = "9d2607c5d61ef121a383eb71d5bb650ba0ccb6b441666bbac5a9f3b91377f574";
} }
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/78.10.2/linux-x86_64/pt-BR/thunderbird-78.10.2.tar.bz2"; { url = "http://archive.mozilla.org/pub/thunderbird/releases/78.11.0/linux-x86_64/pt-BR/thunderbird-78.11.0.tar.bz2";
locale = "pt-BR"; locale = "pt-BR";
arch = "linux-x86_64"; arch = "linux-x86_64";
sha256 = "8cda6290381759cf776d0d3d8ce5df1fb5e9eb646fb0d2c6d294e04bc11548ba"; sha256 = "cab1a3fabb975895b0c57bb4cb3b90f9386d0c33228b24edc13095d7d644d727";
} }
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/78.10.2/linux-x86_64/pt-PT/thunderbird-78.10.2.tar.bz2"; { url = "http://archive.mozilla.org/pub/thunderbird/releases/78.11.0/linux-x86_64/pt-PT/thunderbird-78.11.0.tar.bz2";
locale = "pt-PT"; locale = "pt-PT";
arch = "linux-x86_64"; arch = "linux-x86_64";
sha256 = "ee722a15adc1091789655fbd1acfb73bc607853ccb9eeb19c02aa1a0af7c27fc"; sha256 = "53b44f8caae2a2ca878435d988dbaec7c188c2fe236efcda8b92b4310aa3119f";
} }
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/78.10.2/linux-x86_64/rm/thunderbird-78.10.2.tar.bz2"; { url = "http://archive.mozilla.org/pub/thunderbird/releases/78.11.0/linux-x86_64/rm/thunderbird-78.11.0.tar.bz2";
locale = "rm"; locale = "rm";
arch = "linux-x86_64"; arch = "linux-x86_64";
sha256 = "b9995a75cf4b874060974e8418f26ff2bdc6c5e620d55d36ff856a3b0415a9ae"; sha256 = "f170779793afc440c273b8826cc456af903a98ac9694b1aae6ee50a5bec2be26";
} }
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/78.10.2/linux-x86_64/ro/thunderbird-78.10.2.tar.bz2"; { url = "http://archive.mozilla.org/pub/thunderbird/releases/78.11.0/linux-x86_64/ro/thunderbird-78.11.0.tar.bz2";
locale = "ro"; locale = "ro";
arch = "linux-x86_64"; arch = "linux-x86_64";
sha256 = "078033f2d95dbf736d1f52da07c8b373b8d9f76cb1054495f9c2b9b39da56b4e"; sha256 = "d0628abef66e2585db898834ddbd3ad9e97edea7269538dbd4b4520f22969b4a";
} }
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/78.10.2/linux-x86_64/ru/thunderbird-78.10.2.tar.bz2"; { url = "http://archive.mozilla.org/pub/thunderbird/releases/78.11.0/linux-x86_64/ru/thunderbird-78.11.0.tar.bz2";
locale = "ru"; locale = "ru";
arch = "linux-x86_64"; arch = "linux-x86_64";
sha256 = "1c29d7ef67161430f392ed02e3344e136ca16199cef14df75af472c096e94f4a"; sha256 = "077b682cc7365aab8fb3100d5f487fc873a16a4fcf71dc25e63a2604b57ccc00";
} }
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/78.10.2/linux-x86_64/si/thunderbird-78.10.2.tar.bz2"; { url = "http://archive.mozilla.org/pub/thunderbird/releases/78.11.0/linux-x86_64/si/thunderbird-78.11.0.tar.bz2";
locale = "si"; locale = "si";
arch = "linux-x86_64"; arch = "linux-x86_64";
sha256 = "67829f91431cbfb1213fb9c7e70b4dcd25b4c2e0b3b433e466684ae582e583b5"; sha256 = "7fc582c2f23b197da426ff0150941ea59fe1da26c84df41bff88039ff3fdf4fb";
} }
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/78.10.2/linux-x86_64/sk/thunderbird-78.10.2.tar.bz2"; { url = "http://archive.mozilla.org/pub/thunderbird/releases/78.11.0/linux-x86_64/sk/thunderbird-78.11.0.tar.bz2";
locale = "sk"; locale = "sk";
arch = "linux-x86_64"; arch = "linux-x86_64";
sha256 = "73d935c1b4f8e353a3aaffedbbe91a34c3ef09e10de8526fb1aeb857640bfb4f"; sha256 = "cde3c240b1718085b36e9479eb9717202c1a179d9cd2cd094901074d666fb763";
} }
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/78.10.2/linux-x86_64/sl/thunderbird-78.10.2.tar.bz2"; { url = "http://archive.mozilla.org/pub/thunderbird/releases/78.11.0/linux-x86_64/sl/thunderbird-78.11.0.tar.bz2";
locale = "sl"; locale = "sl";
arch = "linux-x86_64"; arch = "linux-x86_64";
sha256 = "0686fcf2458572e3be774b1a18400d649bb8618910b3d92ea20a0111a2373dc3"; sha256 = "54ee18a338c727838db7cdca4c458d4b9248c626a3338ec83c41001d124d2917";
} }
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/78.10.2/linux-x86_64/sq/thunderbird-78.10.2.tar.bz2"; { url = "http://archive.mozilla.org/pub/thunderbird/releases/78.11.0/linux-x86_64/sq/thunderbird-78.11.0.tar.bz2";
locale = "sq"; locale = "sq";
arch = "linux-x86_64"; arch = "linux-x86_64";
sha256 = "b3245baa380a84916021643cba7dedaf8c4b030df87ad358b03f245478cc3a84"; sha256 = "511209ca3eb810250fef3b0b01f71941bc0436410716974244aa9b5b1193582b";
} }
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/78.10.2/linux-x86_64/sr/thunderbird-78.10.2.tar.bz2"; { url = "http://archive.mozilla.org/pub/thunderbird/releases/78.11.0/linux-x86_64/sr/thunderbird-78.11.0.tar.bz2";
locale = "sr"; locale = "sr";
arch = "linux-x86_64"; arch = "linux-x86_64";
sha256 = "8436ecac0bbac402c24fe75ee94272d8cef563f31dbf52027bb6c429df3d52c9"; sha256 = "d22da1e4ab790ffb3e8a8c3928adfe8c1b7b65c08a5dbaf2bb63473b08fb5207";
} }
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/78.10.2/linux-x86_64/sv-SE/thunderbird-78.10.2.tar.bz2"; { url = "http://archive.mozilla.org/pub/thunderbird/releases/78.11.0/linux-x86_64/sv-SE/thunderbird-78.11.0.tar.bz2";
locale = "sv-SE"; locale = "sv-SE";
arch = "linux-x86_64"; arch = "linux-x86_64";
sha256 = "288ccc7ba5040126801af4fc9a19a44e6498a034fbc483ae8bd626b8c11e0fa1"; sha256 = "c7826bfef5b705fb5d00b6ade07d092bfed25d74b6992308027e8ea99f2ed16b";
} }
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/78.10.2/linux-x86_64/th/thunderbird-78.10.2.tar.bz2"; { url = "http://archive.mozilla.org/pub/thunderbird/releases/78.11.0/linux-x86_64/th/thunderbird-78.11.0.tar.bz2";
locale = "th"; locale = "th";
arch = "linux-x86_64"; arch = "linux-x86_64";
sha256 = "c59e1b0cddf5b65690acbcbf7a23c08db290bf953eafc0cc7c1a8f6ed6da5312"; sha256 = "cba4789bcd072a21d5e131f0aed7aed1775f6122776f873b54fd9832bc5b621b";
} }
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/78.10.2/linux-x86_64/tr/thunderbird-78.10.2.tar.bz2"; { url = "http://archive.mozilla.org/pub/thunderbird/releases/78.11.0/linux-x86_64/tr/thunderbird-78.11.0.tar.bz2";
locale = "tr"; locale = "tr";
arch = "linux-x86_64"; arch = "linux-x86_64";
sha256 = "a0c894db24906ce1b4386acf404feb212103ae5d1ddab7c2e2b77a0903a133c8"; sha256 = "8f8345e6722931b495755ccf67b0546443e11d435cfe809edd00f6e3565a17bc";
} }
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/78.10.2/linux-x86_64/uk/thunderbird-78.10.2.tar.bz2"; { url = "http://archive.mozilla.org/pub/thunderbird/releases/78.11.0/linux-x86_64/uk/thunderbird-78.11.0.tar.bz2";
locale = "uk"; locale = "uk";
arch = "linux-x86_64"; arch = "linux-x86_64";
sha256 = "4ed5efc42866fe755a62a84a74a6f7535e50561fe3ab6d54b9765b0da93229a6"; sha256 = "cce394a934ab0352cbd980d29a61fc1be4e66636ab5e31d358fa2efc82e17c19";
} }
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/78.10.2/linux-x86_64/uz/thunderbird-78.10.2.tar.bz2"; { url = "http://archive.mozilla.org/pub/thunderbird/releases/78.11.0/linux-x86_64/uz/thunderbird-78.11.0.tar.bz2";
locale = "uz"; locale = "uz";
arch = "linux-x86_64"; arch = "linux-x86_64";
sha256 = "690a6d3b774be3f4cdb8468e191de18fcc1ffce06046c32f25207732d16da1b5"; sha256 = "4a94d98472bcbb34a19b58c8e4caeb2e29c58d4d7496ba0d4af02a8aa0fe3802";
} }
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/78.10.2/linux-x86_64/vi/thunderbird-78.10.2.tar.bz2"; { url = "http://archive.mozilla.org/pub/thunderbird/releases/78.11.0/linux-x86_64/vi/thunderbird-78.11.0.tar.bz2";
locale = "vi"; locale = "vi";
arch = "linux-x86_64"; arch = "linux-x86_64";
sha256 = "30971dab3bf4e13665d779d83bff7ee0ca9bc126d57f446f7472c8bd5ba490ee"; sha256 = "a48de334712d154917d6285a84ab115f48e672fdbcd9a7469013d3b07524562e";
} }
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/78.10.2/linux-x86_64/zh-CN/thunderbird-78.10.2.tar.bz2"; { url = "http://archive.mozilla.org/pub/thunderbird/releases/78.11.0/linux-x86_64/zh-CN/thunderbird-78.11.0.tar.bz2";
locale = "zh-CN"; locale = "zh-CN";
arch = "linux-x86_64"; arch = "linux-x86_64";
sha256 = "00cba2ab030699fe429d138dd572fcad5c4aaf6236f5e6ff8659fe577c27aff3"; sha256 = "6892a5236ac0abecaa657b98929fd9feeaa0ac9d4d64e000ced26687c4fa96a3";
} }
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/78.10.2/linux-x86_64/zh-TW/thunderbird-78.10.2.tar.bz2"; { url = "http://archive.mozilla.org/pub/thunderbird/releases/78.11.0/linux-x86_64/zh-TW/thunderbird-78.11.0.tar.bz2";
locale = "zh-TW"; locale = "zh-TW";
arch = "linux-x86_64"; arch = "linux-x86_64";
sha256 = "4eb969ea56666f12804dd7c63f5872be4c0194d10335a52dbbb041c5c18d3e53"; sha256 = "292ae08c031cd40a493348dcf39adfecbb9372288cd2cc4bb5ada9eaee5a7649";
} }
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/78.10.2/linux-i686/af/thunderbird-78.10.2.tar.bz2"; { url = "http://archive.mozilla.org/pub/thunderbird/releases/78.11.0/linux-i686/af/thunderbird-78.11.0.tar.bz2";
locale = "af"; locale = "af";
arch = "linux-i686"; arch = "linux-i686";
sha256 = "8484971834097887f0b2f61286fcb14fa1f60bbd25d4d54f6ef5b390a9eedd64"; sha256 = "26a1e66facb1839a8a2dcb2fffe3677a5d6f9c68343293625b22faf553ff1244";
} }
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/78.10.2/linux-i686/ar/thunderbird-78.10.2.tar.bz2"; { url = "http://archive.mozilla.org/pub/thunderbird/releases/78.11.0/linux-i686/ar/thunderbird-78.11.0.tar.bz2";
locale = "ar"; locale = "ar";
arch = "linux-i686"; arch = "linux-i686";
sha256 = "345546bf8da50e507c8205cdd9e933e1bec524080f9c4c439c26a1e55ba8e22f"; sha256 = "6625bb6b5374ae174b21d53735c4d51d3d8464556ff42ac9b270908991837989";
} }
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/78.10.2/linux-i686/ast/thunderbird-78.10.2.tar.bz2"; { url = "http://archive.mozilla.org/pub/thunderbird/releases/78.11.0/linux-i686/ast/thunderbird-78.11.0.tar.bz2";
locale = "ast"; locale = "ast";
arch = "linux-i686"; arch = "linux-i686";
sha256 = "d11e78aa384af2e11a6ecb41d82f0fbc1d1b4b19d137ff9ac15f8858dfa0a3f9"; sha256 = "57e8de5bbace8def637356ac7b519155411f8b5b2dd6496ebbdde102fea490fc";
} }
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/78.10.2/linux-i686/be/thunderbird-78.10.2.tar.bz2"; { url = "http://archive.mozilla.org/pub/thunderbird/releases/78.11.0/linux-i686/be/thunderbird-78.11.0.tar.bz2";
locale = "be"; locale = "be";
arch = "linux-i686"; arch = "linux-i686";
sha256 = "c99b7cb728432c4d8d5281206e7a72757621066d2403fe9d2305ce9f40635a46"; sha256 = "c045e2b129cd373ed1b2a6ce4d12d4dd3dbcf92c380a1dd8fa237f001f7c5bda";
} }
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/78.10.2/linux-i686/bg/thunderbird-78.10.2.tar.bz2"; { url = "http://archive.mozilla.org/pub/thunderbird/releases/78.11.0/linux-i686/bg/thunderbird-78.11.0.tar.bz2";
locale = "bg"; locale = "bg";
arch = "linux-i686"; arch = "linux-i686";
sha256 = "e8a6e2e53757a27954728c87a23f1631148d9391118d16cde1a8eef31c641317"; sha256 = "5bd9ded232f60b88be72a5cd301b02c6bc6a6651be48e08ebe5358aaa801dd6e";
} }
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/78.10.2/linux-i686/br/thunderbird-78.10.2.tar.bz2"; { url = "http://archive.mozilla.org/pub/thunderbird/releases/78.11.0/linux-i686/br/thunderbird-78.11.0.tar.bz2";
locale = "br"; locale = "br";
arch = "linux-i686"; arch = "linux-i686";
sha256 = "65c138cc97aa673c8a44f7faadf3f31524ea71a1e5b8ad9d5cad7c0c9fcb39f7"; sha256 = "1dc7583fe66a26b040e1a46281964898c5a79ead6516e02a0c1ec7a175962621";
} }
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/78.10.2/linux-i686/ca/thunderbird-78.10.2.tar.bz2"; { url = "http://archive.mozilla.org/pub/thunderbird/releases/78.11.0/linux-i686/ca/thunderbird-78.11.0.tar.bz2";
locale = "ca"; locale = "ca";
arch = "linux-i686"; arch = "linux-i686";
sha256 = "0eaffda4000d85a5f369c3be6edc9561c54047def9d8790af0195bf3fa7f85da"; sha256 = "68cc1ba9382be6d5b90e94fdc6fd1403b2b07c67759be80d2623fcd41b16f51f";
} }
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/78.10.2/linux-i686/cak/thunderbird-78.10.2.tar.bz2"; { url = "http://archive.mozilla.org/pub/thunderbird/releases/78.11.0/linux-i686/cak/thunderbird-78.11.0.tar.bz2";
locale = "cak"; locale = "cak";
arch = "linux-i686"; arch = "linux-i686";
sha256 = "0765345951e7a3c4604ba633f7e029cbad2af783e72325147c4a1e48a5cb65bf"; sha256 = "006d1806c7ce336fb51bcc74d4907a6aacb43c0902e0b323b638f9a9d2664ed1";
} }
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/78.10.2/linux-i686/cs/thunderbird-78.10.2.tar.bz2"; { url = "http://archive.mozilla.org/pub/thunderbird/releases/78.11.0/linux-i686/cs/thunderbird-78.11.0.tar.bz2";
locale = "cs"; locale = "cs";
arch = "linux-i686"; arch = "linux-i686";
sha256 = "2c254e630288415de40276ef6e4d59bdd677568a4f24629136e36938fd03563c"; sha256 = "5b342803243a51a9e521705c1082c87cc528ac59475d6b893ca475ecb10ee02c";
} }
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/78.10.2/linux-i686/cy/thunderbird-78.10.2.tar.bz2"; { url = "http://archive.mozilla.org/pub/thunderbird/releases/78.11.0/linux-i686/cy/thunderbird-78.11.0.tar.bz2";
locale = "cy"; locale = "cy";
arch = "linux-i686"; arch = "linux-i686";
sha256 = "ce71a9c112876c4ff47c09e5feb39dbb3ed2c002c79abef8383735e9d74c5c9c"; sha256 = "55bf6bc1aa371ad52097e89dc26af4fd11a2afc73b4ece79ae3c3bf0294fe5fc";
} }
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/78.10.2/linux-i686/da/thunderbird-78.10.2.tar.bz2"; { url = "http://archive.mozilla.org/pub/thunderbird/releases/78.11.0/linux-i686/da/thunderbird-78.11.0.tar.bz2";
locale = "da"; locale = "da";
arch = "linux-i686"; arch = "linux-i686";
sha256 = "644d65f2245f51c0ec992554e87223db813d121973c76141f6b0a121b9a278e2"; sha256 = "41d21b7065bb4a11b80990daf550a29e5d588965c83cb48a762bba7bcbbec502";
} }
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/78.10.2/linux-i686/de/thunderbird-78.10.2.tar.bz2"; { url = "http://archive.mozilla.org/pub/thunderbird/releases/78.11.0/linux-i686/de/thunderbird-78.11.0.tar.bz2";
locale = "de"; locale = "de";
arch = "linux-i686"; arch = "linux-i686";
sha256 = "422274c487c76579600ab0c00b815e079a0225a6e87b2a8c9b2e2e93f252e080"; sha256 = "190339793ab6b5bcbbea2e81a1c783fa91dc18ac702870bd045ba597d0c826d0";
} }
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/78.10.2/linux-i686/dsb/thunderbird-78.10.2.tar.bz2"; { url = "http://archive.mozilla.org/pub/thunderbird/releases/78.11.0/linux-i686/dsb/thunderbird-78.11.0.tar.bz2";
locale = "dsb"; locale = "dsb";
arch = "linux-i686"; arch = "linux-i686";
sha256 = "5c3676f8ce30fe42f0dcfb0ef8d793929527bef0d62e5014e48116ec583670ac"; sha256 = "068243c6d19d9c5ba9ff4ce9793db643555657593659176fb543eba5cbde7c44";
} }
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/78.10.2/linux-i686/el/thunderbird-78.10.2.tar.bz2"; { url = "http://archive.mozilla.org/pub/thunderbird/releases/78.11.0/linux-i686/el/thunderbird-78.11.0.tar.bz2";
locale = "el"; locale = "el";
arch = "linux-i686"; arch = "linux-i686";
sha256 = "94a3af4bc068b7bd7d3ef8e649dcd95a5db30aa4906b0702911ffb837b02ba23"; sha256 = "ab93bb707a7bf50813b067c7d2f5f72e858073080e28094a917a4e5715612053";
} }
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/78.10.2/linux-i686/en-CA/thunderbird-78.10.2.tar.bz2"; { url = "http://archive.mozilla.org/pub/thunderbird/releases/78.11.0/linux-i686/en-CA/thunderbird-78.11.0.tar.bz2";
locale = "en-CA"; locale = "en-CA";
arch = "linux-i686"; arch = "linux-i686";
sha256 = "8be631960ed39fdfb5d97f550a1be0d0de2bd237ad80162dc580cac17c79d190"; sha256 = "2bbc9fe5efb8905d069174d939933b64dfeba6716f81487b4aedcea7e00fb48a";
} }
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/78.10.2/linux-i686/en-GB/thunderbird-78.10.2.tar.bz2"; { url = "http://archive.mozilla.org/pub/thunderbird/releases/78.11.0/linux-i686/en-GB/thunderbird-78.11.0.tar.bz2";
locale = "en-GB"; locale = "en-GB";
arch = "linux-i686"; arch = "linux-i686";
sha256 = "991b14eb38814c70170e3404d5e659c00504c4792ed104d86097a71542ad0f0d"; sha256 = "6ac3648deccc9b3b01575791fadec6bb9210aeae4d32934f7ae7ddee7d857b93";
} }
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/78.10.2/linux-i686/en-US/thunderbird-78.10.2.tar.bz2"; { url = "http://archive.mozilla.org/pub/thunderbird/releases/78.11.0/linux-i686/en-US/thunderbird-78.11.0.tar.bz2";
locale = "en-US"; locale = "en-US";
arch = "linux-i686"; arch = "linux-i686";
sha256 = "ab8487bfd03b26dea36db6da1e59294322392365da9cd6f13e2b454b07f9d77d"; sha256 = "e423d465824e4b56f3899fb15dbac1b016832446ded5c46b8bde0c279ddd3df2";
} }
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/78.10.2/linux-i686/es-AR/thunderbird-78.10.2.tar.bz2"; { url = "http://archive.mozilla.org/pub/thunderbird/releases/78.11.0/linux-i686/es-AR/thunderbird-78.11.0.tar.bz2";
locale = "es-AR"; locale = "es-AR";
arch = "linux-i686"; arch = "linux-i686";
sha256 = "4e7c1248cdaf72d98a41738dee2e1c95b7e1be68beaee0eb41b0184cda8f75c2"; sha256 = "925c762d84e4620b96b8feb73a4b5506fe3dc339c0ef316e23ef7ea636ad8da6";
} }
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/78.10.2/linux-i686/es-ES/thunderbird-78.10.2.tar.bz2"; { url = "http://archive.mozilla.org/pub/thunderbird/releases/78.11.0/linux-i686/es-ES/thunderbird-78.11.0.tar.bz2";
locale = "es-ES"; locale = "es-ES";
arch = "linux-i686"; arch = "linux-i686";
sha256 = "af2c06a28cf1272d692f0a7d652716cc7419f92c069b828c3ceaae0b6e9cbbee"; sha256 = "d75ea97c5cfa524c93055af618cbbd27a6ef8c2125ebe963467f0e93f9f80ea3";
} }
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/78.10.2/linux-i686/et/thunderbird-78.10.2.tar.bz2"; { url = "http://archive.mozilla.org/pub/thunderbird/releases/78.11.0/linux-i686/et/thunderbird-78.11.0.tar.bz2";
locale = "et"; locale = "et";
arch = "linux-i686"; arch = "linux-i686";
sha256 = "1e8bb2945185187e5e3a21f66f0ef94f9431945f51f1d13fbd36d1b67a2e6e3b"; sha256 = "f925832734574c0056ce60edc9630db70d262b993c913da167f01b51f9ec14b1";
} }
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/78.10.2/linux-i686/eu/thunderbird-78.10.2.tar.bz2"; { url = "http://archive.mozilla.org/pub/thunderbird/releases/78.11.0/linux-i686/eu/thunderbird-78.11.0.tar.bz2";
locale = "eu"; locale = "eu";
arch = "linux-i686"; arch = "linux-i686";
sha256 = "be969ada044ade28a438b35d8b65e4a14995e24341f15a06b08dd6da7b5ef7df"; sha256 = "60f27f7d725bb90ec93ab247c708442506e9532c050bc7a66b5d23db2dcab91a";
} }
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/78.10.2/linux-i686/fa/thunderbird-78.10.2.tar.bz2"; { url = "http://archive.mozilla.org/pub/thunderbird/releases/78.11.0/linux-i686/fa/thunderbird-78.11.0.tar.bz2";
locale = "fa"; locale = "fa";
arch = "linux-i686"; arch = "linux-i686";
sha256 = "8dedd020f9d7d0869c2d394f7f643cb6c95be59ce5e7a63a736493b66108154e"; sha256 = "505373b341db6e20b90d555815974a232b6ec685b4301e9b81305092806d721e";
} }
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/78.10.2/linux-i686/fi/thunderbird-78.10.2.tar.bz2"; { url = "http://archive.mozilla.org/pub/thunderbird/releases/78.11.0/linux-i686/fi/thunderbird-78.11.0.tar.bz2";
locale = "fi"; locale = "fi";
arch = "linux-i686"; arch = "linux-i686";
sha256 = "5d1fba8f83af7f02359b7469c036cc8438dc1284aa1c68676245966faa7aef81"; sha256 = "6f9c715ae0d7db81db3ee72d822ea1d9395b30d0a4a2f46c50f77e4a156df27f";
} }
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/78.10.2/linux-i686/fr/thunderbird-78.10.2.tar.bz2"; { url = "http://archive.mozilla.org/pub/thunderbird/releases/78.11.0/linux-i686/fr/thunderbird-78.11.0.tar.bz2";
locale = "fr"; locale = "fr";
arch = "linux-i686"; arch = "linux-i686";
sha256 = "49b23d9fae7f132908b8d3498fb5f17321c25037bf300188dd2916ac947f0086"; sha256 = "5600b094c00d9607e91f2c28aa99de75c87999a1d16739f926812a0e9bdcda53";
} }
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/78.10.2/linux-i686/fy-NL/thunderbird-78.10.2.tar.bz2"; { url = "http://archive.mozilla.org/pub/thunderbird/releases/78.11.0/linux-i686/fy-NL/thunderbird-78.11.0.tar.bz2";
locale = "fy-NL"; locale = "fy-NL";
arch = "linux-i686"; arch = "linux-i686";
sha256 = "7a4c4e6a7801805685b062b402c36d9c53e69864fad37d7e7da08270528caf74"; sha256 = "3fd24a4704df03e83bdebdf9a98a085849a72de939aa21c8fb93051ca9ddab85";
} }
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/78.10.2/linux-i686/ga-IE/thunderbird-78.10.2.tar.bz2"; { url = "http://archive.mozilla.org/pub/thunderbird/releases/78.11.0/linux-i686/ga-IE/thunderbird-78.11.0.tar.bz2";
locale = "ga-IE"; locale = "ga-IE";
arch = "linux-i686"; arch = "linux-i686";
sha256 = "ff396a9fd281a954c4f8fb7d244f4d38f525e6b4a2b60e6be349c77dfdc0cc08"; sha256 = "1f69cea70de04de5458a877b9ac3c2cb9cb04a60f888cdb19118bb04156540e2";
} }
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/78.10.2/linux-i686/gd/thunderbird-78.10.2.tar.bz2"; { url = "http://archive.mozilla.org/pub/thunderbird/releases/78.11.0/linux-i686/gd/thunderbird-78.11.0.tar.bz2";
locale = "gd"; locale = "gd";
arch = "linux-i686"; arch = "linux-i686";
sha256 = "c7d41e9cfd5fc3b3f2b7500cb0c3825c54ae1b5a0ac43de81e7bd1d89e7d2937"; sha256 = "d33666cb1812541a81f91b457a7d9d3dba3ede5b90f0e56d31d90dd8359e077b";
} }
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/78.10.2/linux-i686/gl/thunderbird-78.10.2.tar.bz2"; { url = "http://archive.mozilla.org/pub/thunderbird/releases/78.11.0/linux-i686/gl/thunderbird-78.11.0.tar.bz2";
locale = "gl"; locale = "gl";
arch = "linux-i686"; arch = "linux-i686";
sha256 = "b029af91843cceeba4b0cb8f65290c7d8ae847b0e297bf16c9f596416fb7d973"; sha256 = "5694106a7bccd7dacc35d89f4c2dc3080be40f937d5b3a18e6797a2dad1dfdc4";
} }
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/78.10.2/linux-i686/he/thunderbird-78.10.2.tar.bz2"; { url = "http://archive.mozilla.org/pub/thunderbird/releases/78.11.0/linux-i686/he/thunderbird-78.11.0.tar.bz2";
locale = "he"; locale = "he";
arch = "linux-i686"; arch = "linux-i686";
sha256 = "0378df8e3e79fbdc85bee602d2215a088f9f9bffaa65ea66808fe27efd38ef3f"; sha256 = "77e2e3e1872c67de101d3fca87a3c308b26eb47f06222f0504a95e42f9248d39";
} }
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/78.10.2/linux-i686/hr/thunderbird-78.10.2.tar.bz2"; { url = "http://archive.mozilla.org/pub/thunderbird/releases/78.11.0/linux-i686/hr/thunderbird-78.11.0.tar.bz2";
locale = "hr"; locale = "hr";
arch = "linux-i686"; arch = "linux-i686";
sha256 = "1d4c9f9ff3d78d049769404088bc2cc8e7c45480aca2da53974f3388d0f156a0"; sha256 = "513c4d88387c7ac3463047b4e84c2f049dcb0dcc205bcf0d1b6935f94db16a88";
} }
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/78.10.2/linux-i686/hsb/thunderbird-78.10.2.tar.bz2"; { url = "http://archive.mozilla.org/pub/thunderbird/releases/78.11.0/linux-i686/hsb/thunderbird-78.11.0.tar.bz2";
locale = "hsb"; locale = "hsb";
arch = "linux-i686"; arch = "linux-i686";
sha256 = "8a0bc3d8b5c58b44f299243c7ac9e0166b530c26e6c7c71a2eacb7b6e2b9d9c0"; sha256 = "f2731aff055f734befefbd17778ccf8962c882266443b9ff5e6e6babcc09c0c4";
} }
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/78.10.2/linux-i686/hu/thunderbird-78.10.2.tar.bz2"; { url = "http://archive.mozilla.org/pub/thunderbird/releases/78.11.0/linux-i686/hu/thunderbird-78.11.0.tar.bz2";
locale = "hu"; locale = "hu";
arch = "linux-i686"; arch = "linux-i686";
sha256 = "6ea2a35507444301cc1a7dd970a69b21a350254cc5de676406b09c55596e146c"; sha256 = "c29018382b2d0d45727e23bbaf3a37661ccb7908912a24ed5ff3042766ecdec9";
} }
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/78.10.2/linux-i686/hy-AM/thunderbird-78.10.2.tar.bz2"; { url = "http://archive.mozilla.org/pub/thunderbird/releases/78.11.0/linux-i686/hy-AM/thunderbird-78.11.0.tar.bz2";
locale = "hy-AM"; locale = "hy-AM";
arch = "linux-i686"; arch = "linux-i686";
sha256 = "f6f744b1ecdff58e0bf1ef315705f8e0dc17bb3fab3db3d6a54004632eb5e037"; sha256 = "f9152a462ac758fe21c46e734bc8d8e727479f4cc8c7c26cda43bfc896244596";
} }
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/78.10.2/linux-i686/id/thunderbird-78.10.2.tar.bz2"; { url = "http://archive.mozilla.org/pub/thunderbird/releases/78.11.0/linux-i686/id/thunderbird-78.11.0.tar.bz2";
locale = "id"; locale = "id";
arch = "linux-i686"; arch = "linux-i686";
sha256 = "6cc9fec045a8ba154203fa597e4c67335e4461dc2026d27cc7675b9ebef03f8c"; sha256 = "e336ee15d25b0edca6492a765af7a6b0eed3ef30155c908e4940985e373304b5";
} }
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/78.10.2/linux-i686/is/thunderbird-78.10.2.tar.bz2"; { url = "http://archive.mozilla.org/pub/thunderbird/releases/78.11.0/linux-i686/is/thunderbird-78.11.0.tar.bz2";
locale = "is"; locale = "is";
arch = "linux-i686"; arch = "linux-i686";
sha256 = "c2e9b5fba27f077833c49910dc82922d80fa3d34b954aa5440626030e103a6c6"; sha256 = "6495cec1de969c1f30ef042fe604027014161497ed77eb327451eb4a70f7b1a2";
} }
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/78.10.2/linux-i686/it/thunderbird-78.10.2.tar.bz2"; { url = "http://archive.mozilla.org/pub/thunderbird/releases/78.11.0/linux-i686/it/thunderbird-78.11.0.tar.bz2";
locale = "it"; locale = "it";
arch = "linux-i686"; arch = "linux-i686";
sha256 = "62c7ba5135cd6c4cf3e079dc91699574328146d1b7258b609d8e6374be5a1596"; sha256 = "7bb395c5b3cda42c41196f06be6ed2f35eff958c3a9325807c42616b971087c3";
} }
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/78.10.2/linux-i686/ja/thunderbird-78.10.2.tar.bz2"; { url = "http://archive.mozilla.org/pub/thunderbird/releases/78.11.0/linux-i686/ja/thunderbird-78.11.0.tar.bz2";
locale = "ja"; locale = "ja";
arch = "linux-i686"; arch = "linux-i686";
sha256 = "3cf3692667897274da887fd7b055f9b3887cdd62d840fef44b83a9b991ae6a77"; sha256 = "ec313b0754cffa5ed388e983faa394b146cb5227c99e74ee681ab833540b1cf4";
} }
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/78.10.2/linux-i686/ka/thunderbird-78.10.2.tar.bz2"; { url = "http://archive.mozilla.org/pub/thunderbird/releases/78.11.0/linux-i686/ka/thunderbird-78.11.0.tar.bz2";
locale = "ka"; locale = "ka";
arch = "linux-i686"; arch = "linux-i686";
sha256 = "5f06a74d0b4aa431648424fd0c074f192914da9d28bbd54b8303372aba1201ec"; sha256 = "13b8d137d2b1da647ed603208a4cd275e5cc11d3395a5709629ed8965c5c355d";
} }
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/78.10.2/linux-i686/kab/thunderbird-78.10.2.tar.bz2"; { url = "http://archive.mozilla.org/pub/thunderbird/releases/78.11.0/linux-i686/kab/thunderbird-78.11.0.tar.bz2";
locale = "kab"; locale = "kab";
arch = "linux-i686"; arch = "linux-i686";
sha256 = "42540cb34f2f32eb713dec1609ac708b176110a09e6be5723fad3f1d1175d251"; sha256 = "a8780a5af7cd112d05a2b13469ff40d09c1909b2a09012a4ac7883b8555c3b71";
} }
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/78.10.2/linux-i686/kk/thunderbird-78.10.2.tar.bz2"; { url = "http://archive.mozilla.org/pub/thunderbird/releases/78.11.0/linux-i686/kk/thunderbird-78.11.0.tar.bz2";
locale = "kk"; locale = "kk";
arch = "linux-i686"; arch = "linux-i686";
sha256 = "6aad09c45d90c39b2b3b81b26888de00e1e8593fc53304d87fec5b6caeee2459"; sha256 = "1a1b0ac46b10eda11ffa4a53dcf53c1dce2a2a52355e08e44960d135a8feea91";
} }
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/78.10.2/linux-i686/ko/thunderbird-78.10.2.tar.bz2"; { url = "http://archive.mozilla.org/pub/thunderbird/releases/78.11.0/linux-i686/ko/thunderbird-78.11.0.tar.bz2";
locale = "ko"; locale = "ko";
arch = "linux-i686"; arch = "linux-i686";
sha256 = "94291ef5626c5d56b7923648ccaf0723bb0588a9898dc8b28f227949c138b325"; sha256 = "312c211b3079191b5d53cf5052e0225fee2b4e699a848b3d29a8efdf3192185b";
} }
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/78.10.2/linux-i686/lt/thunderbird-78.10.2.tar.bz2"; { url = "http://archive.mozilla.org/pub/thunderbird/releases/78.11.0/linux-i686/lt/thunderbird-78.11.0.tar.bz2";
locale = "lt"; locale = "lt";
arch = "linux-i686"; arch = "linux-i686";
sha256 = "10bc645a6577fd310f0bcd85f686d6e43a2c58eaf910e3d084a97fbca3d3c4b3"; sha256 = "817b079ecff259043a0bf3abece031c15e04a2a615b49314d8377da6ee8feebc";
} }
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/78.10.2/linux-i686/ms/thunderbird-78.10.2.tar.bz2"; { url = "http://archive.mozilla.org/pub/thunderbird/releases/78.11.0/linux-i686/ms/thunderbird-78.11.0.tar.bz2";
locale = "ms"; locale = "ms";
arch = "linux-i686"; arch = "linux-i686";
sha256 = "f64aac07837b287cfc55b30ef30989b91b1536ee3823087deb4ecd5e5dc35d08"; sha256 = "737b88b2fd394851143a798508b537b921fde8c0648856e09426102e7962ef7d";
} }
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/78.10.2/linux-i686/nb-NO/thunderbird-78.10.2.tar.bz2"; { url = "http://archive.mozilla.org/pub/thunderbird/releases/78.11.0/linux-i686/nb-NO/thunderbird-78.11.0.tar.bz2";
locale = "nb-NO"; locale = "nb-NO";
arch = "linux-i686"; arch = "linux-i686";
sha256 = "250be8abfa2e95e89d01cce787f210db2ead934f58f426c8fef6b0807bdc37a7"; sha256 = "9754dd9cc6ca38970a50b3f26d0d2fe1cb1c3a66a77829489cf6f2098f7f244f";
} }
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/78.10.2/linux-i686/nl/thunderbird-78.10.2.tar.bz2"; { url = "http://archive.mozilla.org/pub/thunderbird/releases/78.11.0/linux-i686/nl/thunderbird-78.11.0.tar.bz2";
locale = "nl"; locale = "nl";
arch = "linux-i686"; arch = "linux-i686";
sha256 = "50d4354bef2bffdfc7f51f0d855aa27f1c2c4798d623b50f8517fb29e6055e95"; sha256 = "b43da367f973e7b2899967c777514262f4503778d550bee27c5b11651555cc17";
} }
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/78.10.2/linux-i686/nn-NO/thunderbird-78.10.2.tar.bz2"; { url = "http://archive.mozilla.org/pub/thunderbird/releases/78.11.0/linux-i686/nn-NO/thunderbird-78.11.0.tar.bz2";
locale = "nn-NO"; locale = "nn-NO";
arch = "linux-i686"; arch = "linux-i686";
sha256 = "6eaaf29fece0729b40e05b79d7c3875862eabd8c87fb992a1c36334437501dbb"; sha256 = "cb0bae6a905c2ffc39f173519ab9dcdd7835c1b9c169f778727b55eeb8c67cfa";
} }
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/78.10.2/linux-i686/pa-IN/thunderbird-78.10.2.tar.bz2"; { url = "http://archive.mozilla.org/pub/thunderbird/releases/78.11.0/linux-i686/pa-IN/thunderbird-78.11.0.tar.bz2";
locale = "pa-IN"; locale = "pa-IN";
arch = "linux-i686"; arch = "linux-i686";
sha256 = "36a2de0519ab3edbbdff6e6ed00fb29be936c1db8083780e441832647a939ac7"; sha256 = "d9d7c15ca519636ff93e0f1ec956e131b5bc92bb18a67c7958140ebd75ca84c0";
} }
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/78.10.2/linux-i686/pl/thunderbird-78.10.2.tar.bz2"; { url = "http://archive.mozilla.org/pub/thunderbird/releases/78.11.0/linux-i686/pl/thunderbird-78.11.0.tar.bz2";
locale = "pl"; locale = "pl";
arch = "linux-i686"; arch = "linux-i686";
sha256 = "5f7289ff86b91e62365c0fee423e1823bf8642ac18e0377bb12f0a352df3e675"; sha256 = "7cbe410b721565b676d6a9c0d09e163a7452b0a9137672f654f8fdeca6212a27";
} }
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/78.10.2/linux-i686/pt-BR/thunderbird-78.10.2.tar.bz2"; { url = "http://archive.mozilla.org/pub/thunderbird/releases/78.11.0/linux-i686/pt-BR/thunderbird-78.11.0.tar.bz2";
locale = "pt-BR"; locale = "pt-BR";
arch = "linux-i686"; arch = "linux-i686";
sha256 = "e3107e2fbaaaa2be0bc1f54c837a26052f407d08cc0f6a9225045c295323b339"; sha256 = "aa4fbe2a656d937559c8556549f0cc2d9f8fa0c75ad1ede55c9e8877a63538cd";
} }
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/78.10.2/linux-i686/pt-PT/thunderbird-78.10.2.tar.bz2"; { url = "http://archive.mozilla.org/pub/thunderbird/releases/78.11.0/linux-i686/pt-PT/thunderbird-78.11.0.tar.bz2";
locale = "pt-PT"; locale = "pt-PT";
arch = "linux-i686"; arch = "linux-i686";
sha256 = "76a119289c6fd93531945945ea9061b0e243a23b050cc6d4b65e50c84f32d631"; sha256 = "63a2c44c1ec1486574c8addf920e8561f792d01fb8179239fb268e5277e68782";
} }
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/78.10.2/linux-i686/rm/thunderbird-78.10.2.tar.bz2"; { url = "http://archive.mozilla.org/pub/thunderbird/releases/78.11.0/linux-i686/rm/thunderbird-78.11.0.tar.bz2";
locale = "rm"; locale = "rm";
arch = "linux-i686"; arch = "linux-i686";
sha256 = "db6109fc701fd86068e2bfd28619f7ff3e8984dc2dd527b15069a636caff72de"; sha256 = "8610c130d68a8d5f38ea179b13bdd17ab349cca8647470b4e2987937676f3c5e";
} }
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/78.10.2/linux-i686/ro/thunderbird-78.10.2.tar.bz2"; { url = "http://archive.mozilla.org/pub/thunderbird/releases/78.11.0/linux-i686/ro/thunderbird-78.11.0.tar.bz2";
locale = "ro"; locale = "ro";
arch = "linux-i686"; arch = "linux-i686";
sha256 = "6ebd451d5dea498c610aa8fcf64033768dc63b1c5b3d911a078b885005387a43"; sha256 = "d809cc26b134f707579e78e624f654b569d33d2282391943eeabfd494388f4f9";
} }
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/78.10.2/linux-i686/ru/thunderbird-78.10.2.tar.bz2"; { url = "http://archive.mozilla.org/pub/thunderbird/releases/78.11.0/linux-i686/ru/thunderbird-78.11.0.tar.bz2";
locale = "ru"; locale = "ru";
arch = "linux-i686"; arch = "linux-i686";
sha256 = "fcbfbce5906a720982e1a38043afa9ad24af5dee56594846fcafe1d18f8f6788"; sha256 = "1d73258212131087d878fac0087f758cd11209aeeaff075b0352f8414769d3d7";
} }
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/78.10.2/linux-i686/si/thunderbird-78.10.2.tar.bz2"; { url = "http://archive.mozilla.org/pub/thunderbird/releases/78.11.0/linux-i686/si/thunderbird-78.11.0.tar.bz2";
locale = "si"; locale = "si";
arch = "linux-i686"; arch = "linux-i686";
sha256 = "acd5bf205178b62a8f3c867d1eb9b25e8e5f9227e342375521f06474fae90618"; sha256 = "342ddb753fc1870321613e7668a741269bfff786f21ff22f4f8f84f5e1df9c2a";
} }
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/78.10.2/linux-i686/sk/thunderbird-78.10.2.tar.bz2"; { url = "http://archive.mozilla.org/pub/thunderbird/releases/78.11.0/linux-i686/sk/thunderbird-78.11.0.tar.bz2";
locale = "sk"; locale = "sk";
arch = "linux-i686"; arch = "linux-i686";
sha256 = "021f126842a7320463b4eef88134d63b29cc8658351c140a1c25854dc4aec83e"; sha256 = "241cae2dbe7130a3df8d64e99fce375c0966df0cf4dbd6cbddfb069f736c3450";
} }
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/78.10.2/linux-i686/sl/thunderbird-78.10.2.tar.bz2"; { url = "http://archive.mozilla.org/pub/thunderbird/releases/78.11.0/linux-i686/sl/thunderbird-78.11.0.tar.bz2";
locale = "sl"; locale = "sl";
arch = "linux-i686"; arch = "linux-i686";
sha256 = "cdee34a796c4a4d4c879fd93a08781784afe5d0f7795d3d0c8c26783500a26d3"; sha256 = "d09d44f1fd9e90e71e67334eed2df3eacdbc2509782e625e25aea3b993b1f28a";
} }
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/78.10.2/linux-i686/sq/thunderbird-78.10.2.tar.bz2"; { url = "http://archive.mozilla.org/pub/thunderbird/releases/78.11.0/linux-i686/sq/thunderbird-78.11.0.tar.bz2";
locale = "sq"; locale = "sq";
arch = "linux-i686"; arch = "linux-i686";
sha256 = "17c18f91b9152438ec0b12ee9d99a64d7a90cd4f8db5eed909b11df5b9fdad49"; sha256 = "afa21cf461d53c2a3e781e45b7802a0b5ffcb0ca4c4452865bdbf2bceeb13776";
} }
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/78.10.2/linux-i686/sr/thunderbird-78.10.2.tar.bz2"; { url = "http://archive.mozilla.org/pub/thunderbird/releases/78.11.0/linux-i686/sr/thunderbird-78.11.0.tar.bz2";
locale = "sr"; locale = "sr";
arch = "linux-i686"; arch = "linux-i686";
sha256 = "7c471edbeda0ecee64bcee08a703e3726f8bd3dd9f2579295abd080d53afcb73"; sha256 = "15b3faf5cef87e1101629410cdb169f81da94b5e1b0902d02b161ef67df15e8f";
} }
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/78.10.2/linux-i686/sv-SE/thunderbird-78.10.2.tar.bz2"; { url = "http://archive.mozilla.org/pub/thunderbird/releases/78.11.0/linux-i686/sv-SE/thunderbird-78.11.0.tar.bz2";
locale = "sv-SE"; locale = "sv-SE";
arch = "linux-i686"; arch = "linux-i686";
sha256 = "eef3af1ef0969cffbe960d420bf121293dc90aab7e45a4c3f601f8167a5ec58a"; sha256 = "b42f3e8aefc4ebfc718ace6eda4d9416752dbec346f1a212fa637edfe08277dc";
} }
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/78.10.2/linux-i686/th/thunderbird-78.10.2.tar.bz2"; { url = "http://archive.mozilla.org/pub/thunderbird/releases/78.11.0/linux-i686/th/thunderbird-78.11.0.tar.bz2";
locale = "th"; locale = "th";
arch = "linux-i686"; arch = "linux-i686";
sha256 = "94ae0ccfbee17713cfd91f18e2c3a1f7d8bc9ecb717ba0707845b2f0c36ab47c"; sha256 = "0972ee48e0f8f0e6f81831a5c8b3d832c7af05477a3f824afb252c1f32d6843a";
} }
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/78.10.2/linux-i686/tr/thunderbird-78.10.2.tar.bz2"; { url = "http://archive.mozilla.org/pub/thunderbird/releases/78.11.0/linux-i686/tr/thunderbird-78.11.0.tar.bz2";
locale = "tr"; locale = "tr";
arch = "linux-i686"; arch = "linux-i686";
sha256 = "c699ea9c567eee815530db25183a98db0cc96d244ec3dec151979b8ab1974748"; sha256 = "5dccdb0c97511aab0926caf679dced22609fb0e702b87078ac9379c94b3aed37";
} }
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/78.10.2/linux-i686/uk/thunderbird-78.10.2.tar.bz2"; { url = "http://archive.mozilla.org/pub/thunderbird/releases/78.11.0/linux-i686/uk/thunderbird-78.11.0.tar.bz2";
locale = "uk"; locale = "uk";
arch = "linux-i686"; arch = "linux-i686";
sha256 = "8b4ec008865b5114b2451464a7d9c518a084d0517dc54e58d9ed4fa568a9745d"; sha256 = "526e1cdadbf15a0aee1b31607f39710f90fdd6ea23623c74fbc87928b0b2056c";
} }
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/78.10.2/linux-i686/uz/thunderbird-78.10.2.tar.bz2"; { url = "http://archive.mozilla.org/pub/thunderbird/releases/78.11.0/linux-i686/uz/thunderbird-78.11.0.tar.bz2";
locale = "uz"; locale = "uz";
arch = "linux-i686"; arch = "linux-i686";
sha256 = "3a8864594a11e514a52e50b0188054b56d245a5737ec4465c6ff0f5d5678216f"; sha256 = "46454f21518cdeee20dcd0ed3f57a45cf8ab3a240d55cf2df36aed253307fb99";
} }
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/78.10.2/linux-i686/vi/thunderbird-78.10.2.tar.bz2"; { url = "http://archive.mozilla.org/pub/thunderbird/releases/78.11.0/linux-i686/vi/thunderbird-78.11.0.tar.bz2";
locale = "vi"; locale = "vi";
arch = "linux-i686"; arch = "linux-i686";
sha256 = "51991f70a7876b6dd07861446e9adf0939fd636396ff9588594638f644447530"; sha256 = "d624ec4f25277ae1b4b463e0c8381371562cf4185aab3ed67b9463b3dadde5dd";
} }
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/78.10.2/linux-i686/zh-CN/thunderbird-78.10.2.tar.bz2"; { url = "http://archive.mozilla.org/pub/thunderbird/releases/78.11.0/linux-i686/zh-CN/thunderbird-78.11.0.tar.bz2";
locale = "zh-CN"; locale = "zh-CN";
arch = "linux-i686"; arch = "linux-i686";
sha256 = "b185bdd74b03343dacffd4564cef1c0434b3a18614f1942325bd1c2230c64db5"; sha256 = "3699eefc2f941a4b32305a934a02bb94b5213c4584bfeb816859de471e2d2f08";
} }
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/78.10.2/linux-i686/zh-TW/thunderbird-78.10.2.tar.bz2"; { url = "http://archive.mozilla.org/pub/thunderbird/releases/78.11.0/linux-i686/zh-TW/thunderbird-78.11.0.tar.bz2";
locale = "zh-TW"; locale = "zh-TW";
arch = "linux-i686"; arch = "linux-i686";
sha256 = "e26ac3909969514959e7b6bf60a453ecd2b555eac7ca7b798f3d38376b183207"; sha256 = "9d6878ab69fcf266f1b226100a5b26d78d8d604f741827ae8f62fca665adf557";
} }
]; ];
} }

View file

@ -73,13 +73,13 @@ assert waylandSupport -> gtk3Support == true;
stdenv.mkDerivation rec { stdenv.mkDerivation rec {
pname = "thunderbird"; pname = "thunderbird";
version = "78.10.2"; version = "78.11.0";
src = fetchurl { src = fetchurl {
url = url =
"mirror://mozilla/thunderbird/releases/${version}/source/thunderbird-${version}.source.tar.xz"; "mirror://mozilla/thunderbird/releases/${version}/source/thunderbird-${version}.source.tar.xz";
sha512 = sha512 =
"3sc6n3n9bqnsq9qn9myanvxpgdx20c803prla3p236hwidz7snmyp2097ggn42xp765km55n11drxalnslsxdypgjikbfdqal05hf5r"; "1m12kx830pfzvby8j9i5nb9c5v71vlg4wr0qrjgg3pw5ml9j5x7myrqyfd49l2qppm3xjn08srvmf45avnwq0lrys4sb83iwsd46sf6";
}; };
nativeBuildInputs = [ nativeBuildInputs = [

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