Merge remote-tracking branch 'upstream/staging-next' into down-integrate-staging

This commit is contained in:
Luke Granger-Brown 2021-04-12 18:26:33 +00:00
commit 08b22e605b
377 changed files with 13801 additions and 5789 deletions

View File

@ -34,6 +34,41 @@ cataclysm-dda.override {
}
```
## Important note for overriding packages
After applying `overrideAttrs`, you need to fix `passthru.pkgs` and
`passthru.withMods` attributes either manually or by using `attachPkgs`:
```nix
let
# You enabled parallel building.
myCDDA = cataclysm-dda-git.overrideAttrs (_: {
enableParallelBuilding = true;
});
# Unfortunately, this refers to the package before overriding and
# parallel building is still disabled.
badExample = myCDDA.withMods (_: []);
inherit (cataclysmDDA) attachPkgs pkgs wrapCDDA;
# You can fix it by hand
goodExample1 = myCDDA.overrideAttrs (old: {
passthru = old.passthru // {
pkgs = pkgs.override { build = goodExample1; };
withMods = wrapCDDA goodExample1;
};
});
# or by using a helper function `attachPkgs`.
goodExample2 = attachPkgs pkgs myCDDA;
in
# badExample # parallel building disabled
# goodExample1.withMods (_: []) # parallel building enabled
goodExample2.withMods (_: []) # parallel building enabled
```
## Customizing with mods
To install Cataclysm DDA with mods of your choice, you can use `withMods`

View File

@ -2,15 +2,15 @@
## Introduction {#beam-introduction}
In this document and related Nix expressions, we use the term, *BEAM*, to describe the environment. BEAM is the name of the Erlang Virtual Machine and, as far as we're concerned, from a packaging perspective, all languages that run on the BEAM are interchangeable. That which varies, like the build system, is transparent to users of any given BEAM package, so we make no distinction.
In this document and related Nix expressions, we use the term, _BEAM_, to describe the environment. BEAM is the name of the Erlang Virtual Machine and, as far as we're concerned, from a packaging perspective, all languages that run on the BEAM are interchangeable. That which varies, like the build system, is transparent to users of any given BEAM package, so we make no distinction.
## Structure {#beam-structure}
All BEAM-related expressions are available via the top-level `beam` attribute, which includes:
- `interpreters`: a set of compilers running on the BEAM, including multiple Erlang/OTP versions (`beam.interpreters.erlangR19`, etc), Elixir (`beam.interpreters.elixir`) and LFE (`beam.interpreters.lfe`).
- `interpreters`: a set of compilers running on the BEAM, including multiple Erlang/OTP versions (`beam.interpreters.erlangR19`, etc), Elixir (`beam.interpreters.elixir`) and LFE (Lisp Flavoured Erlang) (`beam.interpreters.lfe`).
- `packages`: a set of package builders (Mix and rebar3), each compiled with a specific Erlang/OTP version, e.g. `beam.packages.erlangR19`.
- `packages`: a set of package builders (Mix and rebar3), each compiled with a specific Erlang/OTP version, e.g. `beam.packages.erlangR19`.
The default Erlang compiler, defined by `beam.interpreters.erlang`, is aliased as `erlang`. The default BEAM package set is defined by `beam.packages.erlang` and aliased at the top level as `beamPackages`.
@ -26,7 +26,9 @@ We provide a version of Rebar3, under `rebar3`. We also provide a helper to fetc
### Mix & Erlang.mk {#build-tools-other}
Both Mix and Erlang.mk work exactly as expected. There is a bootstrap process that needs to be run for both, however, which is supported by the `buildMix` and `buildErlangMk` derivations, respectively.
Erlang.mk works exactly as expected. There is a bootstrap process that needs to be run, which is supported by the `buildErlangMk` derivation.
For Elixir applications use `mixRelease` to make a release. See examples for more details.
## How to Install BEAM Packages {#how-to-install-beam-packages}
@ -52,15 +54,150 @@ Erlang.mk functions similarly to Rebar3, except we use `buildErlangMk` instead o
#### Mix Packages {#mix-packages}
Mix functions similarly to Rebar3, except we use `buildMix` instead of `buildRebar3`.
`mixRelease` is used to make a release in the mix sense. Dependencies will need to be fetched with `fetchMixDeps` and passed to it.
Alternatively, we can use `buildHex` as a shortcut:
#### mixRelease - Elixir Phoenix example
Here is how your `default.nix` file would look.
```nix
with import <nixpkgs> { };
let
packages = beam.packagesWith beam.interpreters.erlang;
src = builtins.fetchgit {
url = "ssh://git@github.com/your_id/your_repo";
rev = "replace_with_your_commit";
};
pname = "your_project";
version = "0.0.1";
mixEnv = "prod";
mixDeps = packages.fetchMixDeps {
pname = "mix-deps-${pname}";
inherit src mixEnv version;
# nix will complain and tell you the right value to replace this with
sha256 = lib.fakeSha256;
# if you have build time environment variables add them here
MY_ENV_VAR="my_value";
};
nodeDependencies = (pkgs.callPackage ./assets/default.nix { }).shell.nodeDependencies;
frontEndFiles = stdenvNoCC.mkDerivation {
pname = "frontend-${pname}";
nativeBuildInputs = [ nodejs ];
inherit version src;
buildPhase = ''
cp -r ./assets $TEMPDIR
mkdir -p $TEMPDIR/assets/node_modules/.cache
cp -r ${nodeDependencies}/lib/node_modules $TEMPDIR/assets
export PATH="${nodeDependencies}/bin:$PATH"
cd $TEMPDIR/assets
webpack --config ./webpack.config.js
cd ..
'';
installPhase = ''
cp -r ./priv/static $out/
'';
outputHashAlgo = "sha256";
outputHashMode = "recursive";
# nix will complain and tell you the right value to replace this with
outputHash = lib.fakeSha256;
impureEnvVars = lib.fetchers.proxyImpureEnvVars;
};
in packages.mixRelease {
inherit src pname version mixEnv mixDeps;
# if you have build time environment variables add them here
MY_ENV_VAR="my_value";
preInstall = ''
mkdir -p ./priv/static
cp -r ${frontEndFiles} ./priv/static
'';
}
```
Setup will require the following steps:
- Move your secrets to runtime environment variables. For more information refer to the [runtime.exs docs](https://hexdocs.pm/mix/Mix.Tasks.Release.html#module-runtime-configuration). On a fresh Phoenix build that would mean that both `DATABASE_URL` and `SECRET_KEY` need to be moved to `runtime.exs`.
- `cd assets` and `nix-shell -p node2nix --run node2nix --development` will generate a Nix expression containing your frontend dependencies
- commit and push those changes
- you can now `nix-build .`
- To run the release, set the `RELEASE_TMP` environment variable to a directory that your program has write access to. It will be used to store the BEAM settings.
#### Example of creating a service for an Elixir - Phoenix project
In order to create a service with your release, you could add a `service.nix`
in your project with the following
```nix
{config, pkgs, lib, ...}:
let
release = pkgs.callPackage ./default.nix;
release_name = "app";
working_directory = "/home/app";
in
{
systemd.services.${release_name} = {
wantedBy = [ "multi-user.target" ];
after = [ "network.target" "postgresql.service" ];
requires = [ "network-online.target" "postgresql.service" ];
description = "my app";
environment = {
# RELEASE_TMP is used to write the state of the
# VM configuration when the system is running
# it needs to be a writable directory
RELEASE_TMP = working_directory;
# can be generated in an elixir console with
# Base.encode32(:crypto.strong_rand_bytes(32))
RELEASE_COOKIE = "my_cookie";
MY_VAR = "my_var";
};
serviceConfig = {
Type = "exec";
DynamicUser = true;
WorkingDirectory = working_directory;
# Implied by DynamicUser, but just to emphasize due to RELEASE_TMP
PrivateTmp = true;
ExecStart = ''
${release}/bin/${release_name} start
'';
ExecStop = ''
${release}/bin/${release_name} stop
'';
ExecReload = ''
${release}/bin/${release_name} restart
'';
Restart = "on-failure";
RestartSec = 5;
StartLimitBurst = 3;
StartLimitInterval = 10;
};
# disksup requires bash
path = [ pkgs.bash ];
};
environment.systemPackages = [ release ];
}
```
## How to Develop {#how-to-develop}
### Creating a Shell {#creating-a-shell}
Usually, we need to create a `shell.nix` file and do our development inside of the environment specified therein. Just install your version of erlang and other interpreter, and then user your normal build tools. As an example with elixir:
Usually, we need to create a `shell.nix` file and do our development inside of the environment specified therein. Just install your version of Erlang and any other interpreters, and then use your normal build tools. As an example with Elixir:
```nix
{ pkgs ? import "<nixpkgs"> {} }:
@ -79,6 +216,68 @@ mkShell {
}
```
#### Building in a Shell (for Mix Projects) {#building-in-a-shell}
#### Elixir - Phoenix project
Using a `shell.nix` as described (see <xref linkend="creating-a-shell"/>) should just work.
Here is an example `shell.nix`.
```nix
with import <nixpkgs> { };
let
# define packages to install
basePackages = [
git
# replace with beam.packages.erlang.elixir_1_11 if you need
beam.packages.erlang.elixir
nodejs-15_x
postgresql_13
# only used for frontend dependencies
# you are free to use yarn2nix as well
nodePackages.node2nix
# formatting js file
nodePackages.prettier
];
inputs = basePackages ++ lib.optionals stdenv.isLinux [ inotify-tools ]
++ lib.optionals stdenv.isDarwin
(with darwin.apple_sdk.frameworks; [ CoreFoundation CoreServices ]);
# define shell startup command
hooks = ''
# this allows mix to work on the local directory
mkdir -p .nix-mix .nix-hex
export MIX_HOME=$PWD/.nix-mix
export HEX_HOME=$PWD/.nix-mix
export PATH=$MIX_HOME/bin:$HEX_HOME/bin:$PATH
# TODO: not sure how to make hex available without installing it afterwards.
mix local.hex --if-missing
export LANG=en_US.UTF-8
export ERL_AFLAGS="-kernel shell_history enabled"
# postges related
# keep all your db data in a folder inside the project
export PGDATA="$PWD/db"
# phoenix related env vars
export POOL_SIZE=15
export DB_URL="postgresql://postgres:postgres@localhost:5432/db"
export PORT=4000
export MIX_ENV=dev
# add your project env vars here, word readable in the nix store.
export ENV_VAR="your_env_var"
'';
in mkShell {
buildInputs = inputs;
shellHook = hooks;
}
```
Initializing the project will require the following steps:
- create the db directory `initdb ./db` (inside your mix project folder)
- create the postgres user `createuser postgres -ds`
- create the db `createdb db`
- start the postgres instance `pg_ctl -l "$PGDATA/server.log" start`
- add the `/db` folder to your `.gitignore`
- you can start your phoenix server and get a shell with `iex -S mix phx.server`

View File

@ -73,7 +73,7 @@ in {
darwin = filterDoubles predicates.isDarwin;
freebsd = filterDoubles predicates.isFreeBSD;
# Should be better, but MinGW is unclear.
gnu = filterDoubles (matchAttrs { kernel = parse.kernels.linux; abi = parse.abis.gnu; }) ++ filterDoubles (matchAttrs { kernel = parse.kernels.linux; abi = parse.abis.gnueabi; }) ++ filterDoubles (matchAttrs { kernel = parse.kernels.linux; abi = parse.abis.gnueabihf; }) ++ filterDoubles (matchAttrs { kernel = parse.kernels.linux; abi = parse.abis.elfv1; }) ++ filterDoubles (matchAttrs { kernel = parse.kernels.linux; abi = parse.abis.elfv2; });
gnu = filterDoubles (matchAttrs { kernel = parse.kernels.linux; abi = parse.abis.gnu; }) ++ filterDoubles (matchAttrs { kernel = parse.kernels.linux; abi = parse.abis.gnueabi; }) ++ filterDoubles (matchAttrs { kernel = parse.kernels.linux; abi = parse.abis.gnueabihf; });
illumos = filterDoubles predicates.isSunOS;
linux = filterDoubles predicates.isLinux;
netbsd = filterDoubles predicates.isNetBSD;

View File

@ -21,14 +21,10 @@ rec {
config = "powerpc64le-unknown-linux-musl";
};
ppc64-elfv1 = {
config = "powerpc64-unknown-linux-elfv1";
ppc64 = {
config = "powerpc64-unknown-linux-gnu";
gcc = { abi = "elfv2"; }; # for gcc configuration
};
ppc64-elfv2 = {
config = "powerpc64-unknown-linux-elfv2";
};
ppc64 = ppc64-elfv2; # default to modern elfv2
ppc64-musl = {
config = "powerpc64-unknown-linux-musl";
gcc = { abi = "elfv2"; }; # for gcc configuration
@ -60,6 +56,7 @@ rec {
armv7a-android-prebuilt = {
config = "armv7a-unknown-linux-androideabi";
rustc.config = "armv7-linux-androideabi";
sdkVer = "29";
ndkVer = "21";
useAndroidPrebuilt = true;
@ -67,6 +64,7 @@ rec {
aarch64-android-prebuilt = {
config = "aarch64-unknown-linux-android";
rustc.config = "aarch64-linux-android";
sdkVer = "29";
ndkVer = "21";
useAndroidPrebuilt = true;

View File

@ -337,18 +337,10 @@ rec {
The "gnu" ABI is ambiguous on 32-bit ARM. Use "gnueabi" or "gnueabihf" instead.
'';
}
{ assertion = platform: platform.system != "powerpc64-linux";
message = ''
The "gnu" ABI is ambiguous on big-endian 64-bit PPC. Use "elfv1" or "elfv2" instead.
'';
}
];
};
gnuabi64 = { abi = "64"; };
elfv1 = { abi = "elfv1"; };
elfv2 = { abi = "elfv2"; };
musleabi = { float = "soft"; };
musleabihf = { float = "hard"; };
musl = {};
@ -452,7 +444,6 @@ rec {
if lib.versionAtLeast (parsed.cpu.version or "0") "6"
then abis.gnueabihf
else abis.gnueabi
else if cpu == "powerpc64" then abis.elfv2
else abis.gnu
else abis.unknown;
};

View File

@ -118,6 +118,12 @@
githubId = 2258953;
name = "Aaron Schif";
};
aaschmid = {
email = "service@aaschmid.de";
github = "aaschmid";
githubId = 567653;
name = "Andreas Schmid";
};
abaldeau = {
email = "andreas@baldeau.net";
github = "baldo";
@ -1707,6 +1713,12 @@
githubId = 3086255;
name = "Barry Moore II";
};
chivay = {
email = "hubert.jasudowicz@gmail.com";
github = "chivay";
githubId = 14790226;
name = "Hubert Jasudowicz";
};
chkno = {
email = "chuck@intelligence.org";
github = "chkno";
@ -3699,6 +3711,12 @@
githubId = 201997;
name = "Eric Seidel";
};
gspia = {
email = "iahogsp@gmail.com";
github = "gspia";
githubId = 3320792;
name = "gspia";
};
guibert = {
email = "david.guibert@gmail.com";
github = "dguibert";
@ -4908,6 +4926,12 @@
email = "jwilberding@afiniate.com";
name = "Jordan Wilberding";
};
jwygoda = {
email = "jaroslaw@wygoda.me";
github = "jwygoda";
githubId = 20658981;
name = "Jarosław Wygoda";
};
jyp = {
email = "jeanphilippe.bernardy@gmail.com";
github = "jyp";
@ -6573,6 +6597,16 @@
githubId = 754512;
name = "Mogria";
};
mohe2015 = {
name = "Moritz Hedtke";
email = "Moritz.Hedtke@t-online.de";
github = "mohe2015";
githubId = 13287984;
keys = [{
longkeyid = "rsa4096/0x6794D45A488C2EDE";
fingerprint = "1248 D3E1 1D11 4A85 75C9 8934 6794 D45A 488C 2EDE";
}];
};
monsieurp = {
email = "monsieurp@gentoo.org";
github = "monsieurp";
@ -7523,6 +7557,12 @@
githubId = 3438604;
name = "Petter Storvik";
};
p-h = {
email = "p@hurlimann.org";
github = "p-h";
githubId = 645664;
name = "Philippe Hürlimann";
};
philandstuff = {
email = "philip.g.potter@gmail.com";
github = "philandstuff";
@ -9473,6 +9513,12 @@
githubId = 321799;
name = "Paul Colomiets";
};
takagiy = {
email = "takagiy.4dev@gmail.com";
github = "takagiy";
githubId = 18656090;
name = "Yuki Takagi";
};
taketwo = {
email = "alexandrov88@gmail.com";
github = "taketwo";
@ -10458,6 +10504,12 @@
githubId = 78392041;
name = "Winter";
};
wirew0rm = {
email = "alex@wirew0rm.de";
github = "wirew0rm";
githubId = 1202371;
name = "Alexander Krimm";
};
wishfort36 = {
email = "42300264+wishfort36@users.noreply.github.com";
github = "wishfort36";
@ -10554,6 +10606,12 @@
githubId = 13378502;
name = "Wulfsta";
};
wunderbrick = {
name = "Andrew Phipps";
email = "lambdafuzz@tutanota.com";
github = "wunderbrick";
githubId = 52174714;
};
wyvie = {
email = "elijahrum@gmail.com";
github = "wyvie";
@ -10638,6 +10696,12 @@
githubId = 11824817;
name = "Marti Serra";
};
xworld21 = {
email = "1962985+xworld21@users.noreply.github.com";
github = "xworld21";
githubId = 1962985;
name = "Vincenzo Mantova";
};
xwvvvvwx = {
email = "davidterry@posteo.de";
github = "xwvvvvwx";

View File

@ -133,7 +133,7 @@ true
<programlisting>
{ config, pkgs, ... }:
let netConfig = { hostName }: {
let netConfig = hostName: {
networking.hostName = hostName;
networking.useDHCP = false;
};

View File

@ -83,6 +83,17 @@
further details.
</para>
</listitem>
<listitem>
<para>
The <option>services.packagekit.backend</option> option has been removed as
it only supported a single setting which would always be the default.
Instead new <link
xlink:href="https://github.com/NixOS/rfcs/blob/master/rfcs/0042-config-option.md">RFC
0042</link> compliant <xref linkend="opt-services.packagekit.settings"/>
and <xref linkend="opt-services.packagekit.vendorSettings"/> options have
been introduced.
</para>
</listitem>
</itemizedlist>
</section>

View File

@ -17,6 +17,9 @@ let
firmware-pkg = pkgs.system76-firmware;
firmwareConfig = mkIf cfg.firmware-daemon.enable {
# Make system76-firmware-cli usable by root from the command line.
environment.systemPackages = [ firmware-pkg ];
services.dbus.packages = [ firmware-pkg ];
systemd.services.system76-firmware-daemon = {

View File

@ -288,6 +288,7 @@
./services/continuous-integration/hail.nix
./services/continuous-integration/hercules-ci-agent/default.nix
./services/continuous-integration/hydra/default.nix
./services/continuous-integration/github-runner.nix
./services/continuous-integration/gitlab-runner.nix
./services/continuous-integration/gocd-agent/default.nix
./services/continuous-integration/gocd-server/default.nix
@ -680,6 +681,7 @@
./services/networking/gnunet.nix
./services/networking/go-neb.nix
./services/networking/go-shadowsocks2.nix
./services/networking/gobgpd.nix
./services/networking/gogoclient.nix
./services/networking/gvpe.nix
./services/networking/hans.nix
@ -864,6 +866,7 @@
./services/security/shibboleth-sp.nix
./services/security/sks.nix
./services/security/sshguard.nix
./services/security/step-ca.nix
./services/security/tor.nix
./services/security/torify.nix
./services/security/torsocks.nix

View File

@ -0,0 +1,299 @@
{ config, pkgs, lib, ... }:
with lib;
let
cfg = config.services.github-runner;
svcName = "github-runner";
systemdDir = "${svcName}/${cfg.name}";
# %t: Runtime directory root (usually /run); see systemd.unit(5)
runtimeDir = "%t/${systemdDir}";
# %S: State directory root (usually /var/lib); see systemd.unit(5)
stateDir = "%S/${systemdDir}";
# %L: Log directory root (usually /var/log); see systemd.unit(5)
logsDir = "%L/${systemdDir}";
in
{
options.services.github-runner = {
enable = mkOption {
default = false;
example = true;
description = ''
Whether to enable GitHub Actions runner.
Note: GitHub recommends using self-hosted runners with private repositories only. Learn more here:
<link xlink:href="https://docs.github.com/en/actions/hosting-your-own-runners/about-self-hosted-runners"
>About self-hosted runners</link>.
'';
type = lib.types.bool;
};
url = mkOption {
type = types.str;
description = ''
Repository to add the runner to.
Changing this option triggers a new runner registration.
'';
example = "https://github.com/nixos/nixpkgs";
};
tokenFile = mkOption {
type = types.path;
description = ''
The full path to a file which contains the runner registration token.
The file should contain exactly one line with the token without any newline.
The token can be used to re-register a runner of the same name but is time-limited.
Changing this option or the file's content triggers a new runner registration.
'';
example = "/run/secrets/github-runner/nixos.token";
};
name = mkOption {
# Same pattern as for `networking.hostName`
type = types.strMatching "^$|^[[:alnum:]]([[:alnum:]_-]{0,61}[[:alnum:]])?$";
description = ''
Name of the runner to configure. Defaults to the hostname.
Changing this option triggers a new runner registration.
'';
example = "nixos";
default = config.networking.hostName;
};
runnerGroup = mkOption {
type = types.nullOr types.str;
description = ''
Name of the runner group to add this runner to (defaults to the default runner group).
Changing this option triggers a new runner registration.
'';
default = null;
};
extraLabels = mkOption {
type = types.listOf types.str;
description = ''
Extra labels in addition to the default (<literal>["self-hosted", "Linux", "X64"]</literal>).
Changing this option triggers a new runner registration.
'';
example = literalExample ''[ "nixos" ]'';
default = [ ];
};
replace = mkOption {
type = types.bool;
description = ''
Replace any existing runner with the same name.
Without this flag, registering a new runner with the same name fails.
'';
default = false;
};
extraPackages = mkOption {
type = types.listOf types.package;
description = ''
Extra packages to add to <literal>PATH</literal> of the service to make them available to workflows.
'';
default = [ ];
};
};
config = mkIf cfg.enable {
warnings = optionals (isStorePath cfg.tokenFile) [
''
`services.github-runner.tokenFile` points to the Nix store and, therefore, is world-readable.
Consider using a path outside of the Nix store to keep the token private.
''
];
systemd.services.${svcName} = {
description = "GitHub Actions runner";
wantedBy = [ "multi-user.target" ];
wants = [ "network-online.target" ];
after = [ "network.target" "network-online.target" ];
environment = {
HOME = runtimeDir;
RUNNER_ROOT = runtimeDir;
};
path = (with pkgs; [
bash
coreutils
git
gnutar
gzip
]) ++ [
config.nix.package
] ++ cfg.extraPackages;
serviceConfig = rec {
ExecStart = "${pkgs.github-runner}/bin/runsvc.sh";
# Does the following, sequentially:
# - Copy the current and the previous `tokenFile` to the $RUNTIME_DIRECTORY
# and make it accessible to the service user to allow for a content
# comparison.
# - If the module configuration or the token has changed, clear the state directory.
# - Configure the runner.
# - Copy the configured `tokenFile` to the $STATE_DIRECTORY and make it
# inaccessible to the service user.
# - Set up the directory structure by creating the necessary symlinks.
ExecStartPre =
let
# Wrapper script which expects the full path of the state, runtime and logs
# directory as arguments. Overrides the respective systemd variables to provide
# unambiguous directory names. This becomes relevant, for example, if the
# caller overrides any of the StateDirectory=, RuntimeDirectory= or LogDirectory=
# to contain more than one directory. This causes systemd to set the respective
# environment variables with the path of all of the given directories, separated
# by a colon.
writeScript = name: lines: pkgs.writeShellScript "${svcName}-${name}.sh" ''
set -euo pipefail
STATE_DIRECTORY="$1"
RUNTIME_DIRECTORY="$2"
LOGS_DIRECTORY="$3"
${lines}
'';
currentConfigPath = "$STATE_DIRECTORY/.nixos-current-config.json";
runnerRegistrationConfig = getAttrs [ "name" "tokenFile" "url" "runnerGroup" "extraLabels" ] cfg;
newConfigPath = builtins.toFile "${svcName}-config.json" (builtins.toJSON runnerRegistrationConfig);
currentConfigTokenFilename = ".current-token";
newConfigTokenFilename = ".new-token";
runnerCredFiles = [
".credentials"
".credentials_rsaparams"
".runner"
];
ownConfigTokens = writeScript "own-config-tokens" ''
# Copy current and new token file to runtime dir and make it accessible to the service user
cp ${escapeShellArg cfg.tokenFile} "$RUNTIME_DIRECTORY/${newConfigTokenFilename}"
chmod 600 "$RUNTIME_DIRECTORY/${newConfigTokenFilename}"
chown "$USER" "$RUNTIME_DIRECTORY/${newConfigTokenFilename}"
if [[ -e "$STATE_DIRECTORY/${currentConfigTokenFilename}" ]]; then
cp "$STATE_DIRECTORY/${currentConfigTokenFilename}" "$RUNTIME_DIRECTORY/${currentConfigTokenFilename}"
chmod 600 "$RUNTIME_DIRECTORY/${currentConfigTokenFilename}"
chown "$USER" "$RUNTIME_DIRECTORY/${currentConfigTokenFilename}"
fi
'';
disownConfigTokens = writeScript "disown-config-tokens" ''
# Make the token inaccessible to the runner service user
chmod 600 "$STATE_DIRECTORY/${currentConfigTokenFilename}"
chown root:root "$STATE_DIRECTORY/${currentConfigTokenFilename}"
'';
unconfigureRunner = writeScript "unconfigure" ''
differs=
# Set `differs = 1` if current and new runner config differ or if `currentConfigPath` does not exist
${pkgs.diffutils}/bin/diff -q '${newConfigPath}' "${currentConfigPath}" >/dev/null 2>&1 || differs=1
# Also trigger a registration if the token content changed
${pkgs.diffutils}/bin/diff -q \
"$RUNTIME_DIRECTORY"/{${currentConfigTokenFilename},${newConfigTokenFilename}} \
>/dev/null 2>&1 || differs=1
if [[ -n "$differs" ]]; then
echo "Config has changed, removing old runner state."
echo "The old runner will still appear in the GitHub Actions UI." \
"You have to remove it manually."
find "$STATE_DIRECTORY/" -mindepth 1 -delete
fi
'';
configureRunner = writeScript "configure" ''
empty=$(ls -A "$STATE_DIRECTORY")
if [[ -z "$empty" ]]; then
echo "Configuring GitHub Actions Runner"
token=$(< "$RUNTIME_DIRECTORY"/${newConfigTokenFilename})
RUNNER_ROOT="$STATE_DIRECTORY" ${pkgs.github-runner}/bin/config.sh \
--unattended \
--work "$RUNTIME_DIRECTORY" \
--url ${escapeShellArg cfg.url} \
--token "$token" \
--labels ${escapeShellArg (concatStringsSep "," cfg.extraLabels)} \
--name ${escapeShellArg cfg.name} \
${optionalString cfg.replace "--replace"} \
${optionalString (cfg.runnerGroup != null) "--runnergroup ${escapeShellArg cfg.runnerGroup}"}
# Move the automatically created _diag dir to the logs dir
mkdir -p "$STATE_DIRECTORY/_diag"
cp -r "$STATE_DIRECTORY/_diag/." "$LOGS_DIRECTORY/"
rm -rf "$STATE_DIRECTORY/_diag/"
# Cleanup token from config
rm -f "$RUNTIME_DIRECTORY"/${currentConfigTokenFilename}
mv "$RUNTIME_DIRECTORY"/${newConfigTokenFilename} "$STATE_DIRECTORY/${currentConfigTokenFilename}"
# Symlink to new config
ln -s '${newConfigPath}' "${currentConfigPath}"
fi
'';
setupRuntimeDir = writeScript "setup-runtime-dirs" ''
# Link _diag dir
ln -s "$LOGS_DIRECTORY" "$RUNTIME_DIRECTORY/_diag"
# Link the runner credentials to the runtime dir
ln -s "$STATE_DIRECTORY"/{${lib.concatStringsSep "," runnerCredFiles}} "$RUNTIME_DIRECTORY/"
'';
in
map (x: "${x} ${escapeShellArgs [ stateDir runtimeDir logsDir ]}") [
"+${ownConfigTokens}" # runs as root
unconfigureRunner
configureRunner
"+${disownConfigTokens}" # runs as root
setupRuntimeDir
];
# Contains _diag
LogsDirectory = [ systemdDir ];
# Default RUNNER_ROOT which contains ephemeral Runner data
RuntimeDirectory = [ systemdDir ];
# Home of persistent runner data, e.g., credentials
StateDirectory = [ systemdDir ];
StateDirectoryMode = "0700";
WorkingDirectory = runtimeDir;
# By default, use a dynamically allocated user
DynamicUser = true;
KillMode = "process";
KillSignal = "SIGTERM";
# Hardening (may overlap with DynamicUser=)
# The following options are only for optimizing:
# systemd-analyze security github-runner
AmbientCapabilities = "";
CapabilityBoundingSet = "";
# ProtectClock= adds DeviceAllow=char-rtc r
DeviceAllow = "";
LockPersonality = true;
NoNewPrivileges = true;
PrivateDevices = true;
PrivateMounts = true;
PrivateTmp = true;
PrivateUsers = true;
ProtectClock = true;
ProtectControlGroups = true;
ProtectHome = true;
ProtectHostname = true;
ProtectKernelLogs = true;
ProtectKernelModules = true;
ProtectKernelTunables = true;
ProtectSystem = "strict";
RemoveIPC = true;
RestrictNamespaces = true;
RestrictRealtime = true;
RestrictSUIDSGID = true;
UMask = "0066";
# Needs network access
PrivateNetwork = false;
# Cannot be true due to Node
MemoryDenyWriteExecute = false;
};
};
};
}

View File

@ -163,7 +163,7 @@ in
'';
example = literalExample ''
{
"DATABASE nextcloud" = "ALL PRIVILEGES";
"DATABASE \"nextcloud\"" = "ALL PRIVILEGES";
"ALL TABLES IN SCHEMA public" = "ALL PRIVILEGES";
}
'';

View File

@ -88,6 +88,13 @@ in
example = "/run/redis/redis.sock";
};
unixSocketPerm = mkOption {
type = types.int;
default = 750;
description = "Change permissions for the socket";
example = 700;
};
logLevel = mkOption {
type = types.str;
default = "notice"; # debug, verbose, notice, warning
@ -204,7 +211,6 @@ in
'';
example = literalExample ''
{
unixsocketperm = "700";
loadmodule = [ "/path/to/my_module.so" "/path/to/other_module.so" ];
}
'';
@ -256,7 +262,7 @@ in
slowlog-max-len = cfg.slowLogMaxLen;
}
(mkIf (cfg.bind != null) { bind = cfg.bind; })
(mkIf (cfg.unixSocket != null) { unixsocket = cfg.unixSocket; })
(mkIf (cfg.unixSocket != null) { unixsocket = cfg.unixSocket; unixsocketperm = "${toString cfg.unixSocketPerm}"; })
(mkIf (cfg.slaveOf != null) { slaveof = "${cfg.slaveOf.ip} ${cfg.slaveOf.port}"; })
(mkIf (cfg.masterAuth != null) { masterauth = cfg.masterAuth; })
(mkIf (cfg.requirePass != null) { requirepass = cfg.requirePass; })
@ -277,11 +283,18 @@ in
serviceConfig = {
ExecStart = "${cfg.package}/bin/redis-server /run/redis/redis.conf";
RuntimeDirectory = "redis";
StateDirectory = "redis";
Type = "notify";
# User and group
User = "redis";
Group = "redis";
# Runtime directory and mode
RuntimeDirectory = "redis";
RuntimeDirectoryMode = "0750";
# State directory and mode
StateDirectory = "redis";
StateDirectoryMode = "0700";
# Access write directories
UMask = "0077";
};
};
};

View File

@ -11,6 +11,7 @@ let
haveAliases = cfg.postmasterAlias != "" || cfg.rootAlias != ""
|| cfg.extraAliases != "";
haveCanonical = cfg.canonical != "";
haveTransport = cfg.transport != "";
haveVirtual = cfg.virtual != "";
haveLocalRecipients = cfg.localRecipients != null;
@ -244,6 +245,7 @@ let
;
aliasesFile = pkgs.writeText "postfix-aliases" aliases;
canonicalFile = pkgs.writeText "postfix-canonical" cfg.canonical;
virtualFile = pkgs.writeText "postfix-virtual" cfg.virtual;
localRecipientMapFile = pkgs.writeText "postfix-local-recipient-map" (concatMapStrings (x: x + " ACCEPT\n") cfg.localRecipients);
checkClientAccessFile = pkgs.writeText "postfix-check-client-access" cfg.dnsBlacklistOverrides;
@ -529,6 +531,15 @@ in
";
};
canonical = mkOption {
type = types.lines;
default = "";
description = ''
Entries for the <citerefentry><refentrytitle>canonical</refentrytitle>
<manvolnum>5</manvolnum></citerefentry> table.
'';
};
virtual = mkOption {
type = types.lines;
default = "";
@ -941,6 +952,9 @@ in
(mkIf haveAliases {
services.postfix.aliasFiles.aliases = aliasesFile;
})
(mkIf haveCanonical {
services.postfix.mapFiles.canonical = canonicalFile;
})
(mkIf haveTransport {
services.postfix.mapFiles.transport = transportFile;
})

View File

@ -29,6 +29,16 @@ in
default = "jellyfin";
description = "Group under which jellyfin runs.";
};
openFirewall = mkOption {
type = types.bool;
default = false;
description = ''
Open the default ports in the firewall for the media server. The
HTTP/HTTPS ports can be changed in the Web UI, so this option should
only be used if they are unchanged.
'';
};
};
};
@ -104,6 +114,12 @@ in
jellyfin = {};
};
networking.firewall = mkIf cfg.openFirewall {
# from https://jellyfin.org/docs/general/networking/index.html
allowedTCPPorts = [ 8096 8920 ];
allowedUDPPorts = [ 1900 7359 ];
};
};
meta.maintainers = with lib.maintainers; [ minijackson ];

View File

@ -0,0 +1,64 @@
{ config, pkgs, lib, ... }:
with lib;
let
cfg = config.services.gobgpd;
format = pkgs.formats.toml { };
confFile = format.generate "gobgpd.conf" cfg.settings;
in {
options.services.gobgpd = {
enable = mkEnableOption "GoBGP Routing Daemon";
settings = mkOption {
type = format.type;
default = { };
description = ''
GoBGP configuration. Refer to
<link xlink:href="https://github.com/osrg/gobgp#documentation"/>
for details on supported values.
'';
example = literalExample ''
{
global = {
config = {
as = 64512;
router-id = "192.168.255.1";
};
};
neighbors = [
{
config = {
neighbor-address = "10.0.255.1";
peer-as = 65001;
};
}
{
config = {
neighbor-address = "10.0.255.2";
peer-as = 65002;
};
}
];
}
'';
};
};
config = mkIf cfg.enable {
environment.systemPackages = [ pkgs.gobgpd ];
systemd.services.gobgpd = {
wantedBy = [ "multi-user.target" ];
after = [ "network.target" ];
description = "GoBGP Routing Daemon";
serviceConfig = {
Type = "notify";
ExecStartPre = "${pkgs.gobgpd}/bin/gobgpd -f ${confFile} -d";
ExecStart = "${pkgs.gobgpd}/bin/gobgpd -f ${confFile} --sdnotify";
ExecReload = "${pkgs.gobgpd}/bin/gobgpd -r";
DynamicUser = true;
AmbientCapabilities = "cap_net_bind_service";
};
};
};
}

View File

@ -484,6 +484,8 @@ in {
})
];
boot.kernelModules = [ "ctr" ];
security.polkit.extraConfig = polkitConf;
services.dbus.packages = cfg.packages

View File

@ -242,7 +242,7 @@ in
"default.action"
] ++ optional cfg.inspectHttps (toString inspectAction);
} // (optionalAttrs cfg.enableTor {
forward-socks5 = "127.0.0.1:9063 .";
forward-socks5 = "/ 127.0.0.1:9063 .";
toggle = true;
enable-remote-toggle = false;
enable-edit-actions = false;

View File

@ -4,10 +4,22 @@ with lib;
let
cfg = config.services.spacecookie;
configFile = pkgs.writeText "spacecookie.json" (lib.generators.toJSON {} {
inherit (cfg) hostname port root;
});
spacecookieConfig = {
listen = {
inherit (cfg) port;
};
} // cfg.settings;
format = pkgs.formats.json {};
configFile = format.generate "spacecookie.json" spacecookieConfig;
in {
imports = [
(mkRenamedOptionModule [ "services" "spacecookie" "root" ] [ "services" "spacecookie" "settings" "root" ])
(mkRenamedOptionModule [ "services" "spacecookie" "hostname" ] [ "services" "spacecookie" "settings" "hostname" ])
];
options = {
@ -15,32 +27,149 @@ in {
enable = mkEnableOption "spacecookie";
hostname = mkOption {
type = types.str;
default = "localhost";
description = "The hostname the service is reachable via. Clients will use this hostname for further requests after loading the initial gopher menu.";
package = mkOption {
type = types.package;
default = pkgs.spacecookie;
defaultText = literalExample "pkgs.spacecookie";
example = literalExample "pkgs.haskellPackages.spacecookie";
description = ''
The spacecookie derivation to use. This can be used to
override the used package or to use another version.
'';
};
openFirewall = mkOption {
type = types.bool;
default = false;
description = ''
Whether to open the necessary port in the firewall for spacecookie.
'';
};
port = mkOption {
type = types.port;
default = 70;
description = "Port the gopher service should be exposed on.";
description = ''
Port the gopher service should be exposed on.
'';
};
root = mkOption {
type = types.path;
default = "/srv/gopher";
description = "The root directory spacecookie serves via gopher.";
address = mkOption {
type = types.str;
default = "[::]";
description = ''
Address to listen on. Must be in the
<literal>ListenStream=</literal> syntax of
<link xlink:href="https://www.freedesktop.org/software/systemd/man/systemd.socket.html">systemd.socket(5)</link>.
'';
};
settings = mkOption {
type = types.submodule {
freeformType = format.type;
options.hostname = mkOption {
type = types.str;
default = "localhost";
description = ''
The hostname the service is reachable via. Clients
will use this hostname for further requests after
loading the initial gopher menu.
'';
};
options.root = mkOption {
type = types.path;
default = "/srv/gopher";
description = ''
The directory spacecookie should serve via gopher.
Files in there need to be world-readable since
the spacecookie service file sets
<literal>DynamicUser=true</literal>.
'';
};
options.log = {
enable = mkEnableOption "logging for spacecookie"
// { default = true; example = false; };
hide-ips = mkOption {
type = types.bool;
default = true;
description = ''
If enabled, spacecookie will hide personal
information of users like IP addresses from
log output.
'';
};
hide-time = mkOption {
type = types.bool;
# since we are starting with systemd anyways
# we deviate from the default behavior here:
# journald will add timestamps, so no need
# to double up.
default = true;
description = ''
If enabled, spacecookie will not print timestamps
at the beginning of every log line.
'';
};
level = mkOption {
type = types.enum [
"info"
"warn"
"error"
];
default = "info";
description = ''
Log level for the spacecookie service.
'';
};
};
};
description = ''
Settings for spacecookie. The settings set here are
directly translated to the spacecookie JSON config
file. See
<link xlink:href="https://sternenseemann.github.io/spacecookie/spacecookie.json.5.html">spacecookie.json(5)</link>
for explanations of all options.
'';
};
};
};
config = mkIf cfg.enable {
assertions = [
{
assertion = !(cfg.settings ? user);
message = ''
spacecookie is started as a normal user, so the setuid
feature doesn't work. If you want to run spacecookie as
a specific user, set:
systemd.services.spacecookie.serviceConfig = {
DynamicUser = false;
User = "youruser";
Group = "yourgroup";
}
'';
}
{
assertion = !(cfg.settings ? listen || cfg.settings ? port);
message = ''
The NixOS spacecookie module uses socket activation,
so the listen options have no effect. Use the port
and address options in services.spacecookie instead.
'';
}
];
systemd.sockets.spacecookie = {
description = "Socket for the Spacecookie Gopher Server";
wantedBy = [ "sockets.target" ];
listenStreams = [ "[::]:${toString cfg.port}" ];
listenStreams = [ "${cfg.address}:${toString cfg.port}" ];
socketConfig = {
BindIPv6Only = "both";
};
@ -53,7 +182,7 @@ in {
serviceConfig = {
Type = "notify";
ExecStart = "${pkgs.haskellPackages.spacecookie}/bin/spacecookie ${configFile}";
ExecStart = "${lib.getBin cfg.package}/bin/spacecookie ${configFile}";
FileDescriptorStoreMax = 1;
DynamicUser = true;
@ -79,5 +208,9 @@ in {
RestrictAddressFamilies = "AF_UNIX AF_INET6";
};
};
networking.firewall = mkIf cfg.openFirewall {
allowedTCPPorts = [ cfg.port ];
};
};
}

View File

@ -0,0 +1,134 @@
{ config, lib, pkgs, ... }:
let
cfg = config.services.step-ca;
settingsFormat = (pkgs.formats.json { });
in
{
meta.maintainers = with lib.maintainers; [ mohe2015 ];
options = {
services.step-ca = {
enable = lib.mkEnableOption "the smallstep certificate authority server";
openFirewall = lib.mkEnableOption "opening the certificate authority server port";
package = lib.mkOption {
type = lib.types.package;
default = pkgs.step-ca;
description = "Which step-ca package to use.";
};
address = lib.mkOption {
type = lib.types.str;
example = "127.0.0.1";
description = ''
The address (without port) the certificate authority should listen at.
This combined with <option>services.step-ca.port</option> overrides <option>services.step-ca.settings.address</option>.
'';
};
port = lib.mkOption {
type = lib.types.port;
example = 8443;
description = ''
The port the certificate authority should listen on.
This combined with <option>services.step-ca.address</option> overrides <option>services.step-ca.settings.address</option>.
'';
};
settings = lib.mkOption {
type = with lib.types; attrsOf anything;
description = ''
Settings that go into <filename>ca.json</filename>. See
<link xlink:href="https://smallstep.com/docs/step-ca/configuration">
the step-ca manual</link> for more information. The easiest way to
configure this module would be to run <literal>step ca init</literal>
to generate <filename>ca.json</filename> and then import it using
<literal>builtins.fromJSON</literal>.
<link xlink:href="https://smallstep.com/docs/step-cli/basic-crypto-operations#run-an-offline-x509-certificate-authority">This article</link>
may also be useful if you want to customize certain aspects of
certificate generation for your CA.
You need to change the database storage path to <filename>/var/lib/step-ca/db</filename>.
<warning>
<para>
The <option>services.step-ca.settings.address</option> option
will be ignored and overwritten by
<option>services.step-ca.address</option> and
<option>services.step-ca.port</option>.
</para>
</warning>
'';
};
intermediatePasswordFile = lib.mkOption {
type = lib.types.path;
example = "/run/keys/smallstep-password";
description = ''
Path to the file containing the password for the intermediate
certificate private key.
<warning>
<para>
Make sure to use a quoted absolute path instead of a path literal
to prevent it from being copied to the globally readable Nix
store.
</para>
</warning>
'';
};
};
};
config = lib.mkIf config.services.step-ca.enable (
let
configFile = settingsFormat.generate "ca.json" (cfg.settings // {
address = cfg.address + ":" + toString cfg.port;
});
in
{
assertions =
[
{
assertion = !lib.isStorePath cfg.intermediatePasswordFile;
message = ''
<option>services.step-ca.intermediatePasswordFile</option> points to
a file in the Nix store. You should use a quoted absolute path to
prevent this.
'';
}
];
systemd.packages = [ cfg.package ];
# configuration file indirection is needed to support reloading
environment.etc."smallstep/ca.json".source = configFile;
systemd.services."step-ca" = {
wantedBy = [ "multi-user.target" ];
restartTriggers = [ configFile ];
unitConfig = {
ConditionFileNotEmpty = ""; # override upstream
};
serviceConfig = {
Environment = "HOME=%S/step-ca";
WorkingDirectory = ""; # override upstream
ReadWriteDirectories = ""; # override upstream
# LocalCredential handles file permission problems arising from the use of DynamicUser.
LoadCredential = "intermediate_password:${cfg.intermediatePasswordFile}";
ExecStart = [
"" # override upstream
"${cfg.package}/bin/step-ca /etc/smallstep/ca.json --password-file \${CREDENTIALS_DIRECTORY}/intermediate_password"
];
# ProtectProc = "invisible"; # not supported by upstream yet
# ProcSubset = "pid"; # not supported by upstream upstream yet
# PrivateUsers = true; # doesn't work with privileged ports therefore not supported by upstream
DynamicUser = true;
StateDirectory = "step-ca";
};
};
networking.firewall = lib.mkIf cfg.openFirewall {
allowedTCPPorts = [ cfg.port ];
};
}
);
}

View File

@ -157,7 +157,7 @@ let
proxy_connect_timeout 60;
proxy_send_timeout 60;
proxy_read_timeout 60;
proxy_http_version 1.0;
proxy_http_version 1.1;
include ${recommendedProxyConfig};
''}

View File

@ -37,6 +37,7 @@ in
./tinywm.nix
./twm.nix
./windowmaker.nix
./wmderland.nix
./wmii.nix
./xmonad.nix
./yeahwm.nix

View File

@ -0,0 +1,61 @@
{ config, lib, pkgs, ... }:
with lib;
let
cfg = config.services.xserver.windowManager.wmderland;
in
{
options.services.xserver.windowManager.wmderland = {
enable = mkEnableOption "wmderland";
extraSessionCommands = mkOption {
default = "";
type = types.lines;
description = ''
Shell commands executed just before wmderland is started.
'';
};
extraPackages = mkOption {
type = with types; listOf package;
default = with pkgs; [
rofi
dunst
light
hsetroot
feh
rxvt-unicode
];
example = literalExample ''
with pkgs; [
rofi
dunst
light
hsetroot
feh
rxvt-unicode
]
'';
description = ''
Extra packages to be installed system wide.
'';
};
};
config = mkIf cfg.enable {
services.xserver.windowManager.session = singleton {
name = "wmderland";
start = ''
${cfg.extraSessionCommands}
${pkgs.wmderland}/bin/wmderland &
waitPID=$!
'';
};
environment.systemPackages = [
pkgs.wmderland pkgs.wmderlandc
] ++ cfg.extraPackages;
};
}

View File

@ -157,6 +157,7 @@ in
systemd.services.docker = {
wantedBy = optional cfg.enableOnBoot "multi-user.target";
after = [ "network.target" "docker.socket" ];
requires = [ "docker.socket" ];
environment = proxy_env;
serviceConfig = {

View File

@ -138,6 +138,7 @@ in
gnome3 = handleTest ./gnome3.nix {};
gnome3-xorg = handleTest ./gnome3-xorg.nix {};
go-neb = handleTest ./go-neb.nix {};
gobgpd = handleTest ./gobgpd.nix {};
gocd-agent = handleTest ./gocd-agent.nix {};
gocd-server = handleTest ./gocd-server.nix {};
google-oslogin = handleTest ./google-oslogin {};
@ -432,6 +433,7 @@ in
wasabibackend = handleTest ./wasabibackend.nix {};
wiki-js = handleTest ./wiki-js.nix {};
wireguard = handleTest ./wireguard {};
wmderland = handleTest ./wmderland.nix {};
wordpress = handleTest ./wordpress.nix {};
xandikos = handleTest ./xandikos.nix {};
xautolock = handleTest ./xautolock.nix {};

View File

@ -61,7 +61,7 @@ let
+ "Please contact your site administrator.'"
)
server.succeed(
"su -l gitea -c 'GITEA_WORK_DIR=/var/lib/gitea gitea admin create-user "
"su -l gitea -c 'GITEA_WORK_DIR=/var/lib/gitea gitea admin user create "
+ "--username test --password totallysafe --email test@localhost'"
)

71
nixos/tests/gobgpd.nix Normal file
View File

@ -0,0 +1,71 @@
import ./make-test-python.nix ({ pkgs, ... }:
let
ifAddr = node: iface: (pkgs.lib.head node.config.networking.interfaces.${iface}.ipv4.addresses).address;
in {
name = "gobgpd";
meta = with pkgs.lib.maintainers; { maintainers = [ higebu ]; };
nodes = {
node1 = { nodes, ... }: {
environment.systemPackages = [ pkgs.gobgp ];
networking.firewall.allowedTCPPorts = [ 179 ];
services.gobgpd = {
enable = true;
settings = {
global = {
config = {
as = 64512;
router-id = "192.168.255.1";
};
};
neighbors = [{
config = {
neighbor-address = ifAddr nodes.node2 "eth1";
peer-as = 64513;
};
}];
};
};
};
node2 = { nodes, ... }: {
environment.systemPackages = [ pkgs.gobgp ];
networking.firewall.allowedTCPPorts = [ 179 ];
services.gobgpd = {
enable = true;
settings = {
global = {
config = {
as = 64513;
router-id = "192.168.255.2";
};
};
neighbors = [{
config = {
neighbor-address = ifAddr nodes.node1 "eth1";
peer-as = 64512;
};
}];
};
};
};
};
testScript = { nodes, ... }: let
addr1 = ifAddr nodes.node1 "eth1";
addr2 = ifAddr nodes.node2 "eth1";
in
''
start_all()
for node in node1, node2:
with subtest("should start gobgpd node"):
node.wait_for_unit("gobgpd.service")
with subtest("should open port 179"):
node.wait_for_open_port(179)
with subtest("should show neighbors by gobgp cli and BGP state should be ESTABLISHED"):
node1.wait_until_succeeds("gobgp neighbor ${addr2} | grep -q ESTABLISHED")
node2.wait_until_succeeds("gobgp neighbor ${addr1} | grep -q ESTABLISHED")
'';
})

View File

@ -14,9 +14,10 @@ in {
environment.systemPackages = with pkgs; [ mosquitto ];
services.mosquitto = {
enable = true;
checkPasswords = true;
users = {
"${mqttUsername}" = {
acl = [ "pattern readwrite #" ];
acl = [ "topic readwrite #" ];
password = mqttPassword;
};
};
@ -77,12 +78,9 @@ in {
hass.wait_for_open_port(8123)
hass.succeed("curl --fail http://localhost:8123/lovelace")
with subtest("Toggle a binary sensor using MQTT"):
# wait for broker to become available
hass.wait_until_succeeds(
"mosquitto_sub -V mqttv311 -t home-assistant/test -u ${mqttUsername} -P '${mqttPassword}' -W 1 -t '*'"
)
hass.wait_for_open_port(1883)
hass.succeed(
"mosquitto_pub -V mqttv311 -t home-assistant/test -u ${mqttUsername} -P '${mqttPassword}' -m let_there_be_light"
"mosquitto_pub -V mqttv5 -t home-assistant/test -u ${mqttUsername} -P '${mqttPassword}' -m let_there_be_light"
)
with subtest("Print log to ease debugging"):
output_log = hass.succeed("cat ${configDir}/home-assistant.log")

View File

@ -17,7 +17,7 @@ in
services.redis.unixSocket = redisSocket;
# Allow access to the unix socket for the "redis" group.
services.redis.settings.unixsocketperm = "770";
services.redis.unixSocketPerm = 770;
users.users."member" = {
createHome = false;

View File

@ -1,47 +1,52 @@
let
gopherRoot = "/tmp/gopher";
gopherHost = "gopherd";
fileContent = "Hello Gopher!";
fileName = "file.txt";
gopherRoot = "/tmp/gopher";
gopherHost = "gopherd";
gopherClient = "client";
fileContent = "Hello Gopher!\n";
fileName = "file.txt";
in
import ./make-test-python.nix ({...}: {
name = "spacecookie";
nodes = {
${gopherHost} = {
networking.firewall.allowedTCPPorts = [ 70 ];
systemd.services.spacecookie = {
preStart = ''
mkdir -p ${gopherRoot}/directory
echo "${fileContent}" > ${gopherRoot}/${fileName}
printf "%s" "${fileContent}" > ${gopherRoot}/${fileName}
'';
};
services.spacecookie = {
enable = true;
root = gopherRoot;
hostname = gopherHost;
openFirewall = true;
settings = {
root = gopherRoot;
hostname = gopherHost;
};
};
};
client = {};
${gopherClient} = {};
};
testScript = ''
start_all()
${gopherHost}.wait_for_open_port(70)
${gopherHost}.wait_for_unit("spacecookie.service")
client.wait_for_unit("network.target")
fileResponse = client.succeed("curl -f -s gopher://${gopherHost}//${fileName}")
# with daemon type notify, the unit being started
# should also mean the port is open
${gopherHost}.wait_for_unit("spacecookie.service")
${gopherClient}.wait_for_unit("network.target")
fileResponse = ${gopherClient}.succeed("curl -f -s gopher://${gopherHost}/0/${fileName}")
# the file response should return our created file exactly
if not (fileResponse == "${fileContent}\n"):
if not (fileResponse == "${builtins.replaceStrings [ "\n" ] [ "\\n" ] fileContent}"):
raise Exception("Unexpected file response")
# sanity check on the directory listing: we serve a directory and a file
# via gopher, so the directory listing should have exactly two entries,
# one with gopher file type 0 (file) and one with file type 1 (directory).
dirResponse = client.succeed("curl -f -s gopher://${gopherHost}")
dirResponse = ${gopherClient}.succeed("curl -f -s gopher://${gopherHost}")
dirEntries = [l[0] for l in dirResponse.split("\n") if len(l) > 0]
dirEntries.sort()

54
nixos/tests/wmderland.nix Normal file
View File

@ -0,0 +1,54 @@
import ./make-test-python.nix ({ pkgs, ...} : {
name = "wmderland";
meta = with pkgs.stdenv.lib.maintainers; {
maintainers = [ takagiy ];
};
machine = { lib, ... }: {
imports = [ ./common/x11.nix ./common/user-account.nix ];
test-support.displayManager.auto.user = "alice";
services.xserver.displayManager.defaultSession = lib.mkForce "none+wmderland";
services.xserver.windowManager.wmderland.enable = true;
systemd.services.setupWmderlandConfig = {
wantedBy = [ "multi-user.target" ];
before = [ "multi-user.target" ];
environment = {
HOME = "/home/alice";
};
unitConfig = {
type = "oneshot";
RemainAfterExit = true;
user = "alice";
};
script = let
config = pkgs.writeText "config" ''
set $Mod = Mod1
bindsym $Mod+Return exec ${pkgs.xterm}/bin/xterm -cm -pc
'';
in ''
mkdir -p $HOME/.config/wmderland
cp ${config} $HOME/.config/wmderland/config
'';
};
};
testScript = { ... }: ''
with subtest("ensure x starts"):
machine.wait_for_x()
machine.wait_for_file("/home/alice/.Xauthority")
machine.succeed("xauth merge ~alice/.Xauthority")
with subtest("ensure we can open a new terminal"):
machine.send_key("alt-ret")
machine.wait_until_succeeds("pgrep xterm")
machine.wait_for_window(r"alice.*?machine")
machine.screenshot("terminal")
with subtest("ensure we can communicate through ipc with wmderlandc"):
# Kills the previously open xterm
machine.succeed("pgrep xterm")
machine.execute("DISPLAY=:0 wmderlandc kill")
machine.fail("pgrep xterm")
'';
})

View File

@ -2,13 +2,13 @@
stdenv.mkDerivation rec {
pname = "bschaffl";
version = "1.4.4";
version = "1.4.6";
src = fetchFromGitHub {
owner = "sjaehn";
repo = pname;
rev = version;
sha256 = "sha256-tu5JL0vcqRsZYmoaYGYm/aj95i7wLtnKYGbEPD7AsoM=";
sha256 = "sha256-tD4LsIXb2II+TNEfzXBviMR2fq/FtCSsaL2YGun1vu0=";
};
nativeBuildInputs = [ pkg-config ];

View File

@ -1,12 +1,21 @@
{ lib, stdenv
{ stdenv
, alsaLib
, curl
, fetchFromGitHub
, fftwFloat
, freetype
, glib
, lib
, libGL
, libX11
, libXcursor
, libXext
, libXinerama
, libXrandr
, libXrender
, libgcc
, libglvnd
, libsecret
, meson
, ninja
, pkg-config
@ -14,25 +23,33 @@
stdenv.mkDerivation rec {
pname = "distrho-ports";
version = "2020-07-14";
version = "2021-03-15";
src = fetchFromGitHub {
owner = "DISTRHO";
repo = "DISTRHO-Ports";
rev = version;
sha256 = "03ji41i6dpknws1vjwfxnl8c8bgisv2ng8xa4vqy2473k7wgdw4v";
sha256 = "00fgqwayd20akww3n2imyqscmyrjyc9jj0ar13k9dhpaxqk2jxbf";
};
nativeBuildInputs = [ pkg-config meson ninja ];
buildInputs = [
alsaLib
curl
fftwFloat
freetype
glib
libGL
libX11
libXcursor
libXext
libXinerama
libXrandr
libXrender
libgcc
libglvnd
libsecret
];
meta = with lib; {
@ -61,6 +78,7 @@ stdenv.mkDerivation rec {
pitchedDelay
refine
stereosourceseparation
swankyamp
tal-dub-3
tal-filter
tal-filter-2
@ -71,9 +89,10 @@ stdenv.mkDerivation rec {
tal-vocoder-2
temper
vex
vitalium
wolpertinger
'';
license = with licenses; [ gpl2 gpl3 gpl2Plus lgpl3 mit ];
license = with licenses; [ gpl2Only gpl3Only gpl2Plus lgpl2Plus lgpl3Only mit ];
maintainers = [ maintainers.goibhniu ];
platforms = [ "x86_64-linux" ];
};

View File

@ -1,30 +1,30 @@
{ lib, stdenv, fetchurl, pkg-config
, gtk2, alsaLib
, fftw, gsl
, alsaLib, fftw, gsl, motif, xorg
}:
stdenv.mkDerivation rec {
name = "snd-20.3";
pname = "snd";
version = "21.1";
src = fetchurl {
url = "mirror://sourceforge/snd/${name}.tar.gz";
sha256 = "016slh34gb6qqb38m8k9yg48rbhc5p12084szcwvanhh5v7fc7mk";
url = "mirror://sourceforge/snd/snd-${version}.tar.gz";
sha256 = "1jxvpgx1vqa6bwdzlzyzrjn2swjf9nfhzi9r1r96ivi0870vvjk3";
};
nativeBuildInputs = [ pkg-config ];
buildInputs = [
gtk2 alsaLib
fftw gsl
];
buildInputs = [ alsaLib fftw gsl motif ]
++ (with xorg; [ libXext libXft libXpm libXt ]);
meta = {
configureFlags = [ "--with-motif" ];
enableParallelBuilding = true;
meta = with lib; {
description = "Sound editor";
homepage = "http://ccrma.stanford.edu/software/snd";
platforms = lib.platforms.linux;
license = lib.licenses.free;
maintainers = with lib.maintainers; [ ];
homepage = "https://ccrma.stanford.edu/software/snd/";
platforms = platforms.unix;
license = licenses.free;
maintainers = with maintainers; [ ];
};
}

View File

@ -8,17 +8,17 @@ let
in buildGoModule rec {
pname = "go-ethereum";
version = "1.10.1";
version = "1.10.2";
src = fetchFromGitHub {
owner = "ethereum";
repo = pname;
rev = "v${version}";
sha256 = "sha256-4lHT0P8Euau0AJNtg1YstJJRQ58WTUlIH+HCKEjCq/s=";
sha256 = "sha256-PJaJ9fCva9UUBcQrnVa2c7dk4koi6AyX6bj3JStUMwM=";
};
runVend = true;
vendorSha256 = "sha256-DgyOvplk1JWn6D/z4zbXHLNLuAVQ5beEHi0NuSv236A=";
vendorSha256 = "sha256-qLpwrV9NkmUO0yoK2/gwb5oe/lky/w/P0QVoFSTNuMU=";
doCheck = false;

View File

@ -7,16 +7,16 @@
}:
rustPlatform.buildRustPackage rec {
pname = "polkadot";
version = "0.8.29";
version = "0.8.30";
src = fetchFromGitHub {
owner = "paritytech";
repo = "polkadot";
rev = "v${version}";
sha256 = "sha256-O5GIbX7qp+Te5QQuqytC9rsQJ5FuXtUl5h2DZXsfMPk=";
sha256 = "sha256-9GCk1gqlQJhuoiKRi7J1qcJlZjlq2ObGicp5tGGDhrY=";
};
cargoSha256 = "sha256-4VmRIrd79odnYrHuBLdFwere+7bvtUI3daVs3ZUKsdY=";
cargoSha256 = "sha256-pWqbcargCEkisdGnj08VQdRqjocR7zZhWukhYjfZDqI=";
nativeBuildInputs = [ clang ];

View File

@ -2,7 +2,7 @@
, wrapGAppsHook, pkg-config, desktop-file-utils
, appstream-glib, pythonPackages, glib, gobject-introspection
, gtk3, webkitgtk, glib-networking, gnome3, gspell, texlive
, shared-mime-info, haskellPackages, libhandy
, shared-mime-info, libhandy
}:
let
@ -38,7 +38,6 @@ in stdenv.mkDerivation rec {
gappsWrapperArgs+=(
--prefix PYTHONPATH : "$out/lib/python${pythonEnv.pythonVersion}/site-packages/"
--prefix PATH : "${texlive}/bin"
--prefix PATH : "${haskellPackages.pandoc-citeproc}/bin"
--prefix XDG_DATA_DIRS : "${shared-mime-info}/share"
)
'';

View File

@ -1,29 +1,33 @@
{ lib, stdenv, makeWrapper, fetchFromGitHub, cmake, alsaLib, mesa_glu, libXcursor, libXinerama, libXrandr, xorgserver }:
{ lib, stdenv, fetchFromGitHub
, cmake, makeWrapper
, alsaLib, fontconfig, mesa_glu, libXcursor, libXinerama, libXrandr, xorg
}:
stdenv.mkDerivation rec {
pname = "bonzomatic";
version = "2018-03-29";
version = "2021-03-07";
src = fetchFromGitHub {
owner = "Gargaj";
repo = pname;
rev = version;
sha256 = "12mdfjvbhdqz1585772rj4cap8m4ijfci6ib62jysxjf747k41fg";
sha256 = "0gbh7kj7irq2hyvlzjgbs9fcns9kamz7g5p6msv12iw75z9yi330";
};
nativeBuildInputs = [ cmake makeWrapper ];
buildInputs = [ alsaLib mesa_glu libXcursor libXinerama libXrandr xorgserver ];
buildInputs = [
alsaLib fontconfig mesa_glu
libXcursor libXinerama libXrandr xorg.xinput xorg.libXi xorg.libXext
];
postFixup = ''
wrapProgram $out/bin/Bonzomatic --prefix LD_LIBRARY_PATH : "${alsaLib}/lib"
wrapProgram $out/bin/bonzomatic --prefix LD_LIBRARY_PATH : "${alsaLib}/lib"
'';
meta = with lib; {
description = "A live-coding tool for writing 2D fragment/pixel shaders";
license = with licenses; [
unlicense
unfreeRedistributable # contains libbass.so in repository
];
description = "Live shader coding tool and Shader Showdown workhorse";
homepage = "https://github.com/gargaj/bonzomatic";
license = licenses.unlicense;
maintainers = [ maintainers.ilian ];
platforms = [ "i686-linux" "x86_64-linux" ];
};

View File

@ -38,13 +38,13 @@ let
in
stdenv.mkDerivation rec {
pname = "cudatext";
version = "1.129.3";
version = "1.131.0";
src = fetchFromGitHub {
owner = "Alexey-T";
repo = "CudaText";
rev = version;
sha256 = "1sg9wg6w3w0phrnnzpj7h2g22y0x7a3dl57djzydayxmg8fnn2ys";
sha256 = "1zq17yi5zn4hdgrrn3c3cdk6s38fv36r66dl0dqz2z8jjd6vy4p3";
};
postPatch = ''
@ -106,8 +106,8 @@ stdenv.mkDerivation rec {
Config system in JSON files. Multi-carets and multi-selections.
Search and replace with RegEx. Extendable by Python plugins and themes.
'';
homepage = "http://www.uvviewsoft.com/cudatext/";
changelog = "http://uvviewsoft.com/cudatext/history.txt";
homepage = "https://cudatext.github.io/";
changelog = "https://cudatext.github.io/history.txt";
license = licenses.mpl20;
maintainers = with maintainers; [ sikmir ];
platforms = platforms.linux;

View File

@ -11,18 +11,18 @@
},
"ATFlatControls": {
"owner": "Alexey-T",
"rev": "2021.03.05",
"sha256": "1p2pzha5dd4p23j2bv6jxphj596dlb5v8ixjzg4x2zglz2hir6yz"
"rev": "2021.04.01",
"sha256": "12sncivsv6pvwflzzy12rpn1fjiq64n2n3bcj7630xxlrbygkhxb"
},
"ATSynEdit": {
"owner": "Alexey-T",
"rev": "2021.03.16",
"sha256": "1sq9j2zaif019gl6nf391lyp8k9s38f5s6ci7k3z5v90hkz1dcql"
"rev": "2021.04.09",
"sha256": "1ldr2z88zywn0ccgs17vfhq55ibihjcmfjjxcqsjifrbm0y6wipp"
},
"ATSynEdit_Cmp": {
"owner": "Alexey-T",
"rev": "2021.03.08",
"sha256": "0xvnvx4qzp6nxi912i4zlnal91k6vbcsyfbz05ib73sz68xqd5qv"
"rev": "2021.04.01",
"sha256": "1g6zp9d7vwjisad3y1mfnk1jcbjqxp3yimm0sh1655al6qwn886m"
},
"EControl": {
"owner": "Alexey-T",
@ -31,8 +31,8 @@
},
"ATSynEdit_Ex": {
"owner": "Alexey-T",
"rev": "2021.03.16",
"sha256": "1a4mxcwjm9naxh4piqm5y93w2xd5rgl0vcn108wy1pkr221agg2q"
"rev": "2021.04.01",
"sha256": "1hq9hbv81mcymjcms97wcwcfqfpxis6h6v5m0syyih4r53khv0az"
},
"Python-for-Lazarus": {
"owner": "Alexey-T",

View File

@ -2,20 +2,20 @@
buildGoModule rec {
pname = "glow";
version = "1.4.0";
version = "1.4.1";
src = fetchFromGitHub {
owner = "charmbracelet";
repo = "glow";
rev = "v${version}";
sha256 = "13ip29yxjc2fhsk12m6hj6mswrgc9a4m8gf0hiffd1nh5313mqxi";
sha256 = "0m673xf67q9gjhd98ysh3dvwiqbj6lgsbm20c4zxyz76vdn5k6x8";
};
vendorSha256 = "0i49b1yq9x5n59k29yacxyif928r0w7hl6azfvr5k3rssg0y4l7f";
vendorSha256 = "0ngasfcimizahm80gflxzz3cxz0ir10l62i03l73w8syx4wll0q4";
doCheck = false;
buildFlagsArray = [ "-ldflags=" "-X=main.Version=${version}" ];
buildFlagsArray = [ "-ldflags= -s -w -X=main.Version=${version}" ];
meta = with lib; {
description = "Render markdown on the CLI, with pizzazz!";

View File

@ -16,13 +16,13 @@ in
stdenv.mkDerivation rec {
pname = "imagemagick";
version = "7.0.11-5";
version = "7.0.11-6";
src = fetchFromGitHub {
owner = "ImageMagick";
repo = "ImageMagick";
rev = version;
sha256 = "sha256-HJUC8lUHORZMHvSv1/EYM+JOsd89quFaU1Fz08AckG8=";
sha256 = "sha256-QClOS58l17KHeQXya+IKNx6nIkd6jCKp8uupRH7Fwnk=";
};
outputs = [ "out" "dev" "doc" ]; # bin/ isn't really big

View File

@ -13,11 +13,11 @@
stdenv.mkDerivation rec {
pname = "fig2dev";
version = "3.2.8";
version = "3.2.8a";
src = fetchurl {
url = "mirror://sourceforge/mcj/fig2dev-${version}.tar.xz";
sha256 = "0zg29yqknfafyzmmln4k7kydfb2dapk3r8ffvlqhj3cm8fp5h4lk";
sha256 = "1bm75lf9j54qpbjx8hzp6ixaayp1x9w4v3yxl6vxyw8g5m4sqdk3";
};
nativeBuildInputs = [ makeWrapper ];

View File

@ -1,18 +1,20 @@
{ lib, stdenv, fetchFromGitHub, autoreconfHook, pkg-config, libpng, nasm }:
{ lib, stdenv, fetchFromGitHub, cmake, pkg-config, libpng, zlib, nasm }:
stdenv.mkDerivation rec {
version = "3.3.1";
version = "4.0.3";
pname = "mozjpeg";
src = fetchFromGitHub {
owner = "mozilla";
repo = "mozjpeg";
rev = "v${version}";
sha256 = "1na68860asn8b82ny5ilwbhh4nyl9gvx2yxmm4wr2v1v95v51fky";
sha256 = "1wb2ys0yjy6hgpb9qvzjxs7sb2zzs44p6xf7n026mx5nx85hjbyv";
};
nativeBuildInputs = [ autoreconfHook pkg-config ];
buildInputs = [ libpng nasm ];
cmakeFlags = [ "-DENABLE_STATIC=NO" "-DPNG_SUPPORTED=TRUE" ]; # See https://github.com/mozilla/mozjpeg/issues/351
nativeBuildInputs = [ cmake pkg-config ];
buildInputs = [ libpng zlib nasm ];
meta = {
description = "Mozilla JPEG Encoder Project";

View File

@ -1,11 +1,12 @@
{ fetchurl, lib, stdenv, libjpeg, libpng, libtiff, perl }:
stdenv.mkDerivation rec {
name = "libpano13-2.9.19";
pname = "libpano13";
version = "2.9.20";
src = fetchurl {
url = "mirror://sourceforge/panotools/${name}.tar.gz";
sha256 = "1a4m3plmfcrrplqs9zfzhc5apibn10m5sajpizm1sd3q74w5fwq3";
url = "mirror://sourceforge/panotools/${pname}-${version}.tar.gz";
sha256 = "12cv4886l1czfjwy7k6ipgf3zjksgwhdjzr2s9fdg33vqcv2hlrv";
};
buildInputs = [ perl libjpeg libpng libtiff ];

View File

@ -2,16 +2,16 @@
buildGoModule rec {
pname = "pdfcpu";
version = "0.3.9";
version = "0.3.11";
src = fetchFromGitHub {
owner = "pdfcpu";
repo = pname;
rev = "v${version}";
sha256 = "sha256-btkGn/67KVFB272j7u5MKZCeby2fyRthLLeXj8VgX7s=";
sha256 = "sha256-kLRxZW89Bm2N/KxFYetIq+auPBW/vFoUnB8uaEcM8Yo=";
};
vendorSha256 = "sha256-/SsDDFveovJfuEdnOkxHAWccS8PJW5k9IHSxSJAgHMQ=";
vendorSha256 = "sha256-p/2Bu5h2P3ebgvSC12jdR2Zpd27xCFwtB/KZV0AULAM=";
# No tests
doCheck = false;

View File

@ -14,11 +14,11 @@
stdenv.mkDerivation rec {
pname = "xfig";
version = "3.2.8";
version = "3.2.8a";
src = fetchurl {
url = "mirror://sourceforge/mcj/xfig-${version}.tar.xz";
sha256 = "1czamqp0xn0j6qjnasa3fjnrzi072v6qknylr6jrs4gwsfw4ybyw";
sha256 = "0y45i1gqg3r0aq55jk047l1hnv90kqis6ld9lppx6c5jhpmc0hxs";
};
nativeBuildInputs = [ makeWrapper ];

View File

@ -35,7 +35,8 @@ stdenv.mkDerivation rec {
patches = lib.optional stdenv.isDarwin ./darwin.patch;
nativeBuildInputs = [ cmake makeWrapper ] ++ optional cudaSupport addOpenGLRunpath;
nativeBuildInputs = [ cmake makeWrapper python3Packages.wrapPython ]
++ optionals cudaSupport [ addOpenGLRunpath ];
buildInputs =
[ boost ffmpeg gettext glew ilmbase
freetype libjpeg libpng libsamplerate libsndfile libtiff
@ -63,6 +64,7 @@ stdenv.mkDerivation rec {
++ optional cudaSupport cudatoolkit
++ optional colladaSupport opencollada
++ optional spaceNavSupport libspnav;
pythonPath = with python3Packages; [ numpy requests ];
postPatch = ''
# allow usage of dynamically linked embree
@ -109,6 +111,7 @@ stdenv.mkDerivation rec {
"-DWITH_PYTHON_INSTALL_NUMPY=OFF"
"-DPYTHON_NUMPY_PATH=${python3Packages.numpy}/${python.sitePackages}"
"-DPYTHON_NUMPY_INCLUDE_DIRS=${python3Packages.numpy}/${python.sitePackages}/numpy/core/include"
"-DWITH_PYTHON_INSTALL_REQUESTS=OFF"
"-DWITH_OPENVDB=ON"
"-DWITH_TBB=ON"
"-DWITH_IMAGE_OPENJPEG=ON"
@ -137,10 +140,11 @@ stdenv.mkDerivation rec {
blenderExecutable =
placeholder "out" + (if stdenv.isDarwin then "/Blender.app/Contents/MacOS/Blender" else "/bin/blender");
# --python-expr is used to workaround https://developer.blender.org/T74304
postInstall = ''
buildPythonPath "$pythonPath"
wrapProgram $blenderExecutable \
--prefix PYTHONPATH : ${python3Packages.numpy}/${python.sitePackages} \
--prefix PATH : $program_PATH \
--prefix PYTHONPATH : "$program_PYTHONPATH" \
--add-flags '--python-use-system-env'
'';

View File

@ -5,13 +5,13 @@
buildGoModule rec {
pname = "dasel";
version = "1.13.6";
version = "1.14.0";
src = fetchFromGitHub {
owner = "TomWright";
repo = pname;
rev = "v${version}";
sha256 = "sha256-PTi1blbMVsuftLrFIYNDI8ZFEwRxDA53Md9oZTv7nHs=";
sha256 = "1g4a001k86myfln0xlzy8w9krwamvfchnvywpr1p3x6iw95z46w8";
};
vendorSha256 = "sha256-BdX4DO77mIf/+aBdkNVFUzClsIml1UMcgvikDbbdgcY=";

View File

@ -0,0 +1,79 @@
{ mkDerivation, lib, fetchzip, libarchive, autoPatchelfHook, libsecret, libGL, zlib, openssl, qtbase, qtwebkit, qtxmlpatterns }:
mkDerivation rec {
pname = "foxitreader";
version = "2.4.4.0911";
src = fetchzip {
url = "https://cdn01.foxitsoftware.com/pub/foxit/reader/desktop/linux/${lib.versions.major version}.x/${lib.versions.majorMinor version}/en_us/FoxitReader.enu.setup.${version}.x64.run.tar.gz";
sha256 = "0ff4xs9ipc7sswq0czfhpsd7qw7niw0zsf9wgsqhbbgzcpbdhcb7";
stripRoot = false;
};
buildInputs = [ libGL libsecret openssl qtbase qtwebkit qtxmlpatterns zlib ];
nativeBuildInputs = [ autoPatchelfHook libarchive ];
buildPhase = ''
runHook preBuild
input_file=$src/*.run
mkdir -p extracted
# Look for all 7z files and extract them
grep --only-matching --byte-offset --binary \
--text -P '7z\xBC\xAF\x27\x1C\x00\x03' $input_file | cut -d: -f1 |
while read position; do
tail -c +$(($position + 1)) $input_file > file.7z
bsdtar xf file.7z -C extracted
done
runHook postBuild
'';
installPhase = ''
runHook preInstall
mkdir -p $out/lib
cd extracted
cp -r \
CollectStrategy.txt \
cpdf_settings \
fxplugins \
lang \
resource \
run \
stamps \
welcome \
Wrappers \
$out/lib/
patchelf $out/lib/fxplugins/librms.so \
--replace-needed libssl.so.10 libssl.so \
--replace-needed libcrypto.so.10 libcrypto.so
# FIXME: Doing this with one invocation is broken right now
patchelf $out/lib/fxplugins/librmscrypto.so \
--replace-needed libssl.so.10 libssl.so
patchelf $out/lib/fxplugins/librmscrypto.so \
--replace-needed libcrypto.so.10 libcrypto.so
install -D -m 755 FoxitReader -t $out/bin
# Install icon and desktop files
install -D -m 644 images/FoxitReader.png -t $out/share/pixmaps/
install -D -m 644 FoxitReader.desktop -t $out/share/applications/
echo Exec=FoxitReader %F >> $out/share/applications/FoxitReader.desktop
runHook postInstall
'';
qtWrapperArgs = [ "--set appname FoxitReader" "--set selfpath $out/lib" ];
meta = with lib; {
description = "A viewer for PDF documents";
homepage = "https://www.foxitsoftware.com/";
license = licenses.unfree;
maintainers = with maintainers; [ p-h rhoriguchi ];
};
}

View File

@ -1,4 +1,5 @@
{ lib, stdenv
{ lib
, stdenv
, autoconf
, automake
, c-ares
@ -24,21 +25,29 @@
, unzip
, wget
}:
mkDerivation rec {
pname = "megasync";
version = "4.3.5.0";
version = "4.4.0.0";
src = fetchFromGitHub {
owner = "meganz";
repo = "MEGAsync";
rev = "v${version}_Linux";
sha256 = "0rr1jjy0n5bj1lh6xi3nbbcikvq69j3r9qnajp4mhywr5izpccvs";
sha256 = "1xggca7283943070mmpsfhh7c9avy809h0kgmf7497f4ca5zkg2y";
fetchSubmodules = true;
};
nativeBuildInputs =
[ autoconf automake doxygen lsb-release pkg-config qttools swig unzip ];
nativeBuildInputs = [
autoconf
automake
doxygen
libtool
lsb-release
pkg-config
qttools
swig
unzip
];
buildInputs = [
c-ares
cryptopp
@ -47,7 +56,6 @@ mkDerivation rec {
libmediainfo
libraw
libsodium
libtool
libuv
libzen
qtbase
@ -65,7 +73,7 @@ mkDerivation rec {
];
postPatch = ''
for file in $(find src/ -type f \( -iname configure -o -iname \*.sh \) ); do
for file in $(find src/ -type f \( -iname configure -o -iname \*.sh \) ); do
substituteInPlace "$file" --replace "/bin/bash" "${stdenv.shell}"
done
'';

View File

@ -30,12 +30,12 @@ let
in stdenv.mkDerivation rec {
pname = "obsidian";
version = "0.11.9";
version = "0.11.13";
src = fetchurl {
url =
"https://github.com/obsidianmd/obsidian-releases/releases/download/v${version}/obsidian-${version}.tar.gz";
sha256 = "XymM3qma8H2dm2tq8Zg+oKxOzb48azqlqn701pN5gdI=";
sha256 = "0QL1rP37pmdIdGM9eHa7PfW1GVrvn2fX4bQPqQ8FOpI=";
};
nativeBuildInputs = [ makeWrapper graphicsmagick ];

View File

@ -5,13 +5,13 @@
python3Packages.buildPythonApplication rec {
pname = "pdfarranger";
version = "1.7.0";
version = "1.7.1";
src = fetchFromGitHub {
owner = pname;
repo = pname;
rev = version;
sha256 = "0dmgmvpghsm938iznalbg8h8k17a5h3q466yfc67mcll428n4nx3";
sha256 = "1c2mafnz8pv32wzkc2wx4q8y2x7xffpn6ag12dj7ga5n772fb6s3";
};
nativeBuildInputs = [

View File

@ -1,81 +1,77 @@
{ lib
, fetchFromGitHub
, perl
, python3
, sqlite
, gpsbabel
, fetchFromGitHub
, gdk-pixbuf
, gnome3
, gobject-introspection
, wrapGAppsHook
, gtk3
, xvfb_run
, webkitgtk
, gpsbabel
, glib-networking
, glibcLocales
, gobject-introspection
, gtk3
, perl
, sqlite
, tzdata
, substituteAll
, webkitgtk
, wrapGAppsHook
, xvfb_run
}:
let
# Pytrainer needs a matplotlib with GTK backend.
matplotlibGtk = python3.pkgs.matplotlib.override {
enableGtk3 = true;
python = python3.override {
packageOverrides = (self: super: {
matplotlib = super.matplotlib.override {
enableGtk3 = true;
};
});
};
in
python3.pkgs.buildPythonApplication rec {
in python.pkgs.buildPythonApplication rec {
pname = "pytrainer";
version = "2.0.1";
version = "2.0.2";
src = fetchFromGitHub {
owner = "pytrainer";
repo = "pytrainer";
rev = "v${version}";
sha256 = "0m2sy3f5pyc4wv1ns31r7vlafqkzp0a2jasaskwrkl6273agbbk9";
sha256 = "sha256-i3QC6ct7tS8B0QQjtVqPcd03LLIxo6djQe4YX35syzk=";
};
patches = [
(substituteAll {
src = ./fix-paths.patch;
perl = "${perl}/bin/perl";
})
];
postPatch = ''
substituteInPlace ./setup.py \
--replace "'mysqlclient'," ""
'';
propagatedBuildInputs = with python3.pkgs; [
dateutil
lxml
matplotlibGtk
pygobject3
sqlalchemy
propagatedBuildInputs = with python.pkgs; [
sqlalchemy_migrate
psycopg2
requests
certifi
python-dateutil
matplotlib
lxml
setuptools
requests
gdal
];
nativeBuildInputs = [
gobject-introspection
wrapGAppsHook
xvfb_run
];
buildInputs = [
gpsbabel
sqlite
gtk3
webkitgtk
glib-networking
glibcLocales
gnome3.adwaita-icon-theme
gdk-pixbuf
];
makeWrapperArgs = [
"--prefix" "PATH" ":" (lib.makeBinPath [ perl gpsbabel ])
];
checkInputs = [
glibcLocales
perl
xvfb_run
] ++ (with python.pkgs; [
mysqlclient
psycopg2
]);
checkPhase = ''
env HOME=$TEMPDIR TZDIR=${tzdata}/share/zoneinfo \
TZ=Europe/Kaliningrad \
@ -85,9 +81,9 @@ python3.pkgs.buildPythonApplication rec {
'';
meta = with lib; {
homepage = "https://github.com/pytrainer/pytrainer/wiki";
homepage = "https://github.com/pytrainer/pytrainer";
description = "Application for logging and graphing sporting excursions";
maintainers = [ maintainers.rycee ];
maintainers = with maintainers; [ rycee dotlambda ];
license = licenses.gpl2Plus;
platforms = platforms.linux;
};

View File

@ -1,11 +0,0 @@
--- a/imports/file_garminfit.py
+++ b/imports/file_garminfit.py
@@ -81,7 +81,7 @@
logging.debug(">>")
result = False
try:
- result = subprocess.check_output(["perl",
+ result = subprocess.check_output(["@perl@",
self.main_data_path+"plugins/garmin-fit/bin/fit2tcx",
filename])
except subprocess.CalledProcessError:

View File

@ -4,13 +4,13 @@
let
pname = "qdirstat";
version = "1.7";
version = "1.7.1";
src = fetchFromGitHub {
owner = "shundhammer";
repo = pname;
rev = version;
sha256 = "163x3fxra0l3vvrzm25mh7jvcwjbmwsqlpppkxx76mkz9a1769fy";
sha256 = "sha256-i1xHMwSnBULJbOA/ykQK9WBd+6TBNBRI9hnU1FDGQlY=";
};
in
@ -50,7 +50,7 @@ mkDerivation {
meta = with lib; {
description = "Graphical disk usage analyzer";
homepage = src.meta.homepage;
license = licenses.gpl2;
license = licenses.gpl2Plus;
maintainers = with maintainers; [ gnidorah ];
platforms = platforms.linux;
};

View File

@ -29,6 +29,8 @@ mkDerivation rec {
qmakeFlags = [ "INSTALLROOT=$(out)" ];
NIX_CFLAGS_COMPILE = "-Wno-error=deprecated-declarations";
postPatch = ''
patchShebangs .
sed -i -e '/unix:!macx:INSTALLROOT += \/usr/d' \

View File

@ -19,13 +19,13 @@
buildPythonApplication rec {
pname = "udiskie";
version = "2.3.2";
version = "2.3.3";
src = fetchFromGitHub {
owner = "coldfix";
repo = "udiskie";
rev = "v${version}";
hash = "sha256-eucAFMzLf2RfMfVgFTfPAgVNpDADddvTUZQO/XbBhGo=";
hash = "sha256-OeNAcL7jd8GiPVUGxWwX4N/G/jzxfyifaoSD/hXXwyM=";
};
nativeBuildInputs = [
@ -58,8 +58,8 @@ buildPythonApplication rec {
'';
checkInputs = [
nose
keyutils
nose
];
checkPhase = ''

View File

@ -89,6 +89,6 @@ mkChromiumDerivation (base: rec {
then ["aarch64-linux" "x86_64-linux"]
else [];
timeout = 172800; # 48 hours (increased from the Hydra default of 10h)
broken = elem channel [ "beta" "dev" ];
broken = elem channel [ "dev" ];
};
})

View File

@ -157,7 +157,12 @@ let
# To fix the build of chromiumBeta and chromiumDev:
"b5b80df7dafba8cafa4c6c0ba2153dfda467dfc9" # add dependency on opus in webcodecs
"1r4wmwaxz5xbffmj5wspv2xj8s32j9p6jnwimjmalqg3al2ba64x"
);
) ++ optional (versionRange "89" "90.0.4422.0") (fetchpatch {
url = "https://raw.githubusercontent.com/archlinux/svntogit-packages/61b0ab526d2aa3c62fa20bb756461ca9a482f6c6/trunk/chromium-fix-libva-redef.patch";
sha256 = "1qj4sn1ngz0p1l1w3346kanr1sqlr3xdzk1f1i86lqa45mhv77ny";
}) ++ optional (chromiumVersionAtLeast "90")
./fix-missing-atspi2-dependency.patch
;
postPatch = ''
# remove unused third-party

View File

@ -41,6 +41,7 @@ let
});
} // lib.optionalAttrs (lib.versionAtLeast upstream-info.version "90") {
llvmPackages = llvmPackages_12;
stdenv = llvmPackages_12.stdenv;
});
browser = callPackage ./browser.nix { inherit channel enableWideVine ungoogled; };

View File

@ -0,0 +1,26 @@
From 6c5b9197076f6f384112e6566039116c56600909 Mon Sep 17 00:00:00 2001
From: Michael Weiss <dev.primeos@gmail.com>
Date: Sat, 10 Apr 2021 13:53:50 +0200
Subject: [PATCH] Fix a missing atspi2 dependency
See https://bugs.chromium.org/p/chromium/issues/detail?id=1197837 for
more details.
---
content/public/browser/BUILD.gn | 1 +
1 file changed, 1 insertion(+)
diff --git a/content/public/browser/BUILD.gn b/content/public/browser/BUILD.gn
index 7e7c436d90c7..20ef832f1d8c 100644
--- a/content/public/browser/BUILD.gn
+++ b/content/public/browser/BUILD.gn
@@ -535,6 +535,7 @@ source_set("browser_sources") {
if (use_atk) {
sources += [ "ax_inspect_factory_auralinux.cc" ]
+ configs += [ "//build/config/linux/atspi2" ]
}
if (is_linux || is_chromeos) {
--
2.20.1

View File

@ -31,15 +31,15 @@
}
},
"dev": {
"version": "91.0.4464.5",
"sha256": "1djwlb74cgfc5ns7w2m10qcd2d2fz0i90k5szcfsm899c7x3zgyf",
"sha256bin64": "0kqr5mlbq23ahmyg67lh15j5sqa29wi301s8rvfgh0gxf10vgc2l",
"version": "91.0.4469.4",
"sha256": "08lffqjfcszniwwshililab553a0dvycaa72h1dklxvxf360nz5f",
"sha256bin64": "14xyzjwzcyp6idscq6i87yh2fibjamkz5xfsb2y0hrf2diaqijw1",
"deps": {
"gn": {
"version": "2021-03-30",
"version": "2021-04-06",
"url": "https://gn.googlesource.com/gn",
"rev": "5667cc61018864b17542e0baff8b790f245583b0",
"sha256": "0mr7jqk1r46ngrx4hrg8gxnzqxfxc1c9a966gpsjlgc00k390m5s"
"rev": "dba01723a441c358d843a575cb7720d54ddcdf92",
"sha256": "199xkks67qrn0xa5fhp24waq2vk8qb78a96cb3kdd8v1hgacgb8x"
}
}
},

View File

@ -115,8 +115,7 @@ let
};
}
) {} extensions;
} //
{
} // lib.optionalAttrs usesNixExtensions {
Extensions = {
Install = lib.foldr (e: ret:
ret ++ [ "${e.outPath}/${e.extid}.xpi" ]

View File

@ -14,13 +14,13 @@
stdenv.mkDerivation rec {
pname = "lagrange";
version = "1.3.0";
version = "1.3.2";
src = fetchFromGitHub {
owner = "skyjake";
repo = "lagrange";
rev = "v${version}";
sha256 = "sha256-85KshJEL7ri10mSm/KgcT03WLEwRMMTGczb6mGx66Jw=";
sha256 = "sha256-90MN7JH84h10dSXt5Kwc2V3FKVutQ7AmNcR4TK2bpBY=";
fetchSubmodules = true;
};

View File

@ -1,4 +1,4 @@
{ lib, fetchurl, fetchzip, python3
{ lib, fetchpatch, fetchurl, fetchzip, python3
, mkDerivationWith, wrapQtAppsHook, wrapGAppsHook, qtbase, glib-networking
, asciidoc, docbook_xml_dtd_45, docbook_xsl, libxml2
, libxslt, gst_all_1 ? null
@ -67,7 +67,15 @@ in mkDerivationWith python3Packages.buildPythonApplication rec {
++ lib.optional (pythonOlder "3.9") importlib-resources
);
patches = [ ./fix-restart.patch ];
patches = [
./fix-restart.patch
(fetchpatch {
name = "fix-version-parsing.patch";
url = "https://github.com/qutebrowser/qutebrowser/commit/c3d1b71c6f08607f47353f406aca0168bb3062a1.patch";
excludes = [ "doc/changelog.asciidoc" ];
sha256 = "1vm2yjvmrw4cyn8mpwfwvvcihn74f60ql3qh1rjj8n0wak8z1ir6";
})
];
dontWrapGApps = true;
dontWrapQtApps = true;

View File

@ -19,16 +19,16 @@ let
in
buildGoModule rec {
pname = "argo";
version = "2.12.10";
version = "3.0.0";
src = fetchFromGitHub {
owner = "argoproj";
repo = "argo";
rev = "v${version}";
sha256 = "sha256-A4s6D3/1FsqrJ+Jaql4IuyD9ySChL3SXqVvl8wUDRDE=";
sha256 = "sha256-TbNqwTVND09WzUH8ZH7YFRwcHV8eX1G0FXtZJi67Sk4=";
};
vendorSha256 = "sha256-4XPMixVNj6PUKobNLwpsOBT7Zs/7pkhDtQacLIB5EfE=";
vendorSha256 = "sha256-YjVAoMyGKMHLGEPeOOkCKCzeWFiUsXfJIKcw5GYoljg=";
doCheck = false;

View File

@ -1,27 +1,27 @@
{ lib, stdenv, fetchzip }:
let
inherit (stdenv.hostPlatform) system;
suffix = {
x86_64-linux = "Linux-64bit";
aarch64-linux = "Linux-arm64";
x86_64-darwin = "macOS-64bit";
}."${system}" or (throw "Unsupported system: ${system}");
baseurl = "https://github.com/vmware-tanzu/octant/releases/download";
fetchsrc = version: sha256: fetchzip {
url = "${baseurl}/v${version}/octant_${version}_${suffix}.tar.gz";
sha256 = sha256."${system}";
};
in
stdenv.mkDerivation rec {
pname = "octant";
version = "0.18.0";
version = "0.19.0";
src = fetchsrc version {
x86_64-linux = "sha256-D/pHOXR7XQoJCGqUep1lBAY4239HH35m+evFd21pcK0=";
aarch64-linux = "sha256-aL1axz3ebqrKQ3xK2UgDMQ+o6ZKgIvwy6Phici7WT2c=";
x86_64-darwin = "sha256-MFxOAAEnLur0LJJNU0SSlO+bH4f18zOfZNA49fKEQEw=";
};
src =
let
inherit (stdenv.hostPlatform) system;
suffix = {
x86_64-linux = "Linux-64bit";
aarch64-linux = "Linux-arm64";
x86_64-darwin = "macOS-64bit";
}.${system} or (throw "Unsupported system: ${system}");
fetchsrc = version: sha256: fetchzip {
url = "https://github.com/vmware-tanzu/octant/releases/download/v${version}/octant_${version}_${suffix}.tar.gz";
sha256 = sha256.${system};
};
in
fetchsrc version {
x86_64-linux = "sha256-TKvUBof4TLcHr9hg6AOLjVd1NcAX9HHVuuABdFKRNQA=";
aarch64-linux = "sha256-BJb7h6kJZ3QhdlEqNHkiFp91uYLXzYHvKftxEAhjY38=";
x86_64-darwin = "sha256-Ig98IqLmlN9D4iXrP9SXYwTrQOvbtQ/tQW+uEmntm+I=";
};
dontConfigure = true;
dontBuild = true;
@ -48,12 +48,14 @@ stdenv.mkDerivation rec {
meta = with lib; {
homepage = "https://octant.dev/";
changelog = "https://github.com/vmware-tanzu/octant/blob/v${version}/CHANGELOG.md";
description = "Highly extensible platform for developers to better understand the complexity of Kubernetes clusters.";
description = "Highly extensible platform for developers to better understand the complexity of Kubernetes clusters";
longDescription = ''
Octant is a tool for developers to understand how applications run on a Kubernetes cluster.
It aims to be part of the developer's toolkit for gaining insight and approaching complexity found in Kubernetes.
Octant offers a combination of introspective tooling, cluster navigation, and object management along with a
plugin system to further extend its capabilities.
Octant is a tool for developers to understand how applications run on a
Kubernetes cluster.
It aims to be part of the developer's toolkit for gaining insight and
approaching complexity found in Kubernetes. Octant offers a combination of
introspective tooling, cluster navigation, and object management along
with a plugin system to further extend its capabilities.
'';
license = licenses.asl20;
maintainers = with maintainers; [ jk ];

View File

@ -0,0 +1,78 @@
{ lib, stdenv, appimageTools, fetchurl, gsettings-desktop-schemas, gtk3, undmg }:
let
pname = "octant-desktop";
version = "0.19.0";
name = "${pname}-${version}";
inherit (stdenv.hostPlatform) system;
suffix = {
x86_64-linux = "AppImage";
x86_64-darwin = "dmg";
}.${system} or (throw "Unsupported system: ${system}");
src = fetchurl {
url = "https://github.com/vmware-tanzu/octant/releases/download/v${version}/Octant-${version}.${suffix}";
sha256 = {
x86_64-linux = "sha256-1XFb0zuyOy8XEUd9hoexItjq4assuWlWIzqw7pZxHx0=";
x86_64-darwin = "sha256-e3v5BFX7wnx4sAQrOq+dBIDVPJYzQZKKvKjSX+dis2U=";
}.${system};
};
linux = appimageTools.wrapType2 {
inherit name src passthru meta;
profile = ''
export LC_ALL=C.UTF-8
export XDG_DATA_DIRS=${gsettings-desktop-schemas}/share/gsettings-schemas/${gsettings-desktop-schemas.name}:${gtk3}/share/gsettings-schemas/${gtk3.name}:$XDG_DATA_DIRS
'';
multiPkgs = null; # no 32bit needed
extraPkgs = appimageTools.defaultFhsEnvArgs.multiPkgs;
extraInstallCommands =
let appimageContents = appimageTools.extractType2 { inherit name src; }; in
''
mv $out/bin/{${name},${pname}}
install -Dm444 ${appimageContents}/octant.desktop -t $out/share/applications
substituteInPlace $out/share/applications/octant.desktop \
--replace 'Exec=AppRun --no-sandbox' 'Exec=${pname}'
install -m 444 -D ${appimageContents}/octant.png \
$out/share/icons/hicolor/512x512/apps/octant.png
'';
};
darwin = stdenv.mkDerivation {
inherit name src passthru meta;
nativeBuildInputs = [ undmg ];
sourceRoot = "Octant.app";
installPhase = ''
mkdir -p $out/Applications/Octant.app
cp -R . $out/Applications/Octant.app
'';
};
passthru = { updateScript = ./update-desktop.sh; };
meta = with lib; {
homepage = "https://octant.dev/";
changelog = "https://github.com/vmware-tanzu/octant/blob/v${version}/CHANGELOG.md";
description = "Highly extensible platform for developers to better understand the complexity of Kubernetes clusters";
longDescription = ''
Octant is a tool for developers to understand how applications run on a
Kubernetes cluster.
It aims to be part of the developer's toolkit for gaining insight and
approaching complexity found in Kubernetes. Octant offers a combination of
introspective tooling, cluster navigation, and object management along
with a plugin system to further extend its capabilities.
'';
license = licenses.asl20;
maintainers = with maintainers; [ jk ];
platforms = [ "x86_64-linux" "x86_64-darwin" ];
};
in
if stdenv.isDarwin
then darwin
else linux

View File

@ -0,0 +1,36 @@
#!/usr/bin/env nix-shell
#!nix-shell -i bash -p curl gnused gawk nix-prefetch
set -euo pipefail
ROOT="$(dirname "$(readlink -f "$0")")"
NIX_DRV="$ROOT/desktop.nix"
if [ ! -f "$NIX_DRV" ]; then
echo "ERROR: cannot find desktop.nix in $ROOT"
exit 1
fi
fetch_arch() {
VER="$1"; SUFFIX="$2"
URL="https://github.com/vmware-tanzu/octant/releases/download/v${VER}/Octant-${VER}.${SUFFIX}"
nix-prefetch "{ stdenv, fetchurl }:
stdenv.mkDerivation rec {
pname = \"octant-desktop\"; version = \"${VER}\";
src = fetchurl { url = \"$URL\"; };
}
"
}
replace_sha() {
sed -i "s#$1 = \"sha256-.\{44\}\"#$1 = \"$2\"#" "$NIX_DRV"
}
OCTANT_VER=$(curl -Ls -w "%{url_effective}" -o /dev/null https://github.com/vmware-tanzu/octant/releases/latest | awk -F'/' '{print $NF}' | sed 's/v//')
OCTANT_DESKTOP_LINUX_X64_SHA256=$(fetch_arch "$OCTANT_VER" "AppImage")
OCTANT_DESKTOP_DARWIN_X64_SHA256=$(fetch_arch "$OCTANT_VER" "dmg")
sed -i "s/version = \".*\"/version = \"$OCTANT_VER\"/" "$NIX_DRV"
replace_sha "x86_64-linux" "$OCTANT_DESKTOP_LINUX_X64_SHA256"
replace_sha "x86_64-darwin" "$OCTANT_DESKTOP_DARWIN_X64_SHA256"

View File

@ -28,11 +28,11 @@ replace_sha() {
OCTANT_VER=$(curl -Ls -w "%{url_effective}" -o /dev/null https://github.com/vmware-tanzu/octant/releases/latest | awk -F'/' '{print $NF}' | sed 's/v//')
OCTANT_LINUX_X64_SHA256=$(fetch_arch "$OCTANT_VER" "Linux-64bit")
OCTANT_DARWIN_X64_SHA256=$(fetch_arch "$OCTANT_VER" "Linux-arm64")
OCTANT_LINUX_AARCH64_SHA256=$(fetch_arch "$OCTANT_VER" "macOS-64bit")
OCTANT_LINUX_AARCH64_SHA256=$(fetch_arch "$OCTANT_VER" "Linux-arm64")
OCTANT_DARWIN_X64_SHA256=$(fetch_arch "$OCTANT_VER" "macOS-64bit")
sed -i "s/version = \".*\"/version = \"$OCTANT_VER\"/" "$NIX_DRV"
replace_sha "x86_64-linux" "$OCTANT_LINUX_X64_SHA256"
replace_sha "x86_64-darwin" "$OCTANT_LINUX_AARCH64_SHA256"
replace_sha "aarch64-linux" "$OCTANT_DARWIN_X64_SHA256"
replace_sha "aarch64-linux" "$OCTANT_LINUX_AARCH64_SHA256"
replace_sha "x86_64-darwin" "$OCTANT_DARWIN_X64_SHA256"

View File

@ -2,17 +2,17 @@
buildGoModule rec {
pname = "waypoint";
version = "0.2.4";
version = "0.3.0";
src = fetchFromGitHub {
owner = "hashicorp";
repo = pname;
rev = "v${version}";
sha256 = "sha256-6sV2e/m0qVSRWgdvVZ9VxEL/J57nTcTClxHF5X8/8PQ=";
sha256 = "sha256-lB9ELa/okNvtKFDP/vImEdYFJCKRgtAcpBG1kIoAysE=";
};
deleteVendor = true;
vendorSha256 = "sha256-NPE3YHulqllWDGrxQgPmy/KKE7xFPOUorLQNIU8cP50=";
vendorSha256 = "sha256-VxKUYD92DssoSjWxR+1gZLq34vCVM/4U2ju5felLWzI=";
nativeBuildInputs = [ go-bindata ];
@ -36,7 +36,7 @@ buildGoModule rec {
export HOME="$TMPDIR"
$out/bin/waypoint --help
$out/bin/waypoint version # | grep "Waypoint v${version}"
$out/bin/waypoint version | grep "Waypoint v${version}"
runHook postInstallCheck
'';

View File

@ -1,31 +0,0 @@
{ lib, stdenv, fetchgit, openssl, curl, coreutils, gawk, bash, which }:
stdenv.mkDerivation {
name = "esniper-2.35.0-21-g6379846";
src = fetchgit {
url = "https://git.code.sf.net/p/esniper/git";
rev = "637984623984ef36782d52d8968df7fae7bbb0a7";
sha256 = "1md3fzs0k88f6mgvrj1yrh96mn0qlca2p6vfqj6dnpyb8pjjwp8w";
};
buildInputs = [ openssl curl ];
# Add support for CURL_CA_BUNDLE variable.
# Fix <https://sourceforge.net/p/esniper/bugs/648/>.
patches = [ ./find-ca-bundle.patch ];
postInstall = ''
sed <"frontends/snipe" >"$out/bin/snipe" \
-e "2i export PATH=\"$out/bin:${lib.makeBinPath [ coreutils gawk bash which ]}:\$PATH\""
chmod 555 "$out/bin/snipe"
'';
meta = with lib; {
description = "Simple, lightweight tool for sniping eBay auctions";
homepage = "http://esniper.sourceforge.net";
license = licenses.gpl2;
maintainers = with maintainers; [ lovek323 peti ];
platforms = platforms.all;
};
}

View File

@ -1,26 +0,0 @@
diff -ubr '--exclude=*.o' esniper-2-27-0-orig/http.c esniper-2-27-0-patched/http.c
--- esniper-2-27-0-orig/http.c 2012-02-06 22:04:06.000000000 +0100
+++ esniper-2-27-0-patched/http.c 2012-07-27 10:54:20.893054646 +0200
@@ -200,6 +200,9 @@
int
initCurlStuff(void)
{
+ /* Path to OpenSSL bundle file. */
+ const char *ssl_capath=NULL;
+
/* list for custom headers */
struct curl_slist *slist=NULL;
@@ -241,6 +244,12 @@
if ((curlrc = curl_easy_setopt(easyhandle, CURLOPT_COOKIEFILE, "")))
return initCurlStuffFailed();
+ /* If the environment variable CURL_CA_BUNDLE is set, pass through its
+ * contents to curl. */
+ if ((ssl_capath = getenv("CURL_CA_BUNDLE")))
+ if ((curlrc = curl_easy_setopt(easyhandle, CURLOPT_CAINFO, ssl_capath)))
+ return initCurlStuffFailed();
+
slist = curl_slist_append(slist, "Accept: text/*");
slist = curl_slist_append(slist, "Accept-Language: en");
slist = curl_slist_append(slist, "Accept-Charset: iso-8859-1,*,utf-8");

View File

@ -2,13 +2,13 @@
stdenv.mkDerivation rec {
pname = "rssguard";
version = "3.9.0";
version = "3.9.1";
src = fetchFromGitHub {
owner = "martinrotter";
repo = pname;
rev = version;
sha256 = "sha256-pprWJIYAFYSTPhWVCW4dz3GWeAS53Vo8UXiyQ56Mwjo=";
sha256 = "sha256-zSnSCbBNySc5GQSm0O8NztCKNqdNs6bGNWL/RkmGsUw=";
};
buildInputs = [ qtwebengine qttools ];

View File

@ -2,7 +2,7 @@
"name": "element-desktop",
"productName": "Element",
"main": "src/electron-main.js",
"version": "1.7.24",
"version": "1.7.25",
"description": "A feature-rich client for Matrix.org",
"author": "Element",
"repository": {
@ -39,8 +39,8 @@
},
"devDependencies": {
"asar": "^2.0.1",
"electron-builder": "22.9.1",
"electron-builder-squirrel-windows": "22.9.1",
"electron-builder": "22.10.5",
"electron-builder-squirrel-windows": "22.10.5",
"electron-devtools-installer": "^3.1.1",
"electron-notarize": "^1.0.0",
"eslint": "7.3.1",
@ -62,7 +62,7 @@
},
"build": {
"appId": "im.riot.app",
"electronVersion": "11.2.3",
"electronVersion": "12.0.2",
"files": [
"package.json",
{

View File

@ -9,6 +9,14 @@
sha1 = "bc5b5532ecafd923a61f2fb097e3b108c0106a3f";
};
}
{
name = "7zip_bin___7zip_bin_5.1.1.tgz";
path = fetchurl {
name = "7zip_bin___7zip_bin_5.1.1.tgz";
url = "https://registry.yarnpkg.com/7zip-bin/-/7zip-bin-5.1.1.tgz";
sha1 = "9274ec7460652f9c632c59addf24efb1684ef876";
};
}
{
name = "_babel_code_frame___code_frame_7.5.5.tgz";
path = fetchurl {
@ -129,6 +137,14 @@
sha1 = "3ece22c5838402419a6e0425f85742b961d9b6c6";
};
}
{
name = "_electron_universal___universal_1.0.4.tgz";
path = fetchurl {
name = "_electron_universal___universal_1.0.4.tgz";
url = "https://registry.yarnpkg.com/@electron/universal/-/universal-1.0.4.tgz";
sha1 = "231ac246c39d45b80e159bd21c3f9027dcaa10f5";
};
}
{
name = "_iarna_cli___cli_1.2.0.tgz";
path = fetchurl {
@ -385,6 +401,14 @@
sha1 = "2f51e6f14ff8307c4aa83d5e1a277da14a9fe3f7";
};
}
{
name = "_malept_cross_spawn_promise___cross_spawn_promise_1.1.1.tgz";
path = fetchurl {
name = "_malept_cross_spawn_promise___cross_spawn_promise_1.1.1.tgz";
url = "https://registry.yarnpkg.com/@malept/cross-spawn-promise/-/cross-spawn-promise-1.1.1.tgz";
sha1 = "504af200af6b98e198bce768bc1730c6936ae01d";
};
}
{
name = "_sindresorhus_is___is_0.14.0.tgz";
path = fetchurl {
@ -426,11 +450,19 @@
};
}
{
name = "_types_fs_extra___fs_extra_9.0.1.tgz";
name = "_types_fs_extra___fs_extra_9.0.9.tgz";
path = fetchurl {
name = "_types_fs_extra___fs_extra_9.0.1.tgz";
url = "https://registry.yarnpkg.com/@types/fs-extra/-/fs-extra-9.0.1.tgz";
sha1 = "91c8fc4c51f6d5dbe44c2ca9ab09310bd00c7918";
name = "_types_fs_extra___fs_extra_9.0.9.tgz";
url = "https://registry.yarnpkg.com/@types/fs-extra/-/fs-extra-9.0.9.tgz";
sha1 = "11ed43b3f3c6b3490f1ef9bd17f58da896e2d861";
};
}
{
name = "_types_glob___glob_7.1.3.tgz";
path = fetchurl {
name = "_types_glob___glob_7.1.3.tgz";
url = "https://registry.yarnpkg.com/@types/glob/-/glob-7.1.3.tgz";
sha1 = "e6ba80f36b7daad2c685acd9266382e68985c183";
};
}
{
@ -449,6 +481,14 @@
sha1 = "ee28707ae94e11d2b827bcbe5270bcea7f3e71ee";
};
}
{
name = "_types_minimatch___minimatch_3.0.4.tgz";
path = fetchurl {
name = "_types_minimatch___minimatch_3.0.4.tgz";
url = "https://registry.yarnpkg.com/@types/minimatch/-/minimatch-3.0.4.tgz";
sha1 = "f0ec25dbf2f0e4b18647313ac031134ca5b24b21";
};
}
{
name = "_types_node___node_13.7.1.tgz";
path = fetchurl {
@ -465,6 +505,22 @@
sha1 = "d934aacc22424fe9622ebf6857370c052eae464e";
};
}
{
name = "_types_plist___plist_3.0.2.tgz";
path = fetchurl {
name = "_types_plist___plist_3.0.2.tgz";
url = "https://registry.yarnpkg.com/@types/plist/-/plist-3.0.2.tgz";
sha1 = "61b3727bba0f5c462fe333542534a0c3e19ccb01";
};
}
{
name = "_types_verror___verror_1.10.4.tgz";
path = fetchurl {
name = "_types_verror___verror_1.10.4.tgz";
url = "https://registry.yarnpkg.com/@types/verror/-/verror-1.10.4.tgz";
sha1 = "805c0612b3a0c124cf99f517364142946b74ba3b";
};
}
{
name = "_types_yargs_parser___yargs_parser_15.0.0.tgz";
path = fetchurl {
@ -474,11 +530,11 @@
};
}
{
name = "_types_yargs___yargs_15.0.5.tgz";
name = "_types_yargs___yargs_15.0.13.tgz";
path = fetchurl {
name = "_types_yargs___yargs_15.0.5.tgz";
url = "https://registry.yarnpkg.com/@types/yargs/-/yargs-15.0.5.tgz";
sha1 = "947e9a6561483bdee9adffc983e91a6902af8b79";
name = "_types_yargs___yargs_15.0.13.tgz";
url = "https://registry.yarnpkg.com/@types/yargs/-/yargs-15.0.13.tgz";
sha1 = "34f7fec8b389d7f3c1fd08026a5763e072d3c6dc";
};
}
{
@ -738,19 +794,19 @@
};
}
{
name = "app_builder_bin___app_builder_bin_3.5.10.tgz";
name = "app_builder_bin___app_builder_bin_3.5.12.tgz";
path = fetchurl {
name = "app_builder_bin___app_builder_bin_3.5.10.tgz";
url = "https://registry.yarnpkg.com/app-builder-bin/-/app-builder-bin-3.5.10.tgz";
sha1 = "4a7f9999fccc0c435b6284ae1366bc76a17c4a7d";
name = "app_builder_bin___app_builder_bin_3.5.12.tgz";
url = "https://registry.yarnpkg.com/app-builder-bin/-/app-builder-bin-3.5.12.tgz";
sha1 = "bbe174972cc1f481f73d6d92ad47a8b4c7eb4530";
};
}
{
name = "app_builder_lib___app_builder_lib_22.9.1.tgz";
name = "app_builder_lib___app_builder_lib_22.10.5.tgz";
path = fetchurl {
name = "app_builder_lib___app_builder_lib_22.9.1.tgz";
url = "https://registry.yarnpkg.com/app-builder-lib/-/app-builder-lib-22.9.1.tgz";
sha1 = "ccb8f1a02b628514a5dfab9401fa2a976689415c";
name = "app_builder_lib___app_builder_lib_22.10.5.tgz";
url = "https://registry.yarnpkg.com/app-builder-lib/-/app-builder-lib-22.10.5.tgz";
sha1 = "24a88581c891e5b187a0d569aa44e7c4a0dc8de2";
};
}
{
@ -786,11 +842,11 @@
};
}
{
name = "archiver___archiver_5.2.0.tgz";
name = "archiver___archiver_5.3.0.tgz";
path = fetchurl {
name = "archiver___archiver_5.2.0.tgz";
url = "https://registry.yarnpkg.com/archiver/-/archiver-5.2.0.tgz";
sha1 = "25aa1b3d9febf7aec5b0f296e77e69960c26db94";
name = "archiver___archiver_5.3.0.tgz";
url = "https://registry.yarnpkg.com/archiver/-/archiver-5.3.0.tgz";
sha1 = "dd3e097624481741df626267564f7dd8640a45ba";
};
}
{
@ -817,6 +873,14 @@
sha1 = "bcd6791ea5ae09725e17e5ad988134cd40b3d911";
};
}
{
name = "argparse___argparse_2.0.1.tgz";
path = fetchurl {
name = "argparse___argparse_2.0.1.tgz";
url = "https://registry.yarnpkg.com/argparse/-/argparse-2.0.1.tgz";
sha1 = "246f50f3ca78a3240f6c997e8a9bd1eac49e4b38";
};
}
{
name = "array_includes___array_includes_3.1.1.tgz";
path = fetchurl {
@ -857,6 +921,14 @@
sha1 = "8518a1c62c238109c15a5f742213e83a09b9fd38";
};
}
{
name = "asar___asar_3.0.3.tgz";
path = fetchurl {
name = "asar___asar_3.0.3.tgz";
url = "https://registry.yarnpkg.com/asar/-/asar-3.0.3.tgz";
sha1 = "1fef03c2d6d2de0cbad138788e4f7ae03b129c7b";
};
}
{
name = "asn1___asn1_0.2.4.tgz";
path = fetchurl {
@ -977,6 +1049,14 @@
sha1 = "58ece8cb75dd07e71ed08c736abc5fac4dbf8df1";
};
}
{
name = "base64_js___base64_js_1.5.1.tgz";
path = fetchurl {
name = "base64_js___base64_js_1.5.1.tgz";
url = "https://registry.yarnpkg.com/base64-js/-/base64-js-1.5.1.tgz";
sha1 = "1b1b440160a5bf7ad40b650f095963481903930a";
};
}
{
name = "bcrypt_pbkdf___bcrypt_pbkdf_1.0.2.tgz";
path = fetchurl {
@ -1001,6 +1081,14 @@
sha1 = "bd39aadab5dc4bdac222a07df5baf1af745b2228";
};
}
{
name = "binaryextensions___binaryextensions_4.15.0.tgz";
path = fetchurl {
name = "binaryextensions___binaryextensions_4.15.0.tgz";
url = "https://registry.yarnpkg.com/binaryextensions/-/binaryextensions-4.15.0.tgz";
sha1 = "c63a502e0078ff1b0e9b00a9f74d3c2b0f8bd32e";
};
}
{
name = "bl___bl_4.0.3.tgz";
path = fetchurl {
@ -1042,11 +1130,11 @@
};
}
{
name = "boxen___boxen_4.2.0.tgz";
name = "boxen___boxen_5.0.0.tgz";
path = fetchurl {
name = "boxen___boxen_4.2.0.tgz";
url = "https://registry.yarnpkg.com/boxen/-/boxen-4.2.0.tgz";
sha1 = "e411b62357d6d6d36587c8ac3d5d974daa070e64";
name = "boxen___boxen_5.0.0.tgz";
url = "https://registry.yarnpkg.com/boxen/-/boxen-5.0.0.tgz";
sha1 = "64fe9b16066af815f51057adcc800c3730120854";
};
}
{
@ -1073,6 +1161,14 @@
sha1 = "91bc74b11ea405bc916bc6aa908faafa5b4aac4b";
};
}
{
name = "buffer_equal___buffer_equal_1.0.0.tgz";
path = fetchurl {
name = "buffer_equal___buffer_equal_1.0.0.tgz";
url = "https://registry.yarnpkg.com/buffer-equal/-/buffer-equal-1.0.0.tgz";
sha1 = "59616b498304d556abd466966b22eeda3eca5fbe";
};
}
{
name = "buffer_from___buffer_from_1.1.1.tgz";
path = fetchurl {
@ -1081,6 +1177,14 @@
sha1 = "32713bc028f75c02fdb710d7c7bcec1f2c6070ef";
};
}
{
name = "buffer___buffer_5.7.1.tgz";
path = fetchurl {
name = "buffer___buffer_5.7.1.tgz";
url = "https://registry.yarnpkg.com/buffer/-/buffer-5.7.1.tgz";
sha1 = "ba62e7c13133053582197160851a8f648e99eed0";
};
}
{
name = "buffer___buffer_5.6.0.tgz";
path = fetchurl {
@ -1090,19 +1194,19 @@
};
}
{
name = "builder_util_runtime___builder_util_runtime_8.7.2.tgz";
name = "builder_util_runtime___builder_util_runtime_8.7.3.tgz";
path = fetchurl {
name = "builder_util_runtime___builder_util_runtime_8.7.2.tgz";
url = "https://registry.yarnpkg.com/builder-util-runtime/-/builder-util-runtime-8.7.2.tgz";
sha1 = "d93afc71428a12789b437e13850e1fa7da956d72";
name = "builder_util_runtime___builder_util_runtime_8.7.3.tgz";
url = "https://registry.yarnpkg.com/builder-util-runtime/-/builder-util-runtime-8.7.3.tgz";
sha1 = "0aaafa52d25295c939496f62231ca9ff06c30e40";
};
}
{
name = "builder_util___builder_util_22.9.1.tgz";
name = "builder_util___builder_util_22.10.5.tgz";
path = fetchurl {
name = "builder_util___builder_util_22.9.1.tgz";
url = "https://registry.yarnpkg.com/builder-util/-/builder-util-22.9.1.tgz";
sha1 = "b7087a5cde477f90d718ca5d7fafb6ae261b16af";
name = "builder_util___builder_util_22.10.5.tgz";
url = "https://registry.yarnpkg.com/builder-util/-/builder-util-22.10.5.tgz";
sha1 = "8d0b04a3be6acc74938679aa90dcb3181b1ae86b";
};
}
{
@ -1177,6 +1281,14 @@
sha1 = "e3c9b31569e106811df242f715725a1f4c494320";
};
}
{
name = "camelcase___camelcase_6.2.0.tgz";
path = fetchurl {
name = "camelcase___camelcase_6.2.0.tgz";
url = "https://registry.yarnpkg.com/camelcase/-/camelcase-6.2.0.tgz";
sha1 = "924af881c9d525ac9d87f40d964e5cea982a1809";
};
}
{
name = "capture_stack_trace___capture_stack_trace_1.0.1.tgz";
path = fetchurl {
@ -1201,14 +1313,6 @@
sha1 = "cd42541677a54333cf541a49108c1432b44c9424";
};
}
{
name = "chalk___chalk_3.0.0.tgz";
path = fetchurl {
name = "chalk___chalk_3.0.0.tgz";
url = "https://registry.yarnpkg.com/chalk/-/chalk-3.0.0.tgz";
sha1 = "3f73c2bf526591f574cc492c51e2456349f844e4";
};
}
{
name = "chalk___chalk_4.1.0.tgz";
path = fetchurl {
@ -1282,11 +1386,11 @@
};
}
{
name = "cli_boxes___cli_boxes_2.2.0.tgz";
name = "cli_boxes___cli_boxes_2.2.1.tgz";
path = fetchurl {
name = "cli_boxes___cli_boxes_2.2.0.tgz";
url = "https://registry.yarnpkg.com/cli-boxes/-/cli-boxes-2.2.0.tgz";
sha1 = "538ecae8f9c6ca508e3c3c95b453fe93cb4c168d";
name = "cli_boxes___cli_boxes_2.2.1.tgz";
url = "https://registry.yarnpkg.com/cli-boxes/-/cli-boxes-2.2.1.tgz";
sha1 = "ddd5035d25094fce220e9cab40a45840a440318f";
};
}
{
@ -1313,6 +1417,14 @@
sha1 = "0252372d94dfc40dbd8df06005f48f31f656f202";
};
}
{
name = "cli_truncate___cli_truncate_1.1.0.tgz";
path = fetchurl {
name = "cli_truncate___cli_truncate_1.1.0.tgz";
url = "https://registry.yarnpkg.com/cli-truncate/-/cli-truncate-1.1.0.tgz";
sha1 = "2b2dfd83c53cfd3572b87fc4d430a808afb04086";
};
}
{
name = "cli_width___cli_width_3.0.0.tgz";
path = fetchurl {
@ -1409,6 +1521,14 @@
sha1 = "c2a09a87acbde69543de6f63fa3995c826c536a2";
};
}
{
name = "colors___colors_1.0.3.tgz";
path = fetchurl {
name = "colors___colors_1.0.3.tgz";
url = "https://registry.yarnpkg.com/colors/-/colors-1.0.3.tgz";
sha1 = "0433f44d809680fdeb60ed260f1b0c262e82a40b";
};
}
{
name = "colors___colors_1.4.0.tgz";
path = fetchurl {
@ -1433,6 +1553,14 @@
sha1 = "c3d45a8b34fd730631a110a8a2520682b31d5a7f";
};
}
{
name = "commander___commander_2.9.0.tgz";
path = fetchurl {
name = "commander___commander_2.9.0.tgz";
url = "https://registry.yarnpkg.com/commander/-/commander-2.9.0.tgz";
sha1 = "9c99094176e12240cb22d6c5146098400fe0f7d4";
};
}
{
name = "commander___commander_2.20.3.tgz";
path = fetchurl {
@ -1442,11 +1570,19 @@
};
}
{
name = "compress_commons___compress_commons_4.0.2.tgz";
name = "commander___commander_5.1.0.tgz";
path = fetchurl {
name = "compress_commons___compress_commons_4.0.2.tgz";
url = "https://registry.yarnpkg.com/compress-commons/-/compress-commons-4.0.2.tgz";
sha1 = "d6896be386e52f37610cef9e6fa5defc58c31bd7";
name = "commander___commander_5.1.0.tgz";
url = "https://registry.yarnpkg.com/commander/-/commander-5.1.0.tgz";
sha1 = "46abbd1652f8e059bddaef99bbdcb2ad9cf179ae";
};
}
{
name = "compress_commons___compress_commons_4.1.0.tgz";
path = fetchurl {
name = "compress_commons___compress_commons_4.1.0.tgz";
url = "https://registry.yarnpkg.com/compress-commons/-/compress-commons-4.1.0.tgz";
sha1 = "25ec7a4528852ccd1d441a7d4353cd0ece11371b";
};
}
{
@ -1545,6 +1681,14 @@
sha1 = "0f047d74041737f8a55e86837a1b826bd8ab0067";
};
}
{
name = "crc___crc_3.8.0.tgz";
path = fetchurl {
name = "crc___crc_3.8.0.tgz";
url = "https://registry.yarnpkg.com/crc/-/crc-3.8.0.tgz";
sha1 = "ad60269c2c856f8c299e2c4cc0de4556914056c6";
};
}
{
name = "create_error_class___create_error_class_3.0.2.tgz";
path = fetchurl {
@ -1665,6 +1809,14 @@
sha1 = "f0d229c505e0c6d8c49ac553d1b13dc183f6b2ee";
};
}
{
name = "debug___debug_4.3.2.tgz";
path = fetchurl {
name = "debug___debug_4.3.2.tgz";
url = "https://registry.yarnpkg.com/debug/-/debug-4.3.2.tgz";
sha1 = "f0a49c18ac8779e31d4a0c6029dfb76873c7428b";
};
}
{
name = "debuglog___debuglog_1.0.1.tgz";
path = fetchurl {
@ -1786,11 +1938,27 @@
};
}
{
name = "dmg_builder___dmg_builder_22.9.1.tgz";
name = "dir_compare___dir_compare_2.4.0.tgz";
path = fetchurl {
name = "dmg_builder___dmg_builder_22.9.1.tgz";
url = "https://registry.yarnpkg.com/dmg-builder/-/dmg-builder-22.9.1.tgz";
sha1 = "64647224f37ee47fc9bd01947c21cc010a30511f";
name = "dir_compare___dir_compare_2.4.0.tgz";
url = "https://registry.yarnpkg.com/dir-compare/-/dir-compare-2.4.0.tgz";
sha1 = "785c41dc5f645b34343a4eafc50b79bac7f11631";
};
}
{
name = "dmg_builder___dmg_builder_22.10.5.tgz";
path = fetchurl {
name = "dmg_builder___dmg_builder_22.10.5.tgz";
url = "https://registry.yarnpkg.com/dmg-builder/-/dmg-builder-22.10.5.tgz";
sha1 = "65a33c106ead5a350c7de8997c546559bd6e0e7c";
};
}
{
name = "dmg_license___dmg_license_1.0.8.tgz";
path = fetchurl {
name = "dmg_license___dmg_license_1.0.8.tgz";
url = "https://registry.yarnpkg.com/dmg-license/-/dmg-license-1.0.8.tgz";
sha1 = "d52e234815f1a07a59706e5f2a2fea71991cf784";
};
}
{
@ -1889,6 +2057,14 @@
sha1 = "3a83a904e54353287874c564b7549386849a98c9";
};
}
{
name = "editions___editions_6.1.0.tgz";
path = fetchurl {
name = "editions___editions_6.1.0.tgz";
url = "https://registry.yarnpkg.com/editions/-/editions-6.1.0.tgz";
sha1 = "ba6c6cf9f4bb571d9e53ea34e771a602e5a66549";
};
}
{
name = "editor___editor_1.0.0.tgz";
path = fetchurl {
@ -1898,27 +2074,27 @@
};
}
{
name = "ejs___ejs_3.1.5.tgz";
name = "ejs___ejs_3.1.6.tgz";
path = fetchurl {
name = "ejs___ejs_3.1.5.tgz";
url = "https://registry.yarnpkg.com/ejs/-/ejs-3.1.5.tgz";
sha1 = "aed723844dc20acb4b170cd9ab1017e476a0d93b";
name = "ejs___ejs_3.1.6.tgz";
url = "https://registry.yarnpkg.com/ejs/-/ejs-3.1.6.tgz";
sha1 = "5bfd0a0689743bb5268b3550cceeebbc1702822a";
};
}
{
name = "electron_builder_squirrel_windows___electron_builder_squirrel_windows_22.9.1.tgz";
name = "electron_builder_squirrel_windows___electron_builder_squirrel_windows_22.10.5.tgz";
path = fetchurl {
name = "electron_builder_squirrel_windows___electron_builder_squirrel_windows_22.9.1.tgz";
url = "https://registry.yarnpkg.com/electron-builder-squirrel-windows/-/electron-builder-squirrel-windows-22.9.1.tgz";
sha1 = "d9ad65a8f5abd1011ac1dbd01492623fb5466a32";
name = "electron_builder_squirrel_windows___electron_builder_squirrel_windows_22.10.5.tgz";
url = "https://registry.yarnpkg.com/electron-builder-squirrel-windows/-/electron-builder-squirrel-windows-22.10.5.tgz";
sha1 = "83d3bf498110341a522cc5263fb4474ae6e05caf";
};
}
{
name = "electron_builder___electron_builder_22.9.1.tgz";
name = "electron_builder___electron_builder_22.10.5.tgz";
path = fetchurl {
name = "electron_builder___electron_builder_22.9.1.tgz";
url = "https://registry.yarnpkg.com/electron-builder/-/electron-builder-22.9.1.tgz";
sha1 = "a2962db6f2757bc01d02489f38fafe0809f68f60";
name = "electron_builder___electron_builder_22.10.5.tgz";
url = "https://registry.yarnpkg.com/electron-builder/-/electron-builder-22.10.5.tgz";
sha1 = "03b156b93e6012609027c3aaa69201a3ad21e454";
};
}
{
@ -1938,11 +2114,11 @@
};
}
{
name = "electron_publish___electron_publish_22.9.1.tgz";
name = "electron_publish___electron_publish_22.10.5.tgz";
path = fetchurl {
name = "electron_publish___electron_publish_22.9.1.tgz";
url = "https://registry.yarnpkg.com/electron-publish/-/electron-publish-22.9.1.tgz";
sha1 = "7cc76ac4cc53efd29ee31c1e5facb9724329068e";
name = "electron_publish___electron_publish_22.10.5.tgz";
url = "https://registry.yarnpkg.com/electron-publish/-/electron-publish-22.10.5.tgz";
sha1 = "9cbe46266b6c79d8c6e99840755682e2262d3543";
};
}
{
@ -2017,6 +2193,14 @@
sha1 = "06e0116d3028f6aef4806849eb0ea6a748ae6960";
};
}
{
name = "errlop___errlop_4.1.0.tgz";
path = fetchurl {
name = "errlop___errlop_4.1.0.tgz";
url = "https://registry.yarnpkg.com/errlop/-/errlop-4.1.0.tgz";
sha1 = "8e7b8f4f1bf0a6feafce4d14f0c0cf4bf5ef036b";
};
}
{
name = "errno___errno_0.1.7.tgz";
path = fetchurl {
@ -2569,6 +2753,14 @@
sha1 = "910da0062437ba4c39fedd863f1675ccfefcb9fc";
};
}
{
name = "fs_extra___fs_extra_9.1.0.tgz";
path = fetchurl {
name = "fs_extra___fs_extra_9.1.0.tgz";
url = "https://registry.yarnpkg.com/fs-extra/-/fs-extra-9.1.0.tgz";
sha1 = "5954460c764a8da2094ba3554bf839e6b9a7c86d";
};
}
{
name = "fs_minipass___fs_minipass_1.2.7.tgz";
path = fetchurl {
@ -2738,11 +2930,11 @@
};
}
{
name = "global_dirs___global_dirs_2.0.1.tgz";
name = "global_dirs___global_dirs_3.0.0.tgz";
path = fetchurl {
name = "global_dirs___global_dirs_2.0.1.tgz";
url = "https://registry.yarnpkg.com/global-dirs/-/global-dirs-2.0.1.tgz";
sha1 = "acdf3bb6685bcd55cb35e8a052266569e9469201";
name = "global_dirs___global_dirs_3.0.0.tgz";
url = "https://registry.yarnpkg.com/global-dirs/-/global-dirs-3.0.0.tgz";
sha1 = "70a76fe84ea315ab37b1f5576cbde7d48ef72686";
};
}
{
@ -2801,6 +2993,14 @@
sha1 = "2256bde14d3632958c465ebc96dc467ca07a29fb";
};
}
{
name = "graceful_readlink___graceful_readlink_1.0.1.tgz";
path = fetchurl {
name = "graceful_readlink___graceful_readlink_1.0.1.tgz";
url = "https://registry.yarnpkg.com/graceful-readlink/-/graceful-readlink-1.0.1.tgz";
sha1 = "4cafad76bc62f02fa039b2f94e9a3dd3a391a725";
};
}
{
name = "har_schema___har_schema_2.0.0.tgz";
path = fetchurl {
@ -2890,11 +3090,19 @@
};
}
{
name = "hosted_git_info___hosted_git_info_3.0.7.tgz";
name = "hosted_git_info___hosted_git_info_3.0.8.tgz";
path = fetchurl {
name = "hosted_git_info___hosted_git_info_3.0.7.tgz";
url = "https://registry.yarnpkg.com/hosted-git-info/-/hosted-git-info-3.0.7.tgz";
sha1 = "a30727385ea85acfcee94e0aad9e368c792e036c";
name = "hosted_git_info___hosted_git_info_3.0.8.tgz";
url = "https://registry.yarnpkg.com/hosted-git-info/-/hosted-git-info-3.0.8.tgz";
sha1 = "6e35d4cc87af2c5f816e4cb9ce350ba87a3f370d";
};
}
{
name = "hosted_git_info___hosted_git_info_4.0.2.tgz";
path = fetchurl {
name = "hosted_git_info___hosted_git_info_4.0.2.tgz";
url = "https://registry.yarnpkg.com/hosted-git-info/-/hosted-git-info-4.0.2.tgz";
sha1 = "5e425507eede4fea846b7262f0838456c4209961";
};
}
{
@ -2945,6 +3153,14 @@
sha1 = "c46e3159a293f6b896da29316d8b6fe8bb79bbed";
};
}
{
name = "iconv_corefoundation___iconv_corefoundation_1.1.5.tgz";
path = fetchurl {
name = "iconv_corefoundation___iconv_corefoundation_1.1.5.tgz";
url = "https://registry.yarnpkg.com/iconv-corefoundation/-/iconv-corefoundation-1.1.5.tgz";
sha1 = "90596d444a579aeb109f5ca113f6bb665a41be2b";
};
}
{
name = "iconv_lite___iconv_lite_0.4.24.tgz";
path = fetchurl {
@ -2961,6 +3177,14 @@
sha1 = "ce13d1875b0c3a674bd6a04b7f76b01b1b6ded01";
};
}
{
name = "ieee754___ieee754_1.2.1.tgz";
path = fetchurl {
name = "ieee754___ieee754_1.2.1.tgz";
url = "https://registry.yarnpkg.com/ieee754/-/ieee754-1.2.1.tgz";
sha1 = "8eb7a10a63fff25d15a57b001586d177d1b0d352";
};
}
{
name = "ieee754___ieee754_1.1.13.tgz";
path = fetchurl {
@ -3065,6 +3289,14 @@
sha1 = "0fa2c64f932917c3433a0ded55363aae37416b7c";
};
}
{
name = "ini___ini_2.0.0.tgz";
path = fetchurl {
name = "ini___ini_2.0.0.tgz";
url = "https://registry.yarnpkg.com/ini/-/ini-2.0.0.tgz";
sha1 = "e5fd556ecdd5726be978fa1001862eacb0a94bc5";
};
}
{
name = "ini___ini_1.3.8.tgz";
path = fetchurl {
@ -3169,6 +3401,14 @@
sha1 = "72e233d8e1c4cd1d3f11713fcce3eba7b0e3476f";
};
}
{
name = "is_core_module___is_core_module_2.2.0.tgz";
path = fetchurl {
name = "is_core_module___is_core_module_2.2.0.tgz";
url = "https://registry.yarnpkg.com/is-core-module/-/is-core-module-2.2.0.tgz";
sha1 = "97037ef3d52224d85163f5597b2b63d9afed981a";
};
}
{
name = "is_date_object___is_date_object_1.0.1.tgz";
path = fetchurl {
@ -3234,11 +3474,11 @@
};
}
{
name = "is_installed_globally___is_installed_globally_0.3.1.tgz";
name = "is_installed_globally___is_installed_globally_0.4.0.tgz";
path = fetchurl {
name = "is_installed_globally___is_installed_globally_0.3.1.tgz";
url = "https://registry.yarnpkg.com/is-installed-globally/-/is-installed-globally-0.3.1.tgz";
sha1 = "679afef819347a72584617fd19497f010b8ed35f";
name = "is_installed_globally___is_installed_globally_0.4.0.tgz";
url = "https://registry.yarnpkg.com/is-installed-globally/-/is-installed-globally-0.4.0.tgz";
sha1 = "9a0fd407949c30f86eb6959ef1b7994ed0b7b520";
};
}
{
@ -3250,11 +3490,11 @@
};
}
{
name = "is_npm___is_npm_4.0.0.tgz";
name = "is_npm___is_npm_5.0.0.tgz";
path = fetchurl {
name = "is_npm___is_npm_4.0.0.tgz";
url = "https://registry.yarnpkg.com/is-npm/-/is-npm-4.0.0.tgz";
sha1 = "c90dd8380696df87a7a6d823c20d0b12bbe3c84d";
name = "is_npm___is_npm_5.0.0.tgz";
url = "https://registry.yarnpkg.com/is-npm/-/is-npm-5.0.0.tgz";
sha1 = "43e8d65cc56e1b67f8d47262cf667099193f45a8";
};
}
{
@ -3282,11 +3522,11 @@
};
}
{
name = "is_path_inside___is_path_inside_3.0.2.tgz";
name = "is_path_inside___is_path_inside_3.0.3.tgz";
path = fetchurl {
name = "is_path_inside___is_path_inside_3.0.2.tgz";
url = "https://registry.yarnpkg.com/is-path-inside/-/is-path-inside-3.0.2.tgz";
sha1 = "f5220fc82a3e233757291dddc9c5877f2a1f3017";
name = "is_path_inside___is_path_inside_3.0.3.tgz";
url = "https://registry.yarnpkg.com/is-path-inside/-/is-path-inside-3.0.3.tgz";
sha1 = "d231362e53a07ff2b0e0ea7fed049161ffd16283";
};
}
{
@ -3377,14 +3617,6 @@
sha1 = "bb935d48582cba168c06834957a54a3e07124f11";
};
}
{
name = "isbinaryfile___isbinaryfile_4.0.6.tgz";
path = fetchurl {
name = "isbinaryfile___isbinaryfile_4.0.6.tgz";
url = "https://registry.yarnpkg.com/isbinaryfile/-/isbinaryfile-4.0.6.tgz";
sha1 = "edcb62b224e2b4710830b67498c8e4e5a4d2610b";
};
}
{
name = "isexe___isexe_2.0.0.tgz";
path = fetchurl {
@ -3401,6 +3633,14 @@
sha1 = "47e63f7af55afa6f92e1500e690eb8b8529c099a";
};
}
{
name = "istextorbinary___istextorbinary_5.12.0.tgz";
path = fetchurl {
name = "istextorbinary___istextorbinary_5.12.0.tgz";
url = "https://registry.yarnpkg.com/istextorbinary/-/istextorbinary-5.12.0.tgz";
sha1 = "2f84777838668fdf524c305a2363d6057aaeec84";
};
}
{
name = "jake___jake_10.8.2.tgz";
path = fetchurl {
@ -3442,11 +3682,11 @@
};
}
{
name = "js_yaml___js_yaml_3.14.0.tgz";
name = "js_yaml___js_yaml_4.0.0.tgz";
path = fetchurl {
name = "js_yaml___js_yaml_3.14.0.tgz";
url = "https://registry.yarnpkg.com/js-yaml/-/js-yaml-3.14.0.tgz";
sha1 = "a7a34170f26a21bb162424d8adacb4113a69e482";
name = "js_yaml___js_yaml_4.0.0.tgz";
url = "https://registry.yarnpkg.com/js-yaml/-/js-yaml-4.0.0.tgz";
sha1 = "f426bc0ff4b4051926cd588c71113183409a121f";
};
}
{
@ -4018,11 +4258,11 @@
};
}
{
name = "mime___mime_2.5.0.tgz";
name = "mime___mime_2.5.2.tgz";
path = fetchurl {
name = "mime___mime_2.5.0.tgz";
url = "https://registry.yarnpkg.com/mime/-/mime-2.5.0.tgz";
sha1 = "2b4af934401779806ee98026bb42e8c1ae1876b1";
name = "mime___mime_2.5.2.tgz";
url = "https://registry.yarnpkg.com/mime/-/mime-2.5.2.tgz";
sha1 = "6e3dc6cc2b9510643830e5f19d5cb753da5eeabe";
};
}
{
@ -4217,6 +4457,14 @@
sha1 = "a3378a7696ce7d223e88fc9b764bd7ef1089e366";
};
}
{
name = "node_addon_api___node_addon_api_1.7.2.tgz";
path = fetchurl {
name = "node_addon_api___node_addon_api_1.7.2.tgz";
url = "https://registry.yarnpkg.com/node-addon-api/-/node-addon-api-1.7.2.tgz";
sha1 = "3df30b95720b53c24e59948b49532b662444f54d";
};
}
{
name = "node_fetch_npm___node_fetch_npm_2.0.2.tgz";
path = fetchurl {
@ -4273,6 +4521,14 @@
sha1 = "e66db1838b200c1dfc233225d12cb36520e234a8";
};
}
{
name = "normalize_package_data___normalize_package_data_3.0.2.tgz";
path = fetchurl {
name = "normalize_package_data___normalize_package_data_3.0.2.tgz";
url = "https://registry.yarnpkg.com/normalize-package-data/-/normalize-package-data-3.0.2.tgz";
sha1 = "cae5c410ae2434f9a6c1baa65d5bc3b9366c8699";
};
}
{
name = "normalize_path___normalize_path_3.0.0.tgz";
path = fetchurl {
@ -4865,6 +5121,14 @@
sha1 = "100ec235cc150e4fd42519412596a28512a0def5";
};
}
{
name = "plist___plist_3.0.2.tgz";
path = fetchurl {
name = "plist___plist_3.0.2.tgz";
url = "https://registry.yarnpkg.com/plist/-/plist-3.0.2.tgz";
sha1 = "74bbf011124b90421c22d15779cee60060ba95bc";
};
}
{
name = "png_to_ico___png_to_ico_2.1.1.tgz";
path = fetchurl {
@ -5066,11 +5330,11 @@
};
}
{
name = "pupa___pupa_2.0.1.tgz";
name = "pupa___pupa_2.1.1.tgz";
path = fetchurl {
name = "pupa___pupa_2.0.1.tgz";
url = "https://registry.yarnpkg.com/pupa/-/pupa-2.0.1.tgz";
sha1 = "dbdc9ff48ffbea4a26a069b6f9f7abb051008726";
name = "pupa___pupa_2.1.1.tgz";
url = "https://registry.yarnpkg.com/pupa/-/pupa-2.1.1.tgz";
sha1 = "f5e8fd4afc2c5d97828faa523549ed8744a20d62";
};
}
{
@ -5353,6 +5617,14 @@
sha1 = "b25941b54968231cc2d1bb76a79cb7f2c0bf8444";
};
}
{
name = "resolve___resolve_1.20.0.tgz";
path = fetchurl {
name = "resolve___resolve_1.20.0.tgz";
url = "https://registry.yarnpkg.com/resolve/-/resolve-1.20.0.tgz";
sha1 = "629a013fb3f70755d6f0b7935cc1c2c5378b1975";
};
}
{
name = "responselike___responselike_1.0.2.tgz";
path = fetchurl {
@ -5601,6 +5873,14 @@
sha1 = "b5fdc08f1287ea1178628e415e25132b73646c6d";
};
}
{
name = "slice_ansi___slice_ansi_1.0.0.tgz";
path = fetchurl {
name = "slice_ansi___slice_ansi_1.0.0.tgz";
url = "https://registry.yarnpkg.com/slice-ansi/-/slice-ansi-1.0.0.tgz";
sha1 = "044f1a49d8842ff307aad6b505ed178bd950134d";
};
}
{
name = "slice_ansi___slice_ansi_2.1.0.tgz";
path = fetchurl {
@ -6017,14 +6297,6 @@
sha1 = "458b83887f288fc56d6fffbfad262e26638efa69";
};
}
{
name = "term_size___term_size_2.2.0.tgz";
path = fetchurl {
name = "term_size___term_size_2.2.0.tgz";
url = "https://registry.yarnpkg.com/term-size/-/term-size-2.2.0.tgz";
sha1 = "1f16adedfe9bdc18800e1776821734086fcc6753";
};
}
{
name = "text_table___text_table_0.2.0.tgz";
path = fetchurl {
@ -6033,6 +6305,14 @@
sha1 = "7f5ee823ae805207c00af2df4a84ec3fcfa570b4";
};
}
{
name = "textextensions___textextensions_5.12.0.tgz";
path = fetchurl {
name = "textextensions___textextensions_5.12.0.tgz";
url = "https://registry.yarnpkg.com/textextensions/-/textextensions-5.12.0.tgz";
sha1 = "b908120b5c1bd4bb9eba41423d75b176011ab68a";
};
}
{
name = "through2___through2_2.0.5.tgz";
path = fetchurl {
@ -6225,6 +6505,14 @@
sha1 = "3240b891a78b0deae910dbeb86553e552a148860";
};
}
{
name = "type_fest___type_fest_0.20.2.tgz";
path = fetchurl {
name = "type_fest___type_fest_0.20.2.tgz";
url = "https://registry.yarnpkg.com/type-fest/-/type-fest-0.20.2.tgz";
sha1 = "1bf207f4b28f91583666cb5fbd327887301cd5f4";
};
}
{
name = "type_fest___type_fest_0.8.1.tgz";
path = fetchurl {
@ -6321,6 +6609,14 @@
sha1 = "b61a1da173e8435b2fe3c67d29b9adf8594bd16d";
};
}
{
name = "universalify___universalify_2.0.0.tgz";
path = fetchurl {
name = "universalify___universalify_2.0.0.tgz";
url = "https://registry.yarnpkg.com/universalify/-/universalify-2.0.0.tgz";
sha1 = "75a4984efedc4b08975c5aeb73f530d02df25717";
};
}
{
name = "unpipe___unpipe_1.0.0.tgz";
path = fetchurl {
@ -6362,11 +6658,11 @@
};
}
{
name = "update_notifier___update_notifier_4.1.3.tgz";
name = "update_notifier___update_notifier_5.1.0.tgz";
path = fetchurl {
name = "update_notifier___update_notifier_4.1.3.tgz";
url = "https://registry.yarnpkg.com/update-notifier/-/update-notifier-4.1.3.tgz";
sha1 = "be86ee13e8ce48fb50043ff72057b5bd598e1ea3";
name = "update_notifier___update_notifier_5.1.0.tgz";
url = "https://registry.yarnpkg.com/update-notifier/-/update-notifier-5.1.0.tgz";
sha1 = "4ab0d7c7f36a231dd7316cf7729313f0214d9ad9";
};
}
{
@ -6489,6 +6785,22 @@
sha1 = "3a105ca17053af55d6e270c1f8288682e18da400";
};
}
{
name = "version_compare___version_compare_1.1.0.tgz";
path = fetchurl {
name = "version_compare___version_compare_1.1.0.tgz";
url = "https://registry.yarnpkg.com/version-compare/-/version-compare-1.1.0.tgz";
sha1 = "7b3e67e7e6cec5c72d9c9e586f8854e419ade17c";
};
}
{
name = "version_range___version_range_1.1.0.tgz";
path = fetchurl {
name = "version_range___version_range_1.1.0.tgz";
url = "https://registry.yarnpkg.com/version-range/-/version-range-1.1.0.tgz";
sha1 = "1c233064202ee742afc9d56e21da3b2e15260acf";
};
}
{
name = "wcwidth___wcwidth_1.0.1.tgz";
path = fetchurl {
@ -6665,6 +6977,22 @@
sha1 = "4fa2d846ec803237de86f30aa9b5f70b6600de02";
};
}
{
name = "xmlbuilder___xmlbuilder_15.1.1.tgz";
path = fetchurl {
name = "xmlbuilder___xmlbuilder_15.1.1.tgz";
url = "https://registry.yarnpkg.com/xmlbuilder/-/xmlbuilder-15.1.1.tgz";
sha1 = "9dcdce49eea66d8d10b42cae94a79c3c8d0c2ec5";
};
}
{
name = "xmlbuilder___xmlbuilder_9.0.7.tgz";
path = fetchurl {
name = "xmlbuilder___xmlbuilder_9.0.7.tgz";
url = "https://registry.yarnpkg.com/xmlbuilder/-/xmlbuilder-9.0.7.tgz";
sha1 = "132ee63d2ec5565c557e20f4c22df9aca686b10d";
};
}
{
name = "xmlbuilder___xmlbuilder_11.0.1.tgz";
path = fetchurl {
@ -6673,6 +7001,14 @@
sha1 = "be9bae1c8a046e76b31127726347d0ad7002beb3";
};
}
{
name = "xmldom___xmldom_0.5.0.tgz";
path = fetchurl {
name = "xmldom___xmldom_0.5.0.tgz";
url = "https://registry.yarnpkg.com/xmldom/-/xmldom-0.5.0.tgz";
sha1 = "193cb96b84aa3486127ea6272c4596354cb4962e";
};
}
{
name = "xtend___xtend_4.0.2.tgz";
path = fetchurl {
@ -6786,11 +7122,11 @@
};
}
{
name = "zip_stream___zip_stream_4.0.4.tgz";
name = "zip_stream___zip_stream_4.1.0.tgz";
path = fetchurl {
name = "zip_stream___zip_stream_4.0.4.tgz";
url = "https://registry.yarnpkg.com/zip-stream/-/zip-stream-4.0.4.tgz";
sha1 = "3a8f100b73afaa7d1ae9338d910b321dec77ff3a";
name = "zip_stream___zip_stream_4.1.0.tgz";
url = "https://registry.yarnpkg.com/zip-stream/-/zip-stream-4.1.0.tgz";
sha1 = "51dd326571544e36aa3f756430b313576dc8fc79";
};
}
];

View File

@ -8,12 +8,12 @@
let
executableName = "element-desktop";
version = "1.7.24";
version = "1.7.25";
src = fetchFromGitHub {
owner = "vector-im";
repo = "element-desktop";
rev = "v${version}";
sha256 = "sha256-16sqiOwJvKTs6MPmdkuiPhnr1G7ErWCT5ctp5xqZRlk=";
sha256 = "sha256-q8hVmTLt/GdLc6NSldLggogObQcPFp+lAeS3wmO0qPo=";
};
in mkYarnPackage rec {
name = "element-desktop-${version}";

View File

@ -12,11 +12,11 @@ let
in stdenv.mkDerivation rec {
pname = "element-web";
version = "1.7.24";
version = "1.7.25";
src = fetchurl {
url = "https://github.com/vector-im/element-web/releases/download/v${version}/element-v${version}.tar.gz";
sha256 = "sha256-u6mcO+MMjrr2YujVVcsaA7qsruirmHJz3o8nAPOecSU=";
sha256 = "sha256-T4lsGVSUHkw4R7tSeTKPifbhwaTf/YF2vVAakFSrt9k=";
};
installPhase = ''

View File

@ -1,19 +1,12 @@
{ lib, stdenv, fetchurl, fetchpatch, pkg-config, ncurses, glib, openssl, perl, libintl, libgcrypt, libotr }:
{ lib, stdenv, fetchurl, pkg-config, ncurses, glib, openssl, perl, libintl, libgcrypt, libotr }:
stdenv.mkDerivation rec {
pname = "irssi";
version = "1.2.2";
version = "1.2.3";
src = fetchurl {
url = "https://github.com/irssi/irssi/releases/download/${version}/${pname}-${version}.tar.gz";
sha256 = "0g2nxazn4lszmd6mf1s36x5ablk4999g1qx7byrnvgnjsihjh62k";
};
# Fix irssi on GLib >2.62 input being stuck after entering a NUL byte
# See https://github.com/irssi/irssi/issues/1180 - remove after next update.
patches = fetchpatch {
url = "https://github.com/irssi/irssi/releases/download/1.2.2/glib-2-63.patch";
sha256 = "1ad1p7395n8dfmv97wrf751wwzgncqfh9fp27kq5kfdvh661da1i";
sha256 = "09cwz5ff1i5lp35qhhmw6kbw5dwcn9pl16gpzkc92xg5sx3bgjr9";
};
nativeBuildInputs = [ pkg-config ];

View File

@ -1,665 +1,665 @@
{
version = "78.9.0";
version = "78.9.1";
sources = [
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/78.9.0/linux-x86_64/af/thunderbird-78.9.0.tar.bz2";
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/78.9.1/linux-x86_64/af/thunderbird-78.9.1.tar.bz2";
locale = "af";
arch = "linux-x86_64";
sha256 = "58bc04e46def73b3530323e56d143db324a5a80f426b37ff396e2e43cf8b0042";
sha256 = "7bfec5dfdab93e1ccd8737c67cec8f257d15387045437c016b5ff2b5ef6d6d45";
}
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/78.9.0/linux-x86_64/ar/thunderbird-78.9.0.tar.bz2";
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/78.9.1/linux-x86_64/ar/thunderbird-78.9.1.tar.bz2";
locale = "ar";
arch = "linux-x86_64";
sha256 = "9520899691eb7e4e7dad95ce643da5cb966c1058b3cc952b55bd66d7a09473ef";
sha256 = "5f1c9b32fc37c750a0fae80b0b41d3f11c774807014f930476a28885ad7854df";
}
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/78.9.0/linux-x86_64/ast/thunderbird-78.9.0.tar.bz2";
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/78.9.1/linux-x86_64/ast/thunderbird-78.9.1.tar.bz2";
locale = "ast";
arch = "linux-x86_64";
sha256 = "769e7cd3699577a1f69e62492c8058eca635ffaf6acab6ca3a4112301aab751f";
sha256 = "b880a02f42b9c6bd3c8b2f82f829c6458091bff1d3555a7cd07d59254c3f9694";
}
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/78.9.0/linux-x86_64/be/thunderbird-78.9.0.tar.bz2";
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/78.9.1/linux-x86_64/be/thunderbird-78.9.1.tar.bz2";
locale = "be";
arch = "linux-x86_64";
sha256 = "c1b35990af2731b52da57b4b6b0e4a7733ea2e8d499e95b3b086dde3bdccb657";
sha256 = "ea2049f514881f76b0b775c5e27aace867d483c8a9e8f3c139e1c213fc97371e";
}
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/78.9.0/linux-x86_64/bg/thunderbird-78.9.0.tar.bz2";
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/78.9.1/linux-x86_64/bg/thunderbird-78.9.1.tar.bz2";
locale = "bg";
arch = "linux-x86_64";
sha256 = "708709a3acb4689de7870d21c258ccbc03a1fdb92a43164841571e6643bf2988";
sha256 = "54d77d3972fffde0a110b2451fd3516aacd27cf7365171ec369993f0d57506a4";
}
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/78.9.0/linux-x86_64/br/thunderbird-78.9.0.tar.bz2";
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/78.9.1/linux-x86_64/br/thunderbird-78.9.1.tar.bz2";
locale = "br";
arch = "linux-x86_64";
sha256 = "e84f1dea6f550a1827399d0e7f658f376c816d3f7abe962ec58115d36c28c1c5";
sha256 = "8fea37e1b1721dfcd06c2798b67260dcd3e3a9821cda5b03ee5355bd04759602";
}
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/78.9.0/linux-x86_64/ca/thunderbird-78.9.0.tar.bz2";
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/78.9.1/linux-x86_64/ca/thunderbird-78.9.1.tar.bz2";
locale = "ca";
arch = "linux-x86_64";
sha256 = "8191514f74876406cf6f332a0063032206d1b6f29414941dee3082ce1bc6e711";
sha256 = "26ebbb11b0db144ebd7c891a50fd595a1b40ac9e3aaae212464bed73bf8d29b7";
}
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/78.9.0/linux-x86_64/cak/thunderbird-78.9.0.tar.bz2";
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/78.9.1/linux-x86_64/cak/thunderbird-78.9.1.tar.bz2";
locale = "cak";
arch = "linux-x86_64";
sha256 = "9626ab3117cb4567ba65b24c5800f39fe7dc9c372c60f88ba0906eb72d63ffb0";
sha256 = "7dddaa78c0429b8dc7ed0570d8f0dc440da9df940eea2a091dbeb28323a1972c";
}
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/78.9.0/linux-x86_64/cs/thunderbird-78.9.0.tar.bz2";
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/78.9.1/linux-x86_64/cs/thunderbird-78.9.1.tar.bz2";
locale = "cs";
arch = "linux-x86_64";
sha256 = "294f60b4efa04fcc9bdea8c4107ac572613d63c742ae9492eb63f5eadcef1448";
sha256 = "b50810bcdc40363af165ea703ae660c68b33ceebb186cb736aa2dc7628eb7d51";
}
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/78.9.0/linux-x86_64/cy/thunderbird-78.9.0.tar.bz2";
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/78.9.1/linux-x86_64/cy/thunderbird-78.9.1.tar.bz2";
locale = "cy";
arch = "linux-x86_64";
sha256 = "865d631746754969d7dd59b096306aaacdb189b967e295676a3a7253a5af8ed3";
sha256 = "9e26a9dabe48146c0ffb94ea8464aba206fc9afe1f110642c5a0d742627e090a";
}
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/78.9.0/linux-x86_64/da/thunderbird-78.9.0.tar.bz2";
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/78.9.1/linux-x86_64/da/thunderbird-78.9.1.tar.bz2";
locale = "da";
arch = "linux-x86_64";
sha256 = "cb8b05cf1938326a4246f670bc324d83179f3ce1f3d4f3d8de57599da031ec9b";
sha256 = "156b5a65a987ee2a74e608f230129e65abf59952e331bb8467e48ebcda9448c3";
}
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/78.9.0/linux-x86_64/de/thunderbird-78.9.0.tar.bz2";
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/78.9.1/linux-x86_64/de/thunderbird-78.9.1.tar.bz2";
locale = "de";
arch = "linux-x86_64";
sha256 = "9dfc5b4490c8ba926ce30605e3575cf3b471fae1f1808fb5054667c2751956c2";
sha256 = "f55a61264cec96205f75bae35a58ee9110614aa3a027fc19fa7b67b50167e343";
}
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/78.9.0/linux-x86_64/dsb/thunderbird-78.9.0.tar.bz2";
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/78.9.1/linux-x86_64/dsb/thunderbird-78.9.1.tar.bz2";
locale = "dsb";
arch = "linux-x86_64";
sha256 = "1752031e919fc1604c1d70ff5a9036d8752a0de78c0d0539860c45390b09e13f";
sha256 = "5e4290ddeb1bc2e301d400c5b71c719e25f109f20aa92c723cfda11342fcf171";
}
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/78.9.0/linux-x86_64/el/thunderbird-78.9.0.tar.bz2";
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/78.9.1/linux-x86_64/el/thunderbird-78.9.1.tar.bz2";
locale = "el";
arch = "linux-x86_64";
sha256 = "bc2c7b093dd00c352874c7ae6e3d88e455fe9b357caa0e358d51dde120398f41";
sha256 = "c10b09b8773cb4479c354194664f5c40bb45e748cc84aa3f895be72feca1b761";
}
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/78.9.0/linux-x86_64/en-CA/thunderbird-78.9.0.tar.bz2";
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/78.9.1/linux-x86_64/en-CA/thunderbird-78.9.1.tar.bz2";
locale = "en-CA";
arch = "linux-x86_64";
sha256 = "5605286eb97815d5acfadc0a93888a1e8d08e9b8bb5e7b28328c9650f6a9d065";
sha256 = "e21d94ea954e080db1d4a8c5a20d39099fc21019f78ddcb4fe105ca0beb6f5a3";
}
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/78.9.0/linux-x86_64/en-GB/thunderbird-78.9.0.tar.bz2";
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/78.9.1/linux-x86_64/en-GB/thunderbird-78.9.1.tar.bz2";
locale = "en-GB";
arch = "linux-x86_64";
sha256 = "bc0a4c15cb3d4f1891e91a7bc5cde53065cca95fe5c72c18bd39e0bc618b5d01";
sha256 = "9adcdb0b947f5ef79d874ca47b4361677e1dacb03c97ff4cdcffe0706d865272";
}
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/78.9.0/linux-x86_64/en-US/thunderbird-78.9.0.tar.bz2";
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/78.9.1/linux-x86_64/en-US/thunderbird-78.9.1.tar.bz2";
locale = "en-US";
arch = "linux-x86_64";
sha256 = "65e1539602d206cfb78cb7bdf864d251670242d775f62aad25a1a52dcf1e9e55";
sha256 = "20eafd8ee01018952d723a51f736aedaeba2c48f4da5554a80035427e24d1486";
}
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/78.9.0/linux-x86_64/es-AR/thunderbird-78.9.0.tar.bz2";
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/78.9.1/linux-x86_64/es-AR/thunderbird-78.9.1.tar.bz2";
locale = "es-AR";
arch = "linux-x86_64";
sha256 = "e246d1f0fda4091888dcac7c5e8d5367688d86e6f65237e942baee0c2c82136b";
sha256 = "18e3ca32a92fcc7d201d89abb2c053f5f081ad91402280a0de75c1307eed5955";
}
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/78.9.0/linux-x86_64/es-ES/thunderbird-78.9.0.tar.bz2";
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/78.9.1/linux-x86_64/es-ES/thunderbird-78.9.1.tar.bz2";
locale = "es-ES";
arch = "linux-x86_64";
sha256 = "a24902cdd4eb9f70b435f52c9244769bc674fc16194a908976c28c8de3d94674";
sha256 = "ddae6044f742f3530bb1eb45f9464158d3b53f26dcaae81874e8082e839b581b";
}
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/78.9.0/linux-x86_64/et/thunderbird-78.9.0.tar.bz2";
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/78.9.1/linux-x86_64/et/thunderbird-78.9.1.tar.bz2";
locale = "et";
arch = "linux-x86_64";
sha256 = "891fb76d3f9044ea44230d72c6b8bd4db63c63c71dc83506e91b31329e1b0c11";
sha256 = "d3533609865cb53fa4c1226b747ae011737112755e83b734f0b54bc61d995f6b";
}
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/78.9.0/linux-x86_64/eu/thunderbird-78.9.0.tar.bz2";
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/78.9.1/linux-x86_64/eu/thunderbird-78.9.1.tar.bz2";
locale = "eu";
arch = "linux-x86_64";
sha256 = "cfe8c0e314dffd57e653204aa5aebe790147f3a1060cc1f95da0045d1c188cd6";
sha256 = "6e245317ce453ef71dae9a222e9fdaf5f72978aeee6735300a77bf452bba9934";
}
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/78.9.0/linux-x86_64/fa/thunderbird-78.9.0.tar.bz2";
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/78.9.1/linux-x86_64/fa/thunderbird-78.9.1.tar.bz2";
locale = "fa";
arch = "linux-x86_64";
sha256 = "66aba0dbc241d954b18da9c94c6c8d7b33dbc8721560a23def882cde249d17ef";
sha256 = "a779002a3778e3b5939a1b778ea1d2a570d5ee71ac3db444b64a8fd19a4ffa1a";
}
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/78.9.0/linux-x86_64/fi/thunderbird-78.9.0.tar.bz2";
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/78.9.1/linux-x86_64/fi/thunderbird-78.9.1.tar.bz2";
locale = "fi";
arch = "linux-x86_64";
sha256 = "e05b5be90b40dd61a3686d3fb011745431f915a0d74e08a157668cfa1633d5f2";
sha256 = "8edba99433e66f4d2ea9936fdcd7a0f84cfcea73da2fede520afc45e90d1f639";
}
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/78.9.0/linux-x86_64/fr/thunderbird-78.9.0.tar.bz2";
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/78.9.1/linux-x86_64/fr/thunderbird-78.9.1.tar.bz2";
locale = "fr";
arch = "linux-x86_64";
sha256 = "f4c80650f755a65c1371aa9bc35da6e1fc54f6c44dd6e6bed1f3ce8ce883656c";
sha256 = "c21c71dc854aa27b6519b0220c646d32bf5015d39765ec34bef2b1a62712c9f1";
}
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/78.9.0/linux-x86_64/fy-NL/thunderbird-78.9.0.tar.bz2";
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/78.9.1/linux-x86_64/fy-NL/thunderbird-78.9.1.tar.bz2";
locale = "fy-NL";
arch = "linux-x86_64";
sha256 = "4ada1d224c11081bc7cf7fec51e6cbef695650cdb9b860320da9a070d01bcaed";
sha256 = "6babc9461a014f8f1eeaa0c9ed5912bf8cb9ed24776de637014e0a5ab52b4aba";
}
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/78.9.0/linux-x86_64/ga-IE/thunderbird-78.9.0.tar.bz2";
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/78.9.1/linux-x86_64/ga-IE/thunderbird-78.9.1.tar.bz2";
locale = "ga-IE";
arch = "linux-x86_64";
sha256 = "e2b6437b4b10a636d585dd591c933df370a5b70bc0a447564ab8dbb4df5c22b9";
sha256 = "889788186a45a9f951ecfcd0c61710d2dd30334c81ca0c697229401f555dd4fc";
}
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/78.9.0/linux-x86_64/gd/thunderbird-78.9.0.tar.bz2";
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/78.9.1/linux-x86_64/gd/thunderbird-78.9.1.tar.bz2";
locale = "gd";
arch = "linux-x86_64";
sha256 = "034b5dd31ac4df1ea8f19b52739fa632a53d063a6ca07e4d36194c55452aaef5";
sha256 = "f9bc35aeee7d40d4fab47d74edacfa66b784aea26c3ed60709bf8554f3151d38";
}
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/78.9.0/linux-x86_64/gl/thunderbird-78.9.0.tar.bz2";
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/78.9.1/linux-x86_64/gl/thunderbird-78.9.1.tar.bz2";
locale = "gl";
arch = "linux-x86_64";
sha256 = "1afb41188de30c672d3a15e7b8e8b0690ac8358069824edf7215f99f73333d32";
sha256 = "71f270c780f58d7530e0f9535aa16d0df329f974cd9fa6d51da5870b2197d7af";
}
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/78.9.0/linux-x86_64/he/thunderbird-78.9.0.tar.bz2";
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/78.9.1/linux-x86_64/he/thunderbird-78.9.1.tar.bz2";
locale = "he";
arch = "linux-x86_64";
sha256 = "492f33bbc7f6d6e53aaaa3587d22156afb32d0753609818eeefe7ea53bea788b";
sha256 = "5927cfa48ea585e75894a64dcb70e68fe2d8e5eea5b926b26b522b8a78cbc2be";
}
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/78.9.0/linux-x86_64/hr/thunderbird-78.9.0.tar.bz2";
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/78.9.1/linux-x86_64/hr/thunderbird-78.9.1.tar.bz2";
locale = "hr";
arch = "linux-x86_64";
sha256 = "a61743f3661eb8ce93cc58dc80ce5950534dd7c89e067a3460daa4502761e3b2";
sha256 = "a5ea3a25d9a28518005a62d7a1a9832e58199924f9761b7bc8c1a6b0ed5dbc3e";
}
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/78.9.0/linux-x86_64/hsb/thunderbird-78.9.0.tar.bz2";
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/78.9.1/linux-x86_64/hsb/thunderbird-78.9.1.tar.bz2";
locale = "hsb";
arch = "linux-x86_64";
sha256 = "cb1d4f8da3071ecd4ce4f9ae43d1e4d7dcd8edbc6dbf4917bcd1730cc5a0477d";
sha256 = "1e6b20a125c2fad0b78558b5299bb57208ccd3bbe9075505b94ed819d03faaac";
}
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/78.9.0/linux-x86_64/hu/thunderbird-78.9.0.tar.bz2";
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/78.9.1/linux-x86_64/hu/thunderbird-78.9.1.tar.bz2";
locale = "hu";
arch = "linux-x86_64";
sha256 = "a4ae0452d90d3c5c7778732811d97243b9b4767208239c8a24d4b4d368630d22";
sha256 = "1fb84c326aa68ce3bfd11c1381a0317b2b6f953b23611bfab6d409d208c164a2";
}
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/78.9.0/linux-x86_64/hy-AM/thunderbird-78.9.0.tar.bz2";
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/78.9.1/linux-x86_64/hy-AM/thunderbird-78.9.1.tar.bz2";
locale = "hy-AM";
arch = "linux-x86_64";
sha256 = "cab2129d4c4e99592ce6f22d676a03ff1cc5d5bf579a2426d0079e0f86215ade";
sha256 = "4ae1a82ca5321cf068525ffdf775f1245efedc5a7db8104d83c177cc9606c61c";
}
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/78.9.0/linux-x86_64/id/thunderbird-78.9.0.tar.bz2";
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/78.9.1/linux-x86_64/id/thunderbird-78.9.1.tar.bz2";
locale = "id";
arch = "linux-x86_64";
sha256 = "a1df4c7e0c359cab8b10692bfee5161d3bd44696ee06774985642604304f9b93";
sha256 = "e797bad2246f1e1d1fd9ead1fd99c0c03cf70edd94cec0944f7ccc14ef7d5053";
}
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/78.9.0/linux-x86_64/is/thunderbird-78.9.0.tar.bz2";
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/78.9.1/linux-x86_64/is/thunderbird-78.9.1.tar.bz2";
locale = "is";
arch = "linux-x86_64";
sha256 = "bf6ec8c88f65d565f7dcecb1f3177a5a1e476da62d8aec82d3419e3ed1794798";
sha256 = "1b9c39688d4958cec95537b972efc8179cca37901c75dce962e6ae8f18371125";
}
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/78.9.0/linux-x86_64/it/thunderbird-78.9.0.tar.bz2";
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/78.9.1/linux-x86_64/it/thunderbird-78.9.1.tar.bz2";
locale = "it";
arch = "linux-x86_64";
sha256 = "e028a6fa97dd9d37945137602d45230108fa30d63edea8df8531089724646e19";
sha256 = "62a19dfd8c496cb1dd44f960914ef46314d3f1542e7957b60622592e003fcff3";
}
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/78.9.0/linux-x86_64/ja/thunderbird-78.9.0.tar.bz2";
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/78.9.1/linux-x86_64/ja/thunderbird-78.9.1.tar.bz2";
locale = "ja";
arch = "linux-x86_64";
sha256 = "6435637e0582123c1b941b1c6209aa1bfdec471d3ce76a861c82e876b7637fee";
sha256 = "b730278fe53e3bf51fdf2147348a6f68b4773f572166c8c180685a8acf805577";
}
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/78.9.0/linux-x86_64/ka/thunderbird-78.9.0.tar.bz2";
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/78.9.1/linux-x86_64/ka/thunderbird-78.9.1.tar.bz2";
locale = "ka";
arch = "linux-x86_64";
sha256 = "8d00d918c42450ac7a451a0a5a7407ecb334b51bd20c3f33871a29c82f338175";
sha256 = "c22b1aa5d5d24ba355219bd31023acc74cbd73f7211594c5445ffcaff247675c";
}
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/78.9.0/linux-x86_64/kab/thunderbird-78.9.0.tar.bz2";
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/78.9.1/linux-x86_64/kab/thunderbird-78.9.1.tar.bz2";
locale = "kab";
arch = "linux-x86_64";
sha256 = "59af5f436ccf0d0914f800ff6cb31fb341d3d905d3d450ed43a09d8810e50bae";
sha256 = "8b84e2d2d411ab7486e7013479632a65d836790e24df258db633e7c08cf8afb5";
}
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/78.9.0/linux-x86_64/kk/thunderbird-78.9.0.tar.bz2";
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/78.9.1/linux-x86_64/kk/thunderbird-78.9.1.tar.bz2";
locale = "kk";
arch = "linux-x86_64";
sha256 = "70588dd395158e87bdf651a9ed2b1d92cc5792ed6c85160c2b1c2109d52a3ca2";
sha256 = "c2bd75e1945ff3f74dca7cc5bcecbdb36d94a07b0ad4c4636ddc22b0527b4e27";
}
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/78.9.0/linux-x86_64/ko/thunderbird-78.9.0.tar.bz2";
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/78.9.1/linux-x86_64/ko/thunderbird-78.9.1.tar.bz2";
locale = "ko";
arch = "linux-x86_64";
sha256 = "7a3473a4bd51f6931326c30c387546d4b900fd70a837e8d45380afd4597c10e2";
sha256 = "add8f17f12b5add8759a4b4964d205ffeabf49d5d3ad351f575762f11cd496e7";
}
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/78.9.0/linux-x86_64/lt/thunderbird-78.9.0.tar.bz2";
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/78.9.1/linux-x86_64/lt/thunderbird-78.9.1.tar.bz2";
locale = "lt";
arch = "linux-x86_64";
sha256 = "1e36db5d910184872af4e7623c59c79f8e522955c5dd5cba4a689a5bc2d857b0";
sha256 = "53dbfabba0feda6ba2c6d8673bad01769a99d28cd4cf05dd27cc13364e365d61";
}
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/78.9.0/linux-x86_64/ms/thunderbird-78.9.0.tar.bz2";
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/78.9.1/linux-x86_64/ms/thunderbird-78.9.1.tar.bz2";
locale = "ms";
arch = "linux-x86_64";
sha256 = "058f825e44c24e837081bb05241c1ff47b390132dbd3cdb5b5d4ef51056bb2ab";
sha256 = "220db127c3a32811200db8c2e8ff1c3a026e5fc766830cf4267c42142f098932";
}
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/78.9.0/linux-x86_64/nb-NO/thunderbird-78.9.0.tar.bz2";
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/78.9.1/linux-x86_64/nb-NO/thunderbird-78.9.1.tar.bz2";
locale = "nb-NO";
arch = "linux-x86_64";
sha256 = "7f6335ff85c29aa634b7909e4b7a2da007f333648a98ad9f3bd8833d00f2f0da";
sha256 = "e96f5814e9d2b9ca8f3326cfe867405681ab4132e98c17a0a0980c1e9a2dd0be";
}
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/78.9.0/linux-x86_64/nl/thunderbird-78.9.0.tar.bz2";
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/78.9.1/linux-x86_64/nl/thunderbird-78.9.1.tar.bz2";
locale = "nl";
arch = "linux-x86_64";
sha256 = "0056c1250401f89ab8d9423f23d3148bcf34801b34247d4bc44b89e8edd0552f";
sha256 = "deaed1d2f3ddf74391dfe94b3b11726e0a7823f45e37047b2dbfdc0133eb329c";
}
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/78.9.0/linux-x86_64/nn-NO/thunderbird-78.9.0.tar.bz2";
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/78.9.1/linux-x86_64/nn-NO/thunderbird-78.9.1.tar.bz2";
locale = "nn-NO";
arch = "linux-x86_64";
sha256 = "f63e4305ba814a46edc4316af6ad02acd479306f2f1c02c1b04065ea20baf59f";
sha256 = "8bb5e5375805285da875280316dacf39be1069cc567df6b09cebc9689922a260";
}
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/78.9.0/linux-x86_64/pa-IN/thunderbird-78.9.0.tar.bz2";
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/78.9.1/linux-x86_64/pa-IN/thunderbird-78.9.1.tar.bz2";
locale = "pa-IN";
arch = "linux-x86_64";
sha256 = "654902d560df0648cd2e9b7b1271d3606071865dd1cc4490741a5777be2c72c3";
sha256 = "8680087bfcc7758df27d74f7be937b50625f08c44c3c8a2a2d21f3ffeda4d38d";
}
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/78.9.0/linux-x86_64/pl/thunderbird-78.9.0.tar.bz2";
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/78.9.1/linux-x86_64/pl/thunderbird-78.9.1.tar.bz2";
locale = "pl";
arch = "linux-x86_64";
sha256 = "62c4352b987bef61f69bb0300c9cc37b95ca5e6fde57a06646b14bef6e58dd78";
sha256 = "9bd9a119f0f2d0bb5e489907f23811a6e5933d9304fb92d938fa7b0e638dac6e";
}
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/78.9.0/linux-x86_64/pt-BR/thunderbird-78.9.0.tar.bz2";
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/78.9.1/linux-x86_64/pt-BR/thunderbird-78.9.1.tar.bz2";
locale = "pt-BR";
arch = "linux-x86_64";
sha256 = "139606374df552562100c01e8a330fc1f4f9e6dcbc6a39396137d2f069ad0fcd";
sha256 = "2f87bb38281d69e34d9918b40ca29f35ada3b9f8a627bd36c56f21befe2a45f8";
}
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/78.9.0/linux-x86_64/pt-PT/thunderbird-78.9.0.tar.bz2";
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/78.9.1/linux-x86_64/pt-PT/thunderbird-78.9.1.tar.bz2";
locale = "pt-PT";
arch = "linux-x86_64";
sha256 = "eb6526b6ee0f768949489ca587c321ed8aabd258296c58e596b7a5413b458ed7";
sha256 = "786a97c6b1604e59a6a4114142b5f5c309149480ddd612b22c1ca122d3a2a633";
}
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/78.9.0/linux-x86_64/rm/thunderbird-78.9.0.tar.bz2";
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/78.9.1/linux-x86_64/rm/thunderbird-78.9.1.tar.bz2";
locale = "rm";
arch = "linux-x86_64";
sha256 = "36a22f1c8eb1a5c7fb0e9323a3c3eb03f8a63b2b6c62430780bf4508a7236c41";
sha256 = "cd54da5d6c3b105a8ed9dd09771d8e15881694b001b6daf8199014fd4043b777";
}
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/78.9.0/linux-x86_64/ro/thunderbird-78.9.0.tar.bz2";
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/78.9.1/linux-x86_64/ro/thunderbird-78.9.1.tar.bz2";
locale = "ro";
arch = "linux-x86_64";
sha256 = "92ae47ebf2ab176d46e04172206241aeae8a6eebf72b5f32d021782aa1675be8";
sha256 = "e81e40a5eec5bb4dda0d0b7df414bd475c054008249c946e8d99c9272f31ab62";
}
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/78.9.0/linux-x86_64/ru/thunderbird-78.9.0.tar.bz2";
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/78.9.1/linux-x86_64/ru/thunderbird-78.9.1.tar.bz2";
locale = "ru";
arch = "linux-x86_64";
sha256 = "97680d44fae135e90368adb75ac27b4f23f1186d1435ba265a80027334f320ec";
sha256 = "283221c2b927c10a2e4017383af6b93bd717555c28b700b276ba8d600a84250d";
}
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/78.9.0/linux-x86_64/si/thunderbird-78.9.0.tar.bz2";
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/78.9.1/linux-x86_64/si/thunderbird-78.9.1.tar.bz2";
locale = "si";
arch = "linux-x86_64";
sha256 = "6ddf49c8696deb3ab9ac55453b93116c923ad0025c9c8463b56bdc81e6d00bb9";
sha256 = "7f6fe6533e54e6a8a544da7bd844079b2d6a5e913c16210ad77ac7c93d2b1415";
}
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/78.9.0/linux-x86_64/sk/thunderbird-78.9.0.tar.bz2";
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/78.9.1/linux-x86_64/sk/thunderbird-78.9.1.tar.bz2";
locale = "sk";
arch = "linux-x86_64";
sha256 = "5e2be4cab9101a67c61eee16c8c84513b196dd19f6d0dfee3559796a8a031138";
sha256 = "b0f872351a9f2aa714f69be18b78a8092049c8e005b07a19a906a8d595d90fc1";
}
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/78.9.0/linux-x86_64/sl/thunderbird-78.9.0.tar.bz2";
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/78.9.1/linux-x86_64/sl/thunderbird-78.9.1.tar.bz2";
locale = "sl";
arch = "linux-x86_64";
sha256 = "ab9293a2a5caf948bf2e4b4680b9cf7440e7a272f9f028568e260c40d5a031ce";
sha256 = "699f4e4dd786fd09d9f8430fc33b5b2897541334f5b9517a7a8dab527aabed7c";
}
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/78.9.0/linux-x86_64/sq/thunderbird-78.9.0.tar.bz2";
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/78.9.1/linux-x86_64/sq/thunderbird-78.9.1.tar.bz2";
locale = "sq";
arch = "linux-x86_64";
sha256 = "113171842441b9553e6da58c7ce3e3382fb9aa780892b8ee4436ff9b2bf3dc59";
sha256 = "ce3c9e8cbfef057349e82462eba72a57b14d8c76f5d7949529dc9d629cc5b01e";
}
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/78.9.0/linux-x86_64/sr/thunderbird-78.9.0.tar.bz2";
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/78.9.1/linux-x86_64/sr/thunderbird-78.9.1.tar.bz2";
locale = "sr";
arch = "linux-x86_64";
sha256 = "1b46f1597ab5aec2bca98adf9664cafd72ff51db23722108cbd4c0c89a1a8e70";
sha256 = "1b2f383e517d80e6607fd4041b07071d71e26602bf812c85ecbbd0a5e7a674c1";
}
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/78.9.0/linux-x86_64/sv-SE/thunderbird-78.9.0.tar.bz2";
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/78.9.1/linux-x86_64/sv-SE/thunderbird-78.9.1.tar.bz2";
locale = "sv-SE";
arch = "linux-x86_64";
sha256 = "41284557a6ae1b267eb3c2fdcc4a547834e833f55b5c1ad9c8bd9121c9d39dc1";
sha256 = "d0020ce77ec629cff313f8d23a1354c6ee2591d502d2f60d9800fa7baaedd0c3";
}
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/78.9.0/linux-x86_64/th/thunderbird-78.9.0.tar.bz2";
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/78.9.1/linux-x86_64/th/thunderbird-78.9.1.tar.bz2";
locale = "th";
arch = "linux-x86_64";
sha256 = "99a342f303c3a890ee68514841d563fe493e2459a4d6f6769c42f986e122b7ba";
sha256 = "40abb70abd9938a3141c50bf39a4e1d62c862b8b1bcfdba0a11d57fb5cf373b7";
}
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/78.9.0/linux-x86_64/tr/thunderbird-78.9.0.tar.bz2";
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/78.9.1/linux-x86_64/tr/thunderbird-78.9.1.tar.bz2";
locale = "tr";
arch = "linux-x86_64";
sha256 = "f827b3d8fb60540d00d20d4ec50dbd9e28af3798863fa4ccc1a862a08ebdd18d";
sha256 = "363a371af193497ec72dafd8f5789c55b62e404f1fd386d78ed6178dfd8b5ef5";
}
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/78.9.0/linux-x86_64/uk/thunderbird-78.9.0.tar.bz2";
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/78.9.1/linux-x86_64/uk/thunderbird-78.9.1.tar.bz2";
locale = "uk";
arch = "linux-x86_64";
sha256 = "d8e30faa9f43308c31504437ae2187d5c1ce00c16cd430f31eaacf8dbed71604";
sha256 = "71697e823371ab8e9d5160c2fededd533de4e9adf4d491b018c2fb7db721b17c";
}
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/78.9.0/linux-x86_64/uz/thunderbird-78.9.0.tar.bz2";
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/78.9.1/linux-x86_64/uz/thunderbird-78.9.1.tar.bz2";
locale = "uz";
arch = "linux-x86_64";
sha256 = "00e3e3a43519fa8136d3cde8527f3e9c44732ef6d5aac9cc2e1f28feaf940a50";
sha256 = "46350d800495493f15295d65989bb3c63cd1180ccdbe4481550847618f54420e";
}
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/78.9.0/linux-x86_64/vi/thunderbird-78.9.0.tar.bz2";
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/78.9.1/linux-x86_64/vi/thunderbird-78.9.1.tar.bz2";
locale = "vi";
arch = "linux-x86_64";
sha256 = "f16b0fca32c85e648be8c8d4c9ddb6d8fde726f1386d0dd29ec050b39d827fe2";
sha256 = "a254cd59632d78971d7b3da95aad73a73cfbffbad7ebebde3c5b9f1c735db65b";
}
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/78.9.0/linux-x86_64/zh-CN/thunderbird-78.9.0.tar.bz2";
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/78.9.1/linux-x86_64/zh-CN/thunderbird-78.9.1.tar.bz2";
locale = "zh-CN";
arch = "linux-x86_64";
sha256 = "51007e8318fbf673eb63bf20be8daa35ef8e2d6fee9fd9356dbba98d843dc813";
sha256 = "c69bd4b840d5288d334191beaf89a4407e1039325b5cdeb107ea30c1a7e2d73d";
}
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/78.9.0/linux-x86_64/zh-TW/thunderbird-78.9.0.tar.bz2";
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/78.9.1/linux-x86_64/zh-TW/thunderbird-78.9.1.tar.bz2";
locale = "zh-TW";
arch = "linux-x86_64";
sha256 = "ef7a5507b47725ba7bca853c1f5bf20eb36d31fbbc8c912596a5993f7dca57ac";
sha256 = "1e120294db0dee586bb1f02ee935266f4b47ae58e0d76cfade4cb306d4153c65";
}
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/78.9.0/linux-i686/af/thunderbird-78.9.0.tar.bz2";
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/78.9.1/linux-i686/af/thunderbird-78.9.1.tar.bz2";
locale = "af";
arch = "linux-i686";
sha256 = "435ba6c5a5901fe1daa1b19c36f1071086d21e2f321a52afe1db0c03a0044635";
sha256 = "31a8e3f3b38df0da0821a5bfbc7a9abaeea64b587ba3e7bfd9b601910b3e305f";
}
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/78.9.0/linux-i686/ar/thunderbird-78.9.0.tar.bz2";
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/78.9.1/linux-i686/ar/thunderbird-78.9.1.tar.bz2";
locale = "ar";
arch = "linux-i686";
sha256 = "4ac307dbe93e69e6dbb629756363900256ec735c1927cad74acb0c5f8e255b92";
sha256 = "f2ecd646ffe074f69c0b8e9b99b40984eb8ee3edfa9e54ee7994d45192dedcff";
}
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/78.9.0/linux-i686/ast/thunderbird-78.9.0.tar.bz2";
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/78.9.1/linux-i686/ast/thunderbird-78.9.1.tar.bz2";
locale = "ast";
arch = "linux-i686";
sha256 = "3d9a01438e82350e5a60ee7944226d9a0f46384673ddae01f8f8fe445df40312";
sha256 = "7206c4f541f559f97a3794e4fa523a5bbc0ddbbf53faedd6de0eedf9bc53b73f";
}
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/78.9.0/linux-i686/be/thunderbird-78.9.0.tar.bz2";
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/78.9.1/linux-i686/be/thunderbird-78.9.1.tar.bz2";
locale = "be";
arch = "linux-i686";
sha256 = "9a5b22648d8c7c05d5f0be0d1f450baadccf791353a23bc1b6889e8911d90c5a";
sha256 = "fb8b7b8f054bb57c81ff3d6f9be2344875614603e51d0ada3c9ae9a7b293d51a";
}
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/78.9.0/linux-i686/bg/thunderbird-78.9.0.tar.bz2";
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/78.9.1/linux-i686/bg/thunderbird-78.9.1.tar.bz2";
locale = "bg";
arch = "linux-i686";
sha256 = "77cf8d4912c2b5b34fa0235ddbb95cd90bcf83d1d528275b23de08dad59116c5";
sha256 = "9df0466da1b9d866055d1ab2c0afacfa52520cea68d399e0bfce31dca73501ea";
}
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/78.9.0/linux-i686/br/thunderbird-78.9.0.tar.bz2";
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/78.9.1/linux-i686/br/thunderbird-78.9.1.tar.bz2";
locale = "br";
arch = "linux-i686";
sha256 = "9e7bcb749e0d88efd60e6bed2fc77e39deaf8a82db56c304529d44843657842d";
sha256 = "89625f21cef0fb98fe3b3755c73859ff942ada47b255b2f8a806f280a77af711";
}
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/78.9.0/linux-i686/ca/thunderbird-78.9.0.tar.bz2";
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/78.9.1/linux-i686/ca/thunderbird-78.9.1.tar.bz2";
locale = "ca";
arch = "linux-i686";
sha256 = "0206a127cbf5f9b1c4c4711d4d05591d175c9e96c2354790c220e9587c356aba";
sha256 = "6fa044e4b37fabe37ce76f09ae97edb0d82aabbc5e60442bed24fc0c6a8735fa";
}
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/78.9.0/linux-i686/cak/thunderbird-78.9.0.tar.bz2";
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/78.9.1/linux-i686/cak/thunderbird-78.9.1.tar.bz2";
locale = "cak";
arch = "linux-i686";
sha256 = "e47d892a90c3b9ec29365cc0173066234e21cd989c4b588e43fecb61b10d1f80";
sha256 = "2668ef838b08b75ac1f0d8f87ec01bc08fdd02631f8cbacd4c25bf0e13470dae";
}
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/78.9.0/linux-i686/cs/thunderbird-78.9.0.tar.bz2";
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/78.9.1/linux-i686/cs/thunderbird-78.9.1.tar.bz2";
locale = "cs";
arch = "linux-i686";
sha256 = "bdcfb9cf6e3207a41634eb54c472117c33b0df981d900c4dd0dbff0463ebe57a";
sha256 = "23bc6f0a178b9869cbdb59db4068cda6e88b7c19415c736ba651f886b5f680d0";
}
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/78.9.0/linux-i686/cy/thunderbird-78.9.0.tar.bz2";
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/78.9.1/linux-i686/cy/thunderbird-78.9.1.tar.bz2";
locale = "cy";
arch = "linux-i686";
sha256 = "5b0def675213d882ea653ffd7b5aa62f96000d4aaee8e06ad1fd5984ac99c8c7";
sha256 = "afaea8a7289f56ea07a2960a4ab645c8c748d43bf8ae5458b70fbd2c93d070b5";
}
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/78.9.0/linux-i686/da/thunderbird-78.9.0.tar.bz2";
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/78.9.1/linux-i686/da/thunderbird-78.9.1.tar.bz2";
locale = "da";
arch = "linux-i686";
sha256 = "617579da2580a0d9a5a6e64ef7c4b028fde31f82dcf8139104c380e51ec50227";
sha256 = "7efbb2b12744af4da28580d6fcd648c41ca1a7bf09df1eb2fe149e9cb1db29c4";
}
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/78.9.0/linux-i686/de/thunderbird-78.9.0.tar.bz2";
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/78.9.1/linux-i686/de/thunderbird-78.9.1.tar.bz2";
locale = "de";
arch = "linux-i686";
sha256 = "5cdee984aa63595fbcb00303f14fd19d124ef9b267d490d5263c7554f4ea0dc7";
sha256 = "0c7059e9a8bbeceac0a834ec6db2d1a54b25d1016149cdd766259a9982b5a55d";
}
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/78.9.0/linux-i686/dsb/thunderbird-78.9.0.tar.bz2";
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/78.9.1/linux-i686/dsb/thunderbird-78.9.1.tar.bz2";
locale = "dsb";
arch = "linux-i686";
sha256 = "fa05969bcc025056b8ba9c056af0051fed91a967ebf9e21ccab7654aaaa6ba1f";
sha256 = "266f62501dae1728eed1756bde56378f2a81c85e600f83e59ab47b0cda6eed7f";
}
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/78.9.0/linux-i686/el/thunderbird-78.9.0.tar.bz2";
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/78.9.1/linux-i686/el/thunderbird-78.9.1.tar.bz2";
locale = "el";
arch = "linux-i686";
sha256 = "03b58dbcabb41c0140c18f1ff31dd32e4d2d006c85af75d73bcd656587e787ed";
sha256 = "a22d57db810633e9b6041207b018b6a4d97b4f6d25b9dac636b7c9dc7ac2bb3c";
}
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/78.9.0/linux-i686/en-CA/thunderbird-78.9.0.tar.bz2";
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/78.9.1/linux-i686/en-CA/thunderbird-78.9.1.tar.bz2";
locale = "en-CA";
arch = "linux-i686";
sha256 = "6cd222aacb8eba184dc3eef308fe7b564c70da2ba6c38e6e4e328e999b7229a4";
sha256 = "8bbca7d8bef81968c31317e298a471399ae183170dfeeea37c5791b60afcab7c";
}
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/78.9.0/linux-i686/en-GB/thunderbird-78.9.0.tar.bz2";
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/78.9.1/linux-i686/en-GB/thunderbird-78.9.1.tar.bz2";
locale = "en-GB";
arch = "linux-i686";
sha256 = "9d3ca50977bd5c6f8a5bd998549db0dc2ccc6aa5d33c914e93d42e2ae69e8cbd";
sha256 = "431a4f01e3220ed58bfc4f4d6633bb77f9f69929ebc68da9aa0945ec9686d569";
}
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/78.9.0/linux-i686/en-US/thunderbird-78.9.0.tar.bz2";
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/78.9.1/linux-i686/en-US/thunderbird-78.9.1.tar.bz2";
locale = "en-US";
arch = "linux-i686";
sha256 = "84721e190b6b95733a47a16853e1fe1e0c7b0e4693d3b7752aa59583fba92f97";
sha256 = "0d0970844747d9ddeb55e81db916a7c46333e0d64c67b25106eded69d0345e57";
}
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/78.9.0/linux-i686/es-AR/thunderbird-78.9.0.tar.bz2";
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/78.9.1/linux-i686/es-AR/thunderbird-78.9.1.tar.bz2";
locale = "es-AR";
arch = "linux-i686";
sha256 = "dcadcd68506406f718871d7576b47086d59ca159a5bc6d878d022141029df2db";
sha256 = "be435aa764c0c46864bd18463ad47ce31c3ace6ab2204c2d38ad44e6e924eacc";
}
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/78.9.0/linux-i686/es-ES/thunderbird-78.9.0.tar.bz2";
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/78.9.1/linux-i686/es-ES/thunderbird-78.9.1.tar.bz2";
locale = "es-ES";
arch = "linux-i686";
sha256 = "46526dd5b4bb123e774d3a3fa8fd88a8982cfb36a252b09fa98aa6cb773ff0d2";
sha256 = "0201bed6e8286dc455389cb62393cf697be955010e893a6d294a963861331324";
}
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/78.9.0/linux-i686/et/thunderbird-78.9.0.tar.bz2";
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/78.9.1/linux-i686/et/thunderbird-78.9.1.tar.bz2";
locale = "et";
arch = "linux-i686";
sha256 = "de0b695be00721244ff20b2046bb376342fba7c422980443b217f5d4cfa83d48";
sha256 = "a4594dbaba90ecbd7d2c6ebe91d3280bfa05815355b9f16756c19795a598f105";
}
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/78.9.0/linux-i686/eu/thunderbird-78.9.0.tar.bz2";
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/78.9.1/linux-i686/eu/thunderbird-78.9.1.tar.bz2";
locale = "eu";
arch = "linux-i686";
sha256 = "543d45e256951cbf21bc61359e99daf2c80789a88641ae2231c1eb0ade133198";
sha256 = "f74f02683bfcbf7795b92325d332f855c636f42259e36c1284d383b49e919770";
}
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/78.9.0/linux-i686/fa/thunderbird-78.9.0.tar.bz2";
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/78.9.1/linux-i686/fa/thunderbird-78.9.1.tar.bz2";
locale = "fa";
arch = "linux-i686";
sha256 = "6b95ebccf7ccca90c3310923f020ba6f05fa715d64c79acd770a491e15a9938f";
sha256 = "ae29d36b6510bdda27ccdd1444bab1c2b2c581fabc2e501cfee54c50e34ea5f7";
}
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/78.9.0/linux-i686/fi/thunderbird-78.9.0.tar.bz2";
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/78.9.1/linux-i686/fi/thunderbird-78.9.1.tar.bz2";
locale = "fi";
arch = "linux-i686";
sha256 = "145c2479a73955f9ffe6ebd2d41eced848770729f218381735aafe5c3cc0b3a6";
sha256 = "2b586687b107c45d59a7da744ee7c8dca6b6b0dcf7685a963a901819e2b7c799";
}
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/78.9.0/linux-i686/fr/thunderbird-78.9.0.tar.bz2";
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/78.9.1/linux-i686/fr/thunderbird-78.9.1.tar.bz2";
locale = "fr";
arch = "linux-i686";
sha256 = "9178d90f346d62b6aa0bb4b081b6bebc214d333d6a042c46ee1af7661ffc3b03";
sha256 = "dcf346dd57f6c9a5a5b05c9a367a7955b821de1c1a2e25caaa2c39d7eb451f32";
}
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/78.9.0/linux-i686/fy-NL/thunderbird-78.9.0.tar.bz2";
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/78.9.1/linux-i686/fy-NL/thunderbird-78.9.1.tar.bz2";
locale = "fy-NL";
arch = "linux-i686";
sha256 = "fe3574999f0d1fff276fdfd7d432859d495c2b64137d33ee418ef1e4329b1b72";
sha256 = "e19670ba85c5ee7840dc40e04c4d76dbe3b240c1eb865800a184cc512c7e1cc9";
}
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/78.9.0/linux-i686/ga-IE/thunderbird-78.9.0.tar.bz2";
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/78.9.1/linux-i686/ga-IE/thunderbird-78.9.1.tar.bz2";
locale = "ga-IE";
arch = "linux-i686";
sha256 = "1570882cd8345f86de38179713a7f7acb94768c4874e571a20314fb01154e1bf";
sha256 = "97608d41f96d830a0926e52bc218bbdbdbe2e3abebbfaaa8fcc78c5957bf2d3a";
}
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/78.9.0/linux-i686/gd/thunderbird-78.9.0.tar.bz2";
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/78.9.1/linux-i686/gd/thunderbird-78.9.1.tar.bz2";
locale = "gd";
arch = "linux-i686";
sha256 = "9405a2a7ce52a48292bf4b6b20f3b1e96c12460a1e44a90ccdc31cdb21acda5e";
sha256 = "6f95e26b57550604c177a6b561bcd73ba39df76f6c08af71185eb050f66fdfbf";
}
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/78.9.0/linux-i686/gl/thunderbird-78.9.0.tar.bz2";
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/78.9.1/linux-i686/gl/thunderbird-78.9.1.tar.bz2";
locale = "gl";
arch = "linux-i686";
sha256 = "930a9a3e06bc28ede54ec43e8bb92cc30329d7f0271629b37ac3753191f7e133";
sha256 = "6f911ad3c16a0fe9fcfab54518585b5ea53a6c800ef4a01ee22fba029d8f857f";
}
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/78.9.0/linux-i686/he/thunderbird-78.9.0.tar.bz2";
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/78.9.1/linux-i686/he/thunderbird-78.9.1.tar.bz2";
locale = "he";
arch = "linux-i686";
sha256 = "eb08c16b7df47fd501f61049b19f3f8f827870c8681b9230564276bc0cc9ada8";
sha256 = "535430ac4b5991621ea4b3a042a45db7c5ec1dfb3831c882cc06180a6e21d1bd";
}
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/78.9.0/linux-i686/hr/thunderbird-78.9.0.tar.bz2";
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/78.9.1/linux-i686/hr/thunderbird-78.9.1.tar.bz2";
locale = "hr";
arch = "linux-i686";
sha256 = "c866290def37d2e16274820d5846bec52afc7c7da1f8df812df930f0c68c6b56";
sha256 = "9dd72c9c518fad8e7b44467b6b0df15a6d631aac73fe4c6d5339b1a47f0abb62";
}
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/78.9.0/linux-i686/hsb/thunderbird-78.9.0.tar.bz2";
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/78.9.1/linux-i686/hsb/thunderbird-78.9.1.tar.bz2";
locale = "hsb";
arch = "linux-i686";
sha256 = "0df5dc60047e68aadc7a96e194468d42e977c7a90d9faa8c4684f650763825f8";
sha256 = "b42f9b479e9a9e4a9be2ab99facb9a2d8a9d29ab549a69882e2e13eb15f67414";
}
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/78.9.0/linux-i686/hu/thunderbird-78.9.0.tar.bz2";
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/78.9.1/linux-i686/hu/thunderbird-78.9.1.tar.bz2";
locale = "hu";
arch = "linux-i686";
sha256 = "e76e78c1c77b59eb7a3ffad0da149dcc7f64d6b0305f5a5a607ad2745d224e17";
sha256 = "b82c89ffe3e76744a85c4a5357d294108aa1fad6b8783b27b0b38911974aaa3e";
}
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/78.9.0/linux-i686/hy-AM/thunderbird-78.9.0.tar.bz2";
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/78.9.1/linux-i686/hy-AM/thunderbird-78.9.1.tar.bz2";
locale = "hy-AM";
arch = "linux-i686";
sha256 = "0dde11bb6c6ba186925010cee97b59d3c64890b108ef478be5578218954a39cb";
sha256 = "b5f7387d7e2be74fffa44af77ae7a4dfd6a5c7ce88348eca948c5756296bb1c5";
}
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/78.9.0/linux-i686/id/thunderbird-78.9.0.tar.bz2";
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/78.9.1/linux-i686/id/thunderbird-78.9.1.tar.bz2";
locale = "id";
arch = "linux-i686";
sha256 = "ceea16b87a7d8b44b187d950f4c9fc5326ed7a550c38e0f41645004a324669a0";
sha256 = "87e85aace879757e916b733f36d2c6ef8aaf050c72f2a849b09df44e788071c6";
}
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/78.9.0/linux-i686/is/thunderbird-78.9.0.tar.bz2";
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/78.9.1/linux-i686/is/thunderbird-78.9.1.tar.bz2";
locale = "is";
arch = "linux-i686";
sha256 = "a98177d8f62b1ffe056ba3c1f2ec9d7b3f47ad8d47459328692e9bee5e1d02d2";
sha256 = "06f38495a1f62bafdbf4c594851d5a50a31ff7a619654e8ec5b267f81e5d83e1";
}
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/78.9.0/linux-i686/it/thunderbird-78.9.0.tar.bz2";
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/78.9.1/linux-i686/it/thunderbird-78.9.1.tar.bz2";
locale = "it";
arch = "linux-i686";
sha256 = "259b8e4e08828b544ba61541629025d4a711f44dc4c476b3e3971a633301b298";
sha256 = "17bf5e33c146e060b6ab26085173d46d8ef5774d0314963348507ae43928d632";
}
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/78.9.0/linux-i686/ja/thunderbird-78.9.0.tar.bz2";
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/78.9.1/linux-i686/ja/thunderbird-78.9.1.tar.bz2";
locale = "ja";
arch = "linux-i686";
sha256 = "6f2511dab5530e58664f386cb65b26d82fe581faee01b1a76cdd29e3ee3a1955";
sha256 = "f5db8f5abd1cee454fd93b4d25d2700ac53c98fbc3b3653a7501ae46032fd22f";
}
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/78.9.0/linux-i686/ka/thunderbird-78.9.0.tar.bz2";
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/78.9.1/linux-i686/ka/thunderbird-78.9.1.tar.bz2";
locale = "ka";
arch = "linux-i686";
sha256 = "368a85fcb387703df7422d1ce199a499d0e4796f4fdd4775aef27c5b36272fa7";
sha256 = "99d0f8777c3edb3e10d9627789574cd32e3ab7b78f2d7fc914d1d8a6ccdf354c";
}
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/78.9.0/linux-i686/kab/thunderbird-78.9.0.tar.bz2";
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/78.9.1/linux-i686/kab/thunderbird-78.9.1.tar.bz2";
locale = "kab";
arch = "linux-i686";
sha256 = "33bfd965c79bd6935516729f3eedd65be2b3f754c9225d6ffdb4af201b0d13a2";
sha256 = "56303c2d1432502b8086dbf77c97807bd1d06663e7d5329a98c063d2898db531";
}
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/78.9.0/linux-i686/kk/thunderbird-78.9.0.tar.bz2";
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/78.9.1/linux-i686/kk/thunderbird-78.9.1.tar.bz2";
locale = "kk";
arch = "linux-i686";
sha256 = "20dfc052f78a58d4fd96a0df22b55559ca43d8792dfda372dfede1cb49c6b185";
sha256 = "b1e9904229f9b1029a1679bd22ae58c849e1f5966729360c03b4bd8fac00c4f7";
}
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/78.9.0/linux-i686/ko/thunderbird-78.9.0.tar.bz2";
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/78.9.1/linux-i686/ko/thunderbird-78.9.1.tar.bz2";
locale = "ko";
arch = "linux-i686";
sha256 = "63479eb7fcaea17ea29c98b624c36ac20ff2ab9e42bae1a355c78f05d5f9e313";
sha256 = "5f53baf78b96853b3c490abff44736ce4e24b049b81e9baad80889a995f9b610";
}
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/78.9.0/linux-i686/lt/thunderbird-78.9.0.tar.bz2";
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/78.9.1/linux-i686/lt/thunderbird-78.9.1.tar.bz2";
locale = "lt";
arch = "linux-i686";
sha256 = "2d50db9e0698c991e10a6ec6e627b02d0aca9e18b857aa290e4aab926e8ee88b";
sha256 = "b9724ca09c3c3a4be2f73a0b6673e4c17cec5baf140d89dfdfac27f0486f07e8";
}
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/78.9.0/linux-i686/ms/thunderbird-78.9.0.tar.bz2";
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/78.9.1/linux-i686/ms/thunderbird-78.9.1.tar.bz2";
locale = "ms";
arch = "linux-i686";
sha256 = "66969627bd536d9a8e8d8717bab010ceb16350425d31ea114bc7e012ba1f0922";
sha256 = "aa72459fdcf1348b53de43715b0e7649d7cbd6d450d069331f0dfd45910e68ee";
}
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/78.9.0/linux-i686/nb-NO/thunderbird-78.9.0.tar.bz2";
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/78.9.1/linux-i686/nb-NO/thunderbird-78.9.1.tar.bz2";
locale = "nb-NO";
arch = "linux-i686";
sha256 = "1db46ff207d356adaf761db2fac7961b20633dc6578ce562154a1bdb308256e3";
sha256 = "d22d185bfd1db98db50151c3d8872cbfb8df5ecc1472c1526f605274de086f2a";
}
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/78.9.0/linux-i686/nl/thunderbird-78.9.0.tar.bz2";
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/78.9.1/linux-i686/nl/thunderbird-78.9.1.tar.bz2";
locale = "nl";
arch = "linux-i686";
sha256 = "0259c04b35bd30b5feb44da31b639938504f1402879205263eb63f7a59153f11";
sha256 = "a4a9fa6ff73d2a937d5a9d35e66006b1b6fec94daad7e54358844958e9b9531f";
}
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/78.9.0/linux-i686/nn-NO/thunderbird-78.9.0.tar.bz2";
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/78.9.1/linux-i686/nn-NO/thunderbird-78.9.1.tar.bz2";
locale = "nn-NO";
arch = "linux-i686";
sha256 = "1de52759f96302447829e0de40319394ac0b1802ec60c0c242cf85c0ca5110c6";
sha256 = "814d95b6c6a5c6d7faa61aa30cb87f4c44c8b1698f8908a95b85513bb2aaf515";
}
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/78.9.0/linux-i686/pa-IN/thunderbird-78.9.0.tar.bz2";
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/78.9.1/linux-i686/pa-IN/thunderbird-78.9.1.tar.bz2";
locale = "pa-IN";
arch = "linux-i686";
sha256 = "39e0f5794e508dbf02c6aaedaead4173f5ae55d350aa3caeb7a1ad300a69e4e8";
sha256 = "39bfc9533287a19083e34a1d8e7944a434fd5348f3694b3004d2e5c05da1155a";
}
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/78.9.0/linux-i686/pl/thunderbird-78.9.0.tar.bz2";
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/78.9.1/linux-i686/pl/thunderbird-78.9.1.tar.bz2";
locale = "pl";
arch = "linux-i686";
sha256 = "25bc49f2225c8aca7ea467a240234fa9ec2c7ec34f751537a199f6cbb30b390b";
sha256 = "1888be78e04a095e0a2576acbb3a4aa82b0060c6ca490f7a7b918efbb60e44a7";
}
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/78.9.0/linux-i686/pt-BR/thunderbird-78.9.0.tar.bz2";
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/78.9.1/linux-i686/pt-BR/thunderbird-78.9.1.tar.bz2";
locale = "pt-BR";
arch = "linux-i686";
sha256 = "6091c0e84d89312db11a3714027881243db708ce3f28187e86076351786a3d70";
sha256 = "3be3a00c44ef1be4d48a5f8c391153ad636128a030a671a646c7dee9d6327c2d";
}
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/78.9.0/linux-i686/pt-PT/thunderbird-78.9.0.tar.bz2";
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/78.9.1/linux-i686/pt-PT/thunderbird-78.9.1.tar.bz2";
locale = "pt-PT";
arch = "linux-i686";
sha256 = "45fae3c271d226dee2410f8f97eadb62783291c570bf12cd9f5fe5ab23acae23";
sha256 = "f140717de6d19f049ea3ff3ea43ba7f42a3ae6b72e9e2a2acb8b4e05c323361c";
}
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/78.9.0/linux-i686/rm/thunderbird-78.9.0.tar.bz2";
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/78.9.1/linux-i686/rm/thunderbird-78.9.1.tar.bz2";
locale = "rm";
arch = "linux-i686";
sha256 = "56387dea25d3bc4742c297e0609be55a2db938d10a5e94db192018c706e7f398";
sha256 = "f19c8067bb6a584bb7c6d059cdcd069144c266982504b9421d8b91e501847cb1";
}
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/78.9.0/linux-i686/ro/thunderbird-78.9.0.tar.bz2";
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/78.9.1/linux-i686/ro/thunderbird-78.9.1.tar.bz2";
locale = "ro";
arch = "linux-i686";
sha256 = "7e84c211675cbd59e805ffa499663b3c02dbc2075f2b734eaa9f41862e59c59f";
sha256 = "64d36d6c811748b6bcb084c1a8573d9657accb9258fa384687ca8074ceb0a905";
}
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/78.9.0/linux-i686/ru/thunderbird-78.9.0.tar.bz2";
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/78.9.1/linux-i686/ru/thunderbird-78.9.1.tar.bz2";
locale = "ru";
arch = "linux-i686";
sha256 = "c9374d0b813baa7aa837e2283d75c9c47d75fca7bfc640be4782d90b480fa145";
sha256 = "e6fe0da07d30ac884c04448b7d7b0f2010948ae35184b16b6f3df2f784f6fefc";
}
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/78.9.0/linux-i686/si/thunderbird-78.9.0.tar.bz2";
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/78.9.1/linux-i686/si/thunderbird-78.9.1.tar.bz2";
locale = "si";
arch = "linux-i686";
sha256 = "ac8ff38bf196886f8b95c34a07ed701416c58b78758517377f6d8eefc85050ad";
sha256 = "7ae069a1bd4020c1bedf951a9d097a95f784388d850e19514629d9b5f2a23a13";
}
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/78.9.0/linux-i686/sk/thunderbird-78.9.0.tar.bz2";
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/78.9.1/linux-i686/sk/thunderbird-78.9.1.tar.bz2";
locale = "sk";
arch = "linux-i686";
sha256 = "dd44494bec41af06317266ee7d8f8f16ac6c648728636aa68c93f57ca9594231";
sha256 = "5c07370cfd51774dd7333e68a61f29aeb4108303f891e14471909477d5d2c165";
}
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/78.9.0/linux-i686/sl/thunderbird-78.9.0.tar.bz2";
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/78.9.1/linux-i686/sl/thunderbird-78.9.1.tar.bz2";
locale = "sl";
arch = "linux-i686";
sha256 = "2be1af23f71b22812a90ab2be33649ad53bf2d14acbbcc9540b835eade0fd9bf";
sha256 = "936e9be71d2881151de6ceda8eec86cc7342f56f3947c9fe48f59500c83cfcb2";
}
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/78.9.0/linux-i686/sq/thunderbird-78.9.0.tar.bz2";
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/78.9.1/linux-i686/sq/thunderbird-78.9.1.tar.bz2";
locale = "sq";
arch = "linux-i686";
sha256 = "5c65db4fcc190408aa8a1c5f0170ede3f86f1c9f07dacc6fd7a9aa54bff533d1";
sha256 = "309857b9ab66ec1ae407b286bd4f75a519d6afadf25cb64662dd369e831d0996";
}
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/78.9.0/linux-i686/sr/thunderbird-78.9.0.tar.bz2";
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/78.9.1/linux-i686/sr/thunderbird-78.9.1.tar.bz2";
locale = "sr";
arch = "linux-i686";
sha256 = "7a42279c8a4352c18d583503b2324f5dd98b6c927582fa1d5e8cd72a5b1ca782";
sha256 = "5c437425b529b838d0895261a237d42423aad24fd5fbb5bc66cc305de30bfef9";
}
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/78.9.0/linux-i686/sv-SE/thunderbird-78.9.0.tar.bz2";
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/78.9.1/linux-i686/sv-SE/thunderbird-78.9.1.tar.bz2";
locale = "sv-SE";
arch = "linux-i686";
sha256 = "3f508f801f1f4afc477ee1a0bd81d49d957429360b9691b5945a88b609dc9a21";
sha256 = "d88378fe88c18a7f2d60d9c612b414f5706a03fb602da352393e1745bc6b2070";
}
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/78.9.0/linux-i686/th/thunderbird-78.9.0.tar.bz2";
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/78.9.1/linux-i686/th/thunderbird-78.9.1.tar.bz2";
locale = "th";
arch = "linux-i686";
sha256 = "bd50cac75236ee9e1ad7226c605b37cc2f4aa57eafc4978af9f2563aff7dda0c";
sha256 = "197686b485f5d2573fc7fdf8104bc10d81b4100bc4875dc6162365e933d07256";
}
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/78.9.0/linux-i686/tr/thunderbird-78.9.0.tar.bz2";
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/78.9.1/linux-i686/tr/thunderbird-78.9.1.tar.bz2";
locale = "tr";
arch = "linux-i686";
sha256 = "af134487b9c2d6f84df56e2da1fcbc7b4abd3960fa3d11a366281768812fd9e6";
sha256 = "96eddab994d3aaf57b933b8a7e1f3ca3036077c3c67c13d22c629314f05933d4";
}
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/78.9.0/linux-i686/uk/thunderbird-78.9.0.tar.bz2";
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/78.9.1/linux-i686/uk/thunderbird-78.9.1.tar.bz2";
locale = "uk";
arch = "linux-i686";
sha256 = "a094a6fe935b002805252ad4694a15231587a66c31cff3064c2842332f1e82ae";
sha256 = "a8170a0396763696a8ebded65e1761652b25371613dc28b3cdc6a312eb9da996";
}
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/78.9.0/linux-i686/uz/thunderbird-78.9.0.tar.bz2";
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/78.9.1/linux-i686/uz/thunderbird-78.9.1.tar.bz2";
locale = "uz";
arch = "linux-i686";
sha256 = "6b8b7622374c92036828990db1de3042e1a7cebf12974d30d73dcdd0e564d707";
sha256 = "6de38d66847d61dcd50f0822374b3a5857272b4e74f7dae308ba3c32d42228c0";
}
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/78.9.0/linux-i686/vi/thunderbird-78.9.0.tar.bz2";
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/78.9.1/linux-i686/vi/thunderbird-78.9.1.tar.bz2";
locale = "vi";
arch = "linux-i686";
sha256 = "4ffcd1d5f21145f857ee525169fe59ee8a1cdef6a1c4f3cc1918be1fc7c66e6a";
sha256 = "1a5814a3a19d91eb940abf956d401b83717706b99c976376ff64c4ceb0ed12e6";
}
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/78.9.0/linux-i686/zh-CN/thunderbird-78.9.0.tar.bz2";
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/78.9.1/linux-i686/zh-CN/thunderbird-78.9.1.tar.bz2";
locale = "zh-CN";
arch = "linux-i686";
sha256 = "8cd65c054b6fefcbd0ac9a057e277009c732af6baef08ccb3f57bee73b75ae20";
sha256 = "2d365539626c4f718b0e558f02827385749e6df507c81f411f688a6b43e1c4e5";
}
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/78.9.0/linux-i686/zh-TW/thunderbird-78.9.0.tar.bz2";
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/78.9.1/linux-i686/zh-TW/thunderbird-78.9.1.tar.bz2";
locale = "zh-TW";
arch = "linux-i686";
sha256 = "1e39b1e38bfcc1735801dcd6c073ba1eeb344b23d9e859495947a37d95a4b3b8";
sha256 = "6003512f81b9d73363bffa38be003adc684456b75017222c2e324659d94f7735";
}
];
}

View File

@ -73,13 +73,13 @@ assert waylandSupport -> gtk3Support == true;
stdenv.mkDerivation rec {
pname = "thunderbird";
version = "78.9.0";
version = "78.9.1";
src = fetchurl {
url =
"mirror://mozilla/thunderbird/releases/${version}/source/thunderbird-${version}.source.tar.xz";
sha512 =
"35n9l1kjx52davwf1k5gdx2y81hws3mfb5755464z9db48n0vfj756jlg9d8f2m2s29js27bdswl64mralw4j085dl11661g7p9ypzs";
"3370ngycp6syvxfnindzz06xg39vb2knfi2zshsm87aqrapk52vmfbdagv5a85vwlmd2h5gd47zcmz2mj5360mcfxlc380hrqks69zs";
};
nativeBuildInputs = [

View File

@ -5,15 +5,15 @@
stdenv.mkDerivation rec {
pname = "aws-workspaces";
version = "3.1.3.925";
version = "3.1.5.1105";
src = fetchurl {
# ref https://d3nt0h4h6pmmc4.cloudfront.net/ubuntu/dists/bionic/main/binary-amd64/Packages
urls = [
"https://d3nt0h4h6pmmc4.cloudfront.net/ubuntu/dists/bionic/main/binary-amd64/workspacesclient_${version}_amd64.deb"
"https://web.archive.org/web/20210307233836/https://d3nt0h4h6pmmc4.cloudfront.net/ubuntu/dists/bionic/main/binary-amd64/workspacesclient_${version}_amd64.deb"
"https://web.archive.org/web/20210411145948/https://d3nt0h4h6pmmc4.cloudfront.net/ubuntu/dists/bionic/main/binary-amd64/workspacesclient_${version}_amd64.deb"
];
sha256 = "5b57edb4f6f8c950164fd8104bf62df4c452ab5b16cb65d48db3636959a0f0ad";
sha256 = "08c8912502d27e61cc2399bf99947e26c1daa1f317d5aa8cc7348d7bf8734e1b";
};
nativeBuildInputs = [

View File

@ -2,16 +2,16 @@
buildGoModule rec {
pname = "seaweedfs";
version = "2.35";
version = "2.36";
src = fetchFromGitHub {
owner = "chrislusf";
repo = "seaweedfs";
rev = version;
sha256 = "sha256-J0vwc/sabc6T8+eh94luQdnVltmThapYwLCdyGjCnSc=";
sha256 = "sha256-BVn+mV5SjyODcT+O8LXfGA42/Si5+GrdkjP0tAPiuTM=";
};
vendorSha256 = "sha256-u1Aqcm6oJ1y2dVP9BJXV7/1nhNxEOtgZQppoA+cXbD0=";
vendorSha256 = "sha256-qdgnoh+53o3idCfpkEFGK88aUVb2F6oHlSRZncs2hyY=";
subPackages = [ "weed" ];

View File

@ -1,17 +0,0 @@
diff --git a/build.go b/build.go
index c8a5c1cf..d75a8491 100644
--- a/build.go
+++ b/build.go
@@ -202,6 +202,12 @@ var targets = map[string]target{
{src: "AUTHORS", dst: "deb/usr/share/doc/syncthing-relaypoolsrv/AUTHORS.txt", perm: 0644},
},
},
+ "stcli": {
+ name: "stcli",
+ description: "Syncthing CLI",
+ buildPkgs: []string{"github.com/syncthing/syncthing/cmd/stcli"},
+ binaryName: "stcli",
+ },
}
// These are repos we need to clone to run "go generate"

View File

@ -3,23 +3,20 @@
let
common = { stname, target, postInstall ? "" }:
buildGoModule rec {
version = "1.14.0";
name = "${stname}-${version}";
pname = stname;
version = "1.15.1";
src = fetchFromGitHub {
owner = "syncthing";
repo = "syncthing";
rev = "v${version}";
sha256 = "1nkjbikin341v74fcwdaa2v5f3zhd8xr6pjhpka1fdw6vvnn4lnd";
sha256 = "sha256-d7b1hqW0ZWg74DyW1ZYMT7sIR7H89Ph38XE2Mhh7ySg=";
};
vendorSha256 = "1kr6yyigi7bbi4xwpk009q801wvmf3aaw4m40ki0s6gjn0wjl4j3";
vendorSha256 = "sha256-00DdGJNCZ94Wj6yvVXJYNJZEiGxYbqTkX6wwon0O1tc=";
doCheck = false;
patches = [
./add-stcli-target.patch
];
BUILD_USER="nix";
BUILD_HOST="nix";
@ -83,12 +80,6 @@ in {
'';
};
syncthing-cli = common {
stname = "syncthing-cli";
target = "stcli";
};
syncthing-discovery = common {
stname = "syncthing-discovery";
target = "stdiscosrv";

View File

@ -13,17 +13,17 @@ python3.pkgs.buildPythonApplication rec {
propagatedBuildInputs = with python3.pkgs; [
Babel
cheroot
flaskbabel
flask
jinja2
beancount
cheroot
click
flask
flaskbabel
jaraco_functools
jinja2
markdown2
ply
simplejson
werkzeug
jaraco_functools
];
checkInputs = with python3.pkgs; [
@ -39,10 +39,11 @@ python3.pkgs.buildPythonApplication rec {
"test_cli"
];
meta = {
homepage = "https://beancount.github.io/fava";
meta = with lib; {
description = "Web interface for beancount";
license = lib.licenses.mit;
maintainers = with lib.maintainers; [ matthiasbeyer ];
homepage = "https://beancount.github.io/fava";
changelog = "https://beancount.github.io/fava/changelog.html";
license = licenses.mit;
maintainers = with maintainers; [ bhipple ];
};
}

View File

@ -0,0 +1,45 @@
{ stdenv, lib, fetchFromGitHub, meson, gettext, glib, gjs, ninja, python3, gtk3
, webkitgtk, gsettings-desktop-schemas, wrapGAppsHook, desktop-file-utils
, gobject-introspection }:
stdenv.mkDerivation rec {
pname = "foliate";
version = "2.6.3";
src = fetchFromGitHub {
owner = "johnfactotum";
repo = pname;
rev = version;
sha256 = "0ribqaxl8g1i83fxbn288afwbzzls48ni57xqi07d19p9ka892mr";
};
nativeBuildInputs = [ meson ninja python3 wrapGAppsHook ];
postPatch = ''
patchShebangs build-aux/meson/postinstall.py
'';
postFixup = ''
echo "fixing wrapper"
sed -i "1 a imports.package._findEffectiveEntryPointName = () => 'com.github.johnfactotum.Foliate';" $out/bin/.com.github.johnfactotum.Foliate-wrapped
ln -s $out/bin/com.github.johnfactotum.Foliate $out/bin/foliate
'';
buildInputs = [
gettext
glib
gjs
gtk3
webkitgtk
desktop-file-utils
gobject-introspection
gsettings-desktop-schemas
];
meta = with lib; {
description = "A simple and modern GTK eBook reader";
homepage = "https://johnfactotum.github.io/foliate/";
license = licenses.gpl3Only;
maintainers = with maintainers; [ onny ];
};
}

View File

@ -16,13 +16,13 @@
python3Packages.buildPythonApplication rec {
pname = "gtg";
version = "unstable-2020-10-22";
version = "0.5";
src = fetchFromGitHub {
owner = "getting-things-gnome";
repo = "gtg";
rev = "144814c16723fa9d00e17e047df5d79ab443fc5f";
sha256 = "1lpanfbj8y8b6cqp92lgbvfs8irrc5bsdffzcjcycazv19qm7z2n";
rev = "v${version}";
sha256 = "0b2slm7kjq6q8c7v4m7aqc8m1ynjxn3bl7445srpv1xc0dilq403";
};
@ -56,6 +56,10 @@ python3Packages.buildPythonApplication rec {
xvfb_run
];
preBuild = ''
export HOME="$TMP"
'';
format = "other";
strictDeps = false; # gobject-introspection does not run with strictDeps (https://github.com/NixOS/nixpkgs/issues/56943)

View File

@ -0,0 +1,51 @@
{ lib, mkDerivation, fetchFromGitHub, qmake, qtsvg, qtcreator, poppler, libzip, pkg-config }:
mkDerivation rec {
pname = "kitsas";
version = "2.3";
src = fetchFromGitHub {
owner = "artoh";
repo = "kitupiikki";
rev = "v${version}";
sha256 = "1qac6cxkb45rs5pschsf2rvpa789g27shmrwpshwahqzhw42xvgl";
};
nativeBuildInputs = [ pkg-config ];
buildInputs = [ qmake qtsvg poppler libzip ];
# We use a separate build-dir as otherwise ld seems to get confused between
# directory and executable name on buildPhase.
preConfigure = ''
mkdir build-linux
cd build-linux
'';
qmakeFlags = [
"../kitsas/kitsas.pro"
"-spec"
"linux-g++"
"CONFIG+=release"
];
preFixup = ''
make clean
rm Makefile
'';
installPhase = ''
mkdir -p $out/bin $out/share/applications
cp kitsas $out/bin
cp $src/kitsas.png $out/share/applications
cp $src/kitsas.desktop $out/share/applications
'';
meta = with lib; {
homepage = "https://github.com/artoh/kitupiikki";
description = "An accounting tool suitable for Finnish associations and small business";
maintainers = with maintainers; [ gspia ];
license = licenses.gpl3Plus;
platforms = platforms.linux;
};
}

View File

@ -2,13 +2,13 @@
mkDerivation rec {
pname = "qownnotes";
version = "21.3.2";
version = "21.4.0";
src = fetchurl {
url = "https://download.tuxfamily.org/${pname}/src/${pname}-${version}.tar.xz";
# Can grab official version like so:
# $ curl https://download.tuxfamily.org/qownnotes/src/qownnotes-21.3.2.tar.xz.sha256
sha256 = "a8e8ab2ca1ef6684407adeb8fc63abcafff407a367471e053c583a1c4215e5ee";
# $ curl https://download.tuxfamily.org/qownnotes/src/qownnotes-21.4.0.tar.xz.sha256
sha256 = "bda454031a79a768b472677036ada7501ea430482277f1694757066922428eec";
};
nativeBuildInputs = [ qmake qttools ];

View File

@ -4,26 +4,22 @@ with pythonPackages;
buildPythonApplication rec {
pname = "watson";
version = "1.10.0";
version = "2.0.0";
src = fetchFromGitHub {
owner = "TailorDev";
repo = "Watson";
rev = version;
sha256 = "1s0k86ldqky6avwjaxkw1y02wyf59qwqldcahy3lhjn1b5dgsb3s";
sha256 = "1yxqjirv7cpg4hqj4l3a53p3p3kl82bcx6drgvl9v849vcc3l7s0";
};
checkPhase = ''
pytest -vs tests
'';
postInstall = ''
installShellCompletion --bash --name watson watson.completion
installShellCompletion --zsh --name _watson watson.zsh-completion
'';
checkInputs = [ py pytest pytest-datafiles pytest-mock pytestrunner ];
propagatedBuildInputs = [ arrow click click-didyoumean requests ];
checkInputs = [ pytestCheckHook pytest-mock mock pytest-datafiles ];
propagatedBuildInputs = [ arrow_1 click click-didyoumean requests ];
nativeBuildInputs = [ installShellFiles ];
meta = with lib; {

View File

@ -1,75 +1,37 @@
{ lib, stdenv, fetchurl, freeglut, gtk2, gtkglext, libjpeg_turbo, libtheora, libXmu
, lua, libGLU, libGL, pkg-config, perl, autoreconfHook
{ lib, stdenv, fetchFromGitHub, pkg-config, freeglut, gtk2, gtkglext
, libjpeg_turbo, libtheora, libXmu, lua, libGLU, libGL, perl, autoreconfHook
}:
let
name = "celestia-1.6.1";
stdenv.mkDerivation rec {
pname = "celestia";
version = "1.6.2.2";
gcc46Patch = fetchurl {
url = "https://projects.archlinux.org/svntogit/packages.git/plain/trunk/celestia-1.6.1-gcc46.patch?h=packages/celestia";
sha256 = "0my7dpyh5wpz5df7bjhwb4db3ci2rn8ib1nkjv15fbp1g76bxfaz";
name = "celestia-1.6.1-gcc46.patch";
src = fetchFromGitHub {
owner = "CelestiaProject";
repo = "Celestia";
rev = version;
sha256 = "1s9fgxh6i3x1sy75y5wcidi2mjrf5xj71dd4n6rg0hkps441sgsp";
};
libpng15Patch = fetchurl {
url = "https://projects.archlinux.org/svntogit/packages.git/plain/trunk/celestia-1.6.1-libpng15.patch?h=packages/celestia";
sha256 = "1jrmbwmvs9b6k2b2g4104q22v4vqi0wfpz6hmfhniaq34626jcms";
name = "celestia-1.6.1-libpng15.patch";
};
libpng16Patch = fetchurl {
url = "https://projects.archlinux.org/svntogit/packages.git/plain/trunk/celestia-1.6.1-libpng16.patch?h=packages/celestia";
sha256 = "1q85prw4ci6d50lri8w1jm19pghxw96qizf5dl4g0j86rlhlkc8f";
name = "celestia-1.6.1-libpng16.patch";
};
linkingPatch = fetchurl {
url = "https://projects.archlinux.org/svntogit/packages.git/plain/trunk/celestia-1.6.1-linking.patch?h=packages/celestia";
sha256 = "1m8xyq26nm352828bp12c3b8f6m9bys9fwfxbfzqppllk7il2f24";
name = "celestia-1.6.1-linking.patch";
};
gcc47Patch = fetchurl {
url = "https://projects.archlinux.org/svntogit/packages.git/plain/trunk/gcc-4.7-fixes.diff?h=packages/celestia";
sha256 = "1na26c7pv9qfv8a981m1zvglhv05r3h8513xqjra91qhhzx8wr8n";
name = "gcc-4.7-fixes.diff";
};
in
stdenv.mkDerivation {
inherit name;
src = fetchurl {
url = "mirror://sourceforge/celestia/${name}.tar.gz";
sha256 = "1i1lvhbgllsh2z8i6jj4mvrjak4a7r69psvk7syw03s4p7670mfk";
};
nativeBuildInputs = [ pkg-config ];
buildInputs = [ freeglut gtk2 gtkglext libjpeg_turbo libtheora libXmu libGLU libGL lua
perl autoreconfHook ];
patchPhase = ''
patch -Np0 -i "${gcc46Patch}"
patch -Np0 -i "${libpng15Patch}"
patch -Np2 -i "${libpng16Patch}"
patch -Np1 -i "${linkingPatch}"
patch -Np1 -i "${gcc47Patch}"
'';
nativeBuildInputs = [ pkg-config autoreconfHook ];
buildInputs = [
freeglut gtk2 gtkglext lua perl
libjpeg_turbo libtheora libXmu libGLU libGL
];
configureFlags = [
"--with-gtk"
"--with-lua=${lua}"
];
installPhase = ''make MKDIR_P="mkdir -p" install'';
enableParallelBuilding = true;
meta = {
description = "Free space simulation";
meta = with lib; {
homepage = "https://celestia.space/";
license = lib.licenses.gpl2;
platforms = lib.platforms.linux;
maintainers = [ lib.maintainers.peti ];
description = "Real-time 3D simulation of space";
changelog = "https://github.com/CelestiaProject/Celestia/releases/tag/${version}";
license = licenses.gpl2Plus;
maintainers = with maintainers; [ peti ];
platforms = platforms.linux;
};
}

View File

@ -1,17 +1,17 @@
{ lib, fetchFromGitHub, rustPlatform, openssl, pkg-config, ncurses }:
rustPlatform.buildRustPackage rec {
version = "0.5.1";
version = "0.6.0";
pname = "rink";
src = fetchFromGitHub {
owner = "tiffany352";
repo = "rink-rs";
rev = "v${version}";
sha256 = "1s67drjzd4cf93hpm7b2facfd6y1x0s60aq6pygj7i02bm0cb9l9";
sha256 = "sha256-3uhKevuUVh7AObn2GDW2T+5wttX20SbVP+sFaFj3Jmk=";
};
cargoSha256 = "1wd70y13lly7nccaqlv7w8znxfal0fzyf9d67y5c3aikj7hkzfin";
cargoSha256 = "sha256-luJzIGdcitH+PNgr86AYX6wKEkQlsRhwwylo+hzeovE=";
nativeBuildInputs = [ pkg-config ];
buildInputs = [ openssl ncurses ];
@ -22,7 +22,7 @@ rustPlatform.buildRustPackage rec {
meta = with lib; {
description = "Unit-aware calculator";
homepage = "https://rinkcalc.app";
license = with licenses; [ mpl20 gpl3 ];
license = with licenses; [ mpl20 gpl3Plus ];
maintainers = with maintainers; [ sb0 Br1ght0ne ];
};
}

View File

@ -1,16 +1,16 @@
{ lib, stdenv, rustPlatform, fetchFromGitHub, libiconv, perl, python3, Security, AppKit, openssl, xclip }:
rustPlatform.buildRustPackage rec {
pname = "gitui";
version = "0.13.0";
version = "0.14.0";
src = fetchFromGitHub {
owner = "extrawurst";
repo = pname;
rev = "v${version}";
sha256 = "0fc8vxpy1zarxd5lqgwdj2jzv35qsxaydczg0qkws1f88m43n33x";
sha256 = "1ymvvmryzv5is535bjg8h9p7gsxygyawnpyd0hicdrdiwml5mgsq";
};
cargoSha256 = "1j5cf5z8ksf5kvi6zfrabv1c127yb6s0dpkl9p8vqdgdc6mzghvd";
cargoSha256 = "14hf3xkdvk2mgag5pzai5382h3g79fq76s0p9pj8q9v8q21wg6pr";
nativeBuildInputs = [ python3 perl ];
buildInputs = [ openssl ]

View File

@ -2,13 +2,13 @@
python3Packages.buildPythonApplication rec {
pname = "stgit";
version = "0.23";
version = "1.0";
src = fetchFromGitHub {
owner = "ctmarinas";
owner = "stacked-git";
repo = "stgit";
rev = "v${version}";
sha256 = "1r9y8qnl6kdvq61788pnfhhgyv2xrnyrizbhy4qz4l1bpqkwfr2r";
sha256 = "16q8994widg040n1ag4m82kbn3r02n39ah7dvwa7aixhw5y35vlm";
};
nativeBuildInputs = [ installShellFiles ];
@ -23,7 +23,7 @@ python3Packages.buildPythonApplication rec {
meta = with lib; {
description = "A patch manager implemented on top of Git";
homepage = "http://procode.org/stgit/";
homepage = "https://stacked-git.github.io/";
license = licenses.gpl2;
platforms = platforms.unix;
};

View File

@ -2,7 +2,7 @@
buildPythonApplication rec {
pname = "git-review";
version = "1.28.0";
version = "2.0.0";
# Manually set version because prb wants to get it from the git
# upstream repository (and we are installing from tarball instead)
@ -10,7 +10,7 @@ buildPythonApplication rec {
src = fetchurl {
url = "https://opendev.org/opendev/${pname}/archive/${version}.tar.gz";
sha256 = "1y1jzb0hlprynwwr4q5y4x06641qrhj0k69mclabnmhfam9g8ygm";
sha256 = "0dkyd5g2xmvsa114is3cd9qmki3hi6c06wjnra0f4xq3aqm0ajnj";
};
propagatedBuildInputs = [ pbr requests setuptools ];

View File

@ -16,12 +16,12 @@ with lib;
buildGoPackage rec {
pname = "gitea";
version = "1.13.7";
version = "1.14.0";
# not fetching directly from the git repo, because that lacks several vendor files for the web UI
src = fetchurl {
url = "https://github.com/go-gitea/gitea/releases/download/v${version}/gitea-src-${version}.tar.gz";
sha256 = "sha256-jJbX+kcXqd1v8aXNhmt24mq9mxOpTogCVm263rHVGHw=";
sha256 = "sha256-SE+YqcRNkhRQXDzgv72YrQX9bG/URYj4NAFvTg4bE3Y=";
};
unpackPhase = ''

View File

@ -0,0 +1,58 @@
{ lib, fetchFromGitHub, appstream-glib, desktop-file-utils, glib
, gobject-introspection, gst_all_1, gtk3, libhandy, librsvg, meson, ninja
, pkg-config, python3, wrapGAppsHook }:
python3.pkgs.buildPythonApplication rec {
pname = "kooha";
version = "1.1.1";
format = "other";
src = fetchFromGitHub {
owner = "SeaDve";
repo = "Kooha";
rev = "v${version}";
sha256 = "05515xccs6y3wy28a6lkyn2jgi0fli53548l8qs73li8mdbxzd4c";
};
buildInputs = [
glib
gobject-introspection
gst_all_1.gstreamer
gst_all_1.gst-plugins-base
gtk3
libhandy
librsvg
];
nativeBuildInputs = [
appstream-glib
desktop-file-utils
meson
ninja
python3
pkg-config
wrapGAppsHook
];
propagatedBuildInputs = [ python3.pkgs.pygobject3 ];
strictDeps = false;
buildPhase = ''
export GST_PLUGIN_SYSTEM_PATH_1_0="$out/lib/gstreamer-1.0/:$GST_PLUGIN_SYSTEM_PATH_1_0"
'';
# Fixes https://github.com/NixOS/nixpkgs/issues/31168
postPatch = ''
chmod +x build-aux/meson/postinstall.py
patchShebangs build-aux/meson/postinstall.py
'';
meta = with lib; {
description = "Simple screen recorder";
homepage = "https://github.com/SeaDve/Kooha";
license = licenses.gpl3Only;
platforms = platforms.linux;
maintainers = with maintainers; [ austinbutler ];
};
}

View File

@ -0,0 +1,43 @@
{ lib, stdenv, fetchFromGitHub, obs-studio, cmake, qtbase }:
stdenv.mkDerivation rec {
pname = "obs-multi-rtmp";
version = "0.2.6";
src = fetchFromGitHub {
owner = "sorayuki";
repo = "obs-multi-rtmp";
rev = version;
sha256 = "sha256-SMcVL54HwFIc7/wejEol2XiZhlZCMVCwHHtIKJ/CoYY=";
};
nativeBuildInputs = [ cmake ];
buildInputs = [ obs-studio qtbase ];
cmakeFlags = [
"-DLIBOBS_INCLUDE_DIR=${obs-studio}/include/obs"
];
dontWrapQtApps = true;
# obs-studio expects the shared object to be located in bin/32bit or bin/64bit
# https://github.com/obsproject/obs-studio/blob/d60c736cb0ec0491013293c8a483d3a6573165cb/libobs/obs-nix.c#L48
postInstall = let
pluginPath = {
i686-linux = "bin/32bit";
x86_64-linux = "bin/64bit";
}.${stdenv.targetPlatform.system} or (throw "Unsupported system: ${stdenv.targetPlatform.system}");
in ''
mkdir -p $out/share/obs/obs-plugins/obs-multi-rtmp/${pluginPath}
ln -s $out/lib/obs-plugins/obs-multi-rtmp.so $out/share/obs/obs-plugins/obs-multi-rtmp/${pluginPath}
'';
meta = with lib; {
homepage = "https://github.com/sorayuki/obs-multi-rtmp/";
changelog = "https://github.com/sorayuki/obs-multi-rtmp/releases/tag/${version}";
description = "Multi-site simultaneous broadcast plugin for OBS Studio";
license = licenses.gpl2Only;
maintainers = with maintainers; [ jk ];
platforms = [ "x86_64-linux" "i686-linux" ];
};
}

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