mirror of
https://github.com/NixOS/nixpkgs.git
synced 2024-11-29 18:33:00 +00:00
Merge master into haskell-updates
This commit is contained in:
commit
a1486d7898
@ -303,11 +303,8 @@ You can use the `dhall-to-nixpkgs` command-line utility to automate
|
|||||||
packaging Dhall code. For example:
|
packaging Dhall code. For example:
|
||||||
|
|
||||||
```ShellSession
|
```ShellSession
|
||||||
$ nix-env --install --attr haskellPackages.dhall-nixpkgs
|
$ nix-shell -p haskellPackages.dhall-nixpkgs nix-prefetch-git
|
||||||
|
[nix-shell]$ dhall-to-nixpkgs github https://github.com/Gabriella439/dhall-semver.git
|
||||||
$ nix-env --install --attr nix-prefetch-git # Used by dhall-to-nixpkgs
|
|
||||||
|
|
||||||
$ dhall-to-nixpkgs github https://github.com/Gabriella439/dhall-semver.git
|
|
||||||
{ buildDhallGitHubPackage, Prelude }:
|
{ buildDhallGitHubPackage, Prelude }:
|
||||||
buildDhallGitHubPackage {
|
buildDhallGitHubPackage {
|
||||||
name = "dhall-semver";
|
name = "dhall-semver";
|
||||||
@ -325,6 +322,10 @@ $ dhall-to-nixpkgs github https://github.com/Gabriella439/dhall-semver.git
|
|||||||
}
|
}
|
||||||
```
|
```
|
||||||
|
|
||||||
|
:::{.note}
|
||||||
|
`nix-prefetch-git` has to be in `$PATH` for `dhall-to-nixpkgs` to work.
|
||||||
|
:::
|
||||||
|
|
||||||
The utility takes care of automatically detecting remote imports and converting
|
The utility takes care of automatically detecting remote imports and converting
|
||||||
them to package dependencies. You can also use the utility on local
|
them to package dependencies. You can also use the utility on local
|
||||||
Dhall directories, too:
|
Dhall directories, too:
|
||||||
|
@ -459,7 +459,6 @@ are used in [`buildPythonPackage`](#buildpythonpackage-function).
|
|||||||
with the `eggInstallHook`
|
with the `eggInstallHook`
|
||||||
- `eggBuildHook` to skip building for eggs.
|
- `eggBuildHook` to skip building for eggs.
|
||||||
- `eggInstallHook` to install eggs.
|
- `eggInstallHook` to install eggs.
|
||||||
- `flitBuildHook` to build a wheel using `flit`.
|
|
||||||
- `pipBuildHook` to build a wheel using `pip` and PEP 517. Note a build system
|
- `pipBuildHook` to build a wheel using `pip` and PEP 517. Note a build system
|
||||||
(e.g. `setuptools` or `flit`) should still be added as `nativeBuildInput`.
|
(e.g. `setuptools` or `flit`) should still be added as `nativeBuildInput`.
|
||||||
- `pypaBuildHook` to build a wheel using
|
- `pypaBuildHook` to build a wheel using
|
||||||
|
@ -1,7 +1,5 @@
|
|||||||
# Multiple-output packages {#chap-multiple-output}
|
# Multiple-output packages {#chap-multiple-output}
|
||||||
|
|
||||||
## Introduction {#sec-multiple-outputs-introduction}
|
|
||||||
|
|
||||||
The Nix language allows a derivation to produce multiple outputs, which is similar to what is utilized by other Linux distribution packaging systems. The outputs reside in separate Nix store paths, so they can be mostly handled independently of each other, including passing to build inputs, garbage collection or binary substitution. The exception is that building from source always produces all the outputs.
|
The Nix language allows a derivation to produce multiple outputs, which is similar to what is utilized by other Linux distribution packaging systems. The outputs reside in separate Nix store paths, so they can be mostly handled independently of each other, including passing to build inputs, garbage collection or binary substitution. The exception is that building from source always produces all the outputs.
|
||||||
|
|
||||||
The main motivation is to save disk space by reducing runtime closure sizes; consequently also sizes of substituted binaries get reduced. Splitting can be used to have more granular runtime dependencies, for example the typical reduction is to split away development-only files, as those are typically not needed during runtime. As a result, closure sizes of many packages can get reduced to a half or even much less.
|
The main motivation is to save disk space by reducing runtime closure sizes; consequently also sizes of substituted binaries get reduced. Splitting can be used to have more granular runtime dependencies, for example the typical reduction is to split away development-only files, as those are typically not needed during runtime. As a result, closure sizes of many packages can get reduced to a half or even much less.
|
||||||
@ -10,44 +8,12 @@ The main motivation is to save disk space by reducing runtime closure sizes; con
|
|||||||
The reduction effects could be instead achieved by building the parts in completely separate derivations. That would often additionally reduce build-time closures, but it tends to be much harder to write such derivations, as build systems typically assume all parts are being built at once. This compromise approach of single source package producing multiple binary packages is also utilized often by rpm and deb.
|
The reduction effects could be instead achieved by building the parts in completely separate derivations. That would often additionally reduce build-time closures, but it tends to be much harder to write such derivations, as build systems typically assume all parts are being built at once. This compromise approach of single source package producing multiple binary packages is also utilized often by rpm and deb.
|
||||||
:::
|
:::
|
||||||
|
|
||||||
A number of attributes can be used to work with a derivation with multiple outputs. The attribute `outputs` is a list of strings, which are the names of the outputs. For each of these names, an identically named attribute is created, corresponding to that output. The attribute `meta.outputsToInstall` is used to determine the default set of outputs to install when using the derivation name unqualified.
|
A number of attributes can be used to work with a derivation with multiple outputs.
|
||||||
|
The attribute `outputs` is a list of strings, which are the names of the outputs.
|
||||||
|
For each of these names, an identically named attribute is created, corresponding to that output.
|
||||||
|
|
||||||
## Installing a split package {#sec-multiple-outputs-installing}
|
The attribute `meta.outputsToInstall` is used to determine the [default set of outputs to install](https://github.com/NixOS/nixpkgs/blob/08c3198f1c6fd89a09f8f0ea09b425028a34de3e/pkgs/stdenv/generic/check-meta.nix#L411-L426) when using the derivation name unqualified:
|
||||||
|
`bin`, or `out`, or the first specified output; as well as `man` if that is specified.
|
||||||
When installing a package with multiple outputs, the package’s `meta.outputsToInstall` attribute determines which outputs are actually installed. `meta.outputsToInstall` is a list whose [default installs binaries and the associated man pages](https://github.com/NixOS/nixpkgs/blob/f1680774340d5443a1409c3421ced84ac1163ba9/pkgs/stdenv/generic/make-derivation.nix#L310-L320). The following sections describe ways to install different outputs.
|
|
||||||
|
|
||||||
### Selecting outputs to install via NixOS {#sec-multiple-outputs-installing-nixos}
|
|
||||||
|
|
||||||
NixOS provides two ways to select the outputs to install for packages listed in `environment.systemPackages`:
|
|
||||||
|
|
||||||
- The configuration option `environment.extraOutputsToInstall` is appended to each package’s `meta.outputsToInstall` attribute to determine the outputs to install. It can for example be used to install `info` documentation or debug symbols for all packages.
|
|
||||||
|
|
||||||
- The outputs can be listed as packages in `environment.systemPackages`. For example, the `"out"` and `"info"` outputs for the `coreutils` package can be installed by including `coreutils` and `coreutils.info` in `environment.systemPackages`.
|
|
||||||
|
|
||||||
### Selecting outputs to install via `nix-env` {#sec-multiple-outputs-installing-nix-env}
|
|
||||||
|
|
||||||
`nix-env` lacks an easy way to select the outputs to install. When installing a package, `nix-env` always installs the outputs listed in `meta.outputsToInstall`, even when the user explicitly selects an output.
|
|
||||||
|
|
||||||
::: {.warning}
|
|
||||||
`nix-env` silently disregards the outputs selected by the user, and instead installs the outputs from `meta.outputsToInstall`. For example,
|
|
||||||
|
|
||||||
```ShellSession
|
|
||||||
$ nix-env -iA nixpkgs.coreutils.info
|
|
||||||
```
|
|
||||||
|
|
||||||
installs the `"out"` output (`coreutils.meta.outputsToInstall` is `[ "out" ]`) instead of the requested `"info"`.
|
|
||||||
:::
|
|
||||||
|
|
||||||
The only recourse to select an output with `nix-env` is to override the package’s `meta.outputsToInstall`, using the functions described in [](#chap-overrides). For example, the following overlay adds the `"info"` output for the `coreutils` package:
|
|
||||||
|
|
||||||
```nix
|
|
||||||
self: super:
|
|
||||||
{
|
|
||||||
coreutils = super.coreutils.overrideAttrs (oldAttrs: {
|
|
||||||
meta = oldAttrs.meta // { outputsToInstall = oldAttrs.meta.outputsToInstall or [ "out" ] ++ [ "info" ]; };
|
|
||||||
});
|
|
||||||
}
|
|
||||||
```
|
|
||||||
|
|
||||||
## Using a split package {#sec-multiple-outputs-using-split-packages}
|
## Using a split package {#sec-multiple-outputs-using-split-packages}
|
||||||
|
|
||||||
|
@ -2336,6 +2336,15 @@
|
|||||||
github = "blaggacao";
|
github = "blaggacao";
|
||||||
githubId = 7548295;
|
githubId = 7548295;
|
||||||
};
|
};
|
||||||
|
blankparticle = {
|
||||||
|
name = "BlankParticle";
|
||||||
|
email = "blankparticle@gmail.com";
|
||||||
|
github = "BlankParticle";
|
||||||
|
githubId = 130567419;
|
||||||
|
keys = [{
|
||||||
|
fingerprint = "1757 64C3 7065 AA8D 614D 41C9 0ACE 126D 7B35 9261";
|
||||||
|
}];
|
||||||
|
};
|
||||||
blanky0230 = {
|
blanky0230 = {
|
||||||
email = "blanky0230@gmail.com";
|
email = "blanky0230@gmail.com";
|
||||||
github = "blanky0230";
|
github = "blanky0230";
|
||||||
@ -4549,6 +4558,16 @@
|
|||||||
fingerprint = "4749 0887 CF3B 85A1 6355 C671 78C7 DD40 DF23 FB16";
|
fingerprint = "4749 0887 CF3B 85A1 6355 C671 78C7 DD40 DF23 FB16";
|
||||||
}];
|
}];
|
||||||
};
|
};
|
||||||
|
dpc = {
|
||||||
|
email = "dpc@dpc.pw";
|
||||||
|
github = "dpc";
|
||||||
|
githubId = 9209;
|
||||||
|
matrix = "@dpc:matrix.org";
|
||||||
|
name = "Dawid Ciężarkiewicz";
|
||||||
|
keys = [{
|
||||||
|
fingerprint = "0402 11D2 0830 2D71 5792 8197 86BB 1D5B 5575 7D38";
|
||||||
|
}];
|
||||||
|
};
|
||||||
DPDmancul = {
|
DPDmancul = {
|
||||||
name = "Davide Peressoni";
|
name = "Davide Peressoni";
|
||||||
email = "davide.peressoni@tuta.io";
|
email = "davide.peressoni@tuta.io";
|
||||||
|
@ -127,6 +127,8 @@
|
|||||||
|
|
||||||
- `himalaya` has been updated to `0.8.0`, which drops the native TLS support (in favor of Rustls) and add OAuth 2.0 support. See the [release note](https://github.com/soywod/himalaya/releases/tag/v0.8.0) for more details.
|
- `himalaya` has been updated to `0.8.0`, which drops the native TLS support (in favor of Rustls) and add OAuth 2.0 support. See the [release note](https://github.com/soywod/himalaya/releases/tag/v0.8.0) for more details.
|
||||||
|
|
||||||
|
- `nix-prefetch-git` now ignores global and user git config, to improve reproducibility.
|
||||||
|
|
||||||
- The [services.caddy.acmeCA](#opt-services.caddy.acmeCA) option now defaults to `null` instead of `"https://acme-v02.api.letsencrypt.org/directory"`, to use all of Caddy's default ACME CAs and enable Caddy's automatic issuer fallback feature by default, as recommended by upstream.
|
- The [services.caddy.acmeCA](#opt-services.caddy.acmeCA) option now defaults to `null` instead of `"https://acme-v02.api.letsencrypt.org/directory"`, to use all of Caddy's default ACME CAs and enable Caddy's automatic issuer fallback feature by default, as recommended by upstream.
|
||||||
|
|
||||||
- The default priorities of [`services.nextcloud.phpOptions`](#opt-services.nextcloud.phpOptions) have changed. This means that e.g.
|
- The default priorities of [`services.nextcloud.phpOptions`](#opt-services.nextcloud.phpOptions) have changed. This means that e.g.
|
||||||
@ -270,8 +272,6 @@ The module update takes care of the new config syntax and the data itself (user
|
|||||||
|
|
||||||
- `services.nginx` gained a `defaultListen` option at server-level with support for PROXY protocol listeners, also `proxyProtocol` is now exposed in `services.nginx.virtualHosts.<name>.listen` option. It is now possible to run PROXY listeners and non-PROXY listeners at a server-level, see [#213510](https://github.com/NixOS/nixpkgs/pull/213510/) for more details.
|
- `services.nginx` gained a `defaultListen` option at server-level with support for PROXY protocol listeners, also `proxyProtocol` is now exposed in `services.nginx.virtualHosts.<name>.listen` option. It is now possible to run PROXY listeners and non-PROXY listeners at a server-level, see [#213510](https://github.com/NixOS/nixpkgs/pull/213510/) for more details.
|
||||||
|
|
||||||
- `generic-extlinux-compatible` bootloader (and raspberry pi with uboot) supports appending secrets to the initramfs
|
|
||||||
|
|
||||||
- `services.restic.backups` now adds wrapper scripts to your system path, which set the same environment variables as the service, so restic operations can easly be run from the command line. This behavior can be disabled by setting `createWrapper` to `false`, per backup configuration.
|
- `services.restic.backups` now adds wrapper scripts to your system path, which set the same environment variables as the service, so restic operations can easly be run from the command line. This behavior can be disabled by setting `createWrapper` to `false`, per backup configuration.
|
||||||
|
|
||||||
- `services.prometheus.exporters` has a new exporter to monitor electrical power consumption based on PowercapRAPL sensor called [Scaphandre](https://github.com/hubblo-org/scaphandre), see [#239803](https://github.com/NixOS/nixpkgs/pull/239803) for more details.
|
- `services.prometheus.exporters` has a new exporter to monitor electrical power consumption based on PowercapRAPL sensor called [Scaphandre](https://github.com/hubblo-org/scaphandre), see [#239803](https://github.com/NixOS/nixpkgs/pull/239803) for more details.
|
||||||
@ -280,6 +280,11 @@ The module update takes care of the new config syntax and the data itself (user
|
|||||||
|
|
||||||
- The module `services.calibre-server` has new options to configure the `host`, `port`, `auth.enable`, `auth.mode` and `auth.userDb` path, see [#216497](https://github.com/NixOS/nixpkgs/pull/216497/) for more details.
|
- The module `services.calibre-server` has new options to configure the `host`, `port`, `auth.enable`, `auth.mode` and `auth.userDb` path, see [#216497](https://github.com/NixOS/nixpkgs/pull/216497/) for more details.
|
||||||
|
|
||||||
|
- Mattermost has been upgraded to extended support version 8.1 as the previously
|
||||||
|
packaged extended support version 7.8 is [reaching end of life](https://docs.mattermost.com/upgrade/extended-support-release.html).
|
||||||
|
Migration may take some time, see the [changelog](https://docs.mattermost.com/install/self-managed-changelog.html#release-v8-1-extended-support-release)
|
||||||
|
and [important upgrade notes](https://docs.mattermost.com/upgrade/important-upgrade-notes.html).
|
||||||
|
|
||||||
- `services.prometheus.exporters` has a new [exporter](https://github.com/hipages/php-fpm_exporter) to monitor PHP-FPM processes, see [#240394](https://github.com/NixOS/nixpkgs/pull/240394) for more details.
|
- `services.prometheus.exporters` has a new [exporter](https://github.com/hipages/php-fpm_exporter) to monitor PHP-FPM processes, see [#240394](https://github.com/NixOS/nixpkgs/pull/240394) for more details.
|
||||||
|
|
||||||
- `services.github-runner` / `services.github-runners.<name>` gained the option `nodeRuntimes`. The option defaults to `[ "node20" ]`, i.e., the service supports Node.js 20 GitHub Actions only. The list of Node.js versions accepted by `nodeRuntimes` tracks the versions the upstream GitHub Actions runner supports. See [#249103](https://github.com/NixOS/nixpkgs/pull/249103) for details.
|
- `services.github-runner` / `services.github-runners.<name>` gained the option `nodeRuntimes`. The option defaults to `[ "node20" ]`, i.e., the service supports Node.js 20 GitHub Actions only. The list of Node.js versions accepted by `nodeRuntimes` tracks the versions the upstream GitHub Actions runner supports. See [#249103](https://github.com/NixOS/nixpkgs/pull/249103) for details.
|
||||||
@ -347,4 +352,6 @@ The module update takes care of the new config syntax and the data itself (user
|
|||||||
can automatically format the root device by setting
|
can automatically format the root device by setting
|
||||||
`virtualisation.fileSystems."/".autoFormat = true;`.
|
`virtualisation.fileSystems."/".autoFormat = true;`.
|
||||||
|
|
||||||
|
- `python3.pkgs.flitBuildHook` has been removed. Use `flit-core` and `format = "pyproject"` instead.
|
||||||
|
|
||||||
- The `electron` packages now places its application files in `$out/libexec/electron` instead of `$out/lib/electron`. Packages using electron-builder will fail to build and need to be adjusted by changing `lib` to `libexec`.
|
- The `electron` packages now places its application files in `$out/libexec/electron` instead of `$out/lib/electron`. Packages using electron-builder will fail to build and need to be adjusted by changing `lib` to `libexec`.
|
||||||
|
@ -116,8 +116,14 @@ in
|
|||||||
extraOutputsToInstall = mkOption {
|
extraOutputsToInstall = mkOption {
|
||||||
type = types.listOf types.str;
|
type = types.listOf types.str;
|
||||||
default = [ ];
|
default = [ ];
|
||||||
example = [ "doc" "info" "devdoc" ];
|
example = [ "dev" "info" ];
|
||||||
description = lib.mdDoc "List of additional package outputs to be symlinked into {file}`/run/current-system/sw`.";
|
description = lib.mdDoc ''
|
||||||
|
Entries listed here will be appended to the `meta.outputsToInstall` attribute for each package in `environment.systemPackages`, and the files from the corresponding derivation outputs symlinked into {file}`/run/current-system/sw`.
|
||||||
|
|
||||||
|
For example, this can be used to install the `dev` and `info` outputs for all packages in the system environment, if they are available.
|
||||||
|
|
||||||
|
To use specific outputs instead of configuring them globally, select the corresponding attribute on the package derivation, e.g. `libxml2.dev` or `coreutils.info`.
|
||||||
|
'';
|
||||||
};
|
};
|
||||||
|
|
||||||
extraSetup = mkOption {
|
extraSetup = mkOption {
|
||||||
|
@ -1,37 +1,43 @@
|
|||||||
{ config, lib, ... }:
|
{ config, options, lib, ... }:
|
||||||
with lib;
|
with lib;
|
||||||
let
|
let
|
||||||
cfg = config.hardware.cpu.amd.sev;
|
cfgSev = config.hardware.cpu.amd.sev;
|
||||||
defaultGroup = "sev";
|
cfgSevGuest = config.hardware.cpu.amd.sevGuest;
|
||||||
in
|
|
||||||
with lib; {
|
optionsFor = device: group: {
|
||||||
options.hardware.cpu.amd.sev = {
|
enable = mkEnableOption (lib.mdDoc "access to the AMD ${device} device");
|
||||||
enable = mkEnableOption (lib.mdDoc "access to the AMD SEV device");
|
|
||||||
user = mkOption {
|
user = mkOption {
|
||||||
description = lib.mdDoc "Owner to assign to the SEV device.";
|
description = lib.mdDoc "Owner to assign to the ${device} device.";
|
||||||
type = types.str;
|
type = types.str;
|
||||||
default = "root";
|
default = "root";
|
||||||
};
|
};
|
||||||
group = mkOption {
|
group = mkOption {
|
||||||
description = lib.mdDoc "Group to assign to the SEV device.";
|
description = lib.mdDoc "Group to assign to the ${device} device.";
|
||||||
type = types.str;
|
type = types.str;
|
||||||
default = defaultGroup;
|
default = group;
|
||||||
};
|
};
|
||||||
mode = mkOption {
|
mode = mkOption {
|
||||||
description = lib.mdDoc "Mode to set for the SEV device.";
|
description = lib.mdDoc "Mode to set for the ${device} device.";
|
||||||
type = types.str;
|
type = types.str;
|
||||||
default = "0660";
|
default = "0660";
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
|
in
|
||||||
|
with lib; {
|
||||||
|
options.hardware.cpu.amd.sev = optionsFor "SEV" "sev";
|
||||||
|
|
||||||
config = mkIf cfg.enable {
|
options.hardware.cpu.amd.sevGuest = optionsFor "SEV guest" "sev-guest";
|
||||||
|
|
||||||
|
config = mkMerge [
|
||||||
|
# /dev/sev
|
||||||
|
(mkIf cfgSev.enable {
|
||||||
assertions = [
|
assertions = [
|
||||||
{
|
{
|
||||||
assertion = hasAttr cfg.user config.users.users;
|
assertion = hasAttr cfgSev.user config.users.users;
|
||||||
message = "Given user does not exist";
|
message = "Given user does not exist";
|
||||||
}
|
}
|
||||||
{
|
{
|
||||||
assertion = (cfg.group == defaultGroup) || (hasAttr cfg.group config.users.groups);
|
assertion = (cfgSev.group == options.hardware.cpu.amd.sev.group.default) || (hasAttr cfgSev.group config.users.groups);
|
||||||
message = "Given group does not exist";
|
message = "Given group does not exist";
|
||||||
}
|
}
|
||||||
];
|
];
|
||||||
@ -40,12 +46,35 @@ in
|
|||||||
options kvm_amd sev=1
|
options kvm_amd sev=1
|
||||||
'';
|
'';
|
||||||
|
|
||||||
users.groups = optionalAttrs (cfg.group == defaultGroup) {
|
users.groups = optionalAttrs (cfgSev.group == options.hardware.cpu.amd.sev.group.default) {
|
||||||
"${cfg.group}" = {};
|
"${cfgSev.group}" = { };
|
||||||
};
|
};
|
||||||
|
|
||||||
services.udev.extraRules = with cfg; ''
|
services.udev.extraRules = with cfgSev; ''
|
||||||
KERNEL=="sev", OWNER="${user}", GROUP="${group}", MODE="${mode}"
|
KERNEL=="sev", OWNER="${user}", GROUP="${group}", MODE="${mode}"
|
||||||
'';
|
'';
|
||||||
};
|
})
|
||||||
|
|
||||||
|
# /dev/sev-guest
|
||||||
|
(mkIf cfgSevGuest.enable {
|
||||||
|
assertions = [
|
||||||
|
{
|
||||||
|
assertion = hasAttr cfgSevGuest.user config.users.users;
|
||||||
|
message = "Given user does not exist";
|
||||||
|
}
|
||||||
|
{
|
||||||
|
assertion = (cfgSevGuest.group == options.hardware.cpu.amd.sevGuest.group.default) || (hasAttr cfgSevGuest.group config.users.groups);
|
||||||
|
message = "Given group does not exist";
|
||||||
|
}
|
||||||
|
];
|
||||||
|
|
||||||
|
users.groups = optionalAttrs (cfgSevGuest.group == options.hardware.cpu.amd.sevGuest.group.default) {
|
||||||
|
"${cfgSevGuest.group}" = { };
|
||||||
|
};
|
||||||
|
|
||||||
|
services.udev.extraRules = with cfgSevGuest; ''
|
||||||
|
KERNEL=="sev-guest", OWNER="${user}", GROUP="${group}", MODE="${mode}"
|
||||||
|
'';
|
||||||
|
})
|
||||||
|
];
|
||||||
}
|
}
|
||||||
|
@ -499,6 +499,7 @@
|
|||||||
./services/games/quake3-server.nix
|
./services/games/quake3-server.nix
|
||||||
./services/games/teeworlds.nix
|
./services/games/teeworlds.nix
|
||||||
./services/games/terraria.nix
|
./services/games/terraria.nix
|
||||||
|
./services/games/xonotic.nix
|
||||||
./services/hardware/acpid.nix
|
./services/hardware/acpid.nix
|
||||||
./services/hardware/actkbd.nix
|
./services/hardware/actkbd.nix
|
||||||
./services/hardware/argonone.nix
|
./services/hardware/argonone.nix
|
||||||
|
198
nixos/modules/services/games/xonotic.nix
Normal file
198
nixos/modules/services/games/xonotic.nix
Normal file
@ -0,0 +1,198 @@
|
|||||||
|
{ config
|
||||||
|
, pkgs
|
||||||
|
, lib
|
||||||
|
, ...
|
||||||
|
}:
|
||||||
|
|
||||||
|
let
|
||||||
|
cfg = config.services.xonotic;
|
||||||
|
|
||||||
|
serverCfg = pkgs.writeText "xonotic-server.cfg" (
|
||||||
|
toString cfg.prependConfig
|
||||||
|
+ "\n"
|
||||||
|
+ builtins.concatStringsSep "\n" (
|
||||||
|
lib.mapAttrsToList (key: option:
|
||||||
|
let
|
||||||
|
escape = s: lib.escape [ "\"" ] s;
|
||||||
|
quote = s: "\"${s}\"";
|
||||||
|
|
||||||
|
toValue = x: quote (escape (toString x));
|
||||||
|
|
||||||
|
value = (if lib.isList option then
|
||||||
|
builtins.concatStringsSep
|
||||||
|
" "
|
||||||
|
(builtins.map (x: toValue x) option)
|
||||||
|
else
|
||||||
|
toValue option
|
||||||
|
);
|
||||||
|
in
|
||||||
|
"${key} ${value}"
|
||||||
|
) cfg.settings
|
||||||
|
)
|
||||||
|
+ "\n"
|
||||||
|
+ toString cfg.appendConfig
|
||||||
|
);
|
||||||
|
in
|
||||||
|
|
||||||
|
{
|
||||||
|
options.services.xonotic = {
|
||||||
|
enable = lib.mkEnableOption (lib.mdDoc "Xonotic dedicated server");
|
||||||
|
|
||||||
|
package = lib.mkPackageOption pkgs "xonotic-dedicated" {};
|
||||||
|
|
||||||
|
openFirewall = lib.mkOption {
|
||||||
|
type = lib.types.bool;
|
||||||
|
default = false;
|
||||||
|
description = lib.mdDoc ''
|
||||||
|
Open the firewall for TCP and UDP on the specified port.
|
||||||
|
'';
|
||||||
|
};
|
||||||
|
|
||||||
|
dataDir = lib.mkOption {
|
||||||
|
type = lib.types.path;
|
||||||
|
readOnly = true;
|
||||||
|
default = "/var/lib/xonotic";
|
||||||
|
description = lib.mdDoc ''
|
||||||
|
Data directory.
|
||||||
|
'';
|
||||||
|
};
|
||||||
|
|
||||||
|
settings = lib.mkOption {
|
||||||
|
description = lib.mdDoc ''
|
||||||
|
Generates the `server.cfg` file. Refer to [upstream's example][0] for
|
||||||
|
details.
|
||||||
|
|
||||||
|
[0]: https://gitlab.com/xonotic/xonotic/-/blob/master/server/server.cfg
|
||||||
|
'';
|
||||||
|
default = {};
|
||||||
|
type = lib.types.submodule {
|
||||||
|
freeformType = with lib.types; let
|
||||||
|
scalars = oneOf [ singleLineStr int float ];
|
||||||
|
in
|
||||||
|
attrsOf (oneOf [ scalars (nonEmptyListOf scalars) ]);
|
||||||
|
|
||||||
|
options.sv_public = lib.mkOption {
|
||||||
|
type = lib.types.int;
|
||||||
|
default = 0;
|
||||||
|
example = [ (-1) 1 ];
|
||||||
|
description = lib.mdDoc ''
|
||||||
|
Controls whether the server will be publicly listed.
|
||||||
|
'';
|
||||||
|
};
|
||||||
|
|
||||||
|
options.hostname = lib.mkOption {
|
||||||
|
type = lib.types.singleLineStr;
|
||||||
|
default = "Xonotic $g_xonoticversion Server";
|
||||||
|
description = lib.mdDoc ''
|
||||||
|
The name that will appear in the server list. `$g_xonoticversion`
|
||||||
|
gets replaced with the current version.
|
||||||
|
'';
|
||||||
|
};
|
||||||
|
|
||||||
|
options.sv_motd = lib.mkOption {
|
||||||
|
type = lib.types.singleLineStr;
|
||||||
|
default = "";
|
||||||
|
description = lib.mdDoc ''
|
||||||
|
Text displayed when players join the server.
|
||||||
|
'';
|
||||||
|
};
|
||||||
|
|
||||||
|
options.sv_termsofservice_url = lib.mkOption {
|
||||||
|
type = lib.types.singleLineStr;
|
||||||
|
default = "";
|
||||||
|
description = lib.mdDoc ''
|
||||||
|
URL for the Terms of Service for playing on your server.
|
||||||
|
'';
|
||||||
|
};
|
||||||
|
|
||||||
|
options.maxplayers = lib.mkOption {
|
||||||
|
type = lib.types.int;
|
||||||
|
default = 16;
|
||||||
|
description = lib.mdDoc ''
|
||||||
|
Number of player slots on the server, including spectators.
|
||||||
|
'';
|
||||||
|
};
|
||||||
|
|
||||||
|
options.net_address = lib.mkOption {
|
||||||
|
type = lib.types.singleLineStr;
|
||||||
|
default = "0.0.0.0";
|
||||||
|
description = lib.mdDoc ''
|
||||||
|
The address Xonotic will listen on.
|
||||||
|
'';
|
||||||
|
};
|
||||||
|
|
||||||
|
options.port = lib.mkOption {
|
||||||
|
type = lib.types.port;
|
||||||
|
default = 26000;
|
||||||
|
description = lib.mdDoc ''
|
||||||
|
The port Xonotic will listen on.
|
||||||
|
'';
|
||||||
|
};
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
# Still useful even though we're using RFC 42 settings because *some* keys
|
||||||
|
# can be repeated.
|
||||||
|
appendConfig = lib.mkOption {
|
||||||
|
type = with lib.types; nullOr lines;
|
||||||
|
default = null;
|
||||||
|
description = lib.mdDoc ''
|
||||||
|
Literal text to insert at the end of `server.cfg`.
|
||||||
|
'';
|
||||||
|
};
|
||||||
|
|
||||||
|
# Certain changes need to happen at the beginning of the file.
|
||||||
|
prependConfig = lib.mkOption {
|
||||||
|
type = with lib.types; nullOr lines;
|
||||||
|
default = null;
|
||||||
|
description = lib.mdDoc ''
|
||||||
|
Literal text to insert at the start of `server.cfg`.
|
||||||
|
'';
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
config = lib.mkIf cfg.enable {
|
||||||
|
systemd.services.xonotic = {
|
||||||
|
description = "Xonotic server";
|
||||||
|
wantedBy = [ "multi-user.target" ];
|
||||||
|
|
||||||
|
environment = {
|
||||||
|
# Required or else it tries to write the lock file into the nix store
|
||||||
|
HOME = cfg.dataDir;
|
||||||
|
};
|
||||||
|
|
||||||
|
serviceConfig = {
|
||||||
|
DynamicUser = true;
|
||||||
|
User = "xonotic";
|
||||||
|
StateDirectory = "xonotic";
|
||||||
|
ExecStart = "${cfg.package}/bin/xonotic-dedicated";
|
||||||
|
|
||||||
|
# Symlink the configuration from the nix store to where Xonotic actually
|
||||||
|
# looks for it
|
||||||
|
ExecStartPre = [
|
||||||
|
"${pkgs.coreutils}/bin/mkdir -p ${cfg.dataDir}/.xonotic/data"
|
||||||
|
''
|
||||||
|
${pkgs.coreutils}/bin/ln -sf ${serverCfg} \
|
||||||
|
${cfg.dataDir}/.xonotic/data/server.cfg
|
||||||
|
''
|
||||||
|
];
|
||||||
|
|
||||||
|
# Cargo-culted from search results about writing Xonotic systemd units
|
||||||
|
ExecReload = "${pkgs.util-linux}/bin/kill -HUP $MAINPID";
|
||||||
|
|
||||||
|
Restart = "on-failure";
|
||||||
|
RestartSec = 10;
|
||||||
|
StartLimitBurst = 5;
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
networking.firewall.allowedTCPPorts = lib.mkIf cfg.openFirewall [
|
||||||
|
cfg.settings.port
|
||||||
|
];
|
||||||
|
networking.firewall.allowedUDPPorts = lib.mkIf cfg.openFirewall [
|
||||||
|
cfg.settings.port
|
||||||
|
];
|
||||||
|
};
|
||||||
|
|
||||||
|
meta.maintainers = with lib.maintainers; [ CobaltCause ];
|
||||||
|
}
|
@ -68,6 +68,7 @@ let
|
|||||||
"redis"
|
"redis"
|
||||||
"rspamd"
|
"rspamd"
|
||||||
"rtl_433"
|
"rtl_433"
|
||||||
|
"sabnzbd"
|
||||||
"scaphandre"
|
"scaphandre"
|
||||||
"script"
|
"script"
|
||||||
"shelly"
|
"shelly"
|
||||||
|
@ -0,0 +1,47 @@
|
|||||||
|
{ config, lib, pkgs, options }:
|
||||||
|
|
||||||
|
let
|
||||||
|
inherit (lib) mkOption types;
|
||||||
|
cfg = config.services.prometheus.exporters.sabnzbd;
|
||||||
|
in
|
||||||
|
{
|
||||||
|
port = 9387;
|
||||||
|
|
||||||
|
extraOpts = {
|
||||||
|
servers = mkOption {
|
||||||
|
description = "List of sabnzbd servers to connect to.";
|
||||||
|
type = types.listOf (types.submodule {
|
||||||
|
options = {
|
||||||
|
baseUrl = mkOption {
|
||||||
|
type = types.str;
|
||||||
|
description = "Base URL of the sabnzbd server.";
|
||||||
|
example = "http://localhost:8080/sabnzbd";
|
||||||
|
};
|
||||||
|
apiKeyFile = mkOption {
|
||||||
|
type = types.str;
|
||||||
|
description = "File containing the API key.";
|
||||||
|
example = "/run/secrets/sabnzbd_apikey";
|
||||||
|
};
|
||||||
|
};
|
||||||
|
});
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
serviceOpts =
|
||||||
|
let
|
||||||
|
servers = lib.zipAttrs cfg.servers;
|
||||||
|
apiKeys = lib.concatStringsSep "," (builtins.map (file: "$(cat ${file})") servers.apiKeyFile);
|
||||||
|
in
|
||||||
|
{
|
||||||
|
environment = {
|
||||||
|
METRICS_PORT = toString cfg.port;
|
||||||
|
METRICS_ADDR = cfg.listenAddress;
|
||||||
|
SABNZBD_BASEURLS = lib.concatStringsSep "," servers.baseUrl;
|
||||||
|
};
|
||||||
|
|
||||||
|
script = ''
|
||||||
|
export SABNZBD_APIKEYS="${apiKeys}"
|
||||||
|
exec ${lib.getExe pkgs.prometheus-sabnzbd-exporter}
|
||||||
|
'';
|
||||||
|
};
|
||||||
|
}
|
@ -5,6 +5,10 @@ let
|
|||||||
stateDir = "/var/lib/unifi";
|
stateDir = "/var/lib/unifi";
|
||||||
cmd = ''
|
cmd = ''
|
||||||
@${cfg.jrePackage}/bin/java java \
|
@${cfg.jrePackage}/bin/java java \
|
||||||
|
${optionalString (lib.versionAtLeast (lib.getVersion cfg.jrePackage) "16")
|
||||||
|
"--add-opens java.base/java.lang=ALL-UNNAMED --add-opens=java.base/java.time=ALL-UNNAMED "
|
||||||
|
+ "--add-opens java.base/sun.security.util=ALL-UNNAMED --add-opens java.base/java.io=ALL-UNNAMED "
|
||||||
|
+ "--add-opens java.rmi/sun.rmi.transport=ALL-UNNAMED"} \
|
||||||
${optionalString (cfg.initialJavaHeapSize != null) "-Xms${(toString cfg.initialJavaHeapSize)}m"} \
|
${optionalString (cfg.initialJavaHeapSize != null) "-Xms${(toString cfg.initialJavaHeapSize)}m"} \
|
||||||
${optionalString (cfg.maximumJavaHeapSize != null) "-Xmx${(toString cfg.maximumJavaHeapSize)}m"} \
|
${optionalString (cfg.maximumJavaHeapSize != null) "-Xmx${(toString cfg.maximumJavaHeapSize)}m"} \
|
||||||
-jar ${stateDir}/lib/ace.jar
|
-jar ${stateDir}/lib/ace.jar
|
||||||
@ -24,8 +28,8 @@ in
|
|||||||
|
|
||||||
services.unifi.jrePackage = mkOption {
|
services.unifi.jrePackage = mkOption {
|
||||||
type = types.package;
|
type = types.package;
|
||||||
default = if (lib.versionAtLeast (lib.getVersion cfg.unifiPackage) "7.3") then pkgs.jdk11 else pkgs.jre8;
|
default = if (lib.versionAtLeast (lib.getVersion cfg.unifiPackage) "7.5") then pkgs.jdk17_headless else if (lib.versionAtLeast (lib.getVersion cfg.unifiPackage) "7.3") then pkgs.jdk11 else pkgs.jre8;
|
||||||
defaultText = literalExpression ''if (lib.versionAtLeast (lib.getVersion cfg.unifiPackage) "7.3" then pkgs.jdk11 else pkgs.jre8'';
|
defaultText = literalExpression ''if (lib.versionAtLeast (lib.getVersion cfg.unifiPackage) "7.5") then pkgs.jdk17_headless else if (lib.versionAtLeast (lib.getVersion cfg.unifiPackage) "7.3" then pkgs.jdk11 else pkgs.jre8'';
|
||||||
description = lib.mdDoc ''
|
description = lib.mdDoc ''
|
||||||
The JRE package to use. Check the release notes to ensure it is supported.
|
The JRE package to use. Check the release notes to ensure it is supported.
|
||||||
'';
|
'';
|
||||||
|
@ -7,10 +7,8 @@ let
|
|||||||
# valid policy options
|
# valid policy options
|
||||||
policy = (types.enum [ "allow" "block" "reject" "keep" "apply-policy" ]);
|
policy = (types.enum [ "allow" "block" "reject" "keep" "apply-policy" ]);
|
||||||
|
|
||||||
defaultRuleFile = "/var/lib/usbguard/rules.conf";
|
|
||||||
|
|
||||||
# decide what file to use for rules
|
# decide what file to use for rules
|
||||||
ruleFile = if cfg.rules != null then pkgs.writeText "usbguard-rules" cfg.rules else defaultRuleFile;
|
ruleFile = if cfg.rules != null then pkgs.writeText "usbguard-rules" cfg.rules else cfg.ruleFile;
|
||||||
|
|
||||||
daemonConf = ''
|
daemonConf = ''
|
||||||
# generated by nixos/modules/services/security/usbguard.nix
|
# generated by nixos/modules/services/security/usbguard.nix
|
||||||
@ -51,6 +49,19 @@ in
|
|||||||
'';
|
'';
|
||||||
};
|
};
|
||||||
|
|
||||||
|
ruleFile = mkOption {
|
||||||
|
type = types.nullOr types.path;
|
||||||
|
default = /var/lib/usbguard/rules.conf;
|
||||||
|
example = /run/secrets/usbguard-rules;
|
||||||
|
description = lib.mdDoc ''
|
||||||
|
This tells the USBGuard daemon which file to load as policy rule set.
|
||||||
|
|
||||||
|
The file can be changed manually or via the IPC interface assuming it has the right file permissions.
|
||||||
|
|
||||||
|
For more details see {manpage}`usbguard-rules.conf(5)`.
|
||||||
|
'';
|
||||||
|
|
||||||
|
};
|
||||||
rules = mkOption {
|
rules = mkOption {
|
||||||
type = types.nullOr types.lines;
|
type = types.nullOr types.lines;
|
||||||
default = null;
|
default = null;
|
||||||
@ -63,8 +74,7 @@ in
|
|||||||
be changed by the IPC interface.
|
be changed by the IPC interface.
|
||||||
|
|
||||||
If you do not set this option, the USBGuard daemon will load
|
If you do not set this option, the USBGuard daemon will load
|
||||||
it's policy rule set from `${defaultRuleFile}`.
|
it's policy rule set from the option configured in `services.usbguard.ruleFile`.
|
||||||
This file can be changed manually or via the IPC interface.
|
|
||||||
|
|
||||||
Running `usbguard generate-policy` as root will
|
Running `usbguard generate-policy` as root will
|
||||||
generate a config for your currently plugged in devices.
|
generate a config for your currently plugged in devices.
|
||||||
@ -248,7 +258,6 @@ in
|
|||||||
'';
|
'';
|
||||||
};
|
};
|
||||||
imports = [
|
imports = [
|
||||||
(mkRemovedOptionModule [ "services" "usbguard" "ruleFile" ] "The usbguard module now uses ${defaultRuleFile} as ruleFile. Alternatively, use services.usbguard.rules to configure rules.")
|
|
||||||
(mkRemovedOptionModule [ "services" "usbguard" "IPCAccessControlFiles" ] "The usbguard module now hardcodes IPCAccessControlFiles to /var/lib/usbguard/IPCAccessControl.d.")
|
(mkRemovedOptionModule [ "services" "usbguard" "IPCAccessControlFiles" ] "The usbguard module now hardcodes IPCAccessControlFiles to /var/lib/usbguard/IPCAccessControl.d.")
|
||||||
(mkRemovedOptionModule [ "services" "usbguard" "auditFilePath" ] "Removed usbguard module audit log files. Audit logs can be found in the systemd journal.")
|
(mkRemovedOptionModule [ "services" "usbguard" "auditFilePath" ] "Removed usbguard module audit log files. Audit logs can be found in the systemd journal.")
|
||||||
(mkRenamedOptionModule [ "services" "usbguard" "implictPolicyTarget" ] [ "services" "usbguard" "implicitPolicyTarget" ])
|
(mkRenamedOptionModule [ "services" "usbguard" "implictPolicyTarget" ] [ "services" "usbguard" "implicitPolicyTarget" ])
|
||||||
|
@ -116,7 +116,7 @@ in
|
|||||||
unitConfig = {
|
unitConfig = {
|
||||||
ConditionPathExists = [
|
ConditionPathExists = [
|
||||||
# Skip this service if the database already exists
|
# Skip this service if the database already exists
|
||||||
"!$STATE_DIRECTORY/honk.db"
|
"!%S/honk/honk.db"
|
||||||
];
|
];
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
|
@ -34,7 +34,7 @@ let
|
|||||||
# copy additional plugin(s), theme(s) and language(s)
|
# copy additional plugin(s), theme(s) and language(s)
|
||||||
${concatStringsSep "\n" (mapAttrsToList (name: theme: "cp -r ${theme} $out/share/wordpress/wp-content/themes/${name}") cfg.themes)}
|
${concatStringsSep "\n" (mapAttrsToList (name: theme: "cp -r ${theme} $out/share/wordpress/wp-content/themes/${name}") cfg.themes)}
|
||||||
${concatStringsSep "\n" (mapAttrsToList (name: plugin: "cp -r ${plugin} $out/share/wordpress/wp-content/plugins/${name}") cfg.plugins)}
|
${concatStringsSep "\n" (mapAttrsToList (name: plugin: "cp -r ${plugin} $out/share/wordpress/wp-content/plugins/${name}") cfg.plugins)}
|
||||||
${concatMapStringsSep "\n" (language: "cp -r ${language} $out/share/wordpress/wp-content/languages/") cfg.languages}
|
${concatMapStringsSep "\n" (language: "cp -r ${language}/* $out/share/wordpress/wp-content/languages/") cfg.languages}
|
||||||
'';
|
'';
|
||||||
};
|
};
|
||||||
|
|
||||||
|
@ -70,33 +70,13 @@ copyToKernelsDir() {
|
|||||||
addEntry() {
|
addEntry() {
|
||||||
local path=$(readlink -f "$1")
|
local path=$(readlink -f "$1")
|
||||||
local tag="$2" # Generation number or 'default'
|
local tag="$2" # Generation number or 'default'
|
||||||
local current="$3" # whether this is the current/latest generation
|
|
||||||
|
|
||||||
if ! test -e $path/kernel -a -e $path/initrd; then
|
if ! test -e $path/kernel -a -e $path/initrd; then
|
||||||
return
|
return
|
||||||
fi
|
fi
|
||||||
|
|
||||||
if test -e "$path/append-initrd-secrets"; then
|
|
||||||
local initrd="$target/nixos/$(basename "$path")-initramfs-with-secrets"
|
|
||||||
cp $(readlink -f "$path/initrd") "$initrd"
|
|
||||||
chmod 600 "${initrd}"
|
|
||||||
chown 0:0 "${initrd}"
|
|
||||||
filesCopied[$initrd]=1
|
|
||||||
|
|
||||||
"$path/append-initrd-secrets" "$initrd" || if test "${current}" = "1"; then
|
|
||||||
echo "failed to create initrd secrets for the current generation." >&2
|
|
||||||
echo "are your \`boot.initrd.secrets\` still in place?" >&2
|
|
||||||
exit 1
|
|
||||||
else
|
|
||||||
echo "warning: failed to create initrd secrets for \"$path\", an older generation" >&2
|
|
||||||
echo "note: this is normal after having removed or renamed a file in \`boot.initrd.secrets\`" >&2
|
|
||||||
fi
|
|
||||||
else
|
|
||||||
copyToKernelsDir "$path/initrd"; initrd=$result
|
|
||||||
fi
|
|
||||||
|
|
||||||
copyToKernelsDir "$path/kernel"; kernel=$result
|
copyToKernelsDir "$path/kernel"; kernel=$result
|
||||||
|
copyToKernelsDir "$path/initrd"; initrd=$result
|
||||||
dtbDir=$(readlink -m "$path/dtbs")
|
dtbDir=$(readlink -m "$path/dtbs")
|
||||||
if [ -e "$dtbDir" ]; then
|
if [ -e "$dtbDir" ]; then
|
||||||
copyToKernelsDir "$dtbDir"; dtbs=$result
|
copyToKernelsDir "$dtbDir"; dtbs=$result
|
||||||
@ -150,20 +130,18 @@ MENU TITLE ------------------------------------------------------------
|
|||||||
TIMEOUT $timeout
|
TIMEOUT $timeout
|
||||||
EOF
|
EOF
|
||||||
|
|
||||||
addEntry $default default 1 >> $tmpFile
|
addEntry $default default >> $tmpFile
|
||||||
|
|
||||||
if [ "$numGenerations" -gt 0 ]; then
|
if [ "$numGenerations" -gt 0 ]; then
|
||||||
# Add up to $numGenerations generations of the system profile to the menu,
|
# Add up to $numGenerations generations of the system profile to the menu,
|
||||||
# in reverse (most recent to least recent) order.
|
# in reverse (most recent to least recent) order.
|
||||||
current=1
|
|
||||||
for generation in $(
|
for generation in $(
|
||||||
(cd /nix/var/nix/profiles && ls -d system-*-link) \
|
(cd /nix/var/nix/profiles && ls -d system-*-link) \
|
||||||
| sed 's/system-\([0-9]\+\)-link/\1/' \
|
| sed 's/system-\([0-9]\+\)-link/\1/' \
|
||||||
| sort -n -r \
|
| sort -n -r \
|
||||||
| head -n $numGenerations); do
|
| head -n $numGenerations); do
|
||||||
link=/nix/var/nix/profiles/system-$generation-link
|
link=/nix/var/nix/profiles/system-$generation-link
|
||||||
addEntry $link $generation $current
|
addEntry $link $generation
|
||||||
current=0
|
|
||||||
done >> $tmpFile
|
done >> $tmpFile
|
||||||
fi
|
fi
|
||||||
|
|
||||||
|
@ -142,7 +142,6 @@ in
|
|||||||
assertion = !pkgs.stdenv.hostPlatform.isAarch64 || cfg.version >= 3;
|
assertion = !pkgs.stdenv.hostPlatform.isAarch64 || cfg.version >= 3;
|
||||||
message = "Only Raspberry Pi >= 3 supports aarch64.";
|
message = "Only Raspberry Pi >= 3 supports aarch64.";
|
||||||
};
|
};
|
||||||
boot.loader.supportsInitrdSecrets = cfg.uboot.enable;
|
|
||||||
|
|
||||||
system.build.installBootLoader = builder;
|
system.build.installBootLoader = builder;
|
||||||
system.boot.loader.id = "raspberrypi";
|
system.boot.loader.id = "raspberrypi";
|
||||||
|
@ -610,13 +610,6 @@ in
|
|||||||
path the secret should have inside the initrd, the value
|
path the secret should have inside the initrd, the value
|
||||||
is the path it should be copied from (or null for the same
|
is the path it should be copied from (or null for the same
|
||||||
path inside and out).
|
path inside and out).
|
||||||
|
|
||||||
The loader `generic-extlinux-compatible` supports this. Because
|
|
||||||
it is not well know how different implementations react to
|
|
||||||
concatenated cpio archives, this is disabled by default. It can be
|
|
||||||
enabled by setting {option}`boot.loader.supportsInitrdSecrets`
|
|
||||||
to true. If this works for you, please report your findings at
|
|
||||||
https://github.com/NixOS/nixpkgs/issues/247145 .
|
|
||||||
'';
|
'';
|
||||||
example = literalExpression
|
example = literalExpression
|
||||||
''
|
''
|
||||||
|
@ -173,6 +173,33 @@ let
|
|||||||
}];
|
}];
|
||||||
}));
|
}));
|
||||||
|
|
||||||
|
bridgeNetworks = mkMerge (flip mapAttrsToList cfg.bridges (name: bridge: {
|
||||||
|
netdevs."40-${name}" = {
|
||||||
|
netdevConfig = {
|
||||||
|
Name = name;
|
||||||
|
Kind = "bridge";
|
||||||
|
};
|
||||||
|
};
|
||||||
|
networks = listToAttrs (forEach bridge.interfaces (bi:
|
||||||
|
nameValuePair "40-${bi}" (mkMerge [ (genericNetwork (mkOverride 999)) {
|
||||||
|
DHCP = mkOverride 0 (dhcpStr false);
|
||||||
|
networkConfig.Bridge = name;
|
||||||
|
} ])));
|
||||||
|
}));
|
||||||
|
|
||||||
|
vlanNetworks = mkMerge (flip mapAttrsToList cfg.vlans (name: vlan: {
|
||||||
|
netdevs."40-${name}" = {
|
||||||
|
netdevConfig = {
|
||||||
|
Name = name;
|
||||||
|
Kind = "vlan";
|
||||||
|
};
|
||||||
|
vlanConfig.Id = vlan.id;
|
||||||
|
};
|
||||||
|
networks."40-${vlan.interface}" = (mkMerge [ (genericNetwork (mkOverride 999)) {
|
||||||
|
vlan = [ name ];
|
||||||
|
} ]);
|
||||||
|
}));
|
||||||
|
|
||||||
in
|
in
|
||||||
|
|
||||||
{
|
{
|
||||||
@ -182,7 +209,15 @@ in
|
|||||||
# Note this is if initrd.network.enable, not if
|
# Note this is if initrd.network.enable, not if
|
||||||
# initrd.systemd.network.enable. By setting the latter and not the
|
# initrd.systemd.network.enable. By setting the latter and not the
|
||||||
# former, the user retains full control over the configuration.
|
# former, the user retains full control over the configuration.
|
||||||
boot.initrd.systemd.network = mkMerge [(genericDhcpNetworks true) interfaceNetworks];
|
boot.initrd.systemd.network = mkMerge [
|
||||||
|
(genericDhcpNetworks true)
|
||||||
|
interfaceNetworks
|
||||||
|
bridgeNetworks
|
||||||
|
vlanNetworks
|
||||||
|
];
|
||||||
|
boot.initrd.availableKernelModules =
|
||||||
|
optional (cfg.bridges != {}) "bridge" ++
|
||||||
|
optional (cfg.vlans != {}) "8021q";
|
||||||
})
|
})
|
||||||
|
|
||||||
(mkIf cfg.useNetworkd {
|
(mkIf cfg.useNetworkd {
|
||||||
@ -212,19 +247,7 @@ in
|
|||||||
}
|
}
|
||||||
(genericDhcpNetworks false)
|
(genericDhcpNetworks false)
|
||||||
interfaceNetworks
|
interfaceNetworks
|
||||||
(mkMerge (flip mapAttrsToList cfg.bridges (name: bridge: {
|
bridgeNetworks
|
||||||
netdevs."40-${name}" = {
|
|
||||||
netdevConfig = {
|
|
||||||
Name = name;
|
|
||||||
Kind = "bridge";
|
|
||||||
};
|
|
||||||
};
|
|
||||||
networks = listToAttrs (forEach bridge.interfaces (bi:
|
|
||||||
nameValuePair "40-${bi}" (mkMerge [ (genericNetwork (mkOverride 999)) {
|
|
||||||
DHCP = mkOverride 0 (dhcpStr false);
|
|
||||||
networkConfig.Bridge = name;
|
|
||||||
} ])));
|
|
||||||
})))
|
|
||||||
(mkMerge (flip mapAttrsToList cfg.bonds (name: bond: {
|
(mkMerge (flip mapAttrsToList cfg.bonds (name: bond: {
|
||||||
netdevs."40-${name}" = {
|
netdevs."40-${name}" = {
|
||||||
netdevConfig = {
|
netdevConfig = {
|
||||||
@ -377,18 +400,7 @@ in
|
|||||||
} ]);
|
} ]);
|
||||||
};
|
};
|
||||||
})))
|
})))
|
||||||
(mkMerge (flip mapAttrsToList cfg.vlans (name: vlan: {
|
vlanNetworks
|
||||||
netdevs."40-${name}" = {
|
|
||||||
netdevConfig = {
|
|
||||||
Name = name;
|
|
||||||
Kind = "vlan";
|
|
||||||
};
|
|
||||||
vlanConfig.Id = vlan.id;
|
|
||||||
};
|
|
||||||
networks."40-${vlan.interface}" = (mkMerge [ (genericNetwork (mkOverride 999)) {
|
|
||||||
vlan = [ name ];
|
|
||||||
} ]);
|
|
||||||
})))
|
|
||||||
];
|
];
|
||||||
|
|
||||||
# We need to prefill the slaved devices with networking options
|
# We need to prefill the slaved devices with networking options
|
||||||
|
@ -109,6 +109,7 @@ in {
|
|||||||
allTerminfo = handleTest ./all-terminfo.nix {};
|
allTerminfo = handleTest ./all-terminfo.nix {};
|
||||||
alps = handleTest ./alps.nix {};
|
alps = handleTest ./alps.nix {};
|
||||||
amazon-init-shell = handleTest ./amazon-init-shell.nix {};
|
amazon-init-shell = handleTest ./amazon-init-shell.nix {};
|
||||||
|
amd-sev = runTest ./amd-sev.nix;
|
||||||
anbox = runTest ./anbox.nix;
|
anbox = runTest ./anbox.nix;
|
||||||
anuko-time-tracker = handleTest ./anuko-time-tracker.nix {};
|
anuko-time-tracker = handleTest ./anuko-time-tracker.nix {};
|
||||||
apcupsd = handleTest ./apcupsd.nix {};
|
apcupsd = handleTest ./apcupsd.nix {};
|
||||||
@ -764,6 +765,7 @@ in {
|
|||||||
systemd-cryptenroll = handleTest ./systemd-cryptenroll.nix {};
|
systemd-cryptenroll = handleTest ./systemd-cryptenroll.nix {};
|
||||||
systemd-credentials-tpm2 = handleTest ./systemd-credentials-tpm2.nix {};
|
systemd-credentials-tpm2 = handleTest ./systemd-credentials-tpm2.nix {};
|
||||||
systemd-escaping = handleTest ./systemd-escaping.nix {};
|
systemd-escaping = handleTest ./systemd-escaping.nix {};
|
||||||
|
systemd-initrd-bridge = handleTest ./systemd-initrd-bridge.nix {};
|
||||||
systemd-initrd-btrfs-raid = handleTest ./systemd-initrd-btrfs-raid.nix {};
|
systemd-initrd-btrfs-raid = handleTest ./systemd-initrd-btrfs-raid.nix {};
|
||||||
systemd-initrd-luks-fido2 = handleTest ./systemd-initrd-luks-fido2.nix {};
|
systemd-initrd-luks-fido2 = handleTest ./systemd-initrd-luks-fido2.nix {};
|
||||||
systemd-initrd-luks-keyfile = handleTest ./systemd-initrd-luks-keyfile.nix {};
|
systemd-initrd-luks-keyfile = handleTest ./systemd-initrd-luks-keyfile.nix {};
|
||||||
@ -778,6 +780,7 @@ in {
|
|||||||
systemd-initrd-networkd = handleTest ./systemd-initrd-networkd.nix {};
|
systemd-initrd-networkd = handleTest ./systemd-initrd-networkd.nix {};
|
||||||
systemd-initrd-networkd-ssh = handleTest ./systemd-initrd-networkd-ssh.nix {};
|
systemd-initrd-networkd-ssh = handleTest ./systemd-initrd-networkd-ssh.nix {};
|
||||||
systemd-initrd-networkd-openvpn = handleTest ./initrd-network-openvpn { systemdStage1 = true; };
|
systemd-initrd-networkd-openvpn = handleTest ./initrd-network-openvpn { systemdStage1 = true; };
|
||||||
|
systemd-initrd-vlan = handleTest ./systemd-initrd-vlan.nix {};
|
||||||
systemd-journal = handleTest ./systemd-journal.nix {};
|
systemd-journal = handleTest ./systemd-journal.nix {};
|
||||||
systemd-machinectl = handleTest ./systemd-machinectl.nix {};
|
systemd-machinectl = handleTest ./systemd-machinectl.nix {};
|
||||||
systemd-networkd = handleTest ./systemd-networkd.nix {};
|
systemd-networkd = handleTest ./systemd-networkd.nix {};
|
||||||
|
56
nixos/tests/amd-sev.nix
Normal file
56
nixos/tests/amd-sev.nix
Normal file
@ -0,0 +1,56 @@
|
|||||||
|
{ lib, ... }: {
|
||||||
|
name = "amd-sev";
|
||||||
|
meta = {
|
||||||
|
maintainers = with lib.maintainers; [ trundle veehaitch ];
|
||||||
|
};
|
||||||
|
|
||||||
|
nodes.machine = { lib, ... }: {
|
||||||
|
hardware.cpu.amd.sev.enable = true;
|
||||||
|
hardware.cpu.amd.sevGuest.enable = true;
|
||||||
|
|
||||||
|
specialisation.sevCustomUserGroup.configuration = {
|
||||||
|
users.groups.sevtest = { };
|
||||||
|
|
||||||
|
hardware.cpu.amd.sev = {
|
||||||
|
enable = true;
|
||||||
|
group = "root";
|
||||||
|
mode = "0600";
|
||||||
|
};
|
||||||
|
hardware.cpu.amd.sevGuest = {
|
||||||
|
enable = true;
|
||||||
|
group = "sevtest";
|
||||||
|
};
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
testScript = { nodes, ... }:
|
||||||
|
let
|
||||||
|
specialisations = "${nodes.machine.system.build.toplevel}/specialisation";
|
||||||
|
in
|
||||||
|
''
|
||||||
|
machine.wait_for_unit("multi-user.target")
|
||||||
|
|
||||||
|
with subtest("Check default settings"):
|
||||||
|
out = machine.succeed("cat /etc/udev/rules.d/99-local.rules")
|
||||||
|
assert 'KERNEL=="sev", OWNER="root", GROUP="sev", MODE="0660"' in out
|
||||||
|
assert 'KERNEL=="sev-guest", OWNER="root", GROUP="sev-guest", MODE="0660"' in out
|
||||||
|
|
||||||
|
out = machine.succeed("cat /etc/group")
|
||||||
|
assert "sev:" in out
|
||||||
|
assert "sev-guest:" in out
|
||||||
|
assert "sevtest:" not in out
|
||||||
|
|
||||||
|
with subtest("Activate configuration with custom user/group"):
|
||||||
|
machine.succeed('${specialisations}/sevCustomUserGroup/bin/switch-to-configuration test')
|
||||||
|
|
||||||
|
with subtest("Check custom user and group"):
|
||||||
|
out = machine.succeed("cat /etc/udev/rules.d/99-local.rules")
|
||||||
|
assert 'KERNEL=="sev", OWNER="root", GROUP="root", MODE="0600"' in out
|
||||||
|
assert 'KERNEL=="sev-guest", OWNER="root", GROUP="sevtest", MODE="0660"' in out
|
||||||
|
|
||||||
|
out = machine.succeed("cat /etc/group")
|
||||||
|
assert "sev:" not in out
|
||||||
|
assert "sev-guest:" not in out
|
||||||
|
assert "sevtest:" in out
|
||||||
|
'';
|
||||||
|
}
|
@ -1178,6 +1178,44 @@ let
|
|||||||
'';
|
'';
|
||||||
};
|
};
|
||||||
|
|
||||||
|
sabnzbd = {
|
||||||
|
exporterConfig = {
|
||||||
|
enable = true;
|
||||||
|
servers = [{
|
||||||
|
baseUrl = "http://localhost:8080";
|
||||||
|
apiKeyFile = "/var/sabnzbd-apikey";
|
||||||
|
}];
|
||||||
|
};
|
||||||
|
|
||||||
|
metricProvider = {
|
||||||
|
services.sabnzbd.enable = true;
|
||||||
|
|
||||||
|
# unrar is required for sabnzbd
|
||||||
|
nixpkgs.config.allowUnfreePredicate = pkg: builtins.elem (pkgs.lib.getName pkg) [ "unrar" ];
|
||||||
|
|
||||||
|
# extract the generated api key before starting
|
||||||
|
systemd.services.sabnzbd-apikey = {
|
||||||
|
requires = [ "sabnzbd.service" ];
|
||||||
|
after = [ "sabnzbd.service" ];
|
||||||
|
requiredBy = [ "prometheus-sabnzbd-exporter.service" ];
|
||||||
|
before = [ "prometheus-sabnzbd-exporter.service" ];
|
||||||
|
script = ''
|
||||||
|
grep -Po '^api_key = \K.+' /var/lib/sabnzbd/sabnzbd.ini > /var/sabnzbd-apikey
|
||||||
|
'';
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
exporterTest = ''
|
||||||
|
wait_for_unit("sabnzbd.service")
|
||||||
|
wait_for_unit("prometheus-sabnzbd-exporter.service")
|
||||||
|
wait_for_open_port(8080)
|
||||||
|
wait_for_open_port(9387)
|
||||||
|
wait_until_succeeds(
|
||||||
|
"curl -sSf 'localhost:9387/metrics' | grep 'sabnzbd_queue_size{sabnzbd_instance=\"http://localhost:8080\"} 0.0'"
|
||||||
|
)
|
||||||
|
'';
|
||||||
|
};
|
||||||
|
|
||||||
scaphandre = {
|
scaphandre = {
|
||||||
exporterConfig = {
|
exporterConfig = {
|
||||||
enable = true;
|
enable = true;
|
||||||
|
63
nixos/tests/systemd-initrd-bridge.nix
Normal file
63
nixos/tests/systemd-initrd-bridge.nix
Normal file
@ -0,0 +1,63 @@
|
|||||||
|
import ./make-test-python.nix ({ lib, ... }: {
|
||||||
|
name = "systemd-initrd-bridge";
|
||||||
|
meta.maintainers = [ lib.maintainers.majiir ];
|
||||||
|
|
||||||
|
# Tests bridge interface configuration in systemd-initrd.
|
||||||
|
#
|
||||||
|
# The 'a' and 'b' nodes are connected to a 'bridge' node through different
|
||||||
|
# links. The 'bridge' node configures a bridge across them. It waits forever
|
||||||
|
# in initrd (stage 1) with networking enabled. 'a' and 'b' ping 'bridge' to
|
||||||
|
# test connectivity with the bridge interface. Then, 'a' pings 'b' to test
|
||||||
|
# the bridge itself.
|
||||||
|
|
||||||
|
nodes = {
|
||||||
|
bridge = { config, lib, ... }: {
|
||||||
|
boot.initrd.systemd.enable = true;
|
||||||
|
boot.initrd.network.enable = true;
|
||||||
|
boot.initrd.systemd.services.boot-blocker = {
|
||||||
|
before = [ "initrd.target" ];
|
||||||
|
wantedBy = [ "initrd.target" ];
|
||||||
|
script = "sleep infinity";
|
||||||
|
serviceConfig.Type = "oneshot";
|
||||||
|
};
|
||||||
|
|
||||||
|
networking.primaryIPAddress = "192.168.1.${toString config.virtualisation.test.nodeNumber}";
|
||||||
|
|
||||||
|
virtualisation.vlans = [ 1 2 ];
|
||||||
|
networking.bridges.br0.interfaces = [ "eth1" "eth2" ];
|
||||||
|
|
||||||
|
networking.interfaces = {
|
||||||
|
eth1.ipv4.addresses = lib.mkForce [];
|
||||||
|
eth2.ipv4.addresses = lib.mkForce [];
|
||||||
|
br0.ipv4.addresses = [{
|
||||||
|
address = config.networking.primaryIPAddress;
|
||||||
|
prefixLength = 24;
|
||||||
|
}];
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
a = {
|
||||||
|
virtualisation.vlans = [ 1 ];
|
||||||
|
};
|
||||||
|
|
||||||
|
b = { config, ... }: {
|
||||||
|
virtualisation.vlans = [ 2 ];
|
||||||
|
networking.primaryIPAddress = lib.mkForce "192.168.1.${toString config.virtualisation.test.nodeNumber}";
|
||||||
|
networking.interfaces.eth1.ipv4.addresses = lib.mkForce [{
|
||||||
|
address = config.networking.primaryIPAddress;
|
||||||
|
prefixLength = 24;
|
||||||
|
}];
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
testScript = ''
|
||||||
|
start_all()
|
||||||
|
a.wait_for_unit("network.target")
|
||||||
|
b.wait_for_unit("network.target")
|
||||||
|
|
||||||
|
a.succeed("ping -n -w 10 -c 1 bridge >&2")
|
||||||
|
b.succeed("ping -n -w 10 -c 1 bridge >&2")
|
||||||
|
|
||||||
|
a.succeed("ping -n -w 10 -c 1 b >&2")
|
||||||
|
'';
|
||||||
|
})
|
59
nixos/tests/systemd-initrd-vlan.nix
Normal file
59
nixos/tests/systemd-initrd-vlan.nix
Normal file
@ -0,0 +1,59 @@
|
|||||||
|
import ./make-test-python.nix ({ lib, ... }: {
|
||||||
|
name = "systemd-initrd-vlan";
|
||||||
|
meta.maintainers = [ lib.maintainers.majiir ];
|
||||||
|
|
||||||
|
# Tests VLAN interface configuration in systemd-initrd.
|
||||||
|
#
|
||||||
|
# Two nodes are configured for a tagged VLAN. (Note that they also still have
|
||||||
|
# their ordinary eth0 and eth1 interfaces, which are not VLAN-tagged.)
|
||||||
|
#
|
||||||
|
# The 'server' node waits forever in initrd (stage 1) with networking
|
||||||
|
# enabled. The 'client' node pings it to test network connectivity.
|
||||||
|
|
||||||
|
nodes = let
|
||||||
|
network = id: {
|
||||||
|
networking = {
|
||||||
|
vlans."eth1.10" = {
|
||||||
|
id = 10;
|
||||||
|
interface = "eth1";
|
||||||
|
};
|
||||||
|
interfaces."eth1.10" = {
|
||||||
|
ipv4.addresses = [{
|
||||||
|
address = "192.168.10.${id}";
|
||||||
|
prefixLength = 24;
|
||||||
|
}];
|
||||||
|
};
|
||||||
|
};
|
||||||
|
};
|
||||||
|
in {
|
||||||
|
# Node that will use initrd networking.
|
||||||
|
server = network "1" // {
|
||||||
|
boot.initrd.systemd.enable = true;
|
||||||
|
boot.initrd.network.enable = true;
|
||||||
|
boot.initrd.systemd.services.boot-blocker = {
|
||||||
|
before = [ "initrd.target" ];
|
||||||
|
wantedBy = [ "initrd.target" ];
|
||||||
|
script = "sleep infinity";
|
||||||
|
serviceConfig.Type = "oneshot";
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
# Node that will ping the server.
|
||||||
|
client = network "2";
|
||||||
|
};
|
||||||
|
|
||||||
|
testScript = ''
|
||||||
|
start_all()
|
||||||
|
client.wait_for_unit("network.target")
|
||||||
|
|
||||||
|
# Wait for the regular (untagged) interface to be up.
|
||||||
|
def server_is_up(_) -> bool:
|
||||||
|
status, _ = client.execute("ping -n -c 1 server >&2")
|
||||||
|
return status == 0
|
||||||
|
with client.nested("waiting for server to come up"):
|
||||||
|
retry(server_is_up)
|
||||||
|
|
||||||
|
# Try to ping the (tagged) VLAN interface.
|
||||||
|
client.succeed("ping -n -w 10 -c 1 192.168.10.1 >&2")
|
||||||
|
'';
|
||||||
|
})
|
@ -16,6 +16,8 @@ import ./make-test-python.nix ({ pkgs, lib, ... }:
|
|||||||
systemPackages = with pkgs; [ tinywl foot wayland-utils ];
|
systemPackages = with pkgs; [ tinywl foot wayland-utils ];
|
||||||
};
|
};
|
||||||
|
|
||||||
|
hardware.opengl.enable = true;
|
||||||
|
|
||||||
# Automatically start TinyWL when logging in on tty1:
|
# Automatically start TinyWL when logging in on tty1:
|
||||||
programs.bash.loginShellInit = ''
|
programs.bash.loginShellInit = ''
|
||||||
if [ "$(tty)" = "/dev/tty1" ]; then
|
if [ "$(tty)" = "/dev/tty1" ]; then
|
||||||
|
@ -16,13 +16,13 @@
|
|||||||
|
|
||||||
stdenv.mkDerivation (finalAttrs: {
|
stdenv.mkDerivation (finalAttrs: {
|
||||||
pname = "mympd";
|
pname = "mympd";
|
||||||
version = "12.0.1";
|
version = "12.0.2";
|
||||||
|
|
||||||
src = fetchFromGitHub {
|
src = fetchFromGitHub {
|
||||||
owner = "jcorporation";
|
owner = "jcorporation";
|
||||||
repo = "myMPD";
|
repo = "myMPD";
|
||||||
rev = "v${finalAttrs.version}";
|
rev = "v${finalAttrs.version}";
|
||||||
sha256 = "sha256-tkkaBIWoQS28FsCSN5CKw2ZQ3cbYa34PVZCUGaaqaQo=";
|
sha256 = "sha256-7jE3erxrCPN2deI7EV0gDH1gy2XdwC1YdU2mo2xMI6Q=";
|
||||||
};
|
};
|
||||||
|
|
||||||
nativeBuildInputs = [
|
nativeBuildInputs = [
|
||||||
|
@ -44,7 +44,7 @@ in
|
|||||||
python.pkgs.buildPythonApplication rec {
|
python.pkgs.buildPythonApplication rec {
|
||||||
pname = "sublime-music";
|
pname = "sublime-music";
|
||||||
version = "0.12.0";
|
version = "0.12.0";
|
||||||
format = "flit";
|
format = "pyproject";
|
||||||
|
|
||||||
src = fetchFromGitHub {
|
src = fetchFromGitHub {
|
||||||
owner = "sublime-music";
|
owner = "sublime-music";
|
||||||
@ -54,6 +54,7 @@ python.pkgs.buildPythonApplication rec {
|
|||||||
};
|
};
|
||||||
|
|
||||||
nativeBuildInputs = [
|
nativeBuildInputs = [
|
||||||
|
python.pkgs.flit-core
|
||||||
gobject-introspection
|
gobject-introspection
|
||||||
wrapGAppsHook
|
wrapGAppsHook
|
||||||
];
|
];
|
||||||
|
@ -31,6 +31,7 @@ stdenv.mkDerivation rec {
|
|||||||
description = "Micro GNU/emacs, a portable version of the mg maintained by the OpenBSD team";
|
description = "Micro GNU/emacs, a portable version of the mg maintained by the OpenBSD team";
|
||||||
homepage = "https://man.openbsd.org/OpenBSD-current/man1/mg.1";
|
homepage = "https://man.openbsd.org/OpenBSD-current/man1/mg.1";
|
||||||
license = licenses.publicDomain;
|
license = licenses.publicDomain;
|
||||||
|
mainProgram = "mg";
|
||||||
platforms = platforms.all;
|
platforms = platforms.all;
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
@ -39,11 +39,9 @@ let
|
|||||||
|
|
||||||
wrapperArgsStr = if lib.isString wrapperArgs then wrapperArgs else lib.escapeShellArgs wrapperArgs;
|
wrapperArgsStr = if lib.isString wrapperArgs then wrapperArgs else lib.escapeShellArgs wrapperArgs;
|
||||||
|
|
||||||
# "--add-flags" (lib.escapeShellArgs flags)
|
commonWrapperArgs =
|
||||||
# wrapper args used both when generating the manifest and in the final neovim executable
|
|
||||||
commonWrapperArgs = (lib.optionals (lib.isList wrapperArgs) wrapperArgs)
|
|
||||||
# vim accepts a limited number of commands so we join them all
|
# vim accepts a limited number of commands so we join them all
|
||||||
++ [
|
[
|
||||||
"--add-flags" ''--cmd "lua ${providerLuaRc}"''
|
"--add-flags" ''--cmd "lua ${providerLuaRc}"''
|
||||||
# (lib.intersperse "|" hostProviderViml)
|
# (lib.intersperse "|" hostProviderViml)
|
||||||
] ++ lib.optionals (packpathDirs.myNeovimPackages.start != [] || packpathDirs.myNeovimPackages.opt != []) [
|
] ++ lib.optionals (packpathDirs.myNeovimPackages.start != [] || packpathDirs.myNeovimPackages.opt != []) [
|
||||||
|
@ -34,14 +34,14 @@ stdenv.mkDerivation (finalAttrs: {
|
|||||||
+ lib.optionalString enableQt "-qt"
|
+ lib.optionalString enableQt "-qt"
|
||||||
+ lib.optionalString (!enableQt) "-sdl"
|
+ lib.optionalString (!enableQt) "-sdl"
|
||||||
+ lib.optionalString forceWayland "-wayland";
|
+ lib.optionalString forceWayland "-wayland";
|
||||||
version = "1.16.1";
|
version = "1.16.2";
|
||||||
|
|
||||||
src = fetchFromGitHub {
|
src = fetchFromGitHub {
|
||||||
owner = "hrydgard";
|
owner = "hrydgard";
|
||||||
repo = "ppsspp";
|
repo = "ppsspp";
|
||||||
rev = "v${finalAttrs.version}";
|
rev = "v${finalAttrs.version}";
|
||||||
fetchSubmodules = true;
|
fetchSubmodules = true;
|
||||||
sha256 = "sha256-bKRb7a5lEfE1uUeVl7i1He3qLJ4wI5HmKmWAk2oKdYI=";
|
sha256 = "sha256-Ygi7ioLOBQbD+QTD7pO2hIATV8HUDyrdhw7gBSSiHmc=";
|
||||||
};
|
};
|
||||||
|
|
||||||
postPatch = ''
|
postPatch = ''
|
||||||
|
@ -23,6 +23,20 @@ rustPlatform.buildRustPackage rec {
|
|||||||
rm .cargo/config
|
rm .cargo/config
|
||||||
'';
|
'';
|
||||||
|
|
||||||
|
postInstall = ''
|
||||||
|
mkdir -p $out/share
|
||||||
|
cp assets/desktop/xplr.desktop $out/share
|
||||||
|
|
||||||
|
mkdir -p $out/share/icons/hicolor/scalable/apps
|
||||||
|
cp assets/icon/xplr.svg $out/share/icons/hicolor/scalable/apps
|
||||||
|
|
||||||
|
for size in 16 32 64 128; do
|
||||||
|
icon_dir=$out/share/icons/hicolor/''${size}x$size/apps
|
||||||
|
mkdir -p $icon_dir
|
||||||
|
cp assets/icon/xplr$size.png $icon_dir/xplr.png
|
||||||
|
done
|
||||||
|
'';
|
||||||
|
|
||||||
meta = with lib; {
|
meta = with lib; {
|
||||||
description = "A hackable, minimal, fast TUI file explorer";
|
description = "A hackable, minimal, fast TUI file explorer";
|
||||||
homepage = "https://xplr.dev";
|
homepage = "https://xplr.dev";
|
||||||
|
18
pkgs/applications/graphics/hydrus/0001-inform-nixpkgs.patch
Normal file
18
pkgs/applications/graphics/hydrus/0001-inform-nixpkgs.patch
Normal file
@ -0,0 +1,18 @@
|
|||||||
|
diff --git a/hydrus/core/HydrusConstants.py b/hydrus/core/HydrusConstants.py
|
||||||
|
index 809338ef..9125928f 100644
|
||||||
|
--- a/hydrus/core/HydrusConstants.py
|
||||||
|
+++ b/hydrus/core/HydrusConstants.py
|
||||||
|
@@ -59,12 +59,7 @@ elif PLATFORM_HAIKU:
|
||||||
|
RUNNING_FROM_SOURCE = sys.argv[0].endswith( '.py' ) or sys.argv[0].endswith( '.pyw' )
|
||||||
|
RUNNING_FROM_MACOS_APP = os.path.exists( os.path.join( BASE_DIR, 'running_from_app' ) )
|
||||||
|
|
||||||
|
-if RUNNING_FROM_SOURCE:
|
||||||
|
- NICE_RUNNING_AS_STRING = 'from source'
|
||||||
|
-elif RUNNING_FROM_FROZEN_BUILD:
|
||||||
|
- NICE_RUNNING_AS_STRING = 'from frozen build'
|
||||||
|
-elif RUNNING_FROM_MACOS_APP:
|
||||||
|
- NICE_RUNNING_AS_STRING = 'from App'
|
||||||
|
+NICE_RUNNING_AS_STRING = "from nixpkgs (source)"
|
||||||
|
|
||||||
|
BIN_DIR = os.path.join( BASE_DIR, 'bin' )
|
||||||
|
HELP_DIR = os.path.join( BASE_DIR, 'help' )
|
@ -12,16 +12,21 @@
|
|||||||
|
|
||||||
python3Packages.buildPythonPackage rec {
|
python3Packages.buildPythonPackage rec {
|
||||||
pname = "hydrus";
|
pname = "hydrus";
|
||||||
version = "520";
|
version = "544";
|
||||||
format = "other";
|
format = "other";
|
||||||
|
|
||||||
src = fetchFromGitHub {
|
src = fetchFromGitHub {
|
||||||
owner = "hydrusnetwork";
|
owner = "hydrusnetwork";
|
||||||
repo = "hydrus";
|
repo = "hydrus";
|
||||||
rev = "refs/tags/v${version}";
|
rev = "refs/tags/v${version}";
|
||||||
hash = "sha256-y8KfPe3cBBq/iPCG7hNXrZDkOSNi+qSir6rO/65SHkI=";
|
hash = "sha256-e3VvkdJAQx5heKDJ1Ms6XpXrXWdzv48f8yu0DHfPy1A=";
|
||||||
};
|
};
|
||||||
|
|
||||||
|
patches = [
|
||||||
|
# Nixpkgs specific, can be removed if upstream makes a more reasonable check
|
||||||
|
./0001-inform-nixpkgs.patch
|
||||||
|
];
|
||||||
|
|
||||||
nativeBuildInputs = [
|
nativeBuildInputs = [
|
||||||
wrapQtAppsHook
|
wrapQtAppsHook
|
||||||
python3Packages.mkdocs-material
|
python3Packages.mkdocs-material
|
||||||
@ -37,13 +42,16 @@ python3Packages.buildPythonPackage rec {
|
|||||||
cbor2
|
cbor2
|
||||||
chardet
|
chardet
|
||||||
cloudscraper
|
cloudscraper
|
||||||
|
dateparser
|
||||||
html5lib
|
html5lib
|
||||||
lxml
|
lxml
|
||||||
lz4
|
lz4
|
||||||
numpy
|
numpy
|
||||||
opencv4
|
opencv4
|
||||||
pillow
|
pillow
|
||||||
|
pillow-heif
|
||||||
psutil
|
psutil
|
||||||
|
psd-tools
|
||||||
pympler
|
pympler
|
||||||
pyopenssl
|
pyopenssl
|
||||||
pyqt6
|
pyqt6
|
||||||
@ -56,7 +64,6 @@ python3Packages.buildPythonPackage rec {
|
|||||||
requests
|
requests
|
||||||
send2trash
|
send2trash
|
||||||
service-identity
|
service-identity
|
||||||
six
|
|
||||||
twisted
|
twisted
|
||||||
];
|
];
|
||||||
|
|
||||||
@ -92,6 +99,7 @@ python3Packages.buildPythonPackage rec {
|
|||||||
-e TestHydrusSessions \
|
-e TestHydrusSessions \
|
||||||
-e TestServer \
|
-e TestServer \
|
||||||
-e TestClientMetadataMigration \
|
-e TestClientMetadataMigration \
|
||||||
|
-e TestClientFileStorage \
|
||||||
'';
|
'';
|
||||||
|
|
||||||
outputs = [ "out" "doc" ];
|
outputs = [ "out" "doc" ];
|
||||||
@ -100,13 +108,16 @@ python3Packages.buildPythonPackage rec {
|
|||||||
# Move the hydrus module and related directories
|
# Move the hydrus module and related directories
|
||||||
mkdir -p $out/${python3Packages.python.sitePackages}
|
mkdir -p $out/${python3Packages.python.sitePackages}
|
||||||
mv {hydrus,static} $out/${python3Packages.python.sitePackages}
|
mv {hydrus,static} $out/${python3Packages.python.sitePackages}
|
||||||
|
# Fix random files being marked with execute permissions
|
||||||
|
chmod -x $out/${python3Packages.python.sitePackages}/static/*.{png,svg,ico}
|
||||||
|
# Build docs
|
||||||
mkdocs build -d help
|
mkdocs build -d help
|
||||||
mv help $out/doc/
|
mv help $out/doc/
|
||||||
|
|
||||||
# install the hydrus binaries
|
# install the hydrus binaries
|
||||||
mkdir -p $out/bin
|
mkdir -p $out/bin
|
||||||
install -m0755 server.py $out/bin/hydrus-server
|
install -m0755 hydrus_server.py $out/bin/hydrus-server
|
||||||
install -m0755 client.py $out/bin/hydrus-client
|
install -m0755 hydrus_client.py $out/bin/hydrus-client
|
||||||
'' + lib.optionalString enableSwftools ''
|
'' + lib.optionalString enableSwftools ''
|
||||||
mkdir -p $out/${python3Packages.python.sitePackages}/bin
|
mkdir -p $out/${python3Packages.python.sitePackages}/bin
|
||||||
# swfrender seems to have to be called sfwrender_linux
|
# swfrender seems to have to be called sfwrender_linux
|
||||||
|
@ -120,7 +120,7 @@ let
|
|||||||
kdebugsettings = callPackage ./kdebugsettings.nix {};
|
kdebugsettings = callPackage ./kdebugsettings.nix {};
|
||||||
kdeconnect-kde = callPackage ./kdeconnect-kde.nix {};
|
kdeconnect-kde = callPackage ./kdeconnect-kde.nix {};
|
||||||
kdegraphics-mobipocket = callPackage ./kdegraphics-mobipocket.nix {};
|
kdegraphics-mobipocket = callPackage ./kdegraphics-mobipocket.nix {};
|
||||||
kdegraphics-thumbnailers = callPackage ./kdegraphics-thumbnailers.nix {};
|
kdegraphics-thumbnailers = callPackage ./kdegraphics-thumbnailers {};
|
||||||
kdenetwork-filesharing = callPackage ./kdenetwork-filesharing.nix {};
|
kdenetwork-filesharing = callPackage ./kdenetwork-filesharing.nix {};
|
||||||
kdenlive = callPackage ./kdenlive {};
|
kdenlive = callPackage ./kdenlive {};
|
||||||
kdepim-addons = callPackage ./kdepim-addons.nix {};
|
kdepim-addons = callPackage ./kdepim-addons.nix {};
|
||||||
|
@ -1,5 +1,5 @@
|
|||||||
{
|
{
|
||||||
mkDerivation, lib, fetchpatch,
|
mkDerivation, lib, ghostscript, substituteAll,
|
||||||
extra-cmake-modules, karchive, kio, libkexiv2, libkdcraw, kdegraphics-mobipocket
|
extra-cmake-modules, karchive, kio, libkexiv2, libkdcraw, kdegraphics-mobipocket
|
||||||
}:
|
}:
|
||||||
|
|
||||||
@ -11,4 +11,13 @@ mkDerivation {
|
|||||||
};
|
};
|
||||||
nativeBuildInputs = [ extra-cmake-modules ];
|
nativeBuildInputs = [ extra-cmake-modules ];
|
||||||
buildInputs = [ karchive kio libkexiv2 libkdcraw kdegraphics-mobipocket ];
|
buildInputs = [ karchive kio libkexiv2 libkdcraw kdegraphics-mobipocket ];
|
||||||
|
|
||||||
|
patches = [
|
||||||
|
# Hardcode patches to Ghostscript so PDF thumbnails work OOTB.
|
||||||
|
# Intentionally not doing the same for dvips because TeX is big.
|
||||||
|
(substituteAll {
|
||||||
|
gs = "${ghostscript}/bin/gs";
|
||||||
|
src = ./gs-paths.patch;
|
||||||
|
})
|
||||||
|
];
|
||||||
}
|
}
|
@ -0,0 +1,22 @@
|
|||||||
|
diff --git a/ps/gscreator.cpp b/ps/gscreator.cpp
|
||||||
|
index 5b84e49..cbb7c25 100644
|
||||||
|
--- a/ps/gscreator.cpp
|
||||||
|
+++ b/ps/gscreator.cpp
|
||||||
|
@@ -101,7 +101,7 @@ static const char *epsprolog =
|
||||||
|
"[ ] 0 setdash newpath false setoverprint false setstrokeadjust\n";
|
||||||
|
|
||||||
|
static const char * gsargs_ps[] = {
|
||||||
|
- "gs",
|
||||||
|
+ "@gs@",
|
||||||
|
"-sDEVICE=png16m",
|
||||||
|
"-sOutputFile=-",
|
||||||
|
"-dSAFER",
|
||||||
|
@@ -120,7 +120,7 @@ static const char * gsargs_ps[] = {
|
||||||
|
};
|
||||||
|
|
||||||
|
static const char * gsargs_eps[] = {
|
||||||
|
- "gs",
|
||||||
|
+ "@gs@",
|
||||||
|
"-sDEVICE=png16m",
|
||||||
|
"-sOutputFile=-",
|
||||||
|
"-dSAFER",
|
@ -28,11 +28,11 @@ let
|
|||||||
in
|
in
|
||||||
stdenv.mkDerivation rec {
|
stdenv.mkDerivation rec {
|
||||||
pname = "blender";
|
pname = "blender";
|
||||||
version = "3.6.2";
|
version = "3.6.3";
|
||||||
|
|
||||||
src = fetchurl {
|
src = fetchurl {
|
||||||
url = "https://download.blender.org/source/${pname}-${version}.tar.xz";
|
url = "https://download.blender.org/source/${pname}-${version}.tar.xz";
|
||||||
hash = "sha256-olEmcOM3VKo/IWOhQp/qOkdJvwzM7bCkf8i8Bzh07Eg=";
|
hash = "sha256-iRIwPrvPHwiIxHr7hpmG6NjS/liJkxcAgrzlk8LEFPg=";
|
||||||
};
|
};
|
||||||
|
|
||||||
patches = [
|
patches = [
|
||||||
|
@ -1,6 +1,7 @@
|
|||||||
{ lib
|
{ lib
|
||||||
, buildPythonApplication
|
, buildPythonApplication
|
||||||
, fetchFromGitHub
|
, fetchFromGitHub
|
||||||
|
, flit
|
||||||
, aiohttp
|
, aiohttp
|
||||||
, beautifulsoup4
|
, beautifulsoup4
|
||||||
}:
|
}:
|
||||||
@ -8,7 +9,7 @@
|
|||||||
buildPythonApplication rec {
|
buildPythonApplication rec {
|
||||||
pname = "cambrinary";
|
pname = "cambrinary";
|
||||||
version = "unstable-2023-07-16";
|
version = "unstable-2023-07-16";
|
||||||
format = "flit";
|
format = "pyproject";
|
||||||
|
|
||||||
src = fetchFromGitHub {
|
src = fetchFromGitHub {
|
||||||
owner = "xueyuanl";
|
owner = "xueyuanl";
|
||||||
@ -17,6 +18,10 @@ buildPythonApplication rec {
|
|||||||
hash = "sha256-wDcvpKAY/6lBjO5h3qKH3+Y2G2gm7spcKCXFMt/bAtE=";
|
hash = "sha256-wDcvpKAY/6lBjO5h3qKH3+Y2G2gm7spcKCXFMt/bAtE=";
|
||||||
};
|
};
|
||||||
|
|
||||||
|
nativeBuildInputs = [
|
||||||
|
flit
|
||||||
|
];
|
||||||
|
|
||||||
propagatedBuildInputs = [
|
propagatedBuildInputs = [
|
||||||
aiohttp
|
aiohttp
|
||||||
beautifulsoup4
|
beautifulsoup4
|
||||||
|
@ -9,11 +9,11 @@
|
|||||||
|
|
||||||
stdenvNoCC.mkDerivation rec {
|
stdenvNoCC.mkDerivation rec {
|
||||||
pname = "camunda-modeler";
|
pname = "camunda-modeler";
|
||||||
version = "5.14.0";
|
version = "5.15.1";
|
||||||
|
|
||||||
src = fetchurl {
|
src = fetchurl {
|
||||||
url = "https://github.com/camunda/camunda-modeler/releases/download/v${version}/camunda-modeler-${version}-linux-x64.tar.gz";
|
url = "https://github.com/camunda/camunda-modeler/releases/download/v${version}/camunda-modeler-${version}-linux-x64.tar.gz";
|
||||||
hash = "sha256-zGxuvS4T1olMH+QOqrPcsFjfO3PDERmFQOa+ISN9u0c=";
|
hash = "sha256-q9wzfNyMzlyGTjaFOA7TZt+F/jC6EnPb/i4Q9eRxS3E=";
|
||||||
};
|
};
|
||||||
sourceRoot = "camunda-modeler-${version}-linux-x64";
|
sourceRoot = "camunda-modeler-${version}-linux-x64";
|
||||||
|
|
||||||
|
@ -40,13 +40,13 @@
|
|||||||
|
|
||||||
stdenv.mkDerivation rec {
|
stdenv.mkDerivation rec {
|
||||||
pname = "keepassxc";
|
pname = "keepassxc";
|
||||||
version = "2.7.5";
|
version = "2.7.6";
|
||||||
|
|
||||||
src = fetchFromGitHub {
|
src = fetchFromGitHub {
|
||||||
owner = "keepassxreboot";
|
owner = "keepassxreboot";
|
||||||
repo = "keepassxc";
|
repo = "keepassxc";
|
||||||
rev = version;
|
rev = version;
|
||||||
sha256 = "sha256-OBEjczUIkY3pQXJfsuNj9Bm2TIbVWEHqMSolQnSfvLE=";
|
hash = "sha256-xgrkMz7BCBxjfxHsAz/CFLv1d175LnrAJIOZMM3GmU0=";
|
||||||
};
|
};
|
||||||
|
|
||||||
env.NIX_CFLAGS_COMPILE = lib.optionalString stdenv.cc.isClang (toString [
|
env.NIX_CFLAGS_COMPILE = lib.optionalString stdenv.cc.isClang (toString [
|
||||||
@ -129,7 +129,7 @@ stdenv.mkDerivation rec {
|
|||||||
'';
|
'';
|
||||||
homepage = "https://keepassxc.org/";
|
homepage = "https://keepassxc.org/";
|
||||||
license = licenses.gpl2Plus;
|
license = licenses.gpl2Plus;
|
||||||
maintainers = with maintainers; [ jonafato srapenne ];
|
maintainers = with maintainers; [ jonafato srapenne blankparticle ];
|
||||||
platforms = platforms.linux ++ platforms.darwin;
|
platforms = platforms.linux ++ platforms.darwin;
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
@ -6,13 +6,13 @@
|
|||||||
|
|
||||||
stdenv.mkDerivation rec {
|
stdenv.mkDerivation rec {
|
||||||
pname = "slweb";
|
pname = "slweb";
|
||||||
version = "0.6.7";
|
version = "0.6.9";
|
||||||
|
|
||||||
src = fetchFromSourcehut {
|
src = fetchFromSourcehut {
|
||||||
owner = "~strahinja";
|
owner = "~strahinja";
|
||||||
repo = pname;
|
repo = pname;
|
||||||
rev = "v${version}";
|
rev = "v${version}";
|
||||||
sha256 = "sha256-Y7w3yVqA8MNJJ3OcGaeziydZyzF0bap41Il6eE/Hu40=";
|
sha256 = "sha256-YSHJJ+96Xj2zaDtPi8jftPWIyeIG9LwQ/eYT/oh2Y2c=";
|
||||||
};
|
};
|
||||||
|
|
||||||
nativeBuildInputs = [ redo-apenwarr ];
|
nativeBuildInputs = [ redo-apenwarr ];
|
||||||
|
@ -4,17 +4,17 @@
|
|||||||
}:
|
}:
|
||||||
rustPlatform.buildRustPackage rec {
|
rustPlatform.buildRustPackage rec {
|
||||||
pname = "wallust";
|
pname = "wallust";
|
||||||
version = "2.6.1";
|
version = "2.7.1";
|
||||||
|
|
||||||
src = fetchFromGitea {
|
src = fetchFromGitea {
|
||||||
domain = "codeberg.org";
|
domain = "codeberg.org";
|
||||||
owner = "explosion-mental";
|
owner = "explosion-mental";
|
||||||
repo = pname;
|
repo = pname;
|
||||||
rev = version;
|
rev = version;
|
||||||
hash = "sha256-xcsOOA6esvIhzeka8E9OvCT8aXMWWSHO4lNLtaocTSo=";
|
hash = "sha256-WhL2HWM1onRrCqWJPLnAVMd/f/xfLrK3mU8jFSLFjAM=";
|
||||||
};
|
};
|
||||||
|
|
||||||
cargoSha256 = "sha256-YDIBn2fjlvNTYwMVn/MkID/EMmzz4oLieVgG2R95q4M=";
|
cargoSha256 = "sha256-pR2vdqMGJZ6zvXwwKUIPjb/lWzVgYqQ7C7/sk/+usc4= ";
|
||||||
|
|
||||||
meta = with lib; {
|
meta = with lib; {
|
||||||
description = "A better pywal";
|
description = "A better pywal";
|
||||||
|
@ -27,11 +27,11 @@
|
|||||||
};
|
};
|
||||||
stable = {
|
stable = {
|
||||||
chromedriver = {
|
chromedriver = {
|
||||||
sha256_darwin = "0phhcqid7wjw923qdi65zql3fid25swwszksgnw3b8fgz67jn955";
|
sha256_darwin = "138mw5p6r0n0531fs6322yxsjgj9hia5plw4mj0b3mclykzy5l37";
|
||||||
sha256_darwin_aarch64 =
|
sha256_darwin_aarch64 =
|
||||||
"00fwq8slvjm6c7krgwjd4mxhkkrp23n4icb63qlvi2hy06gfj4l6";
|
"1cym94av2gw2zwj3rdqbjcqkigpzf0zk2bam2hw9n2hiabb4rm0p";
|
||||||
sha256_linux = "0ws8ch1j2hzp483vr0acvam1zxmzg9d37x6gqdwiqwgrk6x5pvkh";
|
sha256_linux = "1q1vyhmcx6b5criz5bn1c3x3z2dzqdgsmwcvlb0rzqlzpla9q26m";
|
||||||
version = "117.0.5938.88";
|
version = "117.0.5938.92";
|
||||||
};
|
};
|
||||||
deps = {
|
deps = {
|
||||||
gn = {
|
gn = {
|
||||||
@ -41,9 +41,9 @@
|
|||||||
version = "2023-08-01";
|
version = "2023-08-01";
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
sha256 = "01n9aqnilsjrbpv5kkx3c6nxs9p5l5lfwxj67hd5s5g4740di4a6";
|
sha256 = "0b1l8gjhqbsyqi30rsn8dyq2hdvwasdqfk1qzk55f9ch4wclkjk5";
|
||||||
sha256bin64 = "1dhgagphdzbd19gkc7vpl1hxc9vn0l7sxny346qjlmrwafqlhbgi";
|
sha256bin64 = "047w7y4c8k076yzrjc50lvwncbk8b3lyqnd1si9nrsl7c66j2h0q";
|
||||||
version = "117.0.5938.88";
|
version = "117.0.5938.92";
|
||||||
};
|
};
|
||||||
ungoogled-chromium = {
|
ungoogled-chromium = {
|
||||||
deps = {
|
deps = {
|
||||||
@ -54,12 +54,12 @@
|
|||||||
version = "2023-08-01";
|
version = "2023-08-01";
|
||||||
};
|
};
|
||||||
ungoogled-patches = {
|
ungoogled-patches = {
|
||||||
rev = "117.0.5938.88-1";
|
rev = "117.0.5938.92-1";
|
||||||
sha256 = "1wz15ib56j8c84bgrbf0djk5wli49b1lvaqbg18pdclkp1mqy5w9";
|
sha256 = "0ix0vaki9r305js61qraiah3vqjaj3dyycabi6grfavdgjpjkasb";
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
sha256 = "01n9aqnilsjrbpv5kkx3c6nxs9p5l5lfwxj67hd5s5g4740di4a6";
|
sha256 = "0b1l8gjhqbsyqi30rsn8dyq2hdvwasdqfk1qzk55f9ch4wclkjk5";
|
||||||
sha256bin64 = "1dhgagphdzbd19gkc7vpl1hxc9vn0l7sxny346qjlmrwafqlhbgi";
|
sha256bin64 = "047w7y4c8k076yzrjc50lvwncbk8b3lyqnd1si9nrsl7c66j2h0q";
|
||||||
version = "117.0.5938.88";
|
version = "117.0.5938.92";
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
@ -1,44 +1,13 @@
|
|||||||
{ lib, stdenv, fetchurl, config, wrapGAppsHook
|
{ lib, stdenv, fetchurl, config, wrapGAppsHook, autoPatchelfHook
|
||||||
, alsa-lib
|
, alsa-lib
|
||||||
, atk
|
|
||||||
, cairo
|
|
||||||
, curl
|
, curl
|
||||||
, cups
|
|
||||||
, dbus-glib
|
, dbus-glib
|
||||||
, dbus
|
|
||||||
, fontconfig
|
|
||||||
, freetype
|
|
||||||
, gdk-pixbuf
|
|
||||||
, glib
|
|
||||||
, glibc
|
|
||||||
, gtk3
|
, gtk3
|
||||||
, libkrb5
|
|
||||||
, libX11
|
|
||||||
, libXScrnSaver
|
|
||||||
, libxcb
|
|
||||||
, libXcomposite
|
|
||||||
, libXcursor
|
|
||||||
, libXdamage
|
|
||||||
, libXext
|
|
||||||
, libXfixes
|
|
||||||
, libXi
|
|
||||||
, libXinerama
|
|
||||||
, libXrender
|
|
||||||
, libXrandr
|
|
||||||
, libXt
|
|
||||||
, libXtst
|
, libXtst
|
||||||
, libcanberra
|
, libva
|
||||||
, libnotify
|
|
||||||
, adwaita-icon-theme
|
|
||||||
, libGLU, libGL
|
|
||||||
, nspr
|
|
||||||
, nss
|
|
||||||
, pango
|
|
||||||
, pipewire
|
|
||||||
, pciutils
|
, pciutils
|
||||||
, heimdal
|
, pipewire
|
||||||
, libpulseaudio
|
, adwaita-icon-theme
|
||||||
, systemd
|
|
||||||
, channel
|
, channel
|
||||||
, generated
|
, generated
|
||||||
, writeScript
|
, writeScript
|
||||||
@ -48,9 +17,7 @@
|
|||||||
, gnused
|
, gnused
|
||||||
, gnugrep
|
, gnugrep
|
||||||
, gnupg
|
, gnupg
|
||||||
, ffmpeg
|
|
||||||
, runtimeShell
|
, runtimeShell
|
||||||
, mesa # firefox wants gbm for drm+dmabuf
|
|
||||||
, systemLocale ? config.i18n.defaultLocale or "en_US"
|
, systemLocale ? config.i18n.defaultLocale or "en_US"
|
||||||
}:
|
}:
|
||||||
|
|
||||||
@ -58,6 +25,8 @@ let
|
|||||||
|
|
||||||
inherit (generated) version sources;
|
inherit (generated) version sources;
|
||||||
|
|
||||||
|
binaryName = if channel == "release" then "firefox" else "firefox-${channel}";
|
||||||
|
|
||||||
mozillaPlatforms = {
|
mozillaPlatforms = {
|
||||||
i686-linux = "linux-i686";
|
i686-linux = "linux-i686";
|
||||||
x86_64-linux = "linux-x86_64";
|
x86_64-linux = "linux-x86_64";
|
||||||
@ -95,115 +64,54 @@ stdenv.mkDerivation {
|
|||||||
|
|
||||||
src = fetchurl { inherit (source) url sha256; };
|
src = fetchurl { inherit (source) url sha256; };
|
||||||
|
|
||||||
libPath = lib.makeLibraryPath
|
nativeBuildInputs = [ wrapGAppsHook autoPatchelfHook ];
|
||||||
[ stdenv.cc.cc
|
buildInputs = [
|
||||||
alsa-lib
|
|
||||||
atk
|
|
||||||
cairo
|
|
||||||
curl
|
|
||||||
cups
|
|
||||||
dbus-glib
|
|
||||||
dbus
|
|
||||||
fontconfig
|
|
||||||
freetype
|
|
||||||
gdk-pixbuf
|
|
||||||
glib
|
|
||||||
glibc
|
|
||||||
gtk3
|
gtk3
|
||||||
libkrb5
|
adwaita-icon-theme
|
||||||
mesa
|
alsa-lib
|
||||||
libX11
|
dbus-glib
|
||||||
libXScrnSaver
|
|
||||||
libXcomposite
|
|
||||||
libXcursor
|
|
||||||
libxcb
|
|
||||||
libXdamage
|
|
||||||
libXext
|
|
||||||
libXfixes
|
|
||||||
libXi
|
|
||||||
libXinerama
|
|
||||||
libXrender
|
|
||||||
libXrandr
|
|
||||||
libXt
|
|
||||||
libXtst
|
libXtst
|
||||||
libcanberra
|
|
||||||
libnotify
|
|
||||||
libGLU libGL
|
|
||||||
nspr
|
|
||||||
nss
|
|
||||||
pango
|
|
||||||
pipewire
|
|
||||||
pciutils
|
|
||||||
heimdal
|
|
||||||
libpulseaudio
|
|
||||||
systemd
|
|
||||||
ffmpeg
|
|
||||||
] + ":" + lib.makeSearchPathOutput "lib" "lib64" [
|
|
||||||
stdenv.cc.cc
|
|
||||||
];
|
];
|
||||||
|
runtimeDependencies = [
|
||||||
inherit gtk3;
|
curl
|
||||||
|
libva.out
|
||||||
nativeBuildInputs = [ wrapGAppsHook ];
|
pciutils
|
||||||
buildInputs = [ gtk3 adwaita-icon-theme ];
|
];
|
||||||
|
appendRunpaths = [
|
||||||
# "strip" after "patchelf" may break binaries.
|
"${pipewire.lib}/lib"
|
||||||
# See: https://github.com/NixOS/patchelf/issues/10
|
];
|
||||||
dontStrip = true;
|
|
||||||
dontPatchELF = true;
|
|
||||||
|
|
||||||
postPatch = ''
|
|
||||||
# Don't download updates from Mozilla directly
|
|
||||||
echo 'pref("app.update.auto", "false");' >> defaults/pref/channel-prefs.js
|
|
||||||
'';
|
|
||||||
|
|
||||||
installPhase =
|
installPhase =
|
||||||
''
|
''
|
||||||
mkdir -p "$prefix/usr/lib/firefox-bin-${version}"
|
mkdir -p "$prefix/lib/firefox-bin-${version}"
|
||||||
cp -r * "$prefix/usr/lib/firefox-bin-${version}"
|
cp -r * "$prefix/lib/firefox-bin-${version}"
|
||||||
|
|
||||||
mkdir -p "$out/bin"
|
mkdir -p "$out/bin"
|
||||||
ln -s "$prefix/usr/lib/firefox-bin-${version}/firefox" "$out/bin/"
|
ln -s "$prefix/lib/firefox-bin-${version}/firefox" "$out/bin/${binaryName}"
|
||||||
|
|
||||||
for executable in \
|
|
||||||
firefox firefox-bin plugin-container \
|
|
||||||
updater crashreporter webapprt-stub \
|
|
||||||
glxtest vaapitest
|
|
||||||
do
|
|
||||||
if [ -e "$out/usr/lib/firefox-bin-${version}/$executable" ]; then
|
|
||||||
patchelf --interpreter "$(cat $NIX_CC/nix-support/dynamic-linker)" \
|
|
||||||
"$out/usr/lib/firefox-bin-${version}/$executable"
|
|
||||||
fi
|
|
||||||
done
|
|
||||||
|
|
||||||
find . -executable -type f -exec \
|
|
||||||
patchelf --set-rpath "$libPath" \
|
|
||||||
"$out/usr/lib/firefox-bin-${version}/{}" \;
|
|
||||||
|
|
||||||
# wrapFirefox expects "$out/lib" instead of "$out/usr/lib"
|
|
||||||
ln -s "$out/usr/lib" "$out/lib"
|
|
||||||
|
|
||||||
gappsWrapperArgs+=(--argv0 "$out/bin/.firefox-wrapped")
|
|
||||||
|
|
||||||
# See: https://github.com/mozilla/policy-templates/blob/master/README.md
|
# See: https://github.com/mozilla/policy-templates/blob/master/README.md
|
||||||
mkdir -p "$out/lib/firefox-bin-${version}/distribution";
|
mkdir -p "$out/lib/firefox-bin-${version}/distribution";
|
||||||
ln -s ${policiesJson} "$out/lib/firefox-bin-${version}/distribution/policies.json";
|
ln -s ${policiesJson} "$out/lib/firefox-bin-${version}/distribution/policies.json";
|
||||||
'';
|
'';
|
||||||
|
|
||||||
passthru.binaryName = "firefox";
|
passthru = {
|
||||||
passthru.libName = "firefox-bin-${version}";
|
inherit binaryName;
|
||||||
passthru.execdir = "/bin";
|
libName = "firefox-bin-${version}";
|
||||||
passthru.ffmpegSupport = true;
|
ffmpegSupport = true;
|
||||||
passthru.gssSupport = true;
|
gssSupport = true;
|
||||||
|
gtk3 = gtk3;
|
||||||
|
|
||||||
# update with:
|
# update with:
|
||||||
# $ nix-shell maintainers/scripts/update.nix --argstr package firefox-bin-unwrapped
|
# $ nix-shell maintainers/scripts/update.nix --argstr package firefox-bin-unwrapped
|
||||||
passthru.updateScript = import ./update.nix {
|
updateScript = import ./update.nix {
|
||||||
inherit pname channel lib writeScript xidel coreutils gnused gnugrep gnupg curl runtimeShell;
|
inherit pname channel lib writeScript xidel coreutils gnused gnugrep gnupg curl runtimeShell;
|
||||||
baseUrl =
|
baseUrl =
|
||||||
if channel == "devedition"
|
if channel == "devedition"
|
||||||
then "https://archive.mozilla.org/pub/devedition/releases/"
|
then "https://archive.mozilla.org/pub/devedition/releases/"
|
||||||
else "https://archive.mozilla.org/pub/firefox/releases/";
|
else "https://archive.mozilla.org/pub/firefox/releases/";
|
||||||
};
|
};
|
||||||
|
};
|
||||||
|
|
||||||
meta = with lib; {
|
meta = with lib; {
|
||||||
changelog = "https://www.mozilla.org/en-US/firefox/${version}/releasenotes/";
|
changelog = "https://www.mozilla.org/en-US/firefox/${version}/releasenotes/";
|
||||||
description = "Mozilla Firefox, free web browser (binary package)";
|
description = "Mozilla Firefox, free web browser (binary package)";
|
||||||
@ -213,5 +121,6 @@ stdenv.mkDerivation {
|
|||||||
platforms = builtins.attrNames mozillaPlatforms;
|
platforms = builtins.attrNames mozillaPlatforms;
|
||||||
hydraPlatforms = [];
|
hydraPlatforms = [];
|
||||||
maintainers = with maintainers; [ taku0 lovesegfault ];
|
maintainers = with maintainers; [ taku0 lovesegfault ];
|
||||||
|
mainProgram = binaryName;
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
File diff suppressed because it is too large
Load Diff
@ -3,10 +3,10 @@
|
|||||||
{
|
{
|
||||||
firefox = buildMozillaMach rec {
|
firefox = buildMozillaMach rec {
|
||||||
pname = "firefox";
|
pname = "firefox";
|
||||||
version = "117.0.1";
|
version = "118.0";
|
||||||
src = fetchurl {
|
src = fetchurl {
|
||||||
url = "mirror://mozilla/firefox/releases/${version}/source/firefox-${version}.source.tar.xz";
|
url = "mirror://mozilla/firefox/releases/${version}/source/firefox-${version}.source.tar.xz";
|
||||||
sha512 = "1583b0ad3b3b17c59bfbfb3e416074766327d0b926ef4f6c6b1e3b2d7cf6a18dec592b7d17fab9493ba1506f3540a02277096d28616dd29b6e7b9e93905f2071";
|
sha512 = "7c34c43930bda84d17a241fe7e0f8e6ca262410423ae7e7cc8444224aea2d25a52acc9079064ba57f3350e3573eb23aeaf7a2d98136d17e6fa89a61aaf57155d";
|
||||||
};
|
};
|
||||||
|
|
||||||
meta = {
|
meta = {
|
||||||
@ -90,11 +90,11 @@
|
|||||||
|
|
||||||
firefox-esr-115 = buildMozillaMach rec {
|
firefox-esr-115 = buildMozillaMach rec {
|
||||||
pname = "firefox-esr-115";
|
pname = "firefox-esr-115";
|
||||||
version = "115.2.1esr";
|
version = "115.3.0esr";
|
||||||
applicationName = "Mozilla Firefox ESR";
|
applicationName = "Mozilla Firefox ESR";
|
||||||
src = fetchurl {
|
src = fetchurl {
|
||||||
url = "mirror://mozilla/firefox/releases/${version}/source/firefox-${version}.source.tar.xz";
|
url = "mirror://mozilla/firefox/releases/${version}/source/firefox-${version}.source.tar.xz";
|
||||||
sha512 = "5f9ff96996e3c482fa4d2e2861fdf14d2154bf0277d412bf9c9435204c7e2e2539ce7ef0891d8dafc74d5a12650a5ccd33d79547aa1bbb2c2a0972aaeb755edf";
|
sha512 = "4a85095620a61dc516cfce6f288ba491a99c72a78c6dfae264c1292f9eba902e3df7101b97a6f8531114ccce421c92586e143872798aafd7aabbe98a257692ee";
|
||||||
};
|
};
|
||||||
|
|
||||||
meta = {
|
meta = {
|
||||||
|
@ -362,7 +362,7 @@ let
|
|||||||
|
|
||||||
extraPoliciesFiles=(${builtins.toString extraPoliciesFiles})
|
extraPoliciesFiles=(${builtins.toString extraPoliciesFiles})
|
||||||
for extraPoliciesFile in "''${extraPoliciesFiles[@]}"; do
|
for extraPoliciesFile in "''${extraPoliciesFiles[@]}"; do
|
||||||
jq -s '.[0] + .[1]' "$POL_PATH" $extraPoliciesFile > .tmp.json
|
jq -s '.[0] * .[1]' "$POL_PATH" $extraPoliciesFile > .tmp.json
|
||||||
mv .tmp.json "$POL_PATH"
|
mv .tmp.json "$POL_PATH"
|
||||||
done
|
done
|
||||||
|
|
||||||
|
@ -58,6 +58,7 @@ stdenv.mkDerivation rec {
|
|||||||
meta = with lib; {
|
meta = with lib; {
|
||||||
description = "A text-mode web browser";
|
description = "A text-mode web browser";
|
||||||
homepage = "https://lynx.invisible-island.net/";
|
homepage = "https://lynx.invisible-island.net/";
|
||||||
|
mainProgram = "lynx";
|
||||||
maintainers = with maintainers; [ ];
|
maintainers = with maintainers; [ ];
|
||||||
license = licenses.gpl2Plus;
|
license = licenses.gpl2Plus;
|
||||||
platforms = platforms.unix;
|
platforms = platforms.unix;
|
||||||
|
@ -32,7 +32,7 @@ in
|
|||||||
python3Packages.buildPythonPackage rec {
|
python3Packages.buildPythonPackage rec {
|
||||||
pname = "offpunk";
|
pname = "offpunk";
|
||||||
version = "1.10";
|
version = "1.10";
|
||||||
format = "flit";
|
format = "pyproject";
|
||||||
|
|
||||||
disabled = python3Packages.pythonOlder "3.7";
|
disabled = python3Packages.pythonOlder "3.7";
|
||||||
|
|
||||||
@ -43,7 +43,7 @@ python3Packages.buildPythonPackage rec {
|
|||||||
hash = "sha256-+jGKPPnKZHn+l6VAwuae6kICwR7ymkYJjsM2OHQAEmU=";
|
hash = "sha256-+jGKPPnKZHn+l6VAwuae6kICwR7ymkYJjsM2OHQAEmU=";
|
||||||
};
|
};
|
||||||
|
|
||||||
nativeBuildInputs = [ installShellFiles ];
|
nativeBuildInputs = [ python3Packages.flit-core installShellFiles ];
|
||||||
propagatedBuildInputs = otherDependencies ++ pythonDependencies;
|
propagatedBuildInputs = otherDependencies ++ pythonDependencies;
|
||||||
|
|
||||||
postInstall = ''
|
postInstall = ''
|
||||||
|
@ -2,18 +2,18 @@
|
|||||||
|
|
||||||
buildGoModule rec{
|
buildGoModule rec{
|
||||||
pname = "pinniped";
|
pname = "pinniped";
|
||||||
version = "0.25.0";
|
version = "0.26.0";
|
||||||
|
|
||||||
src = fetchFromGitHub {
|
src = fetchFromGitHub {
|
||||||
owner = "vmware-tanzu";
|
owner = "vmware-tanzu";
|
||||||
repo = "pinniped";
|
repo = "pinniped";
|
||||||
rev = "v${version}";
|
rev = "v${version}";
|
||||||
sha256 = "sha256-tUdPeBqAXYaBB2rtkhrhN3kRSVv8dg0UI7GEmIdO+fc=";
|
sha256 = "sha256-z+JwtrP3WGMK11RRYrDig5SrX6YCj7U3AwuLg/J8dgs=";
|
||||||
};
|
};
|
||||||
|
|
||||||
subPackages = "cmd/pinniped";
|
subPackages = "cmd/pinniped";
|
||||||
|
|
||||||
vendorHash = "sha256-IFVXNd1UkfZiw8YKG3v9uHCJQCE3ajOsjbHv5r3y3L4=";
|
vendorHash = "sha256-QywpqgQj76x0zmn4eC74fy7UECK4K81WO+nxOYKZqq0=";
|
||||||
|
|
||||||
ldflags = [ "-s" "-w" ];
|
ldflags = [ "-s" "-w" ];
|
||||||
|
|
||||||
|
@ -2,29 +2,30 @@
|
|||||||
, stdenv
|
, stdenv
|
||||||
, fetchurl
|
, fetchurl
|
||||||
, atomEnv
|
, atomEnv
|
||||||
|
, electron_26
|
||||||
, systemd
|
, systemd
|
||||||
, pulseaudio
|
, pulseaudio
|
||||||
, libxshmfence
|
, libxshmfence
|
||||||
, libnotify
|
, libnotify
|
||||||
, libappindicator-gtk3
|
, libappindicator-gtk3
|
||||||
, wrapGAppsHook
|
, makeWrapper
|
||||||
, autoPatchelfHook
|
, autoPatchelfHook
|
||||||
}:
|
}:
|
||||||
|
|
||||||
let
|
let
|
||||||
|
|
||||||
pname = "mattermost-desktop";
|
pname = "mattermost-desktop";
|
||||||
version = "5.3.1";
|
version = "5.5.0";
|
||||||
|
|
||||||
srcs = {
|
srcs = {
|
||||||
"x86_64-linux" = {
|
"x86_64-linux" = {
|
||||||
url = "https://releases.mattermost.com/desktop/${version}/${pname}-${version}-linux-x64.tar.gz";
|
url = "https://releases.mattermost.com/desktop/${version}/${pname}-${version}-linux-x64.tar.gz";
|
||||||
hash = "sha256-rw+SYCFmN2W4t5iIWEpV9VHxcvwTLOckMV58WRa5dZE=";
|
hash = "sha256-htjKGO16Qs1RVE4U47DdN8bNpUH4JD/LkMOeoIRmLPI=";
|
||||||
};
|
};
|
||||||
|
|
||||||
"aarch64-linux" = {
|
"aarch64-linux" = {
|
||||||
url = "https://releases.mattermost.com/desktop/${version}/${pname}-${version}-linux-arm64.tar.gz";
|
url = "https://releases.mattermost.com/desktop/${version}/${pname}-${version}-linux-arm64.tar.gz";
|
||||||
hash = "sha256-FEIldkb3FbUfVAYRkjs7oPRJDHdsIGDW5iaC2Qz1dpc=";
|
hash = "sha256-LQhMSIrWDZTXBnJfLKph5e6txHGvQSqEu+P1j1zOiTg=";
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
|
|
||||||
@ -37,11 +38,7 @@ stdenv.mkDerivation {
|
|||||||
|
|
||||||
src = fetchurl (srcs."${system}" or (throw "Unsupported system ${system}"));
|
src = fetchurl (srcs."${system}" or (throw "Unsupported system ${system}"));
|
||||||
|
|
||||||
dontBuild = true;
|
nativeBuildInputs = [ makeWrapper autoPatchelfHook ];
|
||||||
dontConfigure = true;
|
|
||||||
dontStrip = true;
|
|
||||||
|
|
||||||
nativeBuildInputs = [ wrapGAppsHook autoPatchelfHook ];
|
|
||||||
|
|
||||||
buildInputs = atomEnv.packages ++ [
|
buildInputs = atomEnv.packages ++ [
|
||||||
libxshmfence
|
libxshmfence
|
||||||
@ -63,21 +60,19 @@ stdenv.mkDerivation {
|
|||||||
find . -type f \( -name '*.so.*' -o -name '*.s[oh]' \) -print0 | xargs -0 chmod +x
|
find . -type f \( -name '*.so.*' -o -name '*.s[oh]' \) -print0 | xargs -0 chmod +x
|
||||||
chmod +x mattermost-desktop chrome-sandbox
|
chmod +x mattermost-desktop chrome-sandbox
|
||||||
|
|
||||||
mkdir -p $out/share/mattermost-desktop
|
mkdir -p $out/bin $out/share/applications $out/share/${pname}/
|
||||||
cp -R . $out/share/mattermost-desktop
|
cp -r app_icon.png create_desktop_file.sh locales/ resources/* $out/share/${pname}/
|
||||||
|
|
||||||
mkdir -p "$out/bin"
|
patchShebangs $out/share/${pname}/create_desktop_file.sh
|
||||||
ln -s $out/share/mattermost-desktop/mattermost-desktop $out/bin/mattermost-desktop
|
$out/share/${pname}/create_desktop_file.sh
|
||||||
|
rm $out/share/${pname}/create_desktop_file.sh
|
||||||
patchShebangs $out/share/mattermost-desktop/create_desktop_file.sh
|
|
||||||
$out/share/mattermost-desktop/create_desktop_file.sh
|
|
||||||
rm $out/share/mattermost-desktop/create_desktop_file.sh
|
|
||||||
mkdir -p $out/share/applications
|
|
||||||
chmod -x Mattermost.desktop
|
|
||||||
mv Mattermost.desktop $out/share/applications/Mattermost.desktop
|
mv Mattermost.desktop $out/share/applications/Mattermost.desktop
|
||||||
substituteInPlace $out/share/applications/Mattermost.desktop \
|
substituteInPlace $out/share/applications/Mattermost.desktop \
|
||||||
--replace /share/mattermost-desktop/mattermost-desktop /bin/mattermost-desktop
|
--replace /share/mattermost-desktop/mattermost-desktop /bin/mattermost-desktop
|
||||||
|
|
||||||
|
makeWrapper ${electron_26}/bin/electron $out/bin/${pname} \
|
||||||
|
--add-flags $out/share/${pname}/app.asar
|
||||||
|
|
||||||
runHook postInstall
|
runHook postInstall
|
||||||
'';
|
'';
|
||||||
|
|
||||||
|
@ -2,13 +2,13 @@
|
|||||||
|
|
||||||
(if stdenv.isDarwin then darwin.apple_sdk_11_0.llvmPackages_14.stdenv else stdenv).mkDerivation rec {
|
(if stdenv.isDarwin then darwin.apple_sdk_11_0.llvmPackages_14.stdenv else stdenv).mkDerivation rec {
|
||||||
pname = "signalbackup-tools";
|
pname = "signalbackup-tools";
|
||||||
version = "20230922-4";
|
version = "20230925";
|
||||||
|
|
||||||
src = fetchFromGitHub {
|
src = fetchFromGitHub {
|
||||||
owner = "bepaald";
|
owner = "bepaald";
|
||||||
repo = pname;
|
repo = pname;
|
||||||
rev = version;
|
rev = version;
|
||||||
hash = "sha256-6VzcylvGyEB+5KYX1r9wEEfSECh+O947KdcN3DMJxE0=";
|
hash = "sha256-j1iAFNG6A/u/2OY07At0kobXtlSqoy3jM2rBf96qhHQ=";
|
||||||
};
|
};
|
||||||
|
|
||||||
postPatch = ''
|
postPatch = ''
|
||||||
|
@ -6,12 +6,6 @@ set -eou pipefail
|
|||||||
latest_linux_version=$(curl -L --silent https://slack.com/downloads/linux | sed -n 's/.*Version \([0-9\.]\+\).*/\1/p')
|
latest_linux_version=$(curl -L --silent https://slack.com/downloads/linux | sed -n 's/.*Version \([0-9\.]\+\).*/\1/p')
|
||||||
latest_mac_version=$(curl -L --silent https://slack.com/downloads/mac | sed -n 's/.*Version \([0-9\.]\+\).*/\1/p')
|
latest_mac_version=$(curl -L --silent https://slack.com/downloads/mac | sed -n 's/.*Version \([0-9\.]\+\).*/\1/p')
|
||||||
|
|
||||||
# Double check that the latest mac and linux versions are in sync.
|
|
||||||
if [[ "$latest_linux_version" != "$latest_mac_version" ]]; then
|
|
||||||
echo "the latest linux ($latest_linux_version) and mac ($latest_mac_version) versions are not the same"
|
|
||||||
exit 1
|
|
||||||
fi
|
|
||||||
|
|
||||||
nixpkgs="$(git rev-parse --show-toplevel)"
|
nixpkgs="$(git rev-parse --show-toplevel)"
|
||||||
slack_nix="$nixpkgs/pkgs/applications/networking/instant-messengers/slack/default.nix"
|
slack_nix="$nixpkgs/pkgs/applications/networking/instant-messengers/slack/default.nix"
|
||||||
nixpkgs_linux_version=$(cat "$slack_nix" | sed -n 's/.*x86_64-linux-version = \"\([0-9\.]\+\)\";.*/\1/p')
|
nixpkgs_linux_version=$(cat "$slack_nix" | sed -n 's/.*x86_64-linux-version = \"\([0-9\.]\+\)\";.*/\1/p')
|
||||||
|
@ -30,6 +30,7 @@ stdenv.mkDerivation rec {
|
|||||||
license = licenses.gpl3Plus;
|
license = licenses.gpl3Plus;
|
||||||
description = "A TLS-only terminal IRC client";
|
description = "A TLS-only terminal IRC client";
|
||||||
platforms = platforms.unix;
|
platforms = platforms.unix;
|
||||||
|
mainProgram = "catgirl";
|
||||||
maintainers = with maintainers; [ xfnw ];
|
maintainers = with maintainers; [ xfnw ];
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
@ -2,13 +2,13 @@
|
|||||||
|
|
||||||
stdenv.mkDerivation rec {
|
stdenv.mkDerivation rec {
|
||||||
pname = "wee-slack";
|
pname = "wee-slack";
|
||||||
version = "2.10.0";
|
version = "2.10.1";
|
||||||
|
|
||||||
src = fetchFromGitHub {
|
src = fetchFromGitHub {
|
||||||
repo = "wee-slack";
|
repo = "wee-slack";
|
||||||
owner = "wee-slack";
|
owner = "wee-slack";
|
||||||
rev = "v${version}";
|
rev = "v${version}";
|
||||||
sha256 = "sha256-SxmMCD7FdkmZ0ccDbuY2XUGcLxHlv62x4Pj55Wzf0AA=";
|
sha256 = "sha256-J4s7+JFd/y1espp3HZCs48++fhN6lmpaglGkgomtf3o=";
|
||||||
};
|
};
|
||||||
|
|
||||||
patches = [
|
patches = [
|
||||||
|
@ -1,665 +1,665 @@
|
|||||||
{
|
{
|
||||||
version = "115.2.2";
|
version = "115.2.3";
|
||||||
sources = [
|
sources = [
|
||||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/115.2.2/linux-x86_64/af/thunderbird-115.2.2.tar.bz2";
|
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/115.2.3/linux-x86_64/af/thunderbird-115.2.3.tar.bz2";
|
||||||
locale = "af";
|
locale = "af";
|
||||||
arch = "linux-x86_64";
|
arch = "linux-x86_64";
|
||||||
sha256 = "abca901bd8ab959c56701ed2a1333cdc9e1c616755f7af66bfd2843beb150fbb";
|
sha256 = "1ef112eb96e577d046d37becddf2149bec6a3264bd56db18e365e0fe1c52c37b";
|
||||||
}
|
}
|
||||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/115.2.2/linux-x86_64/ar/thunderbird-115.2.2.tar.bz2";
|
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/115.2.3/linux-x86_64/ar/thunderbird-115.2.3.tar.bz2";
|
||||||
locale = "ar";
|
locale = "ar";
|
||||||
arch = "linux-x86_64";
|
arch = "linux-x86_64";
|
||||||
sha256 = "3b370800cf3020dd665438142b2510e1b93443fcdfb9afae4306fe783d65941d";
|
sha256 = "7b6a78bcea4ca6a43dfc0ac5bc3e6fc664923308bd71adad52d57d0c475be5b9";
|
||||||
}
|
}
|
||||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/115.2.2/linux-x86_64/ast/thunderbird-115.2.2.tar.bz2";
|
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/115.2.3/linux-x86_64/ast/thunderbird-115.2.3.tar.bz2";
|
||||||
locale = "ast";
|
locale = "ast";
|
||||||
arch = "linux-x86_64";
|
arch = "linux-x86_64";
|
||||||
sha256 = "8877c0424559e17fdb8b7ebc543308c51325cd8ccfbcfb22de69a91cfb7da45c";
|
sha256 = "d8fb2c2bd26a52c892fde59e2a85b2ac541e6bcb7040b42d105e3cfa8e9d691c";
|
||||||
}
|
}
|
||||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/115.2.2/linux-x86_64/be/thunderbird-115.2.2.tar.bz2";
|
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/115.2.3/linux-x86_64/be/thunderbird-115.2.3.tar.bz2";
|
||||||
locale = "be";
|
locale = "be";
|
||||||
arch = "linux-x86_64";
|
arch = "linux-x86_64";
|
||||||
sha256 = "0efdf2e14de556028e1518123d2879e9a544f9db4abb81a45acbffe24c1b57a8";
|
sha256 = "d3954e30ef0257364a4c661444ab873c9b6c14428b8d83a153b6b8527599c825";
|
||||||
}
|
}
|
||||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/115.2.2/linux-x86_64/bg/thunderbird-115.2.2.tar.bz2";
|
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/115.2.3/linux-x86_64/bg/thunderbird-115.2.3.tar.bz2";
|
||||||
locale = "bg";
|
locale = "bg";
|
||||||
arch = "linux-x86_64";
|
arch = "linux-x86_64";
|
||||||
sha256 = "2090a1df798386de4f7ce018b440e682c0ee002cff6b6cb9e0fc4e8f2354ad2e";
|
sha256 = "04b7c05e6686368fe416acbaa6db8d2f65f71ac281223ccb0d0be6564f0ed7d0";
|
||||||
}
|
}
|
||||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/115.2.2/linux-x86_64/br/thunderbird-115.2.2.tar.bz2";
|
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/115.2.3/linux-x86_64/br/thunderbird-115.2.3.tar.bz2";
|
||||||
locale = "br";
|
locale = "br";
|
||||||
arch = "linux-x86_64";
|
arch = "linux-x86_64";
|
||||||
sha256 = "031139a2b4e02e9948c4ef2511e51007dabdaa427f87cc5ebc37213c066417d9";
|
sha256 = "91cceedcd1240b362c2c210f00d5ba0fe4f63ec0fc2e783cdd2150b3cc5741b4";
|
||||||
}
|
}
|
||||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/115.2.2/linux-x86_64/ca/thunderbird-115.2.2.tar.bz2";
|
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/115.2.3/linux-x86_64/ca/thunderbird-115.2.3.tar.bz2";
|
||||||
locale = "ca";
|
locale = "ca";
|
||||||
arch = "linux-x86_64";
|
arch = "linux-x86_64";
|
||||||
sha256 = "9486b45ff6aa2249a68889fc8c14c2eeb6f4157404aa58b6c57d42d2c7224b3a";
|
sha256 = "ba4755b72eb2df1df133b9005aa6b01e4a706b797749e064fd83d62ca434bc36";
|
||||||
}
|
}
|
||||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/115.2.2/linux-x86_64/cak/thunderbird-115.2.2.tar.bz2";
|
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/115.2.3/linux-x86_64/cak/thunderbird-115.2.3.tar.bz2";
|
||||||
locale = "cak";
|
locale = "cak";
|
||||||
arch = "linux-x86_64";
|
arch = "linux-x86_64";
|
||||||
sha256 = "e25b0ef1ca7825088a9d824333b7e3c15c0f34d91e24f2a6fb95ca321cb35fd6";
|
sha256 = "533ee476f88e62c3645d04b15ede8b39e76efb4a8a9868f8eec95524c8976bf6";
|
||||||
}
|
}
|
||||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/115.2.2/linux-x86_64/cs/thunderbird-115.2.2.tar.bz2";
|
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/115.2.3/linux-x86_64/cs/thunderbird-115.2.3.tar.bz2";
|
||||||
locale = "cs";
|
locale = "cs";
|
||||||
arch = "linux-x86_64";
|
arch = "linux-x86_64";
|
||||||
sha256 = "66ff84c6eff82053899a5fb73d60b6dbe9a804a29d0a4c3e534b18b4f336d4a6";
|
sha256 = "875f2dd2a2bd06a91fee900946f31c659015ae9477900cbeb0819857b89173cf";
|
||||||
}
|
}
|
||||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/115.2.2/linux-x86_64/cy/thunderbird-115.2.2.tar.bz2";
|
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/115.2.3/linux-x86_64/cy/thunderbird-115.2.3.tar.bz2";
|
||||||
locale = "cy";
|
locale = "cy";
|
||||||
arch = "linux-x86_64";
|
arch = "linux-x86_64";
|
||||||
sha256 = "c67d74d7647dfef7bfa623f343a98d91921788c317a3ce6e0bcb9589c7dc8231";
|
sha256 = "896a64ca0f6c3fef047c854c17b45b2821c845d1e5d331599dfff524d228fbbc";
|
||||||
}
|
}
|
||||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/115.2.2/linux-x86_64/da/thunderbird-115.2.2.tar.bz2";
|
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/115.2.3/linux-x86_64/da/thunderbird-115.2.3.tar.bz2";
|
||||||
locale = "da";
|
locale = "da";
|
||||||
arch = "linux-x86_64";
|
arch = "linux-x86_64";
|
||||||
sha256 = "b3a297d57b2052d0a97279933a545602bb123c66501751a65cc73c8140fc78f7";
|
sha256 = "427c875eaab7912c9350153af827860b8803154abf564d1957c668d003e532e8";
|
||||||
}
|
}
|
||||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/115.2.2/linux-x86_64/de/thunderbird-115.2.2.tar.bz2";
|
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/115.2.3/linux-x86_64/de/thunderbird-115.2.3.tar.bz2";
|
||||||
locale = "de";
|
locale = "de";
|
||||||
arch = "linux-x86_64";
|
arch = "linux-x86_64";
|
||||||
sha256 = "43ffd505825af80846b644a36ef0a1254d8bed9c5a707aff633770f86c2be8a0";
|
sha256 = "2706e6103a38ed9abd866e13e56d7d3c16585f774704d4ce3e6596e740b8e18e";
|
||||||
}
|
}
|
||||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/115.2.2/linux-x86_64/dsb/thunderbird-115.2.2.tar.bz2";
|
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/115.2.3/linux-x86_64/dsb/thunderbird-115.2.3.tar.bz2";
|
||||||
locale = "dsb";
|
locale = "dsb";
|
||||||
arch = "linux-x86_64";
|
arch = "linux-x86_64";
|
||||||
sha256 = "312109b1bfdc949873f3f7ed2e7ec58cbe6945c35ae5058d382e874bf458a2ae";
|
sha256 = "b3f4d691650079376a87650c721bc26332cb06e5f705eac4c923a9efeeaf427a";
|
||||||
}
|
}
|
||||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/115.2.2/linux-x86_64/el/thunderbird-115.2.2.tar.bz2";
|
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/115.2.3/linux-x86_64/el/thunderbird-115.2.3.tar.bz2";
|
||||||
locale = "el";
|
locale = "el";
|
||||||
arch = "linux-x86_64";
|
arch = "linux-x86_64";
|
||||||
sha256 = "ed5705d70b211e293c13728ae66da78e7c217f5e06c48d4954a7dfe18e5029af";
|
sha256 = "2e15f8fcdd187daf643178b8c4f6ca8e1ec593ca67f90013b56010fa2a69c9d8";
|
||||||
}
|
}
|
||||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/115.2.2/linux-x86_64/en-CA/thunderbird-115.2.2.tar.bz2";
|
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/115.2.3/linux-x86_64/en-CA/thunderbird-115.2.3.tar.bz2";
|
||||||
locale = "en-CA";
|
locale = "en-CA";
|
||||||
arch = "linux-x86_64";
|
arch = "linux-x86_64";
|
||||||
sha256 = "a51444f889c9602749b92fcde62c162f109908de9f30e01e96d1a15aed7eced2";
|
sha256 = "4a4f1789849d6965e7ef1f2e37c6cf0a455173e94d603efdb1e9bf4c960c9876";
|
||||||
}
|
}
|
||||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/115.2.2/linux-x86_64/en-GB/thunderbird-115.2.2.tar.bz2";
|
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/115.2.3/linux-x86_64/en-GB/thunderbird-115.2.3.tar.bz2";
|
||||||
locale = "en-GB";
|
locale = "en-GB";
|
||||||
arch = "linux-x86_64";
|
arch = "linux-x86_64";
|
||||||
sha256 = "a03bba9d46dab2e6582dc6e25a603db7a9343b042eb499b4fc47c355a7624fa5";
|
sha256 = "965d5f32c3a64b85e9e73c8bb30978138a94848d19350115e048753d4a0e4cb4";
|
||||||
}
|
}
|
||||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/115.2.2/linux-x86_64/en-US/thunderbird-115.2.2.tar.bz2";
|
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/115.2.3/linux-x86_64/en-US/thunderbird-115.2.3.tar.bz2";
|
||||||
locale = "en-US";
|
locale = "en-US";
|
||||||
arch = "linux-x86_64";
|
arch = "linux-x86_64";
|
||||||
sha256 = "ffaee7ade088747636abf9ef9edafacc95591c1c317e39847a6dace08a863561";
|
sha256 = "b89f6d281224cbc9cabb419b7035a65dfc7bd9fc955d1416113c68dbb91335de";
|
||||||
}
|
}
|
||||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/115.2.2/linux-x86_64/es-AR/thunderbird-115.2.2.tar.bz2";
|
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/115.2.3/linux-x86_64/es-AR/thunderbird-115.2.3.tar.bz2";
|
||||||
locale = "es-AR";
|
locale = "es-AR";
|
||||||
arch = "linux-x86_64";
|
arch = "linux-x86_64";
|
||||||
sha256 = "e694f9aa4a95e633fd0efec32e7bad139de2d17eddfe16b6cf68c583dae3f0c0";
|
sha256 = "df0fc5168ff3be2c27a617325e40656ee37e671d7753ceef1549c52629c2a38c";
|
||||||
}
|
}
|
||||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/115.2.2/linux-x86_64/es-ES/thunderbird-115.2.2.tar.bz2";
|
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/115.2.3/linux-x86_64/es-ES/thunderbird-115.2.3.tar.bz2";
|
||||||
locale = "es-ES";
|
locale = "es-ES";
|
||||||
arch = "linux-x86_64";
|
arch = "linux-x86_64";
|
||||||
sha256 = "3e62ec94a4882ff37796b0fb40d5da0f06f1f68d0f930ee5724d0a8be3e6ef90";
|
sha256 = "c0dff3cb001447f454bb9e03c8bcfb8f40c8343f155470eb2978261ed7a67145";
|
||||||
}
|
}
|
||||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/115.2.2/linux-x86_64/es-MX/thunderbird-115.2.2.tar.bz2";
|
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/115.2.3/linux-x86_64/es-MX/thunderbird-115.2.3.tar.bz2";
|
||||||
locale = "es-MX";
|
locale = "es-MX";
|
||||||
arch = "linux-x86_64";
|
arch = "linux-x86_64";
|
||||||
sha256 = "b13f28b18f02119ed631f0dd7dc92e1e52053370987009846e01dcf63735f5dd";
|
sha256 = "2ce450466fa1c3e10ba577cacac3341633448334821b72c6d7b3d4b974a66884";
|
||||||
}
|
}
|
||||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/115.2.2/linux-x86_64/et/thunderbird-115.2.2.tar.bz2";
|
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/115.2.3/linux-x86_64/et/thunderbird-115.2.3.tar.bz2";
|
||||||
locale = "et";
|
locale = "et";
|
||||||
arch = "linux-x86_64";
|
arch = "linux-x86_64";
|
||||||
sha256 = "9941b5a3a35ae4059f16feb5471d08199a54cbde85751098ae612c806fcf8b5c";
|
sha256 = "f5f2fa06b92117a63dbda7d9206aec6f1bb2c586646d8469772de5f2b6338549";
|
||||||
}
|
}
|
||||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/115.2.2/linux-x86_64/eu/thunderbird-115.2.2.tar.bz2";
|
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/115.2.3/linux-x86_64/eu/thunderbird-115.2.3.tar.bz2";
|
||||||
locale = "eu";
|
locale = "eu";
|
||||||
arch = "linux-x86_64";
|
arch = "linux-x86_64";
|
||||||
sha256 = "b7246ce71436f1894cc8440388e826d2b84d57e5b3666be6fa369ca80eac6aff";
|
sha256 = "d284572381722dfed9e0ba1bc4e0b24e47dff673143852dd0a708d6ec2498dac";
|
||||||
}
|
}
|
||||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/115.2.2/linux-x86_64/fi/thunderbird-115.2.2.tar.bz2";
|
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/115.2.3/linux-x86_64/fi/thunderbird-115.2.3.tar.bz2";
|
||||||
locale = "fi";
|
locale = "fi";
|
||||||
arch = "linux-x86_64";
|
arch = "linux-x86_64";
|
||||||
sha256 = "baac69f0a0c19ac5ca4ca541a67369dd94793929eaedd9e061f5edee39715864";
|
sha256 = "0f9e251d0c9794349411f1cb0c32e2e941774ae083abde0f6502811dc1ddd5f9";
|
||||||
}
|
}
|
||||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/115.2.2/linux-x86_64/fr/thunderbird-115.2.2.tar.bz2";
|
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/115.2.3/linux-x86_64/fr/thunderbird-115.2.3.tar.bz2";
|
||||||
locale = "fr";
|
locale = "fr";
|
||||||
arch = "linux-x86_64";
|
arch = "linux-x86_64";
|
||||||
sha256 = "2b19d69fdf5fa542e513920b0e9f0616b74d6490dcd24e0f6fb6a50948cf7c2a";
|
sha256 = "cf06102a80ac1a5ec92716418955dea376274d5b807c2ba93763ac05a9a14c5e";
|
||||||
}
|
}
|
||||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/115.2.2/linux-x86_64/fy-NL/thunderbird-115.2.2.tar.bz2";
|
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/115.2.3/linux-x86_64/fy-NL/thunderbird-115.2.3.tar.bz2";
|
||||||
locale = "fy-NL";
|
locale = "fy-NL";
|
||||||
arch = "linux-x86_64";
|
arch = "linux-x86_64";
|
||||||
sha256 = "56abf13ec4453ad693e825e771fc02bd6d8ea87d795d9d5025c737f6fc57058c";
|
sha256 = "b25415d1cba48034f420142f78805284bb756885f30284b64343ed0a395abb54";
|
||||||
}
|
}
|
||||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/115.2.2/linux-x86_64/ga-IE/thunderbird-115.2.2.tar.bz2";
|
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/115.2.3/linux-x86_64/ga-IE/thunderbird-115.2.3.tar.bz2";
|
||||||
locale = "ga-IE";
|
locale = "ga-IE";
|
||||||
arch = "linux-x86_64";
|
arch = "linux-x86_64";
|
||||||
sha256 = "640c68609d56c0a838305510ba208a9d9ce216dcb5fdec7126587ac418d8c067";
|
sha256 = "9915c6d145a3f223086b67aa8e78b77648fe0bd5191fcf28f52d9b67026f5f4c";
|
||||||
}
|
}
|
||||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/115.2.2/linux-x86_64/gd/thunderbird-115.2.2.tar.bz2";
|
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/115.2.3/linux-x86_64/gd/thunderbird-115.2.3.tar.bz2";
|
||||||
locale = "gd";
|
locale = "gd";
|
||||||
arch = "linux-x86_64";
|
arch = "linux-x86_64";
|
||||||
sha256 = "c068ac36f73cfb2add5531e72e0268ec1d7d62505371fb0c7691655311fc26de";
|
sha256 = "01cf0b60172cf490c54193ed53dce0f482e7bacf979196ca5e27bdaac752dba2";
|
||||||
}
|
}
|
||||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/115.2.2/linux-x86_64/gl/thunderbird-115.2.2.tar.bz2";
|
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/115.2.3/linux-x86_64/gl/thunderbird-115.2.3.tar.bz2";
|
||||||
locale = "gl";
|
locale = "gl";
|
||||||
arch = "linux-x86_64";
|
arch = "linux-x86_64";
|
||||||
sha256 = "5ea2c1bbd289d4a04306b247d773ee7fd30b93999c93b1a013a3b91ffcf5d843";
|
sha256 = "fd20ad5e92ec3dee3ec3660230f2b1c3d48581961aae06176e7d06f4fe84d9fe";
|
||||||
}
|
}
|
||||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/115.2.2/linux-x86_64/he/thunderbird-115.2.2.tar.bz2";
|
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/115.2.3/linux-x86_64/he/thunderbird-115.2.3.tar.bz2";
|
||||||
locale = "he";
|
locale = "he";
|
||||||
arch = "linux-x86_64";
|
arch = "linux-x86_64";
|
||||||
sha256 = "0b343990193d616856c61d27655560e69114a41302806fccb688bc39e74c3ee0";
|
sha256 = "93c3c610f0115365e3de0c2e1219986eb4b94b49d96b7882b65b31de35d93798";
|
||||||
}
|
}
|
||||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/115.2.2/linux-x86_64/hr/thunderbird-115.2.2.tar.bz2";
|
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/115.2.3/linux-x86_64/hr/thunderbird-115.2.3.tar.bz2";
|
||||||
locale = "hr";
|
locale = "hr";
|
||||||
arch = "linux-x86_64";
|
arch = "linux-x86_64";
|
||||||
sha256 = "7a2b5b4dbdbf7ce166ee378d55d3862fdbfccc1a4508cad6f042bbee4967e648";
|
sha256 = "d9114a82f7c0f0440eaf8095ddcad7734967f174e846d518f603dedb40323f56";
|
||||||
}
|
}
|
||||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/115.2.2/linux-x86_64/hsb/thunderbird-115.2.2.tar.bz2";
|
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/115.2.3/linux-x86_64/hsb/thunderbird-115.2.3.tar.bz2";
|
||||||
locale = "hsb";
|
locale = "hsb";
|
||||||
arch = "linux-x86_64";
|
arch = "linux-x86_64";
|
||||||
sha256 = "624e6b231cd4b662c995237fa5c17e744106eca90cf6936877741ddb936a6880";
|
sha256 = "304e8fe3b2be93a79544bb5747b17d2dd2cb34300e48913b4b3e37e925ef30ed";
|
||||||
}
|
}
|
||||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/115.2.2/linux-x86_64/hu/thunderbird-115.2.2.tar.bz2";
|
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/115.2.3/linux-x86_64/hu/thunderbird-115.2.3.tar.bz2";
|
||||||
locale = "hu";
|
locale = "hu";
|
||||||
arch = "linux-x86_64";
|
arch = "linux-x86_64";
|
||||||
sha256 = "8b9a914ddcc8d86986d258e106584a7104b15d4e6be54c3f39df773cf0cc7aae";
|
sha256 = "a7ab214e118c204ab3f1b9a4a6641d70b65241fa97ab6d1152b34c757bca0690";
|
||||||
}
|
}
|
||||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/115.2.2/linux-x86_64/hy-AM/thunderbird-115.2.2.tar.bz2";
|
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/115.2.3/linux-x86_64/hy-AM/thunderbird-115.2.3.tar.bz2";
|
||||||
locale = "hy-AM";
|
locale = "hy-AM";
|
||||||
arch = "linux-x86_64";
|
arch = "linux-x86_64";
|
||||||
sha256 = "a1090c31b81ad89734fefffe63b4c01c2a49bab91cf94d32c0ca429f9ae2409f";
|
sha256 = "1c8a67c5d9e6ef8cb909bc4e2ec77a6b9159b21d3829650cc54ed9a6cc1cb7d1";
|
||||||
}
|
}
|
||||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/115.2.2/linux-x86_64/id/thunderbird-115.2.2.tar.bz2";
|
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/115.2.3/linux-x86_64/id/thunderbird-115.2.3.tar.bz2";
|
||||||
locale = "id";
|
locale = "id";
|
||||||
arch = "linux-x86_64";
|
arch = "linux-x86_64";
|
||||||
sha256 = "31ac099a9049edb6e74d5e4443b11668a5cab97d82470d08df84f8dc9930b882";
|
sha256 = "072d442f5d49c13704a6d5446dd04df6460b009676a4a7ff2a8b5e5a93f1a1b8";
|
||||||
}
|
}
|
||||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/115.2.2/linux-x86_64/is/thunderbird-115.2.2.tar.bz2";
|
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/115.2.3/linux-x86_64/is/thunderbird-115.2.3.tar.bz2";
|
||||||
locale = "is";
|
locale = "is";
|
||||||
arch = "linux-x86_64";
|
arch = "linux-x86_64";
|
||||||
sha256 = "c11befb7b259e6883b85730a1a423745782c80fd6d49ae1754d66789c553c2e8";
|
sha256 = "fbf73fad3256e104a4b4f7c175f0c5df34453100cdcf701cd075f7ee82feed32";
|
||||||
}
|
}
|
||||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/115.2.2/linux-x86_64/it/thunderbird-115.2.2.tar.bz2";
|
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/115.2.3/linux-x86_64/it/thunderbird-115.2.3.tar.bz2";
|
||||||
locale = "it";
|
locale = "it";
|
||||||
arch = "linux-x86_64";
|
arch = "linux-x86_64";
|
||||||
sha256 = "8e2f30430057194862d93e9fd076b42ac33499ba2fa38c3330070b872faf4693";
|
sha256 = "f04eaaecb3f03254ecc07f00f414a8eb458a8a8905024260c83fbab363e0a77a";
|
||||||
}
|
}
|
||||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/115.2.2/linux-x86_64/ja/thunderbird-115.2.2.tar.bz2";
|
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/115.2.3/linux-x86_64/ja/thunderbird-115.2.3.tar.bz2";
|
||||||
locale = "ja";
|
locale = "ja";
|
||||||
arch = "linux-x86_64";
|
arch = "linux-x86_64";
|
||||||
sha256 = "36058ca20592a045a25621b3cb6e085fd7e4c79fb4d85e8851b1bc9429d7b987";
|
sha256 = "d05d93887ccd2dc7eefb5682abdec36f59df61d318ed68133047674aec042409";
|
||||||
}
|
}
|
||||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/115.2.2/linux-x86_64/ka/thunderbird-115.2.2.tar.bz2";
|
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/115.2.3/linux-x86_64/ka/thunderbird-115.2.3.tar.bz2";
|
||||||
locale = "ka";
|
locale = "ka";
|
||||||
arch = "linux-x86_64";
|
arch = "linux-x86_64";
|
||||||
sha256 = "1187cd5eac5511f48d93e053dd391b0b484d2ed8c925f4acd267e1253938812d";
|
sha256 = "923e9a11d26bec0cc2b46e89041c2dc84ce803c32f3083c20c262bdfa1bf3c92";
|
||||||
}
|
}
|
||||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/115.2.2/linux-x86_64/kab/thunderbird-115.2.2.tar.bz2";
|
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/115.2.3/linux-x86_64/kab/thunderbird-115.2.3.tar.bz2";
|
||||||
locale = "kab";
|
locale = "kab";
|
||||||
arch = "linux-x86_64";
|
arch = "linux-x86_64";
|
||||||
sha256 = "1058188515e686ec4a2cdf19bd18333b6786a66c8fba768c39435a9b53f6f17c";
|
sha256 = "3dd8133d5991c1a87740d2923a12716b653f3c7f5643c1670d20e4187166d0b7";
|
||||||
}
|
}
|
||||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/115.2.2/linux-x86_64/kk/thunderbird-115.2.2.tar.bz2";
|
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/115.2.3/linux-x86_64/kk/thunderbird-115.2.3.tar.bz2";
|
||||||
locale = "kk";
|
locale = "kk";
|
||||||
arch = "linux-x86_64";
|
arch = "linux-x86_64";
|
||||||
sha256 = "cd305ce3935fbb6b028f7eacb978bc05ebe068c90c67e35f8cb020a4546e50bb";
|
sha256 = "f9d08c465cdb736b6939e54a4ae19f33491ae53053332333d6233fdec69943f9";
|
||||||
}
|
}
|
||||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/115.2.2/linux-x86_64/ko/thunderbird-115.2.2.tar.bz2";
|
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/115.2.3/linux-x86_64/ko/thunderbird-115.2.3.tar.bz2";
|
||||||
locale = "ko";
|
locale = "ko";
|
||||||
arch = "linux-x86_64";
|
arch = "linux-x86_64";
|
||||||
sha256 = "a54216fc0f6d5e73c830a8d2af6b8b67f76469c5312b18aaa90c5561d2400dcb";
|
sha256 = "a50dc23492367b9afdac08c3eb0c7d20a5379954c8105efde335a9b356a210be";
|
||||||
}
|
}
|
||||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/115.2.2/linux-x86_64/lt/thunderbird-115.2.2.tar.bz2";
|
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/115.2.3/linux-x86_64/lt/thunderbird-115.2.3.tar.bz2";
|
||||||
locale = "lt";
|
locale = "lt";
|
||||||
arch = "linux-x86_64";
|
arch = "linux-x86_64";
|
||||||
sha256 = "9cec3ecea52bf0de2be0afece9f93a83cd89c81a0fa5531aac5d0143c19e3eb5";
|
sha256 = "e00e3de9b69cef1db8eaa59422e1b32ed2eaf2838bbadba119dcbf20394af3f6";
|
||||||
}
|
}
|
||||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/115.2.2/linux-x86_64/lv/thunderbird-115.2.2.tar.bz2";
|
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/115.2.3/linux-x86_64/lv/thunderbird-115.2.3.tar.bz2";
|
||||||
locale = "lv";
|
locale = "lv";
|
||||||
arch = "linux-x86_64";
|
arch = "linux-x86_64";
|
||||||
sha256 = "1d40bf00bfceb69058995d1b31d7eb1b95522b9c873c2e353bf91eeabc0fd4e9";
|
sha256 = "01dc6a0ae0f013ef67d6e5b9135e7f65e7883356a028a66940c63273a7e9dfb2";
|
||||||
}
|
}
|
||||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/115.2.2/linux-x86_64/ms/thunderbird-115.2.2.tar.bz2";
|
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/115.2.3/linux-x86_64/ms/thunderbird-115.2.3.tar.bz2";
|
||||||
locale = "ms";
|
locale = "ms";
|
||||||
arch = "linux-x86_64";
|
arch = "linux-x86_64";
|
||||||
sha256 = "bf2257ee492c4b20dd2c393e783398379361fce3d6eb0e3c697dcc3e5c7692be";
|
sha256 = "b1cb2d7f51adb6ad98e94d286d6143fa7938806ed44b2aa86144b9eefa2950e0";
|
||||||
}
|
}
|
||||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/115.2.2/linux-x86_64/nb-NO/thunderbird-115.2.2.tar.bz2";
|
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/115.2.3/linux-x86_64/nb-NO/thunderbird-115.2.3.tar.bz2";
|
||||||
locale = "nb-NO";
|
locale = "nb-NO";
|
||||||
arch = "linux-x86_64";
|
arch = "linux-x86_64";
|
||||||
sha256 = "8d10ff20e72063014de0af53284b6394dd137303de181a5568085b63e3556530";
|
sha256 = "bfb8a81b674a0c924755162ace04c5367d723a9c6c1d1a179657f23c30624eb8";
|
||||||
}
|
}
|
||||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/115.2.2/linux-x86_64/nl/thunderbird-115.2.2.tar.bz2";
|
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/115.2.3/linux-x86_64/nl/thunderbird-115.2.3.tar.bz2";
|
||||||
locale = "nl";
|
locale = "nl";
|
||||||
arch = "linux-x86_64";
|
arch = "linux-x86_64";
|
||||||
sha256 = "afe6d63a0394d2130b31501c8ed3a7f2d0f1f063eefc737679ba4eb22e7f9f94";
|
sha256 = "cdf8ac214968a31972bb077a9e2aa26fe7b6dfa9b5b4c7e8d6b34dc7b78466e6";
|
||||||
}
|
}
|
||||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/115.2.2/linux-x86_64/nn-NO/thunderbird-115.2.2.tar.bz2";
|
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/115.2.3/linux-x86_64/nn-NO/thunderbird-115.2.3.tar.bz2";
|
||||||
locale = "nn-NO";
|
locale = "nn-NO";
|
||||||
arch = "linux-x86_64";
|
arch = "linux-x86_64";
|
||||||
sha256 = "68e99bf9cf99fa8d8528dc7c18dc482922541ecbfad39251a1ae49dc8f73c0a2";
|
sha256 = "741b5c925dc5b299cd86bdc4212b8d1074cdc04202f10a1d052ea17abfde1b4b";
|
||||||
}
|
}
|
||||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/115.2.2/linux-x86_64/pa-IN/thunderbird-115.2.2.tar.bz2";
|
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/115.2.3/linux-x86_64/pa-IN/thunderbird-115.2.3.tar.bz2";
|
||||||
locale = "pa-IN";
|
locale = "pa-IN";
|
||||||
arch = "linux-x86_64";
|
arch = "linux-x86_64";
|
||||||
sha256 = "d112133d7f9dc5d70bda58261f5b17fadd1da8ceb33f68ff98764658030266e2";
|
sha256 = "0401e65f21bb164768eac9c6115e854f63b7c4382da2d385234f117c6c640e4b";
|
||||||
}
|
}
|
||||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/115.2.2/linux-x86_64/pl/thunderbird-115.2.2.tar.bz2";
|
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/115.2.3/linux-x86_64/pl/thunderbird-115.2.3.tar.bz2";
|
||||||
locale = "pl";
|
locale = "pl";
|
||||||
arch = "linux-x86_64";
|
arch = "linux-x86_64";
|
||||||
sha256 = "a670c46af55bb5c01cca9763fdc51c7ba883f3e61419e49313de79030ee8f300";
|
sha256 = "455983ba636160be7b4f334ab58b879fb15a8552c511532e0f8ded4a70fa896d";
|
||||||
}
|
}
|
||||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/115.2.2/linux-x86_64/pt-BR/thunderbird-115.2.2.tar.bz2";
|
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/115.2.3/linux-x86_64/pt-BR/thunderbird-115.2.3.tar.bz2";
|
||||||
locale = "pt-BR";
|
locale = "pt-BR";
|
||||||
arch = "linux-x86_64";
|
arch = "linux-x86_64";
|
||||||
sha256 = "94a4c6dc574ced2f5c8853fb8aa5028bd633372119875a84039b40945cd062af";
|
sha256 = "f65a8e0c421cd379526c6d057229bbed4174f96b32da0e4c370d26a2d77e0de8";
|
||||||
}
|
}
|
||||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/115.2.2/linux-x86_64/pt-PT/thunderbird-115.2.2.tar.bz2";
|
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/115.2.3/linux-x86_64/pt-PT/thunderbird-115.2.3.tar.bz2";
|
||||||
locale = "pt-PT";
|
locale = "pt-PT";
|
||||||
arch = "linux-x86_64";
|
arch = "linux-x86_64";
|
||||||
sha256 = "510052bca71d439273e6101dc45a0dc5d5a0d0d73ca7d10799b60983ca8dad8b";
|
sha256 = "f4d62c18b6a70b9cc247511a8d9672e55fc07f5446e0fb51c94ab5800c4519af";
|
||||||
}
|
}
|
||||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/115.2.2/linux-x86_64/rm/thunderbird-115.2.2.tar.bz2";
|
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/115.2.3/linux-x86_64/rm/thunderbird-115.2.3.tar.bz2";
|
||||||
locale = "rm";
|
locale = "rm";
|
||||||
arch = "linux-x86_64";
|
arch = "linux-x86_64";
|
||||||
sha256 = "9cbf37597f5273d45e7f82fd6a63c4664621886c5b517b139ba32cc92ed699ad";
|
sha256 = "6e2d8a0895d8c111d00aba6acf82bffde11fd1a295cd5703932d39dc21e4c463";
|
||||||
}
|
}
|
||||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/115.2.2/linux-x86_64/ro/thunderbird-115.2.2.tar.bz2";
|
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/115.2.3/linux-x86_64/ro/thunderbird-115.2.3.tar.bz2";
|
||||||
locale = "ro";
|
locale = "ro";
|
||||||
arch = "linux-x86_64";
|
arch = "linux-x86_64";
|
||||||
sha256 = "3824fb33a770c42cfb737b1ad2389df31d898f64f5464ef92b65446d84526276";
|
sha256 = "903686033b896c95757243f2030e3353adddbe52899c923b2df5c6ae95bdb0ad";
|
||||||
}
|
}
|
||||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/115.2.2/linux-x86_64/ru/thunderbird-115.2.2.tar.bz2";
|
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/115.2.3/linux-x86_64/ru/thunderbird-115.2.3.tar.bz2";
|
||||||
locale = "ru";
|
locale = "ru";
|
||||||
arch = "linux-x86_64";
|
arch = "linux-x86_64";
|
||||||
sha256 = "25d898a873fac3aeedd635e35caccb012e2cfcbb3eb9d9b04e32fba331409fc4";
|
sha256 = "7d42c1b399d901355fb1d7523c690284a721da26015ac59480c3c12e0f61fe47";
|
||||||
}
|
}
|
||||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/115.2.2/linux-x86_64/sk/thunderbird-115.2.2.tar.bz2";
|
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/115.2.3/linux-x86_64/sk/thunderbird-115.2.3.tar.bz2";
|
||||||
locale = "sk";
|
locale = "sk";
|
||||||
arch = "linux-x86_64";
|
arch = "linux-x86_64";
|
||||||
sha256 = "6efd3f4af7de7c11c5a028a5be5de0459067cd455c237ed1df860b1bb2c2a70b";
|
sha256 = "6bc2ca89fd2e7bc5ed283deb8a55a6faafb20accc9182e4bdf70c6c8c68d2849";
|
||||||
}
|
}
|
||||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/115.2.2/linux-x86_64/sl/thunderbird-115.2.2.tar.bz2";
|
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/115.2.3/linux-x86_64/sl/thunderbird-115.2.3.tar.bz2";
|
||||||
locale = "sl";
|
locale = "sl";
|
||||||
arch = "linux-x86_64";
|
arch = "linux-x86_64";
|
||||||
sha256 = "87bdfa7acdaaeb4082190296f16540153696c3521ebdbf83b05e98b34d97423b";
|
sha256 = "8392a334fc05856bbac484b800d368a739d19a86db69d905ccdad58dd717aaca";
|
||||||
}
|
}
|
||||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/115.2.2/linux-x86_64/sq/thunderbird-115.2.2.tar.bz2";
|
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/115.2.3/linux-x86_64/sq/thunderbird-115.2.3.tar.bz2";
|
||||||
locale = "sq";
|
locale = "sq";
|
||||||
arch = "linux-x86_64";
|
arch = "linux-x86_64";
|
||||||
sha256 = "da6c4f5552bc8a13503af5228cc8197f76d4045ccf44d40839d46dbd3021cf8f";
|
sha256 = "e4c8261948209d5243a1f6c016e3d88e7dffd46bb7eed6672360cac7c5ba5845";
|
||||||
}
|
}
|
||||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/115.2.2/linux-x86_64/sr/thunderbird-115.2.2.tar.bz2";
|
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/115.2.3/linux-x86_64/sr/thunderbird-115.2.3.tar.bz2";
|
||||||
locale = "sr";
|
locale = "sr";
|
||||||
arch = "linux-x86_64";
|
arch = "linux-x86_64";
|
||||||
sha256 = "3f816d3718af424ce1ad395ae26899ee6a81d0b9cbc351b24284774f243f8a62";
|
sha256 = "a7b4d4ea1e2739e9072e79c6485096704efdcb197e60ede508bf75786641974d";
|
||||||
}
|
}
|
||||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/115.2.2/linux-x86_64/sv-SE/thunderbird-115.2.2.tar.bz2";
|
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/115.2.3/linux-x86_64/sv-SE/thunderbird-115.2.3.tar.bz2";
|
||||||
locale = "sv-SE";
|
locale = "sv-SE";
|
||||||
arch = "linux-x86_64";
|
arch = "linux-x86_64";
|
||||||
sha256 = "961695ad2889a4be8e0efc67537fbea786f72d9d0f900bc64346857249d74fde";
|
sha256 = "94ccbb7939119926424f2ece7294808df529524a8578a479549c87268dde0848";
|
||||||
}
|
}
|
||||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/115.2.2/linux-x86_64/th/thunderbird-115.2.2.tar.bz2";
|
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/115.2.3/linux-x86_64/th/thunderbird-115.2.3.tar.bz2";
|
||||||
locale = "th";
|
locale = "th";
|
||||||
arch = "linux-x86_64";
|
arch = "linux-x86_64";
|
||||||
sha256 = "24b1c5b1560f6e4e9ccfb9d2913e94c817b5bcf460d08f6a26fe75e3bd84c75d";
|
sha256 = "c681171a7593aea1455404447a7909b21d299acd5ed8eae2aa7cbd1fd3b2ebd0";
|
||||||
}
|
}
|
||||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/115.2.2/linux-x86_64/tr/thunderbird-115.2.2.tar.bz2";
|
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/115.2.3/linux-x86_64/tr/thunderbird-115.2.3.tar.bz2";
|
||||||
locale = "tr";
|
locale = "tr";
|
||||||
arch = "linux-x86_64";
|
arch = "linux-x86_64";
|
||||||
sha256 = "7a45630926c83121d5b39705a45fc6534616df0a822c6f61c3d89bf8c5681563";
|
sha256 = "0af1134ead1e970e8f1244b07711b2393faaa5224f027fdb274186aa72837901";
|
||||||
}
|
}
|
||||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/115.2.2/linux-x86_64/uk/thunderbird-115.2.2.tar.bz2";
|
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/115.2.3/linux-x86_64/uk/thunderbird-115.2.3.tar.bz2";
|
||||||
locale = "uk";
|
locale = "uk";
|
||||||
arch = "linux-x86_64";
|
arch = "linux-x86_64";
|
||||||
sha256 = "940ef8d84557c312b632b67f01f3b68dc1701a159caea8de34b4b950da05c8d9";
|
sha256 = "fe2ed6649000e226ccd6285189f6807e98eafdb799f16299fe66967cbbd9a01a";
|
||||||
}
|
}
|
||||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/115.2.2/linux-x86_64/uz/thunderbird-115.2.2.tar.bz2";
|
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/115.2.3/linux-x86_64/uz/thunderbird-115.2.3.tar.bz2";
|
||||||
locale = "uz";
|
locale = "uz";
|
||||||
arch = "linux-x86_64";
|
arch = "linux-x86_64";
|
||||||
sha256 = "1fd5533ac342d1a32d37428458fb2a08a99cf366b04cbb55acd745b8f931ba79";
|
sha256 = "32fd9fd79fdde70344c2938ac250523c99e0f3ade4674e9043b7d8ef5601328a";
|
||||||
}
|
}
|
||||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/115.2.2/linux-x86_64/vi/thunderbird-115.2.2.tar.bz2";
|
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/115.2.3/linux-x86_64/vi/thunderbird-115.2.3.tar.bz2";
|
||||||
locale = "vi";
|
locale = "vi";
|
||||||
arch = "linux-x86_64";
|
arch = "linux-x86_64";
|
||||||
sha256 = "1156dd69b7ab889c2e812096e3f8a16d85d11e88b730e35aa6c6d4213410b874";
|
sha256 = "4a9eadabecf8c92173ca42811a6000356da8cb701ffcf5972bb0c3c056dd0fcf";
|
||||||
}
|
}
|
||||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/115.2.2/linux-x86_64/zh-CN/thunderbird-115.2.2.tar.bz2";
|
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/115.2.3/linux-x86_64/zh-CN/thunderbird-115.2.3.tar.bz2";
|
||||||
locale = "zh-CN";
|
locale = "zh-CN";
|
||||||
arch = "linux-x86_64";
|
arch = "linux-x86_64";
|
||||||
sha256 = "e02ee486284735cf17e44fd15145265948e1548ba257be502f59662f81132278";
|
sha256 = "9713705b9684e2769b29e9d8ce1dea726ef7c57b808f686c887c37844f17318d";
|
||||||
}
|
}
|
||||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/115.2.2/linux-x86_64/zh-TW/thunderbird-115.2.2.tar.bz2";
|
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/115.2.3/linux-x86_64/zh-TW/thunderbird-115.2.3.tar.bz2";
|
||||||
locale = "zh-TW";
|
locale = "zh-TW";
|
||||||
arch = "linux-x86_64";
|
arch = "linux-x86_64";
|
||||||
sha256 = "1e0f7a45a93457c7a07366435df7e85c4a0f40dca7ab5a189495087aad11f0da";
|
sha256 = "26a531640aa90f25cbbfa2a4e13e6fc655fe8a7a8da638ea85862a98c1663dc7";
|
||||||
}
|
}
|
||||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/115.2.2/linux-i686/af/thunderbird-115.2.2.tar.bz2";
|
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/115.2.3/linux-i686/af/thunderbird-115.2.3.tar.bz2";
|
||||||
locale = "af";
|
locale = "af";
|
||||||
arch = "linux-i686";
|
arch = "linux-i686";
|
||||||
sha256 = "3ee2902b72a9df7b2445fd4e729f8654493cb4b8052433dfd86dfecc26f3678b";
|
sha256 = "32eeb18d57468c29615c60206d14b9052af7fefc8e698131da77cb70c0b57255";
|
||||||
}
|
}
|
||||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/115.2.2/linux-i686/ar/thunderbird-115.2.2.tar.bz2";
|
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/115.2.3/linux-i686/ar/thunderbird-115.2.3.tar.bz2";
|
||||||
locale = "ar";
|
locale = "ar";
|
||||||
arch = "linux-i686";
|
arch = "linux-i686";
|
||||||
sha256 = "8a882924914f3d7c7483ef778dfee8763102de06944f31b750fe95b7830da1a8";
|
sha256 = "33dd953ebefa4aedf7dccd27b70e29615dca58609c10bf99219b06e84c13c3ae";
|
||||||
}
|
}
|
||||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/115.2.2/linux-i686/ast/thunderbird-115.2.2.tar.bz2";
|
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/115.2.3/linux-i686/ast/thunderbird-115.2.3.tar.bz2";
|
||||||
locale = "ast";
|
locale = "ast";
|
||||||
arch = "linux-i686";
|
arch = "linux-i686";
|
||||||
sha256 = "5a8feb49d844362b8938aaeca6d42a7d385cddfe8cfdb9e90b4fd304260895c0";
|
sha256 = "c60273da4cfdb6c8796157da72548278c4fb6b7d8283785d0f71acb98316df4b";
|
||||||
}
|
}
|
||||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/115.2.2/linux-i686/be/thunderbird-115.2.2.tar.bz2";
|
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/115.2.3/linux-i686/be/thunderbird-115.2.3.tar.bz2";
|
||||||
locale = "be";
|
locale = "be";
|
||||||
arch = "linux-i686";
|
arch = "linux-i686";
|
||||||
sha256 = "b0376f86764c564d2fddc6a7c868924f14ea1378c8b503b651eaff83bfbcfdbe";
|
sha256 = "060a27d6f982d65865dda71cbf70fd4be9d0f7889d928530162bc774c599d237";
|
||||||
}
|
}
|
||||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/115.2.2/linux-i686/bg/thunderbird-115.2.2.tar.bz2";
|
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/115.2.3/linux-i686/bg/thunderbird-115.2.3.tar.bz2";
|
||||||
locale = "bg";
|
locale = "bg";
|
||||||
arch = "linux-i686";
|
arch = "linux-i686";
|
||||||
sha256 = "dd6c5ff2a77340e03dff6779f620e5c0df5a51b1c0fcd4171e4436d301dcf1a2";
|
sha256 = "76dce40becbf63c6703b9c44db199b19cb12cebd85555b51900dbf13fb841ef5";
|
||||||
}
|
}
|
||||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/115.2.2/linux-i686/br/thunderbird-115.2.2.tar.bz2";
|
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/115.2.3/linux-i686/br/thunderbird-115.2.3.tar.bz2";
|
||||||
locale = "br";
|
locale = "br";
|
||||||
arch = "linux-i686";
|
arch = "linux-i686";
|
||||||
sha256 = "7a6283099532171a9f695a1a84315c334f87391f20f41421caa13a82c6ffdce6";
|
sha256 = "14d05c4b402b2c5d3eaacba41d6614578167139de5df3f14e0630b328c7d1d7d";
|
||||||
}
|
}
|
||||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/115.2.2/linux-i686/ca/thunderbird-115.2.2.tar.bz2";
|
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/115.2.3/linux-i686/ca/thunderbird-115.2.3.tar.bz2";
|
||||||
locale = "ca";
|
locale = "ca";
|
||||||
arch = "linux-i686";
|
arch = "linux-i686";
|
||||||
sha256 = "46cf076753e50dae6295a50f0fe55fdf1462fdde5f17eef865adfa2413b76c4a";
|
sha256 = "e6665ed36b6682c05ff31ba9f197f3d799742242c81a6550445aff085173b199";
|
||||||
}
|
}
|
||||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/115.2.2/linux-i686/cak/thunderbird-115.2.2.tar.bz2";
|
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/115.2.3/linux-i686/cak/thunderbird-115.2.3.tar.bz2";
|
||||||
locale = "cak";
|
locale = "cak";
|
||||||
arch = "linux-i686";
|
arch = "linux-i686";
|
||||||
sha256 = "af4a0806d404938b720af1c50331d8b20c049251629ce8e6040d54f0da3d6e4a";
|
sha256 = "a58332ddc60f4bd8498261e8230ea0bae3d311dd188d1f57e80150922085b9cd";
|
||||||
}
|
}
|
||||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/115.2.2/linux-i686/cs/thunderbird-115.2.2.tar.bz2";
|
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/115.2.3/linux-i686/cs/thunderbird-115.2.3.tar.bz2";
|
||||||
locale = "cs";
|
locale = "cs";
|
||||||
arch = "linux-i686";
|
arch = "linux-i686";
|
||||||
sha256 = "7f0af85bea543efd7ab154e42bd8aa077c96d8878f6850f0844daa3168af03b1";
|
sha256 = "62d643f7018fbb4495086a6368b664efbbf627e9f86f7627de889f63cf96cae2";
|
||||||
}
|
}
|
||||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/115.2.2/linux-i686/cy/thunderbird-115.2.2.tar.bz2";
|
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/115.2.3/linux-i686/cy/thunderbird-115.2.3.tar.bz2";
|
||||||
locale = "cy";
|
locale = "cy";
|
||||||
arch = "linux-i686";
|
arch = "linux-i686";
|
||||||
sha256 = "7c0992c257089531ec5b080f736bd10df364cf03f271e85d72398b28bbf5ea6a";
|
sha256 = "651ed033c83f8f6a9ea3aa991e39536aaf0dc93c6b472e8ce8198054711123ce";
|
||||||
}
|
}
|
||||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/115.2.2/linux-i686/da/thunderbird-115.2.2.tar.bz2";
|
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/115.2.3/linux-i686/da/thunderbird-115.2.3.tar.bz2";
|
||||||
locale = "da";
|
locale = "da";
|
||||||
arch = "linux-i686";
|
arch = "linux-i686";
|
||||||
sha256 = "18c73fdedad32683ff300d7ff0518ebc800bdab42bb54bd09820d9783770417f";
|
sha256 = "c28dd14eb5e6a9825db2d0adb47db842f431ac101ac10f3b043187cae836bf4a";
|
||||||
}
|
}
|
||||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/115.2.2/linux-i686/de/thunderbird-115.2.2.tar.bz2";
|
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/115.2.3/linux-i686/de/thunderbird-115.2.3.tar.bz2";
|
||||||
locale = "de";
|
locale = "de";
|
||||||
arch = "linux-i686";
|
arch = "linux-i686";
|
||||||
sha256 = "a344a7de24b1c83882b395cd82dd1a9e6241b4b549a21290dea9efec9640caf4";
|
sha256 = "850bbee1c29d24af7846d58c4f6ee04cdf34bf7784175a1d9789e71a6ab37e26";
|
||||||
}
|
}
|
||||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/115.2.2/linux-i686/dsb/thunderbird-115.2.2.tar.bz2";
|
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/115.2.3/linux-i686/dsb/thunderbird-115.2.3.tar.bz2";
|
||||||
locale = "dsb";
|
locale = "dsb";
|
||||||
arch = "linux-i686";
|
arch = "linux-i686";
|
||||||
sha256 = "88f81c3fe9096d84fe3461b1cd22b1df94fe4863ec2f10853f6ca69cbe4d812e";
|
sha256 = "a7aaeaf73b5f98fd3e95b31c7710c40e3e1d3af3db8aa0628ee82bbd738c9249";
|
||||||
}
|
}
|
||||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/115.2.2/linux-i686/el/thunderbird-115.2.2.tar.bz2";
|
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/115.2.3/linux-i686/el/thunderbird-115.2.3.tar.bz2";
|
||||||
locale = "el";
|
locale = "el";
|
||||||
arch = "linux-i686";
|
arch = "linux-i686";
|
||||||
sha256 = "e620620d471704ff8c7a4783f797a5df5150adf0bd359fa032c46336f4a608a2";
|
sha256 = "adbe0d57c756db87e17581743850b68b23e910fe9e89afa2acb349d8c3876fbc";
|
||||||
}
|
}
|
||||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/115.2.2/linux-i686/en-CA/thunderbird-115.2.2.tar.bz2";
|
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/115.2.3/linux-i686/en-CA/thunderbird-115.2.3.tar.bz2";
|
||||||
locale = "en-CA";
|
locale = "en-CA";
|
||||||
arch = "linux-i686";
|
arch = "linux-i686";
|
||||||
sha256 = "f1e138849aa3fa71f23ce33710e7f547857b37cc66ba85853d3037e7f6c83c48";
|
sha256 = "7925e4738c3337180787664a56836594888653ad8603ccf42d784ccca87798bf";
|
||||||
}
|
}
|
||||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/115.2.2/linux-i686/en-GB/thunderbird-115.2.2.tar.bz2";
|
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/115.2.3/linux-i686/en-GB/thunderbird-115.2.3.tar.bz2";
|
||||||
locale = "en-GB";
|
locale = "en-GB";
|
||||||
arch = "linux-i686";
|
arch = "linux-i686";
|
||||||
sha256 = "4425e8e5af32d72844504db55cd60ebcd730614e6e8edfe65c177aa2e8937d50";
|
sha256 = "6ebdab8c64f9faeee42569941da45ec8a4dc944c31b625e8c6d995af24d6874f";
|
||||||
}
|
}
|
||||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/115.2.2/linux-i686/en-US/thunderbird-115.2.2.tar.bz2";
|
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/115.2.3/linux-i686/en-US/thunderbird-115.2.3.tar.bz2";
|
||||||
locale = "en-US";
|
locale = "en-US";
|
||||||
arch = "linux-i686";
|
arch = "linux-i686";
|
||||||
sha256 = "c31a3a9f85d2d22812846dc91fecd7cca9801542cf5fcc68266ae44801df7575";
|
sha256 = "b92adc1c2a593f16b7998c2b8b4227731ab78294c129a0ccf3ffeab311b12651";
|
||||||
}
|
}
|
||||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/115.2.2/linux-i686/es-AR/thunderbird-115.2.2.tar.bz2";
|
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/115.2.3/linux-i686/es-AR/thunderbird-115.2.3.tar.bz2";
|
||||||
locale = "es-AR";
|
locale = "es-AR";
|
||||||
arch = "linux-i686";
|
arch = "linux-i686";
|
||||||
sha256 = "34a1296b1ddc22ea34c1996759cc74551533841e9802014085b18dd9e0cd1d5f";
|
sha256 = "d2a477279e2336e745071c7b9e99f8594380e69f27a64615d28dd25b846dd9ee";
|
||||||
}
|
}
|
||||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/115.2.2/linux-i686/es-ES/thunderbird-115.2.2.tar.bz2";
|
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/115.2.3/linux-i686/es-ES/thunderbird-115.2.3.tar.bz2";
|
||||||
locale = "es-ES";
|
locale = "es-ES";
|
||||||
arch = "linux-i686";
|
arch = "linux-i686";
|
||||||
sha256 = "57b0bdac83109b513858ff30598bb64d113a5bff0bd77f0f0b5f2946f8ed89c5";
|
sha256 = "857e2f54b4084840b458c9159af08c724fc951fba56f021ec497bf83dad89bca";
|
||||||
}
|
}
|
||||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/115.2.2/linux-i686/es-MX/thunderbird-115.2.2.tar.bz2";
|
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/115.2.3/linux-i686/es-MX/thunderbird-115.2.3.tar.bz2";
|
||||||
locale = "es-MX";
|
locale = "es-MX";
|
||||||
arch = "linux-i686";
|
arch = "linux-i686";
|
||||||
sha256 = "e251157e06a0c380075a00f8690d387718bd553ec2aabf8c81c1951b141c2651";
|
sha256 = "5d678d38c4ef516d893c9f4ce3b98bccb57357a10dc7eecc167b2ad3136ab8e2";
|
||||||
}
|
}
|
||||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/115.2.2/linux-i686/et/thunderbird-115.2.2.tar.bz2";
|
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/115.2.3/linux-i686/et/thunderbird-115.2.3.tar.bz2";
|
||||||
locale = "et";
|
locale = "et";
|
||||||
arch = "linux-i686";
|
arch = "linux-i686";
|
||||||
sha256 = "b4043ffdc9f5454a799243d5657860bbeb870d7343be0fc3c197527e4b20892c";
|
sha256 = "7afe03b3090b8f305947da40308ff4bab077f0f226acd46ed4d3357041060647";
|
||||||
}
|
}
|
||||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/115.2.2/linux-i686/eu/thunderbird-115.2.2.tar.bz2";
|
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/115.2.3/linux-i686/eu/thunderbird-115.2.3.tar.bz2";
|
||||||
locale = "eu";
|
locale = "eu";
|
||||||
arch = "linux-i686";
|
arch = "linux-i686";
|
||||||
sha256 = "001662ce9fc1a7c9ab82ed4f0dbbc49d0fa0c6d5b3ae93573dbfd44af0e12a33";
|
sha256 = "d00caf592c791ffccb36ddf6371a9653cc89808455564ddfbb26f6105b33195e";
|
||||||
}
|
}
|
||||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/115.2.2/linux-i686/fi/thunderbird-115.2.2.tar.bz2";
|
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/115.2.3/linux-i686/fi/thunderbird-115.2.3.tar.bz2";
|
||||||
locale = "fi";
|
locale = "fi";
|
||||||
arch = "linux-i686";
|
arch = "linux-i686";
|
||||||
sha256 = "c0c368797911327088819de0c1e6e6dbf6f7ccee871c11695ce64cacdd56341d";
|
sha256 = "1adc0d3e0d68a2cc776d0704a28367e26fc3aa4bd72e136c28b42a333769a258";
|
||||||
}
|
}
|
||||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/115.2.2/linux-i686/fr/thunderbird-115.2.2.tar.bz2";
|
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/115.2.3/linux-i686/fr/thunderbird-115.2.3.tar.bz2";
|
||||||
locale = "fr";
|
locale = "fr";
|
||||||
arch = "linux-i686";
|
arch = "linux-i686";
|
||||||
sha256 = "cd444fbdd2febd5aeee98ba4f4db737b3e6cd7a85b9cb456da179bd4cb9f67dd";
|
sha256 = "a03b04fcc076b74d89bdd74490412b169b3ab830c09f96f29a143b1ab06d9f6c";
|
||||||
}
|
}
|
||||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/115.2.2/linux-i686/fy-NL/thunderbird-115.2.2.tar.bz2";
|
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/115.2.3/linux-i686/fy-NL/thunderbird-115.2.3.tar.bz2";
|
||||||
locale = "fy-NL";
|
locale = "fy-NL";
|
||||||
arch = "linux-i686";
|
arch = "linux-i686";
|
||||||
sha256 = "43203b502f5231c0caca6ea389a79558d5faa74f3b6256c3fe11c2392fbe45a2";
|
sha256 = "d6fb5ab8b4ab7652bd01e95dd5cfa275b0468dc488fa857ffd8a3cc18cd96c76";
|
||||||
}
|
}
|
||||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/115.2.2/linux-i686/ga-IE/thunderbird-115.2.2.tar.bz2";
|
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/115.2.3/linux-i686/ga-IE/thunderbird-115.2.3.tar.bz2";
|
||||||
locale = "ga-IE";
|
locale = "ga-IE";
|
||||||
arch = "linux-i686";
|
arch = "linux-i686";
|
||||||
sha256 = "0a86e1f993cc9f6cb9d19a481e028458287e765786bb5eb26fa1f45c253ef8e5";
|
sha256 = "1aaa63178112ce993d13cd175e7fba32e8045ff76ebcf77747743abb3537d4ef";
|
||||||
}
|
}
|
||||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/115.2.2/linux-i686/gd/thunderbird-115.2.2.tar.bz2";
|
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/115.2.3/linux-i686/gd/thunderbird-115.2.3.tar.bz2";
|
||||||
locale = "gd";
|
locale = "gd";
|
||||||
arch = "linux-i686";
|
arch = "linux-i686";
|
||||||
sha256 = "3331e8a202a131e4b2ebaa5990d5b4976df286287eb1d22381ddac30368584da";
|
sha256 = "608d5ed3242c125a7956ba78894782d8c5dd090dcb7cfa378a3143d82e6705cc";
|
||||||
}
|
}
|
||||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/115.2.2/linux-i686/gl/thunderbird-115.2.2.tar.bz2";
|
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/115.2.3/linux-i686/gl/thunderbird-115.2.3.tar.bz2";
|
||||||
locale = "gl";
|
locale = "gl";
|
||||||
arch = "linux-i686";
|
arch = "linux-i686";
|
||||||
sha256 = "ddf7a4655bb5992c064d26b8f6c2ebd68b57f8a08168699f385848ef8471b600";
|
sha256 = "00715da49525cf55ed336d76ca571e451f36b27d6d8d50524ef2a8e8c9e7bac8";
|
||||||
}
|
}
|
||||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/115.2.2/linux-i686/he/thunderbird-115.2.2.tar.bz2";
|
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/115.2.3/linux-i686/he/thunderbird-115.2.3.tar.bz2";
|
||||||
locale = "he";
|
locale = "he";
|
||||||
arch = "linux-i686";
|
arch = "linux-i686";
|
||||||
sha256 = "d792d930eba7c959cae93726c56bbe172e372067d0cae36519b060d996e33ace";
|
sha256 = "23dfefa9a76e70a71ccb6bcb2f392f2a4cdeae58cc276073be8b3256f8f338d5";
|
||||||
}
|
}
|
||||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/115.2.2/linux-i686/hr/thunderbird-115.2.2.tar.bz2";
|
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/115.2.3/linux-i686/hr/thunderbird-115.2.3.tar.bz2";
|
||||||
locale = "hr";
|
locale = "hr";
|
||||||
arch = "linux-i686";
|
arch = "linux-i686";
|
||||||
sha256 = "4e18f2e41e066226f90bc324d0353e0cfe50e8b6a819e8e15e2a9c11ca15520a";
|
sha256 = "ef8fbfb9d46a83fa6ffd854d170257a92942db8ec220ad3c2dbee7ccddf3e567";
|
||||||
}
|
}
|
||||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/115.2.2/linux-i686/hsb/thunderbird-115.2.2.tar.bz2";
|
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/115.2.3/linux-i686/hsb/thunderbird-115.2.3.tar.bz2";
|
||||||
locale = "hsb";
|
locale = "hsb";
|
||||||
arch = "linux-i686";
|
arch = "linux-i686";
|
||||||
sha256 = "f4a2d7b3f45b8fc238e62acec32a2f5512834933246f4f9c49eb8d77437e4fd7";
|
sha256 = "a7ce3af8dd8305304c3904e1b9198e64e04a869d08c3b8a963ff85443809226d";
|
||||||
}
|
}
|
||||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/115.2.2/linux-i686/hu/thunderbird-115.2.2.tar.bz2";
|
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/115.2.3/linux-i686/hu/thunderbird-115.2.3.tar.bz2";
|
||||||
locale = "hu";
|
locale = "hu";
|
||||||
arch = "linux-i686";
|
arch = "linux-i686";
|
||||||
sha256 = "73ea347abc31da1cadabef37698debe1656f57c40014ffeb6bc66293c21cb85e";
|
sha256 = "9ee0ebc7a89774a5dd2599ba88120a4eccd853a82836ae084a5a651da270b09e";
|
||||||
}
|
}
|
||||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/115.2.2/linux-i686/hy-AM/thunderbird-115.2.2.tar.bz2";
|
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/115.2.3/linux-i686/hy-AM/thunderbird-115.2.3.tar.bz2";
|
||||||
locale = "hy-AM";
|
locale = "hy-AM";
|
||||||
arch = "linux-i686";
|
arch = "linux-i686";
|
||||||
sha256 = "5829588a384a770ab25008ccb16ee082c880d8e99082ab9df59c4d92e21aafd6";
|
sha256 = "76f359b8aff76d27a2028c02b0a82c7c9227ce9f1142fb1030b43bdff9070acc";
|
||||||
}
|
}
|
||||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/115.2.2/linux-i686/id/thunderbird-115.2.2.tar.bz2";
|
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/115.2.3/linux-i686/id/thunderbird-115.2.3.tar.bz2";
|
||||||
locale = "id";
|
locale = "id";
|
||||||
arch = "linux-i686";
|
arch = "linux-i686";
|
||||||
sha256 = "77a6b3c5ba1454fe8e8a93b463b6cbe841da25ba352ed1eeba7bb5f32108cc18";
|
sha256 = "4b6921bc43312069c94be12cf0ac69bd25bebc5dfe10151cf212bc312db4ef7d";
|
||||||
}
|
}
|
||||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/115.2.2/linux-i686/is/thunderbird-115.2.2.tar.bz2";
|
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/115.2.3/linux-i686/is/thunderbird-115.2.3.tar.bz2";
|
||||||
locale = "is";
|
locale = "is";
|
||||||
arch = "linux-i686";
|
arch = "linux-i686";
|
||||||
sha256 = "aeede33f1040ee9e9647df43bc88bf848017a91e2fb8ad42f5c109b42aa0f533";
|
sha256 = "2844eae9c4b18735a498935decc625dd7713efd91c8e36699acd2dc811b52b86";
|
||||||
}
|
}
|
||||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/115.2.2/linux-i686/it/thunderbird-115.2.2.tar.bz2";
|
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/115.2.3/linux-i686/it/thunderbird-115.2.3.tar.bz2";
|
||||||
locale = "it";
|
locale = "it";
|
||||||
arch = "linux-i686";
|
arch = "linux-i686";
|
||||||
sha256 = "7cfd1ad0a4ad00bcb16539a8ff1a4b54447901501f05cba812245c70b8044d5c";
|
sha256 = "823a78e62beaf2881990f829b18ff5954c438c34a96e039b92b03ed6cac5bd37";
|
||||||
}
|
}
|
||||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/115.2.2/linux-i686/ja/thunderbird-115.2.2.tar.bz2";
|
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/115.2.3/linux-i686/ja/thunderbird-115.2.3.tar.bz2";
|
||||||
locale = "ja";
|
locale = "ja";
|
||||||
arch = "linux-i686";
|
arch = "linux-i686";
|
||||||
sha256 = "d9d8c0983592c4e44374739d089759c13cdd7d6b912efbab5972a97ec43ec00f";
|
sha256 = "292728019d3401b8c7677df06c3c1eb7eefb4b761bf9af2f1f1f3fc071a85ac9";
|
||||||
}
|
}
|
||||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/115.2.2/linux-i686/ka/thunderbird-115.2.2.tar.bz2";
|
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/115.2.3/linux-i686/ka/thunderbird-115.2.3.tar.bz2";
|
||||||
locale = "ka";
|
locale = "ka";
|
||||||
arch = "linux-i686";
|
arch = "linux-i686";
|
||||||
sha256 = "c3ac587b9d0cdfd74babff266f81538cdd701b75ecae61b9c0f7cbf499e16423";
|
sha256 = "587304b4ca494b7928f75deea27b05225d2d271d7880f66174903b66b317cfc7";
|
||||||
}
|
}
|
||||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/115.2.2/linux-i686/kab/thunderbird-115.2.2.tar.bz2";
|
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/115.2.3/linux-i686/kab/thunderbird-115.2.3.tar.bz2";
|
||||||
locale = "kab";
|
locale = "kab";
|
||||||
arch = "linux-i686";
|
arch = "linux-i686";
|
||||||
sha256 = "dfcff22ad267fafaea7d2e8892e50d24dbe191d3133ba927d2077b306a92d5c8";
|
sha256 = "c34aa118f7f1a1506f4df973d252131a942d64b100fe8580befc113075b6bb27";
|
||||||
}
|
}
|
||||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/115.2.2/linux-i686/kk/thunderbird-115.2.2.tar.bz2";
|
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/115.2.3/linux-i686/kk/thunderbird-115.2.3.tar.bz2";
|
||||||
locale = "kk";
|
locale = "kk";
|
||||||
arch = "linux-i686";
|
arch = "linux-i686";
|
||||||
sha256 = "6ab9f8ca37108634778631d0f4a4231a9fd6c1a96e1b8fe48bd976ae6c4176be";
|
sha256 = "a0c7faeb48a54e6e15abf0b20f6a177fcd2e0cc0c3538aced905435dd4074e81";
|
||||||
}
|
}
|
||||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/115.2.2/linux-i686/ko/thunderbird-115.2.2.tar.bz2";
|
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/115.2.3/linux-i686/ko/thunderbird-115.2.3.tar.bz2";
|
||||||
locale = "ko";
|
locale = "ko";
|
||||||
arch = "linux-i686";
|
arch = "linux-i686";
|
||||||
sha256 = "679d3f285efe8e3cfef0d6aac96e56638705f479cdd7a85decbc3376f684a362";
|
sha256 = "974f6fce7f5d00dbc9c0991e24fad51d0c91a53e0e743f1d991d01be9a652240";
|
||||||
}
|
}
|
||||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/115.2.2/linux-i686/lt/thunderbird-115.2.2.tar.bz2";
|
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/115.2.3/linux-i686/lt/thunderbird-115.2.3.tar.bz2";
|
||||||
locale = "lt";
|
locale = "lt";
|
||||||
arch = "linux-i686";
|
arch = "linux-i686";
|
||||||
sha256 = "31c5bc57a65c371d13d6ecae2d9806462614cb0f25ae02385d64ad9b78e03e16";
|
sha256 = "23aa86f6d2f6e6d27351a9a3c7f4034046ca5f1d840140ba2f9e8002434407c9";
|
||||||
}
|
}
|
||||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/115.2.2/linux-i686/lv/thunderbird-115.2.2.tar.bz2";
|
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/115.2.3/linux-i686/lv/thunderbird-115.2.3.tar.bz2";
|
||||||
locale = "lv";
|
locale = "lv";
|
||||||
arch = "linux-i686";
|
arch = "linux-i686";
|
||||||
sha256 = "4d6dc7af4709b1fcd30bade79462faba7f97b63969be5d03b0bd06de4b5b3545";
|
sha256 = "8a2d4b1e023c437632c1c3210131258f17db0bd84ccff19934f214744c1f336a";
|
||||||
}
|
}
|
||||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/115.2.2/linux-i686/ms/thunderbird-115.2.2.tar.bz2";
|
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/115.2.3/linux-i686/ms/thunderbird-115.2.3.tar.bz2";
|
||||||
locale = "ms";
|
locale = "ms";
|
||||||
arch = "linux-i686";
|
arch = "linux-i686";
|
||||||
sha256 = "a7a735fb888d4e1c93d5593c88e8c14080c3b05460c6b6b2ffedcc1ab5c1a53d";
|
sha256 = "b34543abfdab6a58722a8348c45e2ca18b3aa3f340b4db1f07321fab21af5c34";
|
||||||
}
|
}
|
||||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/115.2.2/linux-i686/nb-NO/thunderbird-115.2.2.tar.bz2";
|
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/115.2.3/linux-i686/nb-NO/thunderbird-115.2.3.tar.bz2";
|
||||||
locale = "nb-NO";
|
locale = "nb-NO";
|
||||||
arch = "linux-i686";
|
arch = "linux-i686";
|
||||||
sha256 = "47df0274374aea382dcae2a0d083fb36fc666500b320a0e3eb97f056e0fb02fa";
|
sha256 = "f2ccbbebdb7773e77927c9d5c36b9792c9adc2d32f9ca6ff07299c82367de071";
|
||||||
}
|
}
|
||||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/115.2.2/linux-i686/nl/thunderbird-115.2.2.tar.bz2";
|
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/115.2.3/linux-i686/nl/thunderbird-115.2.3.tar.bz2";
|
||||||
locale = "nl";
|
locale = "nl";
|
||||||
arch = "linux-i686";
|
arch = "linux-i686";
|
||||||
sha256 = "95c73823294cc2d9348ff4855d8bba4aed0a61d430ddaabaae90be250d198e1b";
|
sha256 = "2cb74bdc8959d49893b6d017a916ee61f6be097bc69ea36490e5be467f15f0e3";
|
||||||
}
|
}
|
||||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/115.2.2/linux-i686/nn-NO/thunderbird-115.2.2.tar.bz2";
|
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/115.2.3/linux-i686/nn-NO/thunderbird-115.2.3.tar.bz2";
|
||||||
locale = "nn-NO";
|
locale = "nn-NO";
|
||||||
arch = "linux-i686";
|
arch = "linux-i686";
|
||||||
sha256 = "9b170811ddd271db68c417650da56d9eb61e976e20a6787b5505497e3acc588d";
|
sha256 = "aa8cdebfa948469f76ebf795c96002f86878d7507a6d51b6df864bfb525b905f";
|
||||||
}
|
}
|
||||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/115.2.2/linux-i686/pa-IN/thunderbird-115.2.2.tar.bz2";
|
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/115.2.3/linux-i686/pa-IN/thunderbird-115.2.3.tar.bz2";
|
||||||
locale = "pa-IN";
|
locale = "pa-IN";
|
||||||
arch = "linux-i686";
|
arch = "linux-i686";
|
||||||
sha256 = "a25dc5ebf2ba028f5f9a5e23eb90e0862ead94c5d8476d2f3429d640c36a75a3";
|
sha256 = "6815b6a2b689f6a03dd85f8fc516cd4834b02bf36ba961827472b2edf54a84f4";
|
||||||
}
|
}
|
||||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/115.2.2/linux-i686/pl/thunderbird-115.2.2.tar.bz2";
|
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/115.2.3/linux-i686/pl/thunderbird-115.2.3.tar.bz2";
|
||||||
locale = "pl";
|
locale = "pl";
|
||||||
arch = "linux-i686";
|
arch = "linux-i686";
|
||||||
sha256 = "dba916bca6c19c0771b7ef35199c89e77864f200df4ae40b15c3483ba3f02b2b";
|
sha256 = "401acef92915e9cea136de7f3c3d2cbbf7f70baf8a322846f477497f4d3f1eff";
|
||||||
}
|
}
|
||||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/115.2.2/linux-i686/pt-BR/thunderbird-115.2.2.tar.bz2";
|
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/115.2.3/linux-i686/pt-BR/thunderbird-115.2.3.tar.bz2";
|
||||||
locale = "pt-BR";
|
locale = "pt-BR";
|
||||||
arch = "linux-i686";
|
arch = "linux-i686";
|
||||||
sha256 = "2d3583f7062659a8642ee952205235abcde36e86918e905be85a1070ead65f88";
|
sha256 = "c94d05733c3b3cd7d7a48f684f5354eca06760988a94be3689fd88fbddd79f11";
|
||||||
}
|
}
|
||||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/115.2.2/linux-i686/pt-PT/thunderbird-115.2.2.tar.bz2";
|
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/115.2.3/linux-i686/pt-PT/thunderbird-115.2.3.tar.bz2";
|
||||||
locale = "pt-PT";
|
locale = "pt-PT";
|
||||||
arch = "linux-i686";
|
arch = "linux-i686";
|
||||||
sha256 = "c09cffe7f7043f6c757e478e46c30ada218999437d9e9748bb1ade9891365195";
|
sha256 = "cd872217ce43cd339789ff2f7e3a05a8e120fb6033051caf04120b478f486863";
|
||||||
}
|
}
|
||||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/115.2.2/linux-i686/rm/thunderbird-115.2.2.tar.bz2";
|
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/115.2.3/linux-i686/rm/thunderbird-115.2.3.tar.bz2";
|
||||||
locale = "rm";
|
locale = "rm";
|
||||||
arch = "linux-i686";
|
arch = "linux-i686";
|
||||||
sha256 = "4a1853d5c7915181e949ee64611ea34525bc41fb72f16b02b083d81265d7bab9";
|
sha256 = "6f9fd2c445682bbc08848f1a233744424f20076a993e8d55bad9f42fbbd7df77";
|
||||||
}
|
}
|
||||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/115.2.2/linux-i686/ro/thunderbird-115.2.2.tar.bz2";
|
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/115.2.3/linux-i686/ro/thunderbird-115.2.3.tar.bz2";
|
||||||
locale = "ro";
|
locale = "ro";
|
||||||
arch = "linux-i686";
|
arch = "linux-i686";
|
||||||
sha256 = "397379badeb37e27123c5316422567e7b2bcf1c3033a85d8549866f06090d2e0";
|
sha256 = "8b10921f83e126d6626d36bafb6f92aea8a2850788b36e61b197da67aefce65f";
|
||||||
}
|
}
|
||||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/115.2.2/linux-i686/ru/thunderbird-115.2.2.tar.bz2";
|
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/115.2.3/linux-i686/ru/thunderbird-115.2.3.tar.bz2";
|
||||||
locale = "ru";
|
locale = "ru";
|
||||||
arch = "linux-i686";
|
arch = "linux-i686";
|
||||||
sha256 = "e23ceab86e0cce57522bea456f396fdf96bdca1b30eee4d7a2999709383544ae";
|
sha256 = "79deca0f10cd4e6376eeb45a3717abf9876eca7a634ddffc8bc2faf8a7fe16ea";
|
||||||
}
|
}
|
||||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/115.2.2/linux-i686/sk/thunderbird-115.2.2.tar.bz2";
|
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/115.2.3/linux-i686/sk/thunderbird-115.2.3.tar.bz2";
|
||||||
locale = "sk";
|
locale = "sk";
|
||||||
arch = "linux-i686";
|
arch = "linux-i686";
|
||||||
sha256 = "87027b9270956fffa744d5d35b96094265a735eb7c361fd3badd2012b34e13ff";
|
sha256 = "870c6e9586528ce5bfe5b62344ff22464ba35264dd4549d646aee542ee819ba1";
|
||||||
}
|
}
|
||||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/115.2.2/linux-i686/sl/thunderbird-115.2.2.tar.bz2";
|
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/115.2.3/linux-i686/sl/thunderbird-115.2.3.tar.bz2";
|
||||||
locale = "sl";
|
locale = "sl";
|
||||||
arch = "linux-i686";
|
arch = "linux-i686";
|
||||||
sha256 = "cb65c05b17419a69b0835a7be064e40c6cd29a114b28e5682cf5df2d6ff07c22";
|
sha256 = "bbb4543683a244df04e8e0ac21e61eeafd4f5b183b8cd2e739fb98304f24d3fc";
|
||||||
}
|
}
|
||||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/115.2.2/linux-i686/sq/thunderbird-115.2.2.tar.bz2";
|
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/115.2.3/linux-i686/sq/thunderbird-115.2.3.tar.bz2";
|
||||||
locale = "sq";
|
locale = "sq";
|
||||||
arch = "linux-i686";
|
arch = "linux-i686";
|
||||||
sha256 = "0a04b9f2de594d18a39ed04dbf503c50afe5281100c04887eb1d907c5268edb5";
|
sha256 = "0ef0b25b190e51ba3d8b41db0ff18ba89271dc3f04b2b1477b3ece970896b4b3";
|
||||||
}
|
}
|
||||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/115.2.2/linux-i686/sr/thunderbird-115.2.2.tar.bz2";
|
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/115.2.3/linux-i686/sr/thunderbird-115.2.3.tar.bz2";
|
||||||
locale = "sr";
|
locale = "sr";
|
||||||
arch = "linux-i686";
|
arch = "linux-i686";
|
||||||
sha256 = "30f05101328e20f56c0e45505a6b579f19aa6fe8e88014be5f1b201dd19b8567";
|
sha256 = "a47468bf55cb1279668be587705e7deaeea0b30384613ed5b3048e89e91fafdf";
|
||||||
}
|
}
|
||||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/115.2.2/linux-i686/sv-SE/thunderbird-115.2.2.tar.bz2";
|
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/115.2.3/linux-i686/sv-SE/thunderbird-115.2.3.tar.bz2";
|
||||||
locale = "sv-SE";
|
locale = "sv-SE";
|
||||||
arch = "linux-i686";
|
arch = "linux-i686";
|
||||||
sha256 = "1bd3ece9bc7d4c51d2f25d221eda2105e1f8ddd1071391a27d2875cd246f331f";
|
sha256 = "cac1cda5f7d524ef6be3a48b1d8ad0bffb6ed831105b93b9ada402c87f025ed1";
|
||||||
}
|
}
|
||||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/115.2.2/linux-i686/th/thunderbird-115.2.2.tar.bz2";
|
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/115.2.3/linux-i686/th/thunderbird-115.2.3.tar.bz2";
|
||||||
locale = "th";
|
locale = "th";
|
||||||
arch = "linux-i686";
|
arch = "linux-i686";
|
||||||
sha256 = "6a448f673b6c4991faf6d6142a1557b2bd9f9c2f9cd540a7d48b5d27ac7d0419";
|
sha256 = "ec4b773869ff9807b3491fe97fc873804674163b7ddafaee403d312015ec5d1b";
|
||||||
}
|
}
|
||||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/115.2.2/linux-i686/tr/thunderbird-115.2.2.tar.bz2";
|
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/115.2.3/linux-i686/tr/thunderbird-115.2.3.tar.bz2";
|
||||||
locale = "tr";
|
locale = "tr";
|
||||||
arch = "linux-i686";
|
arch = "linux-i686";
|
||||||
sha256 = "87844be2d24111a275eb6e557cae904167c0c817bd98d8af8d198c4ca126950d";
|
sha256 = "f56aec08002698a07e3d0c03b40b644f3af1fdc9644d6ef01c4f914175821a38";
|
||||||
}
|
}
|
||||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/115.2.2/linux-i686/uk/thunderbird-115.2.2.tar.bz2";
|
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/115.2.3/linux-i686/uk/thunderbird-115.2.3.tar.bz2";
|
||||||
locale = "uk";
|
locale = "uk";
|
||||||
arch = "linux-i686";
|
arch = "linux-i686";
|
||||||
sha256 = "4ea9214c1ca561dabc43be1a55d9e8bb56dad60b116f0e8814a2fa0dac2d740c";
|
sha256 = "210665ce98e12e7613d7dfc8bf9883a1bd834120614a3d4e5af7fc406c804211";
|
||||||
}
|
}
|
||||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/115.2.2/linux-i686/uz/thunderbird-115.2.2.tar.bz2";
|
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/115.2.3/linux-i686/uz/thunderbird-115.2.3.tar.bz2";
|
||||||
locale = "uz";
|
locale = "uz";
|
||||||
arch = "linux-i686";
|
arch = "linux-i686";
|
||||||
sha256 = "ca6a23a0234a15e05f5ffd627102bfd357882f8187e4ee5568173a926c186163";
|
sha256 = "692e027fdfcf71452815dbed7531d8b118eff89c1e8c3ebc9a4d5ff39f0aef27";
|
||||||
}
|
}
|
||||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/115.2.2/linux-i686/vi/thunderbird-115.2.2.tar.bz2";
|
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/115.2.3/linux-i686/vi/thunderbird-115.2.3.tar.bz2";
|
||||||
locale = "vi";
|
locale = "vi";
|
||||||
arch = "linux-i686";
|
arch = "linux-i686";
|
||||||
sha256 = "14ce4927f2695c6c7e1b35f9f0e00600861c8cf05351da21e3c19aa8f6243b2a";
|
sha256 = "0f6a2e29b34738e803c5a086bf7e644faaf462c155887b1e757b4e85e866fc7a";
|
||||||
}
|
}
|
||||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/115.2.2/linux-i686/zh-CN/thunderbird-115.2.2.tar.bz2";
|
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/115.2.3/linux-i686/zh-CN/thunderbird-115.2.3.tar.bz2";
|
||||||
locale = "zh-CN";
|
locale = "zh-CN";
|
||||||
arch = "linux-i686";
|
arch = "linux-i686";
|
||||||
sha256 = "014933d85792304b836d67bd449b85be0a17be014f842f9fcb1cf7a2e3077329";
|
sha256 = "24f2bffee3258c5e344bc46117c079e706e19df7822d8a3407894cba47c25130";
|
||||||
}
|
}
|
||||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/115.2.2/linux-i686/zh-TW/thunderbird-115.2.2.tar.bz2";
|
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/115.2.3/linux-i686/zh-TW/thunderbird-115.2.3.tar.bz2";
|
||||||
locale = "zh-TW";
|
locale = "zh-TW";
|
||||||
arch = "linux-i686";
|
arch = "linux-i686";
|
||||||
sha256 = "339fa1de720d6d24b778757fe4dc0d5a7b663e7ce608600f78821199dc596441";
|
sha256 = "a88f855669da4e009dc0198ae5599ce647d10eae0dca1c8f7331d426f64508d8";
|
||||||
}
|
}
|
||||||
];
|
];
|
||||||
}
|
}
|
||||||
|
@ -43,13 +43,13 @@ rec {
|
|||||||
|
|
||||||
thunderbird-115 = (buildMozillaMach rec {
|
thunderbird-115 = (buildMozillaMach rec {
|
||||||
pname = "thunderbird";
|
pname = "thunderbird";
|
||||||
version = "115.2.2";
|
version = "115.2.3";
|
||||||
application = "comm/mail";
|
application = "comm/mail";
|
||||||
applicationName = "Mozilla Thunderbird";
|
applicationName = "Mozilla Thunderbird";
|
||||||
binaryName = pname;
|
binaryName = pname;
|
||||||
src = fetchurl {
|
src = fetchurl {
|
||||||
url = "mirror://mozilla/thunderbird/releases/${version}/source/thunderbird-${version}.source.tar.xz";
|
url = "mirror://mozilla/thunderbird/releases/${version}/source/thunderbird-${version}.source.tar.xz";
|
||||||
hash = "sha512-RYQ3CcIesZ1p1DIF2msvlDtYSBGimUL/7xkzwc54grSARrIBwv8Zhlj+wsU9R5MR2KNTcxr+bqU/l7MWdNYHSg==";
|
sha512 = "983547b2be67ffbe7727efa50bd925f576ec19bcfcf940d5d36def19aebea27494b3af0a37756a441b544ebbca0cf546fcaf8737e76a859b4d860c8294bba1dc";
|
||||||
};
|
};
|
||||||
extraPatches = [
|
extraPatches = [
|
||||||
# The file to be patched is different from firefox's `no-buildconfig-ffx90.patch`.
|
# The file to be patched is different from firefox's `no-buildconfig-ffx90.patch`.
|
||||||
|
@ -1,12 +1,12 @@
|
|||||||
{ lib, stdenv, fetchurl }:
|
{ lib, stdenv, fetchurl }:
|
||||||
|
|
||||||
stdenv.mkDerivation rec {
|
stdenv.mkDerivation rec {
|
||||||
version = "3.3.2";
|
version = "3.4";
|
||||||
pname = "hmmer";
|
pname = "hmmer";
|
||||||
|
|
||||||
src = fetchurl {
|
src = fetchurl {
|
||||||
url = "http://eddylab.org/software/hmmer/${pname}-${version}.tar.gz";
|
url = "http://eddylab.org/software/hmmer/${pname}-${version}.tar.gz";
|
||||||
sha256 = "0s9wf6n0qanbx8qs6igfl3vyjikwbrvh4d9d6mv54yp3xysykzlj";
|
sha256 = "sha256-ynDZT9DPJxvXBjQjqrsRbULeUzEXNDqbJ6ZcF/8G+/M=";
|
||||||
};
|
};
|
||||||
|
|
||||||
meta = with lib; {
|
meta = with lib; {
|
||||||
@ -18,6 +18,7 @@ stdenv.mkDerivation rec {
|
|||||||
HMMER can be downloaded and installed as a command line tool on your own hardware, and now it is also more widely accessible to the scientific community via new search servers at the European Bioinformatics Institute.
|
HMMER can be downloaded and installed as a command line tool on your own hardware, and now it is also more widely accessible to the scientific community via new search servers at the European Bioinformatics Institute.
|
||||||
'';
|
'';
|
||||||
homepage = "http://hmmer.org/";
|
homepage = "http://hmmer.org/";
|
||||||
|
changelog = "https://github.com/EddyRivasLab/hmmer/blob/hmmer-${version}/release-notes/RELEASE-${version}.md";
|
||||||
license = licenses.gpl3;
|
license = licenses.gpl3;
|
||||||
maintainers = [ maintainers.iimog ];
|
maintainers = [ maintainers.iimog ];
|
||||||
# at least SSE is *required*
|
# at least SSE is *required*
|
||||||
|
@ -45,6 +45,7 @@ rustPlatform.buildRustPackage rec {
|
|||||||
description = "Open source Virtual Machine Monitor (VMM) that runs on top of KVM";
|
description = "Open source Virtual Machine Monitor (VMM) that runs on top of KVM";
|
||||||
changelog = "https://github.com/cloud-hypervisor/cloud-hypervisor/releases/tag/v${version}";
|
changelog = "https://github.com/cloud-hypervisor/cloud-hypervisor/releases/tag/v${version}";
|
||||||
license = with licenses; [ asl20 bsd3 ];
|
license = with licenses; [ asl20 bsd3 ];
|
||||||
|
mainProgram = "cloud-hypervisor";
|
||||||
maintainers = with maintainers; [ offline qyliss ];
|
maintainers = with maintainers; [ offline qyliss ];
|
||||||
platforms = [ "aarch64-linux" "x86_64-linux" ];
|
platforms = [ "aarch64-linux" "x86_64-linux" ];
|
||||||
};
|
};
|
||||||
|
@ -38,6 +38,7 @@ rustPlatform.buildRustPackage rec {
|
|||||||
meta = with lib; {
|
meta = with lib; {
|
||||||
description = "A secure virtual machine monitor for KVM";
|
description = "A secure virtual machine monitor for KVM";
|
||||||
homepage = "https://chromium.googlesource.com/crosvm/crosvm/";
|
homepage = "https://chromium.googlesource.com/crosvm/crosvm/";
|
||||||
|
mainProgram = "crosvm";
|
||||||
maintainers = with maintainers; [ qyliss ];
|
maintainers = with maintainers; [ qyliss ];
|
||||||
license = licenses.bsd3;
|
license = licenses.bsd3;
|
||||||
platforms = [ "aarch64-linux" "x86_64-linux" ];
|
platforms = [ "aarch64-linux" "x86_64-linux" ];
|
||||||
|
@ -48,11 +48,11 @@ stdenv.mkDerivation (finalAttrs: {
|
|||||||
+ lib.optionalString xenSupport "-xen"
|
+ lib.optionalString xenSupport "-xen"
|
||||||
+ lib.optionalString hostCpuOnly "-host-cpu-only"
|
+ lib.optionalString hostCpuOnly "-host-cpu-only"
|
||||||
+ lib.optionalString nixosTestRunner "-for-vm-tests";
|
+ lib.optionalString nixosTestRunner "-for-vm-tests";
|
||||||
version = "8.1.0";
|
version = "8.1.1";
|
||||||
|
|
||||||
src = fetchurl {
|
src = fetchurl {
|
||||||
url = "https://download.qemu.org/qemu-${finalAttrs.version}.tar.xz";
|
url = "https://download.qemu.org/qemu-${finalAttrs.version}.tar.xz";
|
||||||
hash = "sha256-cQwQEZjjNNR2Lu9l9km8Q/qKXddTA1VLis/sPrJfDlU=";
|
hash = "sha256-N84u9eUA+3UvaBEXxotFEYMD6kmn4mvVQIDO1U+rfe8=";
|
||||||
};
|
};
|
||||||
|
|
||||||
depsBuildBuild = [ buildPackages.stdenv.cc ]
|
depsBuildBuild = [ buildPackages.stdenv.cc ]
|
||||||
|
@ -6,16 +6,16 @@
|
|||||||
|
|
||||||
rustPlatform.buildRustPackage rec {
|
rustPlatform.buildRustPackage rec {
|
||||||
pname = "stratovirt";
|
pname = "stratovirt";
|
||||||
version = "2.2.0";
|
version = "2.3.0";
|
||||||
|
|
||||||
src = fetchgit {
|
src = fetchgit {
|
||||||
url = "https://gitee.com/openeuler/stratovirt.git";
|
url = "https://gitee.com/openeuler/stratovirt.git";
|
||||||
rev = "v${version}";
|
rev = "v${version}";
|
||||||
sha256 = "sha256-K99CmaBrJu30/12FxnsNsDKsTyX4f2uQSO7cwHsPuDw=";
|
sha256 = "sha256-f5710f7Lz7ul1DYrC0CAfDR+7e1NrE9ESPdB8nlVUKw=";
|
||||||
};
|
};
|
||||||
patches = [ ./micro_vm-allow-SYS_clock_gettime.patch ];
|
patches = [ ./micro_vm-allow-SYS_clock_gettime.patch ];
|
||||||
|
|
||||||
cargoSha256 = "sha256-SFIOGGRzGkVWHIXkviVWuhDN29pa0uD3GqKh+G421xI=";
|
cargoSha256 = "sha256-prs7zkPAKQ99gjW7gy+4+CgEgGhaTTCLPTbLk/ZHdts=";
|
||||||
|
|
||||||
nativeBuildInputs = [
|
nativeBuildInputs = [
|
||||||
pkg-config
|
pkg-config
|
||||||
|
@ -1,4 +1,4 @@
|
|||||||
From af3001b1b2697ae3165e2fdf47a560fd9ab19a68 Mon Sep 17 00:00:00 2001
|
From c5ef87eb831f7f77c0564dd1dce92a579e7c4747 Mon Sep 17 00:00:00 2001
|
||||||
From: Astro <astro@spaceboyz.net>
|
From: Astro <astro@spaceboyz.net>
|
||||||
Date: Sun, 18 Jun 2023 23:10:23 +0200
|
Date: Sun, 18 Jun 2023 23:10:23 +0200
|
||||||
Subject: [PATCH] micro_vm: allow SYS_clock_gettime
|
Subject: [PATCH] micro_vm: allow SYS_clock_gettime
|
||||||
@ -8,13 +8,13 @@ Subject: [PATCH] micro_vm: allow SYS_clock_gettime
|
|||||||
1 file changed, 2 insertions(+)
|
1 file changed, 2 insertions(+)
|
||||||
|
|
||||||
diff --git a/machine/src/micro_vm/syscall.rs b/machine/src/micro_vm/syscall.rs
|
diff --git a/machine/src/micro_vm/syscall.rs b/machine/src/micro_vm/syscall.rs
|
||||||
index 89ce5c29..2a6aa0cc 100644
|
index c37d3f4e..f9e7cce2 100644
|
||||||
--- a/machine/src/micro_vm/syscall.rs
|
--- a/machine/src/micro_vm/syscall.rs
|
||||||
+++ b/machine/src/micro_vm/syscall.rs
|
+++ b/machine/src/micro_vm/syscall.rs
|
||||||
@@ -128,6 +128,8 @@ pub fn syscall_whitelist() -> Vec<BpfRule> {
|
@@ -125,6 +125,8 @@ pub fn syscall_whitelist() -> Vec<BpfRule> {
|
||||||
#[cfg(all(target_env = "gnu", target_arch = "x86_64"))]
|
|
||||||
BpfRule::new(libc::SYS_readlink),
|
BpfRule::new(libc::SYS_readlink),
|
||||||
BpfRule::new(libc::SYS_getrandom),
|
BpfRule::new(libc::SYS_getrandom),
|
||||||
|
BpfRule::new(libc::SYS_fallocate),
|
||||||
+ #[cfg(target_env = "gnu")]
|
+ #[cfg(target_env = "gnu")]
|
||||||
+ BpfRule::new(libc::SYS_clock_gettime),
|
+ BpfRule::new(libc::SYS_clock_gettime),
|
||||||
madvise_rule(),
|
madvise_rule(),
|
||||||
|
@ -78,6 +78,7 @@ stdenv.mkDerivation rec {
|
|||||||
homepage = "https://gitlab.freedesktop.org/wayland/weston";
|
homepage = "https://gitlab.freedesktop.org/wayland/weston";
|
||||||
license = licenses.mit; # Expat version
|
license = licenses.mit; # Expat version
|
||||||
platforms = platforms.linux;
|
platforms = platforms.linux;
|
||||||
|
mainProgram = "weston";
|
||||||
maintainers = with maintainers; [ primeos qyliss ];
|
maintainers = with maintainers; [ primeos qyliss ];
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
@ -293,9 +293,6 @@ clone_user_rev() {
|
|||||||
local rev="${3:-HEAD}"
|
local rev="${3:-HEAD}"
|
||||||
|
|
||||||
if [ -n "$fetchLFS" ]; then
|
if [ -n "$fetchLFS" ]; then
|
||||||
tmpHomePath="$(mktemp -d "${TMPDIR:-/tmp}/nix-prefetch-git-tmp-home-XXXXXXXXXX")"
|
|
||||||
exit_handlers+=(remove_tmpHomePath)
|
|
||||||
HOME="$tmpHomePath"
|
|
||||||
clean_git lfs install
|
clean_git lfs install
|
||||||
fi
|
fi
|
||||||
|
|
||||||
@ -417,6 +414,12 @@ if test -z "$branchName"; then
|
|||||||
branchName=fetchgit
|
branchName=fetchgit
|
||||||
fi
|
fi
|
||||||
|
|
||||||
|
tmpHomePath="$(mktemp -d "${TMPDIR:-/tmp}/nix-prefetch-git-tmp-home-XXXXXXXXXX")"
|
||||||
|
exit_handlers+=(remove_tmpHomePath)
|
||||||
|
HOME="$tmpHomePath"
|
||||||
|
unset XDG_CONFIG_HOME
|
||||||
|
export GIT_CONFIG_NOSYSTEM=1
|
||||||
|
|
||||||
if test -n "$builder"; then
|
if test -n "$builder"; then
|
||||||
test -n "$out" -a -n "$url" -a -n "$rev" || usage
|
test -n "$out" -a -n "$url" -a -n "$rev" || usage
|
||||||
mkdir -p "$out"
|
mkdir -p "$out"
|
||||||
|
@ -8,10 +8,9 @@
|
|||||||
, nativeBuildInputs ? [ ]
|
, nativeBuildInputs ? [ ]
|
||||||
, postPhpize ? ""
|
, postPhpize ? ""
|
||||||
, makeFlags ? [ ]
|
, makeFlags ? [ ]
|
||||||
, src ? fetchurl {
|
, src ? fetchurl ({
|
||||||
url = "https://pecl.php.net/get/${pname}-${version}.tgz";
|
url = "https://pecl.php.net/get/${pname}-${version}.tgz";
|
||||||
inherit (args) sha256;
|
} // lib.filterAttrs (attrName: _: lib.elem attrName [ "sha256" "hash" ]) args)
|
||||||
}
|
|
||||||
, passthru ? { }
|
, passthru ? { }
|
||||||
, ...
|
, ...
|
||||||
}@args:
|
}@args:
|
||||||
|
33
pkgs/by-name/ar/armbian-firmware/package.nix
Normal file
33
pkgs/by-name/ar/armbian-firmware/package.nix
Normal file
@ -0,0 +1,33 @@
|
|||||||
|
{ stdenvNoCC, lib, fetchFromGitHub }:
|
||||||
|
stdenvNoCC.mkDerivation rec {
|
||||||
|
pname = "armbian-firmware";
|
||||||
|
version = "unstable-2023-09-16";
|
||||||
|
|
||||||
|
src = fetchFromGitHub {
|
||||||
|
owner = "armbian";
|
||||||
|
repo = "firmware";
|
||||||
|
rev = "01f9809bb0c4bd60c0c84b9438486b02d58b03f7";
|
||||||
|
hash = "sha256-ozKADff7lFjIT/Zf5dkNlCe8lOK+kwYb/60NaCJ8i2k=";
|
||||||
|
};
|
||||||
|
|
||||||
|
installPhase = ''
|
||||||
|
runHook preInstall
|
||||||
|
|
||||||
|
mkdir -p $out/lib/firmware
|
||||||
|
cp -a * $out/lib/firmware/
|
||||||
|
|
||||||
|
runHook postInstall
|
||||||
|
'';
|
||||||
|
|
||||||
|
# Firmware blobs do not need fixing and should not be modified
|
||||||
|
dontBuild = true;
|
||||||
|
dontFixup = true;
|
||||||
|
|
||||||
|
meta = with lib; {
|
||||||
|
description = "Firmware from Armbian";
|
||||||
|
homepage = "https://github.com/armbian/firmware";
|
||||||
|
license = licenses.unfree;
|
||||||
|
platforms = platforms.all;
|
||||||
|
maintainers = with maintainers; [ zaldnoay ];
|
||||||
|
};
|
||||||
|
}
|
75
pkgs/by-name/gi/gitmoji-cli/package.nix
Normal file
75
pkgs/by-name/gi/gitmoji-cli/package.nix
Normal file
@ -0,0 +1,75 @@
|
|||||||
|
{ lib
|
||||||
|
, stdenv
|
||||||
|
, fetchFromGitHub
|
||||||
|
, fetchYarnDeps
|
||||||
|
, makeWrapper
|
||||||
|
, nodejs
|
||||||
|
, prefetch-yarn-deps
|
||||||
|
, yarn
|
||||||
|
}:
|
||||||
|
|
||||||
|
stdenv.mkDerivation (finalAttrs: {
|
||||||
|
pname = "gitmoji-cli";
|
||||||
|
version = "8.5.0";
|
||||||
|
|
||||||
|
src = fetchFromGitHub {
|
||||||
|
owner = "carloscuesta";
|
||||||
|
repo = "gitmoji-cli";
|
||||||
|
rev = "v${finalAttrs.version}";
|
||||||
|
hash = "sha256-ZM6jOi0FnomkIZeK6ln1Z0d6R5cjav67qyly3yqR1HQ=";
|
||||||
|
};
|
||||||
|
|
||||||
|
offlineCache = fetchYarnDeps {
|
||||||
|
yarnLock = "${finalAttrs.src}/yarn.lock";
|
||||||
|
hash = "sha256-HSAWFVOTlXlG7N5591hpfPAYaSrP413upW5u/HN9X2o=";
|
||||||
|
};
|
||||||
|
|
||||||
|
nativeBuildInputs = [
|
||||||
|
makeWrapper
|
||||||
|
nodejs
|
||||||
|
prefetch-yarn-deps
|
||||||
|
yarn
|
||||||
|
];
|
||||||
|
|
||||||
|
configurePhase = ''
|
||||||
|
runHook preConfigure
|
||||||
|
|
||||||
|
export HOME=$(mktemp -d)
|
||||||
|
yarn config --offline set yarn-offline-mirror $offlineCache
|
||||||
|
fixup-yarn-lock yarn.lock
|
||||||
|
yarn --offline --frozen-lockfile --ignore-platform --ignore-scripts --no-progress --non-interactive install
|
||||||
|
patchShebangs node_modules
|
||||||
|
|
||||||
|
runHook postConfigure
|
||||||
|
'';
|
||||||
|
|
||||||
|
buildPhase = ''
|
||||||
|
runHook preBuild
|
||||||
|
|
||||||
|
yarn --offline build
|
||||||
|
|
||||||
|
runHook postBuild
|
||||||
|
'';
|
||||||
|
|
||||||
|
installPhase = ''
|
||||||
|
runHook preInstall
|
||||||
|
|
||||||
|
yarn --offline --production install
|
||||||
|
|
||||||
|
mkdir -p "$out/lib/node_modules/gitmoji-cli"
|
||||||
|
cp -r lib node_modules "$out/lib/node_modules/gitmoji-cli"
|
||||||
|
|
||||||
|
makeWrapper "${nodejs}/bin/node" "$out/bin/gitmoji" \
|
||||||
|
--add-flags "$out/lib/node_modules/gitmoji-cli/lib/cli.js"
|
||||||
|
|
||||||
|
runHook postInstall
|
||||||
|
'';
|
||||||
|
|
||||||
|
meta = {
|
||||||
|
description = "Gitmoji client for using emojis on commit messages";
|
||||||
|
homepage = "https://github.com/carloscuesta/gitmoji-cli";
|
||||||
|
license = lib.licenses.mit;
|
||||||
|
mainProgram = "gitmoji";
|
||||||
|
maintainers = with lib.maintainers; [ nequissimus ];
|
||||||
|
};
|
||||||
|
})
|
@ -6,11 +6,11 @@
|
|||||||
|
|
||||||
stdenvNoCC.mkDerivation (finalAttrs: {
|
stdenvNoCC.mkDerivation (finalAttrs: {
|
||||||
pname = "rectangle-pro";
|
pname = "rectangle-pro";
|
||||||
version = "3.0.9";
|
version = "3.0.11";
|
||||||
|
|
||||||
src = fetchurl {
|
src = fetchurl {
|
||||||
url = "https://rectangleapp.com/pro/downloads/Rectangle%20Pro%20${finalAttrs.version}.dmg";
|
url = "https://rectangleapp.com/pro/downloads/Rectangle%20Pro%20${finalAttrs.version}.dmg";
|
||||||
hash = "sha256-wD8yi2Pbgrn1fW/xrocepDcpzSMsQH5yjB/Jv90PuGQ=";
|
hash = "sha256-Hs2eRO5DpYoY0rLfcmGZRHjmg+wddz/+LE0u4E9gCTk=";
|
||||||
};
|
};
|
||||||
|
|
||||||
sourceRoot = ".";
|
sourceRoot = ".";
|
||||||
|
@ -120,7 +120,6 @@
|
|||||||
"EasyScreenCast@iacopodeenosee.gmail.com" = "easyScreenCast"; # extensionPortalSlug is "easyscreencast"
|
"EasyScreenCast@iacopodeenosee.gmail.com" = "easyScreenCast"; # extensionPortalSlug is "easyscreencast"
|
||||||
"gnome-fuzzy-app-search@gnome-shell-extensions.Czarlie.gitlab.com" = "fuzzy-app-search"; # extensionPortalSlug is "gnome-fuzzy-app-search"
|
"gnome-fuzzy-app-search@gnome-shell-extensions.Czarlie.gitlab.com" = "fuzzy-app-search"; # extensionPortalSlug is "gnome-fuzzy-app-search"
|
||||||
"TopIcons@phocean.net" = "topicons-plus"; # extensionPortalSlug is "topicons"
|
"TopIcons@phocean.net" = "topicons-plus"; # extensionPortalSlug is "topicons"
|
||||||
"paperwm@hedning:matrix.org" = "paperwm"; # is not on extensions.gnome.org
|
|
||||||
"no-title-bar@jonaspoehler.de" = "no-title-bar"; # extensionPortalSlug is "no-title-bar-forked"
|
"no-title-bar@jonaspoehler.de" = "no-title-bar"; # extensionPortalSlug is "no-title-bar-forked"
|
||||||
# These extensions are automatically packaged at the moment. We preserve the old attribute name
|
# These extensions are automatically packaged at the moment. We preserve the old attribute name
|
||||||
# for backwards compatibility.
|
# for backwards compatibility.
|
||||||
|
@ -9,7 +9,6 @@
|
|||||||
"icon-hider@kalnitsky.org" = callPackage ./icon-hider { };
|
"icon-hider@kalnitsky.org" = callPackage ./icon-hider { };
|
||||||
"impatience@gfxmonk.net" = callPackage ./impatience { };
|
"impatience@gfxmonk.net" = callPackage ./impatience { };
|
||||||
"no-title-bar@jonaspoehler.de" = callPackage ./no-title-bar { };
|
"no-title-bar@jonaspoehler.de" = callPackage ./no-title-bar { };
|
||||||
"paperwm@hedning:matrix.org" = callPackage ./paperwm { };
|
|
||||||
"pidgin@muffinmad" = callPackage ./pidgin-im-integration { };
|
"pidgin@muffinmad" = callPackage ./pidgin-im-integration { };
|
||||||
"pop-shell@system76.com" = callPackage ./pop-shell { };
|
"pop-shell@system76.com" = callPackage ./pop-shell { };
|
||||||
"sound-output-device-chooser@kgshank.net" = callPackage ./sound-output-device-chooser { };
|
"sound-output-device-chooser@kgshank.net" = callPackage ./sound-output-device-chooser { };
|
||||||
|
@ -1,42 +0,0 @@
|
|||||||
{ lib
|
|
||||||
, stdenv
|
|
||||||
, fetchFromGitHub
|
|
||||||
, gitUpdater
|
|
||||||
}:
|
|
||||||
|
|
||||||
stdenv.mkDerivation (finalAttrs: {
|
|
||||||
pname = "gnome-shell-extension-paperwm";
|
|
||||||
version = "44.3.1";
|
|
||||||
|
|
||||||
src = fetchFromGitHub {
|
|
||||||
owner = "paperwm";
|
|
||||||
repo = "PaperWM";
|
|
||||||
rev = "v${finalAttrs.version}";
|
|
||||||
hash = "sha256-oGBnQGtx2ku4cfgZkZ3OdHlVuiYR8hy1eYDWDZP3fn4=";
|
|
||||||
};
|
|
||||||
|
|
||||||
dontConfigure = true;
|
|
||||||
dontBuild = true;
|
|
||||||
|
|
||||||
installPhase = ''
|
|
||||||
runHook preInstall
|
|
||||||
|
|
||||||
mkdir -p "$out/share/gnome-shell/extensions/paperwm@hedning:matrix.org"
|
|
||||||
cp -r . "$out/share/gnome-shell/extensions/paperwm@hedning:matrix.org"
|
|
||||||
|
|
||||||
runHook postInstall
|
|
||||||
'';
|
|
||||||
|
|
||||||
passthru.updateScript = gitUpdater { url = finalAttrs.meta.homepage; };
|
|
||||||
|
|
||||||
meta = {
|
|
||||||
homepage = "https://github.com/paperwm/PaperWM";
|
|
||||||
description = "Tiled scrollable window management for Gnome Shell";
|
|
||||||
changelog = "https://github.com/paperwm/PaperWM/releases/tag/${finalAttrs.src.rev}";
|
|
||||||
license = lib.licenses.gpl3Plus;
|
|
||||||
maintainers = with lib.maintainers; [ hedning AndersonTorres cab404 ];
|
|
||||||
platforms = lib.platforms.all;
|
|
||||||
};
|
|
||||||
|
|
||||||
passthru.extensionUuid = "paperwm@hedning:matrix.org";
|
|
||||||
})
|
|
@ -23,13 +23,13 @@
|
|||||||
|
|
||||||
stdenv.mkDerivation rec {
|
stdenv.mkDerivation rec {
|
||||||
pname = "appcenter";
|
pname = "appcenter";
|
||||||
version = "7.3.0";
|
version = "7.4.0";
|
||||||
|
|
||||||
src = fetchFromGitHub {
|
src = fetchFromGitHub {
|
||||||
owner = "elementary";
|
owner = "elementary";
|
||||||
repo = pname;
|
repo = pname;
|
||||||
rev = version;
|
rev = version;
|
||||||
sha256 = "sha256-Lj3j812XaCIN+TFSDAvIgtl49n5jG4fVlAFvrWqngpM=";
|
sha256 = "sha256-L6MGbzzujr4tEB2Cpd7IU+3mOtSCt2hLPw4mOfZ4TkQ=";
|
||||||
};
|
};
|
||||||
|
|
||||||
nativeBuildInputs = [
|
nativeBuildInputs = [
|
||||||
|
@ -10,13 +10,14 @@
|
|||||||
, scons
|
, scons
|
||||||
, setuptools
|
, setuptools
|
||||||
, tinyprog
|
, tinyprog
|
||||||
|
, flit-core
|
||||||
, pytestCheckHook
|
, pytestCheckHook
|
||||||
}:
|
}:
|
||||||
|
|
||||||
buildPythonApplication rec {
|
buildPythonApplication rec {
|
||||||
pname = "apio";
|
pname = "apio";
|
||||||
version = "0.8.1";
|
version = "0.8.1";
|
||||||
format = "flit";
|
format = "pyproject";
|
||||||
|
|
||||||
src = fetchFromGitHub {
|
src = fetchFromGitHub {
|
||||||
owner = "FPGAwars";
|
owner = "FPGAwars";
|
||||||
@ -47,6 +48,10 @@ buildPythonApplication rec {
|
|||||||
'version = semantic_version.Version(pkg_version.replace(".dev", "-dev"))'
|
'version = semantic_version.Version(pkg_version.replace(".dev", "-dev"))'
|
||||||
'';
|
'';
|
||||||
|
|
||||||
|
nativeBuildInputs = [
|
||||||
|
flit-core
|
||||||
|
];
|
||||||
|
|
||||||
propagatedBuildInputs = [
|
propagatedBuildInputs = [
|
||||||
click
|
click
|
||||||
semantic-version
|
semantic-version
|
||||||
|
@ -396,15 +396,7 @@ self: super: {
|
|||||||
# https://github.com/awakesecurity/nix-graph/issues/5
|
# https://github.com/awakesecurity/nix-graph/issues/5
|
||||||
nix-graph = doJailbreak super.nix-graph;
|
nix-graph = doJailbreak super.nix-graph;
|
||||||
|
|
||||||
cachix = self.generateOptparseApplicativeCompletions [ "cachix" ]
|
cachix = self.generateOptparseApplicativeCompletions [ "cachix" ] super.cachix;
|
||||||
# Adds a workaround to the API changes in the versions library
|
|
||||||
# Should be dropped by the next release
|
|
||||||
# https://github.com/cachix/cachix/pull/556
|
|
||||||
(appendPatch (fetchpatch {
|
|
||||||
url = "https://github.com/cachix/cachix/commit/078d2d2212d7533a6a4db000958bfc4373c4deeb.patch";
|
|
||||||
hash = "sha256-xfJaO2CuZWFHivq4gqbkNnTOWPiyFVjlwOPV6yibKH4=";
|
|
||||||
stripLen = 1;
|
|
||||||
}) super.cachix);
|
|
||||||
|
|
||||||
# https://github.com/froozen/kademlia/issues/2
|
# https://github.com/froozen/kademlia/issues/2
|
||||||
kademlia = dontCheck super.kademlia;
|
kademlia = dontCheck super.kademlia;
|
||||||
|
@ -1070,29 +1070,29 @@ self: super: builtins.intersectAttrs super {
|
|||||||
domaindriven-core = dontCheck super.domaindriven-core;
|
domaindriven-core = dontCheck super.domaindriven-core;
|
||||||
|
|
||||||
cachix-api = overrideCabal (drv: {
|
cachix-api = overrideCabal (drv: {
|
||||||
version = "1.6";
|
version = "1.6.1";
|
||||||
src = pkgs.fetchFromGitHub {
|
src = pkgs.fetchFromGitHub {
|
||||||
owner = "cachix";
|
owner = "cachix";
|
||||||
repo = "cachix";
|
repo = "cachix";
|
||||||
rev = "v1.6";
|
rev = "v1.6.1";
|
||||||
sha256 = "sha256-54ujAZYNigAn1oJAfupUtZHa0WRQbCQGLEfLmkw8iFc=";
|
sha256 = "sha256-6S8EOs7bGTyY4eDXGuTbJMTlaz0n1JYIAPKIB2cVYxg=";
|
||||||
};
|
};
|
||||||
postUnpack = "sourceRoot=$sourceRoot/cachix-api";
|
postUnpack = "sourceRoot=$sourceRoot/cachix-api";
|
||||||
postPatch = ''
|
postPatch = ''
|
||||||
sed -i 's/1.5/1.6/' cachix-api.cabal
|
sed -i 's/1.6/1.6.1/' cachix-api.cabal
|
||||||
'';
|
'';
|
||||||
}) super.cachix-api;
|
}) super.cachix-api;
|
||||||
cachix = overrideCabal (drv: {
|
cachix = overrideCabal (drv: {
|
||||||
version = "1.6";
|
version = "1.6.1";
|
||||||
src = pkgs.fetchFromGitHub {
|
src = pkgs.fetchFromGitHub {
|
||||||
owner = "cachix";
|
owner = "cachix";
|
||||||
repo = "cachix";
|
repo = "cachix";
|
||||||
rev = "v1.6";
|
rev = "v1.6.1";
|
||||||
sha256 = "sha256-54ujAZYNigAn1oJAfupUtZHa0WRQbCQGLEfLmkw8iFc=";
|
sha256 = "sha256-6S8EOs7bGTyY4eDXGuTbJMTlaz0n1JYIAPKIB2cVYxg=";
|
||||||
};
|
};
|
||||||
postUnpack = "sourceRoot=$sourceRoot/cachix";
|
postUnpack = "sourceRoot=$sourceRoot/cachix";
|
||||||
postPatch = ''
|
postPatch = ''
|
||||||
sed -i 's/1.5/1.6/' cachix.cabal
|
sed -i 's/1.6/1.6.1/' cachix.cabal
|
||||||
'';
|
'';
|
||||||
}) (lib.pipe
|
}) (lib.pipe
|
||||||
(super.cachix.override {
|
(super.cachix.override {
|
||||||
@ -1102,7 +1102,7 @@ self: super: builtins.intersectAttrs super {
|
|||||||
[
|
[
|
||||||
(addBuildTool self.hercules-ci-cnix-store.nixPackage)
|
(addBuildTool self.hercules-ci-cnix-store.nixPackage)
|
||||||
(addBuildTool pkgs.pkg-config)
|
(addBuildTool pkgs.pkg-config)
|
||||||
(addBuildDepend self.ascii-progress)
|
(addBuildDepend self.immortal)
|
||||||
]
|
]
|
||||||
);
|
);
|
||||||
|
|
||||||
|
@ -1,7 +1,7 @@
|
|||||||
{ lib, mkDerivation }:
|
{ lib, mkDerivation }:
|
||||||
|
|
||||||
mkDerivation {
|
mkDerivation {
|
||||||
version = "26.0.2";
|
version = "26.1";
|
||||||
sha256 = "sha256-GzF/cpTUe5hoocDK5aio/lo8oYFeTr+HkftTYpQnOdA=";
|
sha256 = "sha256-GECxenOxwZ0A7cY5Z/amthNezGVPsmZWB5gHayy78cI=";
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -138,10 +138,10 @@ in {
|
|||||||
sourceVersion = {
|
sourceVersion = {
|
||||||
major = "7";
|
major = "7";
|
||||||
minor = "3";
|
minor = "3";
|
||||||
patch = "11";
|
patch = "12";
|
||||||
};
|
};
|
||||||
|
|
||||||
hash = "sha256-ERevtmgx2k6m852NIIR4enRon9AineC+MB+e2bJVCTw=";
|
hash = "sha256-3WHYjaJ0ws4s7HdmfUo9+aZSvMUOJvkJkdTdCvZrzPQ=";
|
||||||
pythonVersion = "2.7";
|
pythonVersion = "2.7";
|
||||||
db = db.override { dbmSupport = !stdenv.isDarwin; };
|
db = db.override { dbmSupport = !stdenv.isDarwin; };
|
||||||
python = __splicedPackages.pythonInterpreters.pypy27_prebuilt;
|
python = __splicedPackages.pythonInterpreters.pypy27_prebuilt;
|
||||||
@ -155,10 +155,10 @@ in {
|
|||||||
sourceVersion = {
|
sourceVersion = {
|
||||||
major = "7";
|
major = "7";
|
||||||
minor = "3";
|
minor = "3";
|
||||||
patch = "11";
|
patch = "12";
|
||||||
};
|
};
|
||||||
|
|
||||||
hash = "sha256-sPMWb7Klqt/VzrnbXN1feSmg7MygK0omwNrgSS98qOo=";
|
hash = "sha256-56IEbH5sJfw4aru1Ey6Sp8wkkeOTVpmpRstdy7NCwqo=";
|
||||||
pythonVersion = "3.9";
|
pythonVersion = "3.9";
|
||||||
db = db.override { dbmSupport = !stdenv.isDarwin; };
|
db = db.override { dbmSupport = !stdenv.isDarwin; };
|
||||||
python = __splicedPackages.pypy27;
|
python = __splicedPackages.pypy27;
|
||||||
@ -167,28 +167,26 @@ in {
|
|||||||
inherit (darwin.apple_sdk.frameworks) Security;
|
inherit (darwin.apple_sdk.frameworks) Security;
|
||||||
};
|
};
|
||||||
|
|
||||||
pypy38 = __splicedPackages.pypy39.override {
|
pypy310 = __splicedPackages.pypy39.override {
|
||||||
self = __splicedPackages.pythonInterpreters.pypy38;
|
self = __splicedPackages.pythonInterpreters.pypy310;
|
||||||
pythonVersion = "3.8";
|
pythonVersion = "3.10";
|
||||||
hash = "sha256-TWdpv8pzc06GZv1wUDt86wam4lkRDmFzMbs4mcpOYFg=";
|
hash = "sha256-huTk6sw2BGxhgvQwGHllN/4zpg4dKizGuOf5Gl3LPkI=";
|
||||||
};
|
};
|
||||||
|
|
||||||
pypy37 = throw "pypy37 has been removed from nixpkgs since it is no longer supported upstream"; # Added 2023-01-04
|
|
||||||
|
|
||||||
pypy27_prebuilt = callPackage ./pypy/prebuilt_2_7.nix {
|
pypy27_prebuilt = callPackage ./pypy/prebuilt_2_7.nix {
|
||||||
# Not included at top-level
|
# Not included at top-level
|
||||||
self = __splicedPackages.pythonInterpreters.pypy27_prebuilt;
|
self = __splicedPackages.pythonInterpreters.pypy27_prebuilt;
|
||||||
sourceVersion = {
|
sourceVersion = {
|
||||||
major = "7";
|
major = "7";
|
||||||
minor = "3";
|
minor = "3";
|
||||||
patch = "11";
|
patch = "12";
|
||||||
};
|
};
|
||||||
|
|
||||||
hash = {
|
hash = {
|
||||||
aarch64-linux = "sha256-6pJNod7+kyXvdg4oiwT5hGFOQFWA9TIetqXI9Tm9QVo=";
|
aarch64-linux = "sha256-4E3LYoantHJOw/DlDTzBuoWDMB3RZYwG1/N1meQgHFk=";
|
||||||
x86_64-linux = "sha256-uo7ZWKkFwHNaTP/yh1wlCJlU3AIOCH2YKw/6W52jFs0=";
|
x86_64-linux = "sha256-GmGiV0t5Rm9gYBDymZormVvZbNCF+Rp46909XCxA6B0=";
|
||||||
aarch64-darwin = "sha256-zFaWq0+TzTSBweSZC13t17pgrAYC+hiQ02iImmxb93E=";
|
aarch64-darwin = "sha256-a3R6oHauhZfklgPF3sTKWTWhoKEy10BKVZvpaiYNm/c=";
|
||||||
x86_64-darwin = "sha256-Vt7unCJkD1aGw1udZP2xzjq9BEWD5AePCxccov0qGY4=";
|
x86_64-darwin = "sha256-bon/3RVTfOT/zjFFtl7lfC6clSiSvZW5NAEtLwCfUDs=";
|
||||||
}.${stdenv.system};
|
}.${stdenv.system};
|
||||||
pythonVersion = "2.7";
|
pythonVersion = "2.7";
|
||||||
inherit passthruFun;
|
inherit passthruFun;
|
||||||
@ -200,13 +198,13 @@ in {
|
|||||||
sourceVersion = {
|
sourceVersion = {
|
||||||
major = "7";
|
major = "7";
|
||||||
minor = "3";
|
minor = "3";
|
||||||
patch = "11";
|
patch = "12";
|
||||||
};
|
};
|
||||||
hash = {
|
hash = {
|
||||||
aarch64-linux = "sha256-CRddxlLtiV2Y6a1j0haBK/PufjmNkAqb+espBrqDArk=";
|
aarch64-linux = "sha256-6TJ/ue2vKtkZNdW4Vj7F/yQZO92xdcGsqvdywCWvGCQ=";
|
||||||
x86_64-linux = "sha256-1QYXLKEQcSdBdddOnFgcMWZDLQF5sDZHDjuejSDq5YE=";
|
x86_64-linux = "sha256-hMiblm+rK1j0UaSC7jDKf+wzUENb0LlhRhXGHcbaI5A=";
|
||||||
aarch64-darwin = "sha256-ka11APGjlTHb76CzRaPc/5J/+ZcWVOjS6e98WuMR9X4=";
|
aarch64-darwin = "sha256-DooaNGi5eQxzSsaY9bAMwD/BaJnMxs6HZGX6wLg5gOM=";
|
||||||
x86_64-darwin = "sha256-0z9AsgcJmHJYWv1xhzV1ym6mOKJ9gjvGISOMWuglQu0=";
|
x86_64-darwin = "sha256-ZPAI/6BwxAfl70bIJWsuAU3nGW6l2Fg4WGElTnlZ9Os=";
|
||||||
}.${stdenv.system};
|
}.${stdenv.system};
|
||||||
pythonVersion = "3.9";
|
pythonVersion = "3.9";
|
||||||
inherit passthruFun;
|
inherit passthruFun;
|
||||||
|
@ -45,15 +45,6 @@ in {
|
|||||||
propagatedBuildInputs = [ ];
|
propagatedBuildInputs = [ ];
|
||||||
} ./egg-unpack-hook.sh) {};
|
} ./egg-unpack-hook.sh) {};
|
||||||
|
|
||||||
flitBuildHook = callPackage ({ makePythonHook, flit }:
|
|
||||||
makePythonHook {
|
|
||||||
name = "flit-build-hook";
|
|
||||||
propagatedBuildInputs = [ flit ];
|
|
||||||
substitutions = {
|
|
||||||
inherit pythonInterpreter;
|
|
||||||
};
|
|
||||||
} ./flit-build-hook.sh) {};
|
|
||||||
|
|
||||||
pipBuildHook = callPackage ({ makePythonHook, pip, wheel }:
|
pipBuildHook = callPackage ({ makePythonHook, pip, wheel }:
|
||||||
makePythonHook {
|
makePythonHook {
|
||||||
name = "pip-build-hook.sh";
|
name = "pip-build-hook.sh";
|
||||||
|
@ -1,15 +0,0 @@
|
|||||||
# Setup hook for flit
|
|
||||||
echo "Sourcing flit-build-hook"
|
|
||||||
|
|
||||||
flitBuildPhase () {
|
|
||||||
echo "Executing flitBuildPhase"
|
|
||||||
runHook preBuild
|
|
||||||
@pythonInterpreter@ -m flit build --format wheel
|
|
||||||
runHook postBuild
|
|
||||||
echo "Finished executing flitBuildPhase"
|
|
||||||
}
|
|
||||||
|
|
||||||
if [ -z "${dontUseFlitBuild-}" ] && [ -z "${buildPhase-}" ]; then
|
|
||||||
echo "Using flitBuildPhase"
|
|
||||||
buildPhase=flitBuildPhase
|
|
||||||
fi
|
|
@ -11,7 +11,6 @@
|
|||||||
, namePrefix
|
, namePrefix
|
||||||
, update-python-libraries
|
, update-python-libraries
|
||||||
, setuptools
|
, setuptools
|
||||||
, flitBuildHook
|
|
||||||
, pypaBuildHook
|
, pypaBuildHook
|
||||||
, pypaInstallHook
|
, pypaInstallHook
|
||||||
, pythonCatchConflictsHook
|
, pythonCatchConflictsHook
|
||||||
@ -90,7 +89,6 @@
|
|||||||
# Several package formats are supported.
|
# Several package formats are supported.
|
||||||
# "setuptools" : Install a common setuptools/distutils based package. This builds a wheel.
|
# "setuptools" : Install a common setuptools/distutils based package. This builds a wheel.
|
||||||
# "wheel" : Install from a pre-compiled wheel.
|
# "wheel" : Install from a pre-compiled wheel.
|
||||||
# "flit" : Install a flit package. This builds a wheel.
|
|
||||||
# "pyproject": Install a package using a ``pyproject.toml`` file (PEP517). This builds a wheel.
|
# "pyproject": Install a package using a ``pyproject.toml`` file (PEP517). This builds a wheel.
|
||||||
# "egg": Install a package from an egg.
|
# "egg": Install a package from an egg.
|
||||||
# "other" : Provide your own buildPhase and installPhase.
|
# "other" : Provide your own buildPhase and installPhase.
|
||||||
@ -122,7 +120,7 @@ let
|
|||||||
else
|
else
|
||||||
"setuptools";
|
"setuptools";
|
||||||
|
|
||||||
withDistOutput = lib.elem format' ["pyproject" "setuptools" "flit" "wheel"];
|
withDistOutput = lib.elem format' ["pyproject" "setuptools" "wheel"];
|
||||||
|
|
||||||
name_ = name;
|
name_ = name;
|
||||||
|
|
||||||
@ -222,8 +220,6 @@ let
|
|||||||
unzip
|
unzip
|
||||||
] ++ lib.optionals (format' == "setuptools") [
|
] ++ lib.optionals (format' == "setuptools") [
|
||||||
setuptoolsBuildHook
|
setuptoolsBuildHook
|
||||||
] ++ lib.optionals (format' == "flit") [
|
|
||||||
flitBuildHook
|
|
||||||
] ++ lib.optionals (format' == "pyproject") [(
|
] ++ lib.optionals (format' == "pyproject") [(
|
||||||
if isBootstrapPackage then
|
if isBootstrapPackage then
|
||||||
pypaBuildHook.override {
|
pypaBuildHook.override {
|
||||||
|
@ -98,12 +98,10 @@
|
|||||||
|
|
||||||
, ... } @ attrs:
|
, ... } @ attrs:
|
||||||
|
|
||||||
assert lib.assertMsg (format != "flit") "flit is not a supported Python 2 format";
|
|
||||||
|
|
||||||
let
|
let
|
||||||
inherit (python) stdenv;
|
inherit (python) stdenv;
|
||||||
|
|
||||||
withDistOutput = lib.elem format ["pyproject" "setuptools" "flit" "wheel"];
|
withDistOutput = lib.elem format ["pyproject" "setuptools" "wheel"];
|
||||||
|
|
||||||
name_ = name;
|
name_ = name;
|
||||||
|
|
||||||
@ -171,7 +169,7 @@ let
|
|||||||
nativeBuildInputs = [
|
nativeBuildInputs = [
|
||||||
python
|
python
|
||||||
wrapPython
|
wrapPython
|
||||||
ensureNewerSourcesForZipFilesHook # move to wheel installer (pip) or builder (setuptools, flit, ...)?
|
ensureNewerSourcesForZipFilesHook # move to wheel installer (pip) or builder (setuptools, ...)?
|
||||||
pythonRemoveTestsDirHook
|
pythonRemoveTestsDirHook
|
||||||
] ++ lib.optionals catchConflicts [
|
] ++ lib.optionals catchConflicts [
|
||||||
pythonCatchConflictsHook
|
pythonCatchConflictsHook
|
||||||
|
@ -8,7 +8,6 @@
|
|||||||
{ stdenv
|
{ stdenv
|
||||||
, python
|
, python
|
||||||
, runCommand
|
, runCommand
|
||||||
, substituteAll
|
|
||||||
, lib
|
, lib
|
||||||
, callPackage
|
, callPackage
|
||||||
, pkgs
|
, pkgs
|
||||||
@ -60,7 +59,7 @@ let
|
|||||||
is_nixenv = "True";
|
is_nixenv = "True";
|
||||||
is_virtualenv = "False";
|
is_virtualenv = "False";
|
||||||
};
|
};
|
||||||
} // lib.optionalAttrs (python.isPy3k && (!python.isPyPy)) rec {
|
} // lib.optionalAttrs (python.isPy3k && (!python.isPyPy)) {
|
||||||
# Venv built using plain Python
|
# Venv built using plain Python
|
||||||
# Python 2 does not support venv
|
# Python 2 does not support venv
|
||||||
# TODO: PyPy executable name is incorrect, it should be pypy-c or pypy-3c instead of pypy and pypy3.
|
# TODO: PyPy executable name is incorrect, it should be pypy-c or pypy-3c instead of pypy and pypy3.
|
||||||
@ -109,7 +108,7 @@ let
|
|||||||
cpython-gdb = callPackage ./tests/test_cpython_gdb {
|
cpython-gdb = callPackage ./tests/test_cpython_gdb {
|
||||||
interpreter = python;
|
interpreter = python;
|
||||||
};
|
};
|
||||||
} // lib.optionalAttrs (python.pythonAtLeast "3.7") rec {
|
} // lib.optionalAttrs (python.pythonAtLeast "3.7") {
|
||||||
# Before the addition of NIX_PYTHONPREFIX mypy was broken with typed packages
|
# Before the addition of NIX_PYTHONPREFIX mypy was broken with typed packages
|
||||||
nix-pythonprefix-mypy = callPackage ./tests/test_nix_pythonprefix {
|
nix-pythonprefix-mypy = callPackage ./tests/test_nix_pythonprefix {
|
||||||
interpreter = python;
|
interpreter = python;
|
||||||
@ -126,7 +125,7 @@ let
|
|||||||
extension = self: super: {
|
extension = self: super: {
|
||||||
foobar = super.numpy;
|
foobar = super.numpy;
|
||||||
};
|
};
|
||||||
in {
|
in lib.optionalAttrs (python.isPy3k) ({
|
||||||
test-packageOverrides = let
|
test-packageOverrides = let
|
||||||
myPython = let
|
myPython = let
|
||||||
self = python.override {
|
self = python.override {
|
||||||
@ -150,7 +149,7 @@ let
|
|||||||
];
|
];
|
||||||
});
|
});
|
||||||
in pkgs_.${python.pythonAttr}.pkgs.foo;
|
in pkgs_.${python.pythonAttr}.pkgs.foo;
|
||||||
};
|
});
|
||||||
|
|
||||||
condaTests = let
|
condaTests = let
|
||||||
requests = callPackage ({
|
requests = callPackage ({
|
||||||
@ -178,7 +177,7 @@ let
|
|||||||
}
|
}
|
||||||
) {};
|
) {};
|
||||||
pythonWithRequests = requests.pythonModule.withPackages (ps: [ requests ]);
|
pythonWithRequests = requests.pythonModule.withPackages (ps: [ requests ]);
|
||||||
in lib.optionalAttrs stdenv.isLinux
|
in lib.optionalAttrs (python.isPy3k && stdenv.isLinux)
|
||||||
{
|
{
|
||||||
condaExamplePackage = runCommand "import-requests" {} ''
|
condaExamplePackage = runCommand "import-requests" {} ''
|
||||||
${pythonWithRequests.interpreter} -c "import requests" > $out
|
${pythonWithRequests.interpreter} -c "import requests" > $out
|
||||||
|
@ -25,13 +25,13 @@ let
|
|||||||
|
|
||||||
in stdenv.mkDerivation rec {
|
in stdenv.mkDerivation rec {
|
||||||
pname = "amdvlk";
|
pname = "amdvlk";
|
||||||
version = "2023.Q3.1";
|
version = "2023.Q3.2";
|
||||||
|
|
||||||
src = fetchRepoProject {
|
src = fetchRepoProject {
|
||||||
name = "${pname}-src";
|
name = "${pname}-src";
|
||||||
manifest = "https://github.com/GPUOpen-Drivers/AMDVLK.git";
|
manifest = "https://github.com/GPUOpen-Drivers/AMDVLK.git";
|
||||||
rev = "refs/tags/v-${version}";
|
rev = "refs/tags/v-${version}";
|
||||||
sha256 = "W+igZbdQG1L62oGJa2Rz0n8YkTsZFqSm7w8VFfPu8k0=";
|
sha256 = "/1D2BbT1gnMLvIHfpkxLkeo1pjbG9LkTx9Zl5+gGU/M=";
|
||||||
};
|
};
|
||||||
|
|
||||||
buildInputs = [
|
buildInputs = [
|
||||||
|
@ -9,14 +9,14 @@
|
|||||||
|
|
||||||
stdenv.mkDerivation rec {
|
stdenv.mkDerivation rec {
|
||||||
pname = "cdo";
|
pname = "cdo";
|
||||||
version = "2.2.0";
|
version = "2.2.2";
|
||||||
|
|
||||||
# Dependencies
|
# Dependencies
|
||||||
buildInputs = [ curl netcdf hdf5 python3 ];
|
buildInputs = [ curl netcdf hdf5 python3 ];
|
||||||
|
|
||||||
src = fetchurl {
|
src = fetchurl {
|
||||||
url = "https://code.mpimet.mpg.de/attachments/download/28013/${pname}-${version}.tar.gz";
|
url = "https://code.mpimet.mpg.de/attachments/download/28882/${pname}-${version}.tar.gz";
|
||||||
sha256 = "sha256-Z5yNEFcGyv/LoJYOxd3EoTMsG0DFL4LDk3NWmZ2PrfI=";
|
sha256 = "sha256-QZx3MVJEAZr0GilsBQZvR0zMv5Tev6rp4hBtpRvHyTc=";
|
||||||
};
|
};
|
||||||
|
|
||||||
configureFlags = [
|
configureFlags = [
|
||||||
|
@ -8,13 +8,13 @@
|
|||||||
|
|
||||||
stdenv.mkDerivation (finalAttrs: {
|
stdenv.mkDerivation (finalAttrs: {
|
||||||
pname = "cpp-utilities";
|
pname = "cpp-utilities";
|
||||||
version = "5.24.0";
|
version = "5.24.1";
|
||||||
|
|
||||||
src = fetchFromGitHub {
|
src = fetchFromGitHub {
|
||||||
owner = "Martchus";
|
owner = "Martchus";
|
||||||
repo = "cpp-utilities";
|
repo = "cpp-utilities";
|
||||||
rev = "v${finalAttrs.version}";
|
rev = "v${finalAttrs.version}";
|
||||||
sha256 = "sha256-krskfuoCRxYcAIDqrae4+yEABXXZ9Nv0BjBVwSMjC7g=";
|
sha256 = "sha256-Prb593+jXhYzwPHQnwen2qgaNfdX1Atiz1FhmXm9X7U=";
|
||||||
};
|
};
|
||||||
|
|
||||||
nativeBuildInputs = [ cmake ];
|
nativeBuildInputs = [ cmake ];
|
||||||
|
@ -34,7 +34,7 @@ stdenv.mkDerivation rec {
|
|||||||
mongoc
|
mongoc
|
||||||
openssl
|
openssl
|
||||||
] ++ lib.optionals stdenv.isDarwin [
|
] ++ lib.optionals stdenv.isDarwin [
|
||||||
darwin.apple_sdk.frameworks.Security
|
darwin.apple_sdk_11_0.frameworks.Security
|
||||||
];
|
];
|
||||||
|
|
||||||
cmakeFlags = [
|
cmakeFlags = [
|
||||||
|
@ -71,7 +71,9 @@ mapAliases {
|
|||||||
eslint_d = pkgs.eslint_d; # Added 2023-05-26
|
eslint_d = pkgs.eslint_d; # Added 2023-05-26
|
||||||
inherit (pkgs) firebase-tools; # added 2023-08-18
|
inherit (pkgs) firebase-tools; # added 2023-08-18
|
||||||
flood = pkgs.flood; # Added 2023-07-25
|
flood = pkgs.flood; # Added 2023-07-25
|
||||||
|
generator-code = throw "generator-code was removed because it provides no executable"; # added 2023-09-24
|
||||||
git-ssb = throw "git-ssb was removed because it was broken"; # added 2023-08-21
|
git-ssb = throw "git-ssb was removed because it was broken"; # added 2023-08-21
|
||||||
|
inherit (pkgs) gitmoji-cli; # added 2023-09-23
|
||||||
glob = pkgs.node-glob; # added 2023-08-18
|
glob = pkgs.node-glob; # added 2023-08-18
|
||||||
inherit (pkgs) gqlint; # added 2023-08-19
|
inherit (pkgs) gqlint; # added 2023-08-19
|
||||||
inherit (pkgs) graphqurl; # added 2023-08-19
|
inherit (pkgs) graphqurl; # added 2023-08-19
|
||||||
|
@ -37,7 +37,6 @@
|
|||||||
fkill-cli = "fkill";
|
fkill-cli = "fkill";
|
||||||
fleek-cli = "fleek";
|
fleek-cli = "fleek";
|
||||||
git-run = "gr";
|
git-run = "gr";
|
||||||
gitmoji-cli = "gitmoji";
|
|
||||||
graphql-cli = "graphql";
|
graphql-cli = "graphql";
|
||||||
graphql-language-service-cli = "graphql-lsp";
|
graphql-language-service-cli = "graphql-lsp";
|
||||||
grunt-cli = "grunt";
|
grunt-cli = "grunt";
|
||||||
|
@ -120,12 +120,10 @@
|
|||||||
, "fx"
|
, "fx"
|
||||||
, "ganache"
|
, "ganache"
|
||||||
, "gatsby-cli"
|
, "gatsby-cli"
|
||||||
, "generator-code"
|
|
||||||
, "get-graphql-schema"
|
, "get-graphql-schema"
|
||||||
, "git-run"
|
, "git-run"
|
||||||
, "git-standup"
|
, "git-standup"
|
||||||
, "@gitbeaker/cli"
|
, "@gitbeaker/cli"
|
||||||
, "gitmoji-cli"
|
|
||||||
, "gramma"
|
, "gramma"
|
||||||
, "grammarly-languageserver"
|
, "grammarly-languageserver"
|
||||||
, "graphql"
|
, "graphql"
|
||||||
|
1163
pkgs/development/node-packages/node-packages.nix
generated
1163
pkgs/development/node-packages/node-packages.nix
generated
File diff suppressed because it is too large
Load Diff
@ -14,12 +14,11 @@ buildDunePackage (rec {
|
|||||||
tyxml
|
tyxml
|
||||||
];
|
];
|
||||||
|
|
||||||
duneVersion = "3";
|
|
||||||
doCheck = true;
|
doCheck = true;
|
||||||
|
|
||||||
meta = with lib; {
|
meta = with lib; {
|
||||||
description = "ocaml-junit is an OCaml package for the creation of JUnit XML reports, proving a typed API to produce valid reports acceptable to Jenkins, comes with packages supporting OUnit and Alcotest.";
|
description = "ocaml-junit is an OCaml package for the creation of JUnit XML reports, proving a typed API to produce valid reports acceptable to Jenkins, comes with packages supporting OUnit and Alcotest.";
|
||||||
license = licenses.gpl3;
|
license = licenses.lgpl3Plus;
|
||||||
maintainers = with maintainers; [ ];
|
maintainers = with maintainers; [ ];
|
||||||
homepage = "https://github.com/Khady/ocaml-junit";
|
homepage = "https://github.com/Khady/ocaml-junit";
|
||||||
};
|
};
|
||||||
|
30
pkgs/development/ocaml-modules/ocolor/default.nix
Normal file
30
pkgs/development/ocaml-modules/ocolor/default.nix
Normal file
@ -0,0 +1,30 @@
|
|||||||
|
{ lib
|
||||||
|
, fetchFromGitHub
|
||||||
|
, buildDunePackage
|
||||||
|
, cppo
|
||||||
|
}:
|
||||||
|
|
||||||
|
buildDunePackage rec {
|
||||||
|
pname = "ocolor";
|
||||||
|
version = "1.3.1";
|
||||||
|
|
||||||
|
minimalOCamlVersion = "4.02";
|
||||||
|
|
||||||
|
src = fetchFromGitHub {
|
||||||
|
owner = "marc-chevalier";
|
||||||
|
repo = pname;
|
||||||
|
rev = "refs/tags/${version}";
|
||||||
|
sha256 = "osQTZGJp9yDoKNa6WoyhViNbRg1ukcD0Jxiu4VxqeUc=";
|
||||||
|
};
|
||||||
|
|
||||||
|
nativeBuildInputs = [
|
||||||
|
cppo
|
||||||
|
];
|
||||||
|
|
||||||
|
meta = {
|
||||||
|
description = "Print with style in your terminal using Format’s semantic tags";
|
||||||
|
license = lib.licenses.mit;
|
||||||
|
maintainers = with lib.maintainers; [ toastal ];
|
||||||
|
homepage = "https://github.com/marc-chevalier/ocolor";
|
||||||
|
};
|
||||||
|
}
|
@ -7,6 +7,9 @@
|
|||||||
, topkg
|
, topkg
|
||||||
}:
|
}:
|
||||||
|
|
||||||
|
lib.throwIfNot (lib.versionAtLeast ocaml.version "4.08")
|
||||||
|
"ptime is not available for OCaml ${ocaml.version}"
|
||||||
|
|
||||||
stdenv.mkDerivation (finalAttrs: {
|
stdenv.mkDerivation (finalAttrs: {
|
||||||
version = "1.1.0";
|
version = "1.1.0";
|
||||||
pname = "ocaml${ocaml.version}-ptime";
|
pname = "ocaml${ocaml.version}-ptime";
|
||||||
|
@ -15,13 +15,13 @@
|
|||||||
|
|
||||||
buildPecl rec {
|
buildPecl rec {
|
||||||
pname = "mongodb";
|
pname = "mongodb";
|
||||||
version = "1.16.1";
|
version = "1.16.2";
|
||||||
|
|
||||||
src = fetchFromGitHub {
|
src = fetchFromGitHub {
|
||||||
owner = "mongodb";
|
owner = "mongodb";
|
||||||
repo = "mongo-php-driver";
|
repo = "mongo-php-driver";
|
||||||
rev = version;
|
rev = version;
|
||||||
hash = "sha256-nVkue3qB6OwXKcyaYU1WmXG7pamKQtk8cbztVVkNejo=";
|
hash = "sha256-gI1Hd/i3S+lNcXaGG/hBR/cdn3S1fQ6xJ0xtRXo48rI=";
|
||||||
fetchSubmodules = true;
|
fetchSubmodules = true;
|
||||||
};
|
};
|
||||||
|
|
||||||
|
17
pkgs/development/php-packages/rrd/default.nix
Normal file
17
pkgs/development/php-packages/rrd/default.nix
Normal file
@ -0,0 +1,17 @@
|
|||||||
|
{ buildPecl, lib, pkg-config, rrdtool }:
|
||||||
|
|
||||||
|
buildPecl {
|
||||||
|
pname = "rrd";
|
||||||
|
|
||||||
|
version = "2.0.3";
|
||||||
|
hash = "sha256-pCFh5YzcioU7cs/ymJidy96CsPdkVt1ZzgKFTJK3MPc=";
|
||||||
|
|
||||||
|
nativeBuildInputs = [ pkg-config rrdtool ];
|
||||||
|
|
||||||
|
meta = {
|
||||||
|
description = "PHP bindings to RRD tool system";
|
||||||
|
license = lib.licenses.bsd0;
|
||||||
|
homepage = "https://github.com/php/pecl-processing-rrd";
|
||||||
|
maintainers = lib.teams.wdz.members;
|
||||||
|
};
|
||||||
|
}
|
@ -12,7 +12,7 @@
|
|||||||
|
|
||||||
buildPythonPackage rec {
|
buildPythonPackage rec {
|
||||||
pname = "aemet-opendata";
|
pname = "aemet-opendata";
|
||||||
version = "0.4.4";
|
version = "0.4.5";
|
||||||
format = "pyproject";
|
format = "pyproject";
|
||||||
|
|
||||||
disabled = pythonOlder "3.11";
|
disabled = pythonOlder "3.11";
|
||||||
@ -21,7 +21,7 @@ buildPythonPackage rec {
|
|||||||
owner = "Noltari";
|
owner = "Noltari";
|
||||||
repo = "AEMET-OpenData";
|
repo = "AEMET-OpenData";
|
||||||
rev = "refs/tags/${version}";
|
rev = "refs/tags/${version}";
|
||||||
hash = "sha256-Jm7fv1fNavp2GkfKPhZXYGnGuCBy6BdN9iTNYTBIyew=";
|
hash = "sha256-rjHiDn8//zjFR27RTGGWZCxKI6pDXu47DFINV8Tq7ZM=";
|
||||||
};
|
};
|
||||||
|
|
||||||
nativeBuildInputs = [
|
nativeBuildInputs = [
|
||||||
|
@ -9,7 +9,7 @@
|
|||||||
|
|
||||||
buildPythonPackage rec {
|
buildPythonPackage rec {
|
||||||
pname = "aiocomelit";
|
pname = "aiocomelit";
|
||||||
version = "0.0.6";
|
version = "0.0.8";
|
||||||
format = "pyproject";
|
format = "pyproject";
|
||||||
|
|
||||||
disabled = pythonOlder "3.10";
|
disabled = pythonOlder "3.10";
|
||||||
@ -18,7 +18,7 @@ buildPythonPackage rec {
|
|||||||
owner = "chemelli74";
|
owner = "chemelli74";
|
||||||
repo = "aiocomelit";
|
repo = "aiocomelit";
|
||||||
rev = "refs/tags/v${version}";
|
rev = "refs/tags/v${version}";
|
||||||
hash = "sha256-u6CyqDFLgnIVak0UqN4JmL8ll/li3k9EhFs7iC5oZ9U=";
|
hash = "sha256-lPwkTWkzXe5c5+KJkLHr7/cydtnDOFGniNNeOk2UXdA=";
|
||||||
};
|
};
|
||||||
|
|
||||||
postPatch = ''
|
postPatch = ''
|
||||||
|
@ -14,7 +14,7 @@
|
|||||||
|
|
||||||
buildPythonPackage rec {
|
buildPythonPackage rec {
|
||||||
pname = "aioesphomeapi";
|
pname = "aioesphomeapi";
|
||||||
version = "16.0.5";
|
version = "16.0.6";
|
||||||
format = "setuptools";
|
format = "setuptools";
|
||||||
|
|
||||||
disabled = pythonOlder "3.9";
|
disabled = pythonOlder "3.9";
|
||||||
@ -23,7 +23,7 @@ buildPythonPackage rec {
|
|||||||
owner = "esphome";
|
owner = "esphome";
|
||||||
repo = pname;
|
repo = pname;
|
||||||
rev = "refs/tags/v${version}";
|
rev = "refs/tags/v${version}";
|
||||||
hash = "sha256-SueK59CZTKkQPsHThs7k9eCEmc1GwaRIrw3oSK4E80E=";
|
hash = "sha256-BcFNxm4JpHaqKEhUTCXIrF18OMFxLbQHCQ9jfs+U0hc=";
|
||||||
};
|
};
|
||||||
|
|
||||||
propagatedBuildInputs = [
|
propagatedBuildInputs = [
|
||||||
|
@ -19,7 +19,7 @@
|
|||||||
|
|
||||||
buildPythonPackage rec {
|
buildPythonPackage rec {
|
||||||
pname = "aiohomekit";
|
pname = "aiohomekit";
|
||||||
version = "3.0.3";
|
version = "3.0.4";
|
||||||
format = "pyproject";
|
format = "pyproject";
|
||||||
|
|
||||||
disabled = pythonOlder "3.9";
|
disabled = pythonOlder "3.9";
|
||||||
@ -28,7 +28,7 @@ buildPythonPackage rec {
|
|||||||
owner = "Jc2k";
|
owner = "Jc2k";
|
||||||
repo = pname;
|
repo = pname;
|
||||||
rev = "refs/tags/${version}";
|
rev = "refs/tags/${version}";
|
||||||
hash = "sha256-6fNsiHddnsdjei0/wqx5ifWhM3bALlYG5Gli69+FmnM=";
|
hash = "sha256-ZcgV+IkdSVKMd2GfnXqS6MibWT96YKVTJgor0zG+a/k=";
|
||||||
};
|
};
|
||||||
|
|
||||||
nativeBuildInputs = [
|
nativeBuildInputs = [
|
||||||
|
Some files were not shown because too many files have changed in this diff Show More
Loading…
Reference in New Issue
Block a user