mirror of
https://github.com/SebastianWendel/nixpkgs.git
synced 2024-09-20 20:39:04 +02:00
Merge master into staging-next
This commit is contained in:
commit
1b0315af15
|
@ -4465,6 +4465,16 @@
|
||||||
githubId = 1621335;
|
githubId = 1621335;
|
||||||
name = "Andrew Trachenko";
|
name = "Andrew Trachenko";
|
||||||
};
|
};
|
||||||
|
gordias = {
|
||||||
|
name = "Gordias";
|
||||||
|
email = "gordias@disroot.org";
|
||||||
|
github = "NotGordias";
|
||||||
|
githubId = 94724133;
|
||||||
|
keys = [{
|
||||||
|
longkeyid = "ed25519/0x5D47284830FAA4FA";
|
||||||
|
fingerprint = "C006 B8A0 0618 F3B6 E0E4 2ECD 5D47 2848 30FA A4FA";
|
||||||
|
}];
|
||||||
|
};
|
||||||
govanify = {
|
govanify = {
|
||||||
name = "Gauvain 'GovanifY' Roussel-Tarbouriech";
|
name = "Gauvain 'GovanifY' Roussel-Tarbouriech";
|
||||||
email = "gauvain@govanify.com";
|
email = "gauvain@govanify.com";
|
||||||
|
|
|
@ -32,10 +32,14 @@
|
||||||
</listitem>
|
</listitem>
|
||||||
<listitem>
|
<listitem>
|
||||||
<para>
|
<para>
|
||||||
Mattermost has been updated to version 6.2. Migrations may
|
Mattermost has been updated to extended support release 6.3,
|
||||||
take a while, see the
|
as the previously packaged extended support release 5.37 is
|
||||||
<link xlink:href="https://docs.mattermost.com/install/self-managed-changelog.html#release-v6.2-feature-release">upgrade
|
<link xlink:href="https://docs.mattermost.com/upgrade/extended-support-release.html">reaching
|
||||||
notes</link>.
|
its end of life</link>. Migrations may take a while, see the
|
||||||
|
<link xlink:href="https://docs.mattermost.com/install/self-managed-changelog.html#release-v6-3-extended-support-release">changelog</link>
|
||||||
|
and
|
||||||
|
<link xlink:href="https://docs.mattermost.com/upgrade/important-upgrade-notes.html">important
|
||||||
|
upgrade notes</link>.
|
||||||
</para>
|
</para>
|
||||||
</listitem>
|
</listitem>
|
||||||
</itemizedlist>
|
</itemizedlist>
|
||||||
|
@ -400,6 +404,23 @@
|
||||||
<literal>reloadIfChanged</literal> of the units.
|
<literal>reloadIfChanged</literal> of the units.
|
||||||
</para>
|
</para>
|
||||||
</listitem>
|
</listitem>
|
||||||
|
<listitem>
|
||||||
|
<para>
|
||||||
|
The <literal>services.bookstack.cacheDir</literal> option has
|
||||||
|
been removed, since the cache directory is now handled by
|
||||||
|
systemd.
|
||||||
|
</para>
|
||||||
|
</listitem>
|
||||||
|
<listitem>
|
||||||
|
<para>
|
||||||
|
The <literal>services.bookstack.extraConfig</literal> option
|
||||||
|
has been replaced by
|
||||||
|
<literal>services.bookstack.config</literal> which implements
|
||||||
|
a
|
||||||
|
<link xlink:href="https://github.com/NixOS/rfcs/blob/master/rfcs/0042-config-option.md">settings-style</link>
|
||||||
|
configuration.
|
||||||
|
</para>
|
||||||
|
</listitem>
|
||||||
</itemizedlist>
|
</itemizedlist>
|
||||||
</section>
|
</section>
|
||||||
<section xml:id="sec-release-22.05-notable-changes">
|
<section xml:id="sec-release-22.05-notable-changes">
|
||||||
|
@ -552,6 +573,13 @@
|
||||||
<literal>programs.starship.settings</literal>.
|
<literal>programs.starship.settings</literal>.
|
||||||
</para>
|
</para>
|
||||||
</listitem>
|
</listitem>
|
||||||
|
<listitem>
|
||||||
|
<para>
|
||||||
|
<literal>services.mattermost.plugins</literal> has been added
|
||||||
|
to allow the declarative installation of Mattermost plugins.
|
||||||
|
Plugins are automatically repackaged using autoPatchelf.
|
||||||
|
</para>
|
||||||
|
</listitem>
|
||||||
<listitem>
|
<listitem>
|
||||||
<para>
|
<para>
|
||||||
The <literal>zrepl</literal> package has been updated from
|
The <literal>zrepl</literal> package has been updated from
|
||||||
|
@ -577,6 +605,17 @@
|
||||||
</listitem>
|
</listitem>
|
||||||
</itemizedlist>
|
</itemizedlist>
|
||||||
</listitem>
|
</listitem>
|
||||||
|
<listitem>
|
||||||
|
<para>
|
||||||
|
Renamed option
|
||||||
|
<literal>services.openssh.challengeResponseAuthentication</literal>
|
||||||
|
to
|
||||||
|
<literal>services.openssh.kbdInteractiveAuthentication</literal>.
|
||||||
|
Reason is that the old name has been deprecated upstream.
|
||||||
|
Using the old option name will still work, but produce a
|
||||||
|
warning.
|
||||||
|
</para>
|
||||||
|
</listitem>
|
||||||
</itemizedlist>
|
</itemizedlist>
|
||||||
</section>
|
</section>
|
||||||
</section>
|
</section>
|
||||||
|
|
|
@ -13,8 +13,9 @@ In addition to numerous new and upgraded packages, this release has the followin
|
||||||
|
|
||||||
- PHP 8.1 is now available
|
- PHP 8.1 is now available
|
||||||
|
|
||||||
- Mattermost has been updated to version 6.2. Migrations may take a while,
|
- Mattermost has been updated to extended support release 6.3, as the previously packaged extended support release 5.37 is [reaching its end of life](https://docs.mattermost.com/upgrade/extended-support-release.html).
|
||||||
see the [upgrade notes](https://docs.mattermost.com/install/self-managed-changelog.html#release-v6.2-feature-release).
|
Migrations may take a while, see the [changelog](https://docs.mattermost.com/install/self-managed-changelog.html#release-v6-3-extended-support-release)
|
||||||
|
and [important upgrade notes](https://docs.mattermost.com/upgrade/important-upgrade-notes.html).
|
||||||
|
|
||||||
## New Services {#sec-release-22.05-new-services}
|
## New Services {#sec-release-22.05-new-services}
|
||||||
|
|
||||||
|
@ -127,6 +128,14 @@ In addition to numerous new and upgraded packages, this release has the followin
|
||||||
|
|
||||||
- The interface that allows activation scripts to restart units has been reworked. Restarting and reloading is now done by a single file `/run/nixos/activation-restart-list` that honors `restartIfChanged` and `reloadIfChanged` of the units.
|
- The interface that allows activation scripts to restart units has been reworked. Restarting and reloading is now done by a single file `/run/nixos/activation-restart-list` that honors `restartIfChanged` and `reloadIfChanged` of the units.
|
||||||
|
|
||||||
|
- The `services.bookstack.cacheDir` option has been removed, since the
|
||||||
|
cache directory is now handled by systemd.
|
||||||
|
|
||||||
|
- The `services.bookstack.extraConfig` option has been replaced by
|
||||||
|
`services.bookstack.config` which implements a
|
||||||
|
[settings-style](https://github.com/NixOS/rfcs/blob/master/rfcs/0042-config-option.md)
|
||||||
|
configuration.
|
||||||
|
|
||||||
## Other Notable Changes {#sec-release-22.05-notable-changes}
|
## Other Notable Changes {#sec-release-22.05-notable-changes}
|
||||||
|
|
||||||
- The option [services.redis.servers](#opt-services.redis.servers) was added
|
- The option [services.redis.servers](#opt-services.redis.servers) was added
|
||||||
|
@ -192,6 +201,13 @@ In addition to numerous new and upgraded packages, this release has the followin
|
||||||
- A new module was added for the [Starship](https://starship.rs/) shell prompt,
|
- A new module was added for the [Starship](https://starship.rs/) shell prompt,
|
||||||
providing the options `programs.starship.enable` and `programs.starship.settings`.
|
providing the options `programs.starship.enable` and `programs.starship.settings`.
|
||||||
|
|
||||||
|
- `services.mattermost.plugins` has been added to allow the declarative installation of Mattermost plugins.
|
||||||
|
Plugins are automatically repackaged using autoPatchelf.
|
||||||
|
|
||||||
- The `zrepl` package has been updated from 0.4.0 to 0.5:
|
- The `zrepl` package has been updated from 0.4.0 to 0.5:
|
||||||
* The RPC protocol version was bumped; all zrepl daemons in a setup must be updated and restarted before replication can resume.
|
* The RPC protocol version was bumped; all zrepl daemons in a setup must be updated and restarted before replication can resume.
|
||||||
* A bug involving encrypt-on-receive has been fixed. Read the [zrepl documentation](https://zrepl.github.io/configuration/sendrecvoptions.html#job-recv-options-placeholder) and check the output of `zfs get -r encryption,zrepl:placeholder PATH_TO_ROOTFS` on the receiver.
|
* A bug involving encrypt-on-receive has been fixed. Read the [zrepl documentation](https://zrepl.github.io/configuration/sendrecvoptions.html#job-recv-options-placeholder) and check the output of `zfs get -r encryption,zrepl:placeholder PATH_TO_ROOTFS` on the receiver.
|
||||||
|
|
||||||
|
- Renamed option `services.openssh.challengeResponseAuthentication` to `services.openssh.kbdInteractiveAuthentication`.
|
||||||
|
Reason is that the old name has been deprecated upstream.
|
||||||
|
Using the old option name will still work, but produce a warning.
|
||||||
|
|
|
@ -22,8 +22,15 @@ let
|
||||||
'';
|
'';
|
||||||
};
|
};
|
||||||
|
|
||||||
scudo = {
|
scudo = let
|
||||||
libPath = "${pkgs.llvmPackages_latest.compiler-rt}/lib/linux/libclang_rt.scudo-x86_64.so";
|
platformMap = {
|
||||||
|
aarch64-linux = "aarch64";
|
||||||
|
x86_64-linux = "x86_64";
|
||||||
|
};
|
||||||
|
|
||||||
|
systemPlatform = platformMap.${pkgs.stdenv.hostPlatform.system} or (throw "scudo not supported on ${pkgs.stdenv.hostPlatform.system}");
|
||||||
|
in {
|
||||||
|
libPath = "${pkgs.llvmPackages_latest.compiler-rt}/lib/linux/libclang_rt.scudo-${systemPlatform}.so";
|
||||||
description = ''
|
description = ''
|
||||||
A user-mode allocator based on LLVM Sanitizer’s CombinedAllocator,
|
A user-mode allocator based on LLVM Sanitizer’s CombinedAllocator,
|
||||||
which aims at providing additional mitigations against heap based
|
which aims at providing additional mitigations against heap based
|
||||||
|
|
|
@ -968,6 +968,7 @@
|
||||||
./services/security/vault.nix
|
./services/security/vault.nix
|
||||||
./services/security/vaultwarden/default.nix
|
./services/security/vaultwarden/default.nix
|
||||||
./services/security/yubikey-agent.nix
|
./services/security/yubikey-agent.nix
|
||||||
|
./services/system/cachix-agent/default.nix
|
||||||
./services/system/cloud-init.nix
|
./services/system/cloud-init.nix
|
||||||
./services/system/dbus.nix
|
./services/system/dbus.nix
|
||||||
./services/system/earlyoom.nix
|
./services/system/earlyoom.nix
|
||||||
|
|
|
@ -99,7 +99,18 @@ let
|
||||||
BORG_REPO = cfg.repo;
|
BORG_REPO = cfg.repo;
|
||||||
inherit (cfg) extraArgs extraInitArgs extraCreateArgs extraPruneArgs;
|
inherit (cfg) extraArgs extraInitArgs extraCreateArgs extraPruneArgs;
|
||||||
} // (mkPassEnv cfg) // cfg.environment;
|
} // (mkPassEnv cfg) // cfg.environment;
|
||||||
inherit (cfg) startAt;
|
};
|
||||||
|
|
||||||
|
mkBackupTimers = name: cfg:
|
||||||
|
nameValuePair "borgbackup-job-${name}" {
|
||||||
|
description = "BorgBackup job ${name} timer";
|
||||||
|
wantedBy = [ "timers.target" ];
|
||||||
|
timerConfig = {
|
||||||
|
Persistent = cfg.persistentTimer;
|
||||||
|
OnCalendar = cfg.startAt;
|
||||||
|
};
|
||||||
|
# if remote-backup wait for network
|
||||||
|
after = optional (cfg.persistentTimer && !isLocalPath cfg.repo) "network-online.target";
|
||||||
};
|
};
|
||||||
|
|
||||||
# utility function around makeWrapper
|
# utility function around makeWrapper
|
||||||
|
@ -321,6 +332,19 @@ in {
|
||||||
'';
|
'';
|
||||||
};
|
};
|
||||||
|
|
||||||
|
persistentTimer = mkOption {
|
||||||
|
default = false;
|
||||||
|
type = types.bool;
|
||||||
|
example = true;
|
||||||
|
description = literalDocBook ''
|
||||||
|
Set the <literal>persistentTimer</literal> option for the
|
||||||
|
<citerefentry><refentrytitle>systemd.timer</refentrytitle>
|
||||||
|
<manvolnum>5</manvolnum></citerefentry>
|
||||||
|
which triggers the backup immediately if the last trigger
|
||||||
|
was missed (e.g. if the system was powered down).
|
||||||
|
'';
|
||||||
|
};
|
||||||
|
|
||||||
user = mkOption {
|
user = mkOption {
|
||||||
type = types.str;
|
type = types.str;
|
||||||
description = ''
|
description = ''
|
||||||
|
@ -695,6 +719,10 @@ in {
|
||||||
# A repo named "foo" is mapped to systemd.services.borgbackup-repo-foo
|
# A repo named "foo" is mapped to systemd.services.borgbackup-repo-foo
|
||||||
// mapAttrs' mkRepoService repos;
|
// mapAttrs' mkRepoService repos;
|
||||||
|
|
||||||
|
# A job named "foo" is mapped to systemd.timers.borgbackup-job-foo
|
||||||
|
# only generate the timer if interval (startAt) is set
|
||||||
|
systemd.timers = mapAttrs' mkBackupTimers (filterAttrs (_: cfg: cfg.startAt != []) jobs);
|
||||||
|
|
||||||
users = mkMerge (mapAttrsToList mkUsersConfig repos);
|
users = mkMerge (mapAttrsToList mkUsersConfig repos);
|
||||||
|
|
||||||
environment.systemPackages = with pkgs; [ borgbackup ] ++ (mapAttrsToList mkBorgWrapper jobs);
|
environment.systemPackages = with pkgs; [ borgbackup ] ++ (mapAttrsToList mkBorgWrapper jobs);
|
||||||
|
|
|
@ -81,6 +81,7 @@ in
|
||||||
imports = [
|
imports = [
|
||||||
(mkAliasOptionModule [ "services" "sshd" "enable" ] [ "services" "openssh" "enable" ])
|
(mkAliasOptionModule [ "services" "sshd" "enable" ] [ "services" "openssh" "enable" ])
|
||||||
(mkAliasOptionModule [ "services" "openssh" "knownHosts" ] [ "programs" "ssh" "knownHosts" ])
|
(mkAliasOptionModule [ "services" "openssh" "knownHosts" ] [ "programs" "ssh" "knownHosts" ])
|
||||||
|
(mkRenamedOptionModule [ "services" "openssh" "challengeResponseAuthentication" ] [ "services" "openssh" "kbdInteractiveAuthentication" ])
|
||||||
];
|
];
|
||||||
|
|
||||||
###### interface
|
###### interface
|
||||||
|
@ -218,11 +219,11 @@ in
|
||||||
'';
|
'';
|
||||||
};
|
};
|
||||||
|
|
||||||
challengeResponseAuthentication = mkOption {
|
kbdInteractiveAuthentication = mkOption {
|
||||||
type = types.bool;
|
type = types.bool;
|
||||||
default = true;
|
default = true;
|
||||||
description = ''
|
description = ''
|
||||||
Specifies whether challenge/response authentication is allowed.
|
Specifies whether keyboard-interactive authentication is allowed.
|
||||||
'';
|
'';
|
||||||
};
|
};
|
||||||
|
|
||||||
|
@ -534,7 +535,7 @@ in
|
||||||
PermitRootLogin ${cfg.permitRootLogin}
|
PermitRootLogin ${cfg.permitRootLogin}
|
||||||
GatewayPorts ${cfg.gatewayPorts}
|
GatewayPorts ${cfg.gatewayPorts}
|
||||||
PasswordAuthentication ${if cfg.passwordAuthentication then "yes" else "no"}
|
PasswordAuthentication ${if cfg.passwordAuthentication then "yes" else "no"}
|
||||||
ChallengeResponseAuthentication ${if cfg.challengeResponseAuthentication then "yes" else "no"}
|
KbdInteractiveAuthentication ${if cfg.kbdInteractiveAuthentication then "yes" else "no"}
|
||||||
|
|
||||||
PrintMotd no # handled by pam_motd
|
PrintMotd no # handled by pam_motd
|
||||||
|
|
||||||
|
|
|
@ -468,7 +468,7 @@ in {
|
||||||
default = false;
|
default = false;
|
||||||
example = true;
|
example = true;
|
||||||
description = ''
|
description = ''
|
||||||
Whether to open the default ports in the firewall: TCP 22000 for transfers
|
Whether to open the default ports in the firewall: TCP/UDP 22000 for transfers
|
||||||
and UDP 21027 for discovery.
|
and UDP 21027 for discovery.
|
||||||
|
|
||||||
If multiple users are running Syncthing on this machine, you will need
|
If multiple users are running Syncthing on this machine, you will need
|
||||||
|
@ -504,7 +504,7 @@ in {
|
||||||
|
|
||||||
networking.firewall = mkIf cfg.openDefaultPorts {
|
networking.firewall = mkIf cfg.openDefaultPorts {
|
||||||
allowedTCPPorts = [ 22000 ];
|
allowedTCPPorts = [ 22000 ];
|
||||||
allowedUDPPorts = [ 21027 ];
|
allowedUDPPorts = [ 21027 22000 ];
|
||||||
};
|
};
|
||||||
|
|
||||||
systemd.packages = [ pkgs.syncthing ];
|
systemd.packages = [ pkgs.syncthing ];
|
||||||
|
|
57
nixos/modules/services/system/cachix-agent/default.nix
Normal file
57
nixos/modules/services/system/cachix-agent/default.nix
Normal file
|
@ -0,0 +1,57 @@
|
||||||
|
{ config, pkgs, lib, ... }:
|
||||||
|
|
||||||
|
with lib;
|
||||||
|
|
||||||
|
let
|
||||||
|
cfg = config.services.cachix-agent;
|
||||||
|
in {
|
||||||
|
meta.maintainers = [ lib.maintainers.domenkozar ];
|
||||||
|
|
||||||
|
options.services.cachix-agent = {
|
||||||
|
enable = mkEnableOption "Cachix Deploy Agent: https://docs.cachix.org/deploy/";
|
||||||
|
|
||||||
|
name = mkOption {
|
||||||
|
type = types.str;
|
||||||
|
description = "Agent name, usually same as the hostname";
|
||||||
|
default = config.networking.hostName;
|
||||||
|
defaultText = "config.networking.hostName";
|
||||||
|
};
|
||||||
|
|
||||||
|
profile = mkOption {
|
||||||
|
type = types.nullOr types.str;
|
||||||
|
default = null;
|
||||||
|
description = "Profile name, defaults to 'system' (NixOS).";
|
||||||
|
};
|
||||||
|
|
||||||
|
package = mkOption {
|
||||||
|
type = types.package;
|
||||||
|
default = pkgs.cachix;
|
||||||
|
defaultText = literalExpression "pkgs.cachix";
|
||||||
|
description = "Cachix Client package to use.";
|
||||||
|
};
|
||||||
|
|
||||||
|
credentialsFile = mkOption {
|
||||||
|
type = types.path;
|
||||||
|
default = "/etc/cachix-agent.token";
|
||||||
|
description = ''
|
||||||
|
Required file that needs to contain CACHIX_AGENT_TOKEN=...
|
||||||
|
'';
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
config = mkIf cfg.enable {
|
||||||
|
systemd.services.cachix-agent = {
|
||||||
|
description = "Cachix Deploy Agent";
|
||||||
|
after = ["network-online.target"];
|
||||||
|
path = [ config.nix.package ];
|
||||||
|
wantedBy = [ "multi-user.target" ];
|
||||||
|
# don't restart while changing
|
||||||
|
reloadIfChanged = true;
|
||||||
|
serviceConfig = {
|
||||||
|
Restart = "on-failure";
|
||||||
|
EnvironmentFile = cfg.credentialsFile;
|
||||||
|
ExecStart = "${cfg.package}/bin/cachix deploy agent ${cfg.name} ${if cfg.profile != null then profile else ""}";
|
||||||
|
};
|
||||||
|
};
|
||||||
|
};
|
||||||
|
}
|
|
@ -24,8 +24,14 @@ let
|
||||||
$sudo ${pkgs.php}/bin/php artisan $*
|
$sudo ${pkgs.php}/bin/php artisan $*
|
||||||
'';
|
'';
|
||||||
|
|
||||||
|
tlsEnabled = cfg.nginx.addSSL || cfg.nginx.forceSSL || cfg.nginx.onlySSL || cfg.nginx.enableACME;
|
||||||
|
|
||||||
in {
|
in {
|
||||||
|
imports = [
|
||||||
|
(mkRemovedOptionModule [ "services" "bookstack" "extraConfig" ] "Use services.bookstack.config instead.")
|
||||||
|
(mkRemovedOptionModule [ "services" "bookstack" "cacheDir" ] "The cache directory is now handled automatically.")
|
||||||
|
];
|
||||||
|
|
||||||
options.services.bookstack = {
|
options.services.bookstack = {
|
||||||
|
|
||||||
enable = mkEnableOption "BookStack";
|
enable = mkEnableOption "BookStack";
|
||||||
|
@ -44,28 +50,38 @@ in {
|
||||||
|
|
||||||
appKeyFile = mkOption {
|
appKeyFile = mkOption {
|
||||||
description = ''
|
description = ''
|
||||||
A file containing the AppKey.
|
A file containing the Laravel APP_KEY - a 32 character long,
|
||||||
Used for encryption where needed. Can be generated with <code>head -c 32 /dev/urandom| base64</code> and must be prefixed with <literal>base64:</literal>.
|
base64 encoded key used for encryption where needed. Can be
|
||||||
|
generated with <code>head -c 32 /dev/urandom | base64</code>.
|
||||||
'';
|
'';
|
||||||
example = "/run/keys/bookstack-appkey";
|
example = "/run/keys/bookstack-appkey";
|
||||||
type = types.path;
|
type = types.path;
|
||||||
};
|
};
|
||||||
|
|
||||||
|
hostname = lib.mkOption {
|
||||||
|
type = lib.types.str;
|
||||||
|
default = if config.networking.domain != null then
|
||||||
|
config.networking.fqdn
|
||||||
|
else
|
||||||
|
config.networking.hostName;
|
||||||
|
defaultText = lib.literalExpression "config.networking.fqdn";
|
||||||
|
example = "bookstack.example.com";
|
||||||
|
description = ''
|
||||||
|
The hostname to serve BookStack on.
|
||||||
|
'';
|
||||||
|
};
|
||||||
|
|
||||||
appURL = mkOption {
|
appURL = mkOption {
|
||||||
description = ''
|
description = ''
|
||||||
The root URL that you want to host BookStack on. All URLs in BookStack will be generated using this value.
|
The root URL that you want to host BookStack on. All URLs in BookStack will be generated using this value.
|
||||||
If you change this in the future you may need to run a command to update stored URLs in the database. Command example: <code>php artisan bookstack:update-url https://old.example.com https://new.example.com</code>
|
If you change this in the future you may need to run a command to update stored URLs in the database. Command example: <code>php artisan bookstack:update-url https://old.example.com https://new.example.com</code>
|
||||||
'';
|
'';
|
||||||
|
default = "http${lib.optionalString tlsEnabled "s"}://${cfg.hostname}";
|
||||||
|
defaultText = ''http''${lib.optionalString tlsEnabled "s"}://''${cfg.hostname}'';
|
||||||
example = "https://example.com";
|
example = "https://example.com";
|
||||||
type = types.str;
|
type = types.str;
|
||||||
};
|
};
|
||||||
|
|
||||||
cacheDir = mkOption {
|
|
||||||
description = "BookStack cache directory";
|
|
||||||
default = "/var/cache/bookstack";
|
|
||||||
type = types.path;
|
|
||||||
};
|
|
||||||
|
|
||||||
dataDir = mkOption {
|
dataDir = mkOption {
|
||||||
description = "BookStack data directory";
|
description = "BookStack data directory";
|
||||||
default = "/var/lib/bookstack";
|
default = "/var/lib/bookstack";
|
||||||
|
@ -202,16 +218,59 @@ in {
|
||||||
'';
|
'';
|
||||||
};
|
};
|
||||||
|
|
||||||
extraConfig = mkOption {
|
config = mkOption {
|
||||||
type = types.nullOr types.lines;
|
type = with types;
|
||||||
default = null;
|
attrsOf
|
||||||
example = ''
|
(nullOr
|
||||||
ALLOWED_IFRAME_HOSTS="https://example.com"
|
(either
|
||||||
WKHTMLTOPDF=/home/user/bins/wkhtmltopdf
|
(oneOf [
|
||||||
|
bool
|
||||||
|
int
|
||||||
|
port
|
||||||
|
path
|
||||||
|
str
|
||||||
|
])
|
||||||
|
(submodule {
|
||||||
|
options = {
|
||||||
|
_secret = mkOption {
|
||||||
|
type = nullOr str;
|
||||||
|
description = ''
|
||||||
|
The path to a file containing the value the
|
||||||
|
option should be set to in the final
|
||||||
|
configuration file.
|
||||||
|
'';
|
||||||
|
};
|
||||||
|
};
|
||||||
|
})));
|
||||||
|
default = {};
|
||||||
|
example = literalExpression ''
|
||||||
|
{
|
||||||
|
ALLOWED_IFRAME_HOSTS = "https://example.com";
|
||||||
|
WKHTMLTOPDF = "/home/user/bins/wkhtmltopdf";
|
||||||
|
AUTH_METHOD = "oidc";
|
||||||
|
OIDC_NAME = "MyLogin";
|
||||||
|
OIDC_DISPLAY_NAME_CLAIMS = "name";
|
||||||
|
OIDC_CLIENT_ID = "bookstack";
|
||||||
|
OIDC_CLIENT_SECRET = {_secret = "/run/keys/oidc_secret"};
|
||||||
|
OIDC_ISSUER = "https://keycloak.example.com/auth/realms/My%20Realm";
|
||||||
|
OIDC_ISSUER_DISCOVER = true;
|
||||||
|
}
|
||||||
'';
|
'';
|
||||||
description = ''
|
description = ''
|
||||||
Lines to be appended verbatim to the BookStack configuration.
|
BookStack configuration options to set in the
|
||||||
Refer to <link xlink:href="https://www.bookstackapp.com/docs/"/> for details on supported values.
|
<filename>.env</filename> file.
|
||||||
|
|
||||||
|
Refer to <link xlink:href="https://www.bookstackapp.com/docs/"/>
|
||||||
|
for details on supported values.
|
||||||
|
|
||||||
|
Settings containing secret data should be set to an attribute
|
||||||
|
set containing the attribute <literal>_secret</literal> - a
|
||||||
|
string pointing to a file containing the value the option
|
||||||
|
should be set to. See the example to get a better picture of
|
||||||
|
this: in the resulting <filename>.env</filename> file, the
|
||||||
|
<literal>OIDC_CLIENT_SECRET</literal> key will be set to the
|
||||||
|
contents of the <filename>/run/keys/oidc_secret</filename>
|
||||||
|
file.
|
||||||
'';
|
'';
|
||||||
};
|
};
|
||||||
|
|
||||||
|
@ -228,6 +287,30 @@ in {
|
||||||
}
|
}
|
||||||
];
|
];
|
||||||
|
|
||||||
|
services.bookstack.config = {
|
||||||
|
APP_KEY._secret = cfg.appKeyFile;
|
||||||
|
APP_URL = cfg.appURL;
|
||||||
|
DB_HOST = db.host;
|
||||||
|
DB_PORT = db.port;
|
||||||
|
DB_DATABASE = db.name;
|
||||||
|
DB_USERNAME = db.user;
|
||||||
|
MAIL_DRIVER = mail.driver;
|
||||||
|
MAIL_FROM_NAME = mail.fromName;
|
||||||
|
MAIL_FROM = mail.from;
|
||||||
|
MAIL_HOST = mail.host;
|
||||||
|
MAIL_PORT = mail.port;
|
||||||
|
MAIL_USERNAME = mail.user;
|
||||||
|
MAIL_ENCRYPTION = mail.encryption;
|
||||||
|
DB_PASSWORD._secret = db.passwordFile;
|
||||||
|
MAIL_PASSWORD._secret = mail.passwordFile;
|
||||||
|
APP_SERVICES_CACHE = "/run/bookstack/cache/services.php";
|
||||||
|
APP_PACKAGES_CACHE = "/run/bookstack/cache/packages.php";
|
||||||
|
APP_CONFIG_CACHE = "/run/bookstack/cache/config.php";
|
||||||
|
APP_ROUTES_CACHE = "/run/bookstack/cache/routes-v7.php";
|
||||||
|
APP_EVENTS_CACHE = "/run/bookstack/cache/events.php";
|
||||||
|
SESSION_SECURE_COOKIE = tlsEnabled;
|
||||||
|
};
|
||||||
|
|
||||||
environment.systemPackages = [ artisan ];
|
environment.systemPackages = [ artisan ];
|
||||||
|
|
||||||
services.mysql = mkIf db.createLocally {
|
services.mysql = mkIf db.createLocally {
|
||||||
|
@ -258,24 +341,19 @@ in {
|
||||||
|
|
||||||
services.nginx = {
|
services.nginx = {
|
||||||
enable = mkDefault true;
|
enable = mkDefault true;
|
||||||
virtualHosts.bookstack = mkMerge [ cfg.nginx {
|
recommendedTlsSettings = true;
|
||||||
|
recommendedOptimisation = true;
|
||||||
|
recommendedGzipSettings = true;
|
||||||
|
virtualHosts.${cfg.hostname} = mkMerge [ cfg.nginx {
|
||||||
root = mkForce "${bookstack}/public";
|
root = mkForce "${bookstack}/public";
|
||||||
extraConfig = optionalString (cfg.nginx.addSSL || cfg.nginx.forceSSL || cfg.nginx.onlySSL || cfg.nginx.enableACME) "fastcgi_param HTTPS on;";
|
|
||||||
locations = {
|
locations = {
|
||||||
"/" = {
|
"/" = {
|
||||||
index = "index.php";
|
index = "index.php";
|
||||||
extraConfig = ''try_files $uri $uri/ /index.php?$query_string;'';
|
tryFiles = "$uri $uri/ /index.php?$query_string";
|
||||||
};
|
|
||||||
"~ \.php$" = {
|
|
||||||
extraConfig = ''
|
|
||||||
try_files $uri $uri/ /index.php?$query_string;
|
|
||||||
include ${pkgs.nginx}/conf/fastcgi_params;
|
|
||||||
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
|
|
||||||
fastcgi_param REDIRECT_STATUS 200;
|
|
||||||
fastcgi_pass unix:${config.services.phpfpm.pools."bookstack".socket};
|
|
||||||
${optionalString (cfg.nginx.addSSL || cfg.nginx.forceSSL || cfg.nginx.onlySSL || cfg.nginx.enableACME) "fastcgi_param HTTPS on;"}
|
|
||||||
'';
|
|
||||||
};
|
};
|
||||||
|
"~ \.php$".extraConfig = ''
|
||||||
|
fastcgi_pass unix:${config.services.phpfpm.pools."bookstack".socket};
|
||||||
|
'';
|
||||||
"~ \.(js|css|gif|png|ico|jpg|jpeg)$" = {
|
"~ \.(js|css|gif|png|ico|jpg|jpeg)$" = {
|
||||||
extraConfig = "expires 365d;";
|
extraConfig = "expires 365d;";
|
||||||
};
|
};
|
||||||
|
@ -290,50 +368,54 @@ in {
|
||||||
wantedBy = [ "multi-user.target" ];
|
wantedBy = [ "multi-user.target" ];
|
||||||
serviceConfig = {
|
serviceConfig = {
|
||||||
Type = "oneshot";
|
Type = "oneshot";
|
||||||
|
RemainAfterExit = true;
|
||||||
User = user;
|
User = user;
|
||||||
WorkingDirectory = "${bookstack}";
|
WorkingDirectory = "${bookstack}";
|
||||||
|
RuntimeDirectory = "bookstack/cache";
|
||||||
|
RuntimeDirectoryMode = 0700;
|
||||||
};
|
};
|
||||||
script = ''
|
path = [ pkgs.replace-secret ];
|
||||||
|
script =
|
||||||
|
let
|
||||||
|
isSecret = v: isAttrs v && v ? _secret && isString v._secret;
|
||||||
|
bookstackEnvVars = lib.generators.toKeyValue {
|
||||||
|
mkKeyValue = lib.flip lib.generators.mkKeyValueDefault "=" {
|
||||||
|
mkValueString = v: with builtins;
|
||||||
|
if isInt v then toString v
|
||||||
|
else if isString v then v
|
||||||
|
else if true == v then "true"
|
||||||
|
else if false == v then "false"
|
||||||
|
else if isSecret v then v._secret
|
||||||
|
else throw "unsupported type ${typeOf v}: ${(lib.generators.toPretty {}) v}";
|
||||||
|
};
|
||||||
|
};
|
||||||
|
secretPaths = lib.mapAttrsToList (_: v: v._secret) (lib.filterAttrs (_: isSecret) cfg.config);
|
||||||
|
mkSecretReplacement = file: ''
|
||||||
|
replace-secret ${escapeShellArgs [ file file "${cfg.dataDir}/.env" ]}
|
||||||
|
'';
|
||||||
|
secretReplacements = lib.concatMapStrings mkSecretReplacement secretPaths;
|
||||||
|
filteredConfig = lib.converge (lib.filterAttrsRecursive (_: v: ! elem v [ {} null ])) cfg.config;
|
||||||
|
bookstackEnv = pkgs.writeText "bookstack.env" (bookstackEnvVars filteredConfig);
|
||||||
|
in ''
|
||||||
|
# error handling
|
||||||
|
set -euo pipefail
|
||||||
|
|
||||||
# set permissions
|
# set permissions
|
||||||
umask 077
|
umask 077
|
||||||
|
|
||||||
# create .env file
|
# create .env file
|
||||||
echo "
|
install -T -m 0600 -o ${user} ${bookstackEnv} "${cfg.dataDir}/.env"
|
||||||
APP_KEY=base64:$(head -n1 ${cfg.appKeyFile})
|
${secretReplacements}
|
||||||
APP_URL=${cfg.appURL}
|
if ! grep 'APP_KEY=base64:' "${cfg.dataDir}/.env" >/dev/null; then
|
||||||
DB_HOST=${db.host}
|
sed -i 's/APP_KEY=/APP_KEY=base64:/' "${cfg.dataDir}/.env"
|
||||||
DB_PORT=${toString db.port}
|
fi
|
||||||
DB_DATABASE=${db.name}
|
|
||||||
DB_USERNAME=${db.user}
|
|
||||||
MAIL_DRIVER=${mail.driver}
|
|
||||||
MAIL_FROM_NAME=\"${mail.fromName}\"
|
|
||||||
MAIL_FROM=${mail.from}
|
|
||||||
MAIL_HOST=${mail.host}
|
|
||||||
MAIL_PORT=${toString mail.port}
|
|
||||||
${optionalString (mail.user != null) "MAIL_USERNAME=${mail.user};"}
|
|
||||||
${optionalString (mail.encryption != null) "MAIL_ENCRYPTION=${mail.encryption};"}
|
|
||||||
${optionalString (db.passwordFile != null) "DB_PASSWORD=$(head -n1 ${db.passwordFile})"}
|
|
||||||
${optionalString (mail.passwordFile != null) "MAIL_PASSWORD=$(head -n1 ${mail.passwordFile})"}
|
|
||||||
APP_SERVICES_CACHE=${cfg.cacheDir}/services.php
|
|
||||||
APP_PACKAGES_CACHE=${cfg.cacheDir}/packages.php
|
|
||||||
APP_CONFIG_CACHE=${cfg.cacheDir}/config.php
|
|
||||||
APP_ROUTES_CACHE=${cfg.cacheDir}/routes-v7.php
|
|
||||||
APP_EVENTS_CACHE=${cfg.cacheDir}/events.php
|
|
||||||
${optionalString (cfg.nginx.addSSL || cfg.nginx.forceSSL || cfg.nginx.onlySSL || cfg.nginx.enableACME) "SESSION_SECURE_COOKIE=true"}
|
|
||||||
${toString cfg.extraConfig}
|
|
||||||
" > "${cfg.dataDir}/.env"
|
|
||||||
|
|
||||||
# migrate db
|
# migrate db
|
||||||
${pkgs.php}/bin/php artisan migrate --force
|
${pkgs.php}/bin/php artisan migrate --force
|
||||||
|
|
||||||
# clear & create caches (needed in case of update)
|
|
||||||
${pkgs.php}/bin/php artisan cache:clear
|
|
||||||
${pkgs.php}/bin/php artisan config:clear
|
|
||||||
${pkgs.php}/bin/php artisan view:clear
|
|
||||||
'';
|
'';
|
||||||
};
|
};
|
||||||
|
|
||||||
systemd.tmpfiles.rules = [
|
systemd.tmpfiles.rules = [
|
||||||
"d ${cfg.cacheDir} 0700 ${user} ${group} - -"
|
|
||||||
"d ${cfg.dataDir} 0710 ${user} ${group} - -"
|
"d ${cfg.dataDir} 0710 ${user} ${group} - -"
|
||||||
"d ${cfg.dataDir}/public 0750 ${user} ${group} - -"
|
"d ${cfg.dataDir}/public 0750 ${user} ${group} - -"
|
||||||
"d ${cfg.dataDir}/public/uploads 0750 ${user} ${group} - -"
|
"d ${cfg.dataDir}/public/uploads 0750 ${user} ${group} - -"
|
||||||
|
|
|
@ -181,7 +181,7 @@ in
|
||||||
description = ''
|
description = ''
|
||||||
Plugins to add to the configuration. Overrides any installed if non-null.
|
Plugins to add to the configuration. Overrides any installed if non-null.
|
||||||
This is a list of paths to .tar.gz files or derivations evaluating to
|
This is a list of paths to .tar.gz files or derivations evaluating to
|
||||||
.tar.gz files. All entries will be passed to `mattermost plugin add`.
|
.tar.gz files.
|
||||||
'';
|
'';
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|
|
@ -106,7 +106,7 @@ in {
|
||||||
services.openssh = {
|
services.openssh = {
|
||||||
enable = true;
|
enable = true;
|
||||||
passwordAuthentication = false;
|
passwordAuthentication = false;
|
||||||
challengeResponseAuthentication = false;
|
kbdInteractiveAuthentication = false;
|
||||||
};
|
};
|
||||||
|
|
||||||
services.borgbackup.repos.repo1 = {
|
services.borgbackup.repos.repo1 = {
|
||||||
|
|
|
@ -53,7 +53,7 @@ import ./make-test-python.nix ({ pkgs, ... }:
|
||||||
services.openssh = {
|
services.openssh = {
|
||||||
enable = true;
|
enable = true;
|
||||||
passwordAuthentication = false;
|
passwordAuthentication = false;
|
||||||
challengeResponseAuthentication = false;
|
kbdInteractiveAuthentication = false;
|
||||||
};
|
};
|
||||||
services.btrbk = {
|
services.btrbk = {
|
||||||
extraPackages = [ pkgs.lz4 ];
|
extraPackages = [ pkgs.lz4 ];
|
||||||
|
|
|
@ -17,7 +17,7 @@ in {
|
||||||
};
|
};
|
||||||
|
|
||||||
services.openssh.enable = true;
|
services.openssh.enable = true;
|
||||||
services.openssh.challengeResponseAuthentication = false;
|
services.openssh.kbdInteractiveAuthentication = false;
|
||||||
services.openssh.passwordAuthentication = false;
|
services.openssh.passwordAuthentication = false;
|
||||||
|
|
||||||
security.googleOsLogin.enable = true;
|
security.googleOsLogin.enable = true;
|
||||||
|
|
60
pkgs/applications/misc/pomotroid/default.nix
Normal file
60
pkgs/applications/misc/pomotroid/default.nix
Normal file
|
@ -0,0 +1,60 @@
|
||||||
|
{ stdenv, lib, fetchurl, makeWrapper, makeDesktopItem, copyDesktopItems, electron }:
|
||||||
|
|
||||||
|
let
|
||||||
|
version = "0.13.0";
|
||||||
|
appIcon = fetchurl {
|
||||||
|
url = "https://raw.githubusercontent.com/Splode/pomotroid/v${version}/static/icon.png";
|
||||||
|
sha256 = "sha256-BEPoOBErw5ZCeK4rtdxdwZZLimbpglu1Cu++4xzuVUs=";
|
||||||
|
};
|
||||||
|
|
||||||
|
in stdenv.mkDerivation rec {
|
||||||
|
pname = "pomotroid";
|
||||||
|
inherit version;
|
||||||
|
|
||||||
|
src = fetchurl {
|
||||||
|
url = "https://github.com/Splode/pomotroid/releases/download/v${version}/${pname}-${version}-linux.tar.gz";
|
||||||
|
sha256 = "sha256-AwpVnvwWQd/cgmZvtr5NprnLyeXz6ym4Fywc808tcSc=";
|
||||||
|
};
|
||||||
|
|
||||||
|
nativeBuildInputs = [
|
||||||
|
makeWrapper
|
||||||
|
copyDesktopItems
|
||||||
|
];
|
||||||
|
|
||||||
|
desktopItems = [
|
||||||
|
(makeDesktopItem {
|
||||||
|
name = pname;
|
||||||
|
exec = "pomotroid";
|
||||||
|
icon = "pomotroid";
|
||||||
|
comment = meta.description;
|
||||||
|
desktopName = "Pomotroid";
|
||||||
|
genericName = "Pomodoro Application";
|
||||||
|
})
|
||||||
|
];
|
||||||
|
|
||||||
|
dontConfigure = true;
|
||||||
|
dontBuild = true;
|
||||||
|
|
||||||
|
installPhase = ''
|
||||||
|
runHook preInstall
|
||||||
|
|
||||||
|
mkdir -p $out/opt/pomotroid $out/share/pomotroid $out/share/pixmaps
|
||||||
|
|
||||||
|
cp -r ./ $out/opt/pomotroid
|
||||||
|
mv $out/opt/pomotroid/{locales,resources} $out/share/pomotroid
|
||||||
|
cp ${appIcon} $out/share/pixmaps/pomotroid.png
|
||||||
|
|
||||||
|
makeWrapper ${electron}/bin/electron $out/bin/pomotroid \
|
||||||
|
--add-flags $out/share/pomotroid/resources/app.asar
|
||||||
|
|
||||||
|
runHook postInstall
|
||||||
|
'';
|
||||||
|
|
||||||
|
meta = with lib; {
|
||||||
|
description = "Simple and visually-pleasing Pomodoro timer";
|
||||||
|
homepage = "https://splode.github.io/pomotroid";
|
||||||
|
license = licenses.mit;
|
||||||
|
maintainers = with maintainers; [ wolfangaukang ];
|
||||||
|
platforms = [ "x86_64-linux" ];
|
||||||
|
};
|
||||||
|
}
|
|
@ -7,82 +7,97 @@
|
||||||
, cdrtools # libvirt
|
, cdrtools # libvirt
|
||||||
}:
|
}:
|
||||||
let
|
let
|
||||||
list = lib.importJSON ./providers.json;
|
# Our generic constructor to build new providers.
|
||||||
|
#
|
||||||
buildWithGoModule = data:
|
# Is designed to combine with the terraform.withPlugins implementation.
|
||||||
|
mkProvider =
|
||||||
|
{ owner
|
||||||
|
, repo
|
||||||
|
, rev
|
||||||
|
, version
|
||||||
|
, sha256
|
||||||
|
, vendorSha256 ? throw "vendorSha256 missing: please use `buildGoModule`" /* added 2022/01 */
|
||||||
|
, deleteVendor ? false
|
||||||
|
, proxyVendor ? false
|
||||||
|
, provider-source-address
|
||||||
|
}@attrs:
|
||||||
buildGoModule {
|
buildGoModule {
|
||||||
pname = data.repo;
|
pname = repo;
|
||||||
inherit (data) vendorSha256 version;
|
inherit vendorSha256 version deleteVendor proxyVendor;
|
||||||
subPackages = [ "." ];
|
subPackages = [ "." ];
|
||||||
doCheck = false;
|
doCheck = false;
|
||||||
# https://github.com/hashicorp/terraform-provider-scaffolding/blob/a8ac8375a7082befe55b71c8cbb048493dd220c2/.goreleaser.yml
|
# https://github.com/hashicorp/terraform-provider-scaffolding/blob/a8ac8375a7082befe55b71c8cbb048493dd220c2/.goreleaser.yml
|
||||||
# goreleaser (used for builds distributed via terraform registry) requires that CGO is disabled
|
# goreleaser (used for builds distributed via terraform registry) requires that CGO is disabled
|
||||||
CGO_ENABLED = 0;
|
CGO_ENABLED = 0;
|
||||||
ldflags = [ "-s" "-w" "-X main.version=${data.version}" "-X main.commit=${data.rev}" ];
|
ldflags = [ "-s" "-w" "-X main.version=${version}" "-X main.commit=${rev}" ];
|
||||||
src = fetchFromGitHub {
|
src = fetchFromGitHub {
|
||||||
inherit (data) owner repo rev sha256;
|
inherit owner repo rev sha256;
|
||||||
};
|
};
|
||||||
deleteVendor = data.deleteVendor or false;
|
|
||||||
proxyVendor = data.proxyVendor or false;
|
|
||||||
|
|
||||||
# Terraform allow checking the provider versions, but this breaks
|
# Terraform allow checking the provider versions, but this breaks
|
||||||
# if the versions are not provided via file paths.
|
# if the versions are not provided via file paths.
|
||||||
postBuild = "mv $NIX_BUILD_TOP/go/bin/${data.repo}{,_v${data.version}}";
|
postBuild = "mv $NIX_BUILD_TOP/go/bin/${repo}{,_v${version}}";
|
||||||
passthru = data;
|
passthru = attrs;
|
||||||
};
|
};
|
||||||
|
|
||||||
# Our generic constructor to build new providers
|
list = lib.importJSON ./providers.json;
|
||||||
mkProvider = attrs:
|
|
||||||
(if (lib.hasAttr "vendorSha256" attrs) then buildWithGoModule else throw /* added 2022/01 */ "vendorSha256 missing: please use `buildGoModule`")
|
|
||||||
attrs;
|
|
||||||
|
|
||||||
# These providers are managed with the ./update-all script
|
# These providers are managed with the ./update-all script
|
||||||
automated-providers = lib.mapAttrs (_: attrs: mkProvider attrs) list;
|
automated-providers = lib.mapAttrs (_: attrs: mkProvider attrs) list;
|
||||||
|
|
||||||
# These are the providers that don't fall in line with the default model
|
# These are the providers that don't fall in line with the default model
|
||||||
special-providers = let archived = throw "the provider has been archived by upstream"; in {
|
special-providers =
|
||||||
# Packages that don't fit the default model
|
{
|
||||||
gandi = callPackage ./gandi { };
|
# Packages that don't fit the default model
|
||||||
# mkisofs needed to create ISOs holding cloud-init data,
|
gandi = callPackage ./gandi { };
|
||||||
# and wrapped to terraform via deecb4c1aab780047d79978c636eeb879dd68630
|
# mkisofs needed to create ISOs holding cloud-init data,
|
||||||
libvirt = automated-providers.libvirt.overrideAttrs (_: { propagatedBuildInputs = [ cdrtools ]; });
|
# and wrapped to terraform via deecb4c1aab780047d79978c636eeb879dd68630
|
||||||
teleport = callPackage ./teleport { };
|
libvirt = automated-providers.libvirt.overrideAttrs (_: { propagatedBuildInputs = [ cdrtools ]; });
|
||||||
vpsadmin = callPackage ./vpsadmin { };
|
teleport = callPackage ./teleport { };
|
||||||
} // (lib.optionalAttrs (config.allowAliases or false) {
|
vpsadmin = callPackage ./vpsadmin { };
|
||||||
arukas = archived; # added 2022/01
|
};
|
||||||
bitbucket = archived; # added 2022/01
|
|
||||||
chef = archived; # added 2022/01
|
# Put all the providers we not longer support in this list.
|
||||||
cherryservers = archived; # added 2022/01
|
removed-providers =
|
||||||
clc = archived; # added 2022/01
|
let
|
||||||
cloudstack = throw "removed from nixpkgs"; # added 2022/01
|
archived = date: throw "the provider has been archived by upstream on ${date}";
|
||||||
cobbler = archived; # added 2022/01
|
removed = date: throw "removed from nixpkgs on ${date}";
|
||||||
cohesity = archived; # added 2022/01
|
in
|
||||||
dyn = archived; # added 2022/01
|
lib.optionalAttrs (config.allowAliases or false) {
|
||||||
genymotion = archived; # added 2022/01
|
arukas = archived "2022/01";
|
||||||
hedvig = archived; # added 2022/01
|
bitbucket = archived "2022/01";
|
||||||
ignition = archived; # added 2022/01
|
chef = archived "2022/01";
|
||||||
incapsula = archived; # added 2022/01
|
cherryservers = archived "2022/01";
|
||||||
influxdb = archived; # added 2022/01
|
clc = archived "2022/01";
|
||||||
jdcloud = archived; # added 2022/01
|
cloudstack = removed "2022/01";
|
||||||
kubernetes-alpha = throw "This has been merged as beta into the kubernetes provider. See https://www.hashicorp.com/blog/beta-support-for-crds-in-the-terraform-provider-for-kubernetes for details";
|
cobbler = archived "2022/01";
|
||||||
librato = archived; # added 2022/01
|
cohesity = archived "2022/01";
|
||||||
logentries = archived; # added 2022/01
|
dyn = archived "2022/01";
|
||||||
metalcloud = archived; # added 2022/01
|
genymotion = archived "2022/01";
|
||||||
mysql = archived; # added 2022/01
|
hedvig = archived "2022/01";
|
||||||
nixos = archived; # added 2022/01
|
ignition = archived "2022/01";
|
||||||
oneandone = archived; # added 2022/01
|
incapsula = archived "2022/01";
|
||||||
packet = archived; # added 2022/01
|
influxdb = archived "2022/01";
|
||||||
profitbricks = archived; # added 2022/01
|
jdcloud = archived "2022/01";
|
||||||
pureport = archived; # added 2022/01
|
kubernetes-alpha = throw "This has been merged as beta into the kubernetes provider. See https://www.hashicorp.com/blog/beta-support-for-crds-in-the-terraform-provider-for-kubernetes for details";
|
||||||
rancher = archived; # added 2022/01
|
librato = archived "2022/01";
|
||||||
rightscale = archived; # added 2022/01
|
logentries = archived "2022/01";
|
||||||
runscope = archived; # added 2022/01
|
metalcloud = archived "2022/01";
|
||||||
segment = throw "removed from nixpkgs"; # added 2022/01
|
mysql = archived "2022/01";
|
||||||
softlayer = archived; # added 2022/01
|
nixos = archived "2022/01";
|
||||||
telefonicaopencloud = archived; # added 2022/01
|
oneandone = archived "2022/01";
|
||||||
terraform = archived; # added 2022/01
|
packet = archived "2022/01";
|
||||||
ultradns = archived; # added 2022/01
|
profitbricks = archived "2022/01";
|
||||||
vthunder = throw "provider was renamed to thunder"; # added 2022/01
|
pureport = archived "2022/01";
|
||||||
});
|
rancher = archived "2022/01";
|
||||||
|
rightscale = archived "2022/01";
|
||||||
|
runscope = archived "2022/01";
|
||||||
|
segment = removed "2022/01";
|
||||||
|
softlayer = archived "2022/01";
|
||||||
|
telefonicaopencloud = archived "2022/01";
|
||||||
|
terraform = archived "2022/01";
|
||||||
|
ultradns = archived "2022/01";
|
||||||
|
vthunder = throw "provider was renamed to thunder on 2022/01";
|
||||||
|
};
|
||||||
in
|
in
|
||||||
automated-providers // special-providers // { inherit mkProvider; }
|
automated-providers // special-providers // removed-providers // { inherit mkProvider; }
|
||||||
|
|
|
@ -160,20 +160,6 @@ rec {
|
||||||
# Constructor for other terraform versions
|
# Constructor for other terraform versions
|
||||||
mkTerraform = attrs: pluggable (generic attrs);
|
mkTerraform = attrs: pluggable (generic attrs);
|
||||||
|
|
||||||
terraform_0_12 = mkTerraform {
|
|
||||||
version = "0.12.31";
|
|
||||||
sha256 = "03p698xdbk5gj0f9v8v1fpd74zng3948dyy4f2hv7zgks9hid7fg";
|
|
||||||
patches = [
|
|
||||||
./provider-path.patch
|
|
||||||
(fetchpatch {
|
|
||||||
name = "fix-mac-mojave-crashes.patch";
|
|
||||||
url = "https://github.com/hashicorp/terraform/commit/cd65b28da051174a13ac76e54b7bb95d3051255c.patch";
|
|
||||||
sha256 = "1k70kk4hli72x8gza6fy3vpckdm3sf881w61fmssrah3hgmfmbrs";
|
|
||||||
})
|
|
||||||
];
|
|
||||||
passthru = { inherit plugins; };
|
|
||||||
};
|
|
||||||
|
|
||||||
terraform_0_13 = mkTerraform {
|
terraform_0_13 = mkTerraform {
|
||||||
version = "0.13.7";
|
version = "0.13.7";
|
||||||
sha256 = "1cahnmp66dk21g7ga6454yfhaqrxff7hpwpdgc87cswyq823fgjn";
|
sha256 = "1cahnmp66dk21g7ga6454yfhaqrxff7hpwpdgc87cswyq823fgjn";
|
||||||
|
|
|
@ -7,6 +7,7 @@
|
||||||
, fetchYarnDeps
|
, fetchYarnDeps
|
||||||
, electron
|
, electron
|
||||||
, element-web
|
, element-web
|
||||||
|
, sqlcipher
|
||||||
, callPackage
|
, callPackage
|
||||||
, Security
|
, Security
|
||||||
, AppKit
|
, AppKit
|
||||||
|
@ -78,7 +79,9 @@ mkYarnPackage rec {
|
||||||
ln -s "${desktopItem}/share/applications" "$out/share/applications"
|
ln -s "${desktopItem}/share/applications" "$out/share/applications"
|
||||||
|
|
||||||
# executable wrapper
|
# executable wrapper
|
||||||
|
# LD_PRELOAD workaround for sqlcipher not found: https://github.com/matrix-org/seshat/issues/102
|
||||||
makeWrapper '${electron_exec}' "$out/bin/${executableName}" \
|
makeWrapper '${electron_exec}' "$out/bin/${executableName}" \
|
||||||
|
--set LD_PRELOAD ${sqlcipher}/lib/libsqlcipher.so \
|
||||||
--add-flags "$out/share/element/electron${lib.optionalString useWayland " --enable-features=UseOzonePlatform --ozone-platform=wayland"}"
|
--add-flags "$out/share/element/electron${lib.optionalString useWayland " --enable-features=UseOzonePlatform --ozone-platform=wayland"}"
|
||||||
'';
|
'';
|
||||||
|
|
||||||
|
@ -94,7 +97,7 @@ mkYarnPackage rec {
|
||||||
name = "element-desktop";
|
name = "element-desktop";
|
||||||
exec = "${executableName} %u";
|
exec = "${executableName} %u";
|
||||||
icon = "element";
|
icon = "element";
|
||||||
desktopName = "Element (Riot)";
|
desktopName = "Element";
|
||||||
genericName = "Matrix Client";
|
genericName = "Matrix Client";
|
||||||
comment = meta.description;
|
comment = meta.description;
|
||||||
categories = "Network;InstantMessaging;Chat;";
|
categories = "Network;InstantMessaging;Chat;";
|
||||||
|
|
|
@ -19,11 +19,11 @@ let
|
||||||
|
|
||||||
in stdenv.mkDerivation rec {
|
in stdenv.mkDerivation rec {
|
||||||
pname = "gromacs";
|
pname = "gromacs";
|
||||||
version = "2021.4";
|
version = "2021.5";
|
||||||
|
|
||||||
src = fetchurl {
|
src = fetchurl {
|
||||||
url = "ftp://ftp.gromacs.org/pub/gromacs/gromacs-${version}.tar.gz";
|
url = "ftp://ftp.gromacs.org/pub/gromacs/gromacs-${version}.tar.gz";
|
||||||
sha256 = "07ds8abxq0k7vfpjvxb8in3fhb6lz0pbdzbmlidyzaw37qz8lw6b";
|
sha256 = "1dh9l2gcv61h1r6qsg8vr3k1xp8jgd27czzg24kzf4k823k3z9pb";
|
||||||
};
|
};
|
||||||
|
|
||||||
nativeBuildInputs = [ cmake ];
|
nativeBuildInputs = [ cmake ];
|
||||||
|
|
|
@ -18,17 +18,20 @@
|
||||||
, sassc
|
, sassc
|
||||||
, udisks2
|
, udisks2
|
||||||
, wrapGAppsHook
|
, wrapGAppsHook
|
||||||
|
, libX11
|
||||||
|
, libXext
|
||||||
|
, libXNVCtrl
|
||||||
}:
|
}:
|
||||||
|
|
||||||
stdenv.mkDerivation rec {
|
stdenv.mkDerivation rec {
|
||||||
pname = "monitor";
|
pname = "monitor";
|
||||||
version = "0.11.0";
|
version = "0.12.0";
|
||||||
|
|
||||||
src = fetchFromGitHub {
|
src = fetchFromGitHub {
|
||||||
owner = "stsdc";
|
owner = "stsdc";
|
||||||
repo = "monitor";
|
repo = "monitor";
|
||||||
rev = version;
|
rev = version;
|
||||||
sha256 = "sha256-xWhhjn7zk/juXx50wLG2TpB5aqU+588kWBBquWrVJbM=";
|
sha256 = "1fv98yz9393ddp0k96bwbgccy6x9dmmg8g1pjd3xs6m4c1bnvfc7";
|
||||||
fetchSubmodules = true;
|
fetchSubmodules = true;
|
||||||
};
|
};
|
||||||
|
|
||||||
|
@ -53,8 +56,19 @@ stdenv.mkDerivation rec {
|
||||||
libwnck
|
libwnck
|
||||||
sassc
|
sassc
|
||||||
udisks2
|
udisks2
|
||||||
|
libX11
|
||||||
|
libXext
|
||||||
|
libXNVCtrl
|
||||||
];
|
];
|
||||||
|
|
||||||
|
# Force link against Xext, otherwise build fails with:
|
||||||
|
# ld: /nix/store/...-libXNVCtrl-495.46/lib/libXNVCtrl.a(NVCtrl.o): undefined reference to symbol 'XextAddDisplay'
|
||||||
|
# ld: /nix/store/...-libXext-1.3.4/lib/libXext.so.6: error adding symbols: DSO missing from command line
|
||||||
|
# https://github.com/stsdc/monitor/issues/292
|
||||||
|
NIX_LDFLAGS = "-lXext";
|
||||||
|
|
||||||
|
mesonFlags = [ "-Dindicator-wingpanel=enabled" ];
|
||||||
|
|
||||||
postPatch = ''
|
postPatch = ''
|
||||||
chmod +x meson/post_install.py
|
chmod +x meson/post_install.py
|
||||||
patchShebangs meson/post_install.py
|
patchShebangs meson/post_install.py
|
||||||
|
|
|
@ -2,13 +2,13 @@
|
||||||
|
|
||||||
stdenv.mkDerivation rec {
|
stdenv.mkDerivation rec {
|
||||||
pname = "libpqxx";
|
pname = "libpqxx";
|
||||||
version = "7.6.0";
|
version = "7.7.0";
|
||||||
|
|
||||||
src = fetchFromGitHub {
|
src = fetchFromGitHub {
|
||||||
owner = "jtv";
|
owner = "jtv";
|
||||||
repo = pname;
|
repo = pname;
|
||||||
rev = version;
|
rev = version;
|
||||||
sha256 = "sha256-shcGJebjXJ3ORvcdINJFLiuW7ySqe6HyPUQioeUG/wM=";
|
sha256 = "sha256-O30czHwEDXz5xY4o3MWhmEK06OKTKMQCy0M6qwSEpy8=";
|
||||||
};
|
};
|
||||||
|
|
||||||
nativeBuildInputs = [ gnused python3 ];
|
nativeBuildInputs = [ gnused python3 ];
|
||||||
|
|
|
@ -1,18 +1,19 @@
|
||||||
{ buildGoModule, fetchgit, lib }:
|
{ buildGoModule, fetchFromGitHub, lib }:
|
||||||
|
|
||||||
buildGoModule rec {
|
buildGoModule rec {
|
||||||
pname = "cue";
|
pname = "cue";
|
||||||
version = "0.4.0";
|
version = "0.4.1";
|
||||||
|
|
||||||
src = fetchgit {
|
src = fetchFromGitHub {
|
||||||
url = "https://cue.googlesource.com/cue";
|
owner = "cue-lang";
|
||||||
|
repo = "cue";
|
||||||
rev = "v${version}";
|
rev = "v${version}";
|
||||||
sha256 = "sha256-rcGEl+CMFyxZKsOKhVimhv5/ONo3xS6FjgKModZGR2o=";
|
sha256 = "1q1mkqb6fk515g556yn8ks3gqrimfbadprmbv5rill1lpipq5xbj";
|
||||||
};
|
};
|
||||||
|
|
||||||
vendorSha256 = "sha256-eSKVlBgnHR1R0j1lNwtFoIgRuj8GqoMbvuBl/N1SanY=";
|
vendorSha256 = "12p77a97lbff6qhncs5qx13k3wmf9hrr09mhh12isw5s0p0n53xm";
|
||||||
|
|
||||||
doCheck = false;
|
checkPhase = "go test ./...";
|
||||||
|
|
||||||
subPackages = [ "cmd/cue" ];
|
subPackages = [ "cmd/cue" ];
|
||||||
|
|
||||||
|
@ -20,6 +21,11 @@ buildGoModule rec {
|
||||||
"-s" "-w" "-X cuelang.org/go/cmd/cue/cmd.version=${version}"
|
"-s" "-w" "-X cuelang.org/go/cmd/cue/cmd.version=${version}"
|
||||||
];
|
];
|
||||||
|
|
||||||
|
doInstallCheck = true;
|
||||||
|
installCheckPhase = ''
|
||||||
|
$out/bin/cue eval - <<<'a: "all good"' > /dev/null
|
||||||
|
'';
|
||||||
|
|
||||||
meta = {
|
meta = {
|
||||||
description = "A data constraint language which aims to simplify tasks involving defining and using data";
|
description = "A data constraint language which aims to simplify tasks involving defining and using data";
|
||||||
homepage = "https://cuelang.org/";
|
homepage = "https://cuelang.org/";
|
||||||
|
|
|
@ -1,5 +1,6 @@
|
||||||
{ lib
|
{ lib
|
||||||
, python3
|
, python3
|
||||||
|
, installShellFiles
|
||||||
}:
|
}:
|
||||||
|
|
||||||
with python3.pkgs;
|
with python3.pkgs;
|
||||||
|
@ -27,6 +28,8 @@ in buildPythonApplication rec {
|
||||||
|
|
||||||
LC_ALL = "en_US.UTF-8";
|
LC_ALL = "en_US.UTF-8";
|
||||||
|
|
||||||
|
nativeBuildInputs = [ installShellFiles ];
|
||||||
|
|
||||||
postPatch = ''
|
postPatch = ''
|
||||||
# pipenv invokes python in a subprocess to create a virtualenv
|
# pipenv invokes python in a subprocess to create a virtualenv
|
||||||
# and to call setup.py.
|
# and to call setup.py.
|
||||||
|
@ -38,6 +41,13 @@ in buildPythonApplication rec {
|
||||||
|
|
||||||
propagatedBuildInputs = runtimeDeps python3.pkgs;
|
propagatedBuildInputs = runtimeDeps python3.pkgs;
|
||||||
|
|
||||||
|
postInstall = ''
|
||||||
|
installShellCompletion --cmd pipenv \
|
||||||
|
--bash <(_PIPENV_COMPLETE=bash_source $out/bin/pipenv) \
|
||||||
|
--zsh <(_PIPENV_COMPLETE=zsh_source $out/bin/pipenv) \
|
||||||
|
--fish <(_PIPENV_COMPLETE=fish_source $out/bin/pipenv)
|
||||||
|
'';
|
||||||
|
|
||||||
doCheck = true;
|
doCheck = true;
|
||||||
checkPhase = ''
|
checkPhase = ''
|
||||||
export HOME=$(mktemp -d)
|
export HOME=$(mktemp -d)
|
||||||
|
|
|
@ -1064,6 +1064,22 @@ let
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
|
|
||||||
|
jdinhlife.gruvbox = buildVscodeMarketplaceExtension {
|
||||||
|
mktplcRef = {
|
||||||
|
name = "gruvbox";
|
||||||
|
publisher = "jdinhlife";
|
||||||
|
version = "1.5.1";
|
||||||
|
sha256 = "sha256-0ghB0E+Wa9W2bNFFiH2Q3pUJ9HV5+JfKohX4cRyevC8=";
|
||||||
|
};
|
||||||
|
meta = with lib; {
|
||||||
|
description = "Gruvbox Theme";
|
||||||
|
downloadPage = "https://marketplace.visualstudio.com/items?itemName=jdinhlife.gruvbox";
|
||||||
|
homepage = "https://github.com/jdinhify/vscode-theme-gruvbox";
|
||||||
|
license = licenses.mit;
|
||||||
|
maintainers = with maintainers; [ imgabe ];
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
jnoortheen.nix-ide = buildVscodeMarketplaceExtension {
|
jnoortheen.nix-ide = buildVscodeMarketplaceExtension {
|
||||||
mktplcRef = {
|
mktplcRef = {
|
||||||
name = "nix-ide";
|
name = "nix-ide";
|
||||||
|
|
24
pkgs/servers/alps/default.nix
Normal file
24
pkgs/servers/alps/default.nix
Normal file
|
@ -0,0 +1,24 @@
|
||||||
|
{ lib, buildGoModule, fetchFromSourcehut }:
|
||||||
|
|
||||||
|
buildGoModule rec {
|
||||||
|
pname = "alps";
|
||||||
|
version = "2021-09-29";
|
||||||
|
|
||||||
|
src = fetchFromSourcehut {
|
||||||
|
owner = "~migadu";
|
||||||
|
repo = "alps";
|
||||||
|
rev = "d4c35f3c3157bece8e50fd95f2ee1081be30d7ae";
|
||||||
|
sha256 = "sha256-xKfRLdfeD7lWdmC0iiq4dOIv2SmzbKH7HcAISCJgdug=";
|
||||||
|
};
|
||||||
|
|
||||||
|
vendorSha256 = "sha256-8fmbv5uPRfzUqsYU95YzsnuFkq4cwj+LN2X3W/yBHyA=";
|
||||||
|
|
||||||
|
proxyVendor = true;
|
||||||
|
|
||||||
|
meta = with lib; {
|
||||||
|
description = "A simple and extensible webmail.";
|
||||||
|
homepage = "https://git.sr.ht/~migadu/alps";
|
||||||
|
license = licenses.mit;
|
||||||
|
maintainers = with maintainers; [ gordias ];
|
||||||
|
};
|
||||||
|
}
|
|
@ -10,7 +10,7 @@
|
||||||
, storePathAsBuildHash ? false }:
|
, storePathAsBuildHash ? false }:
|
||||||
|
|
||||||
let
|
let
|
||||||
version = "6.2.1";
|
version = "6.3.0";
|
||||||
|
|
||||||
goPackagePath = "github.com/mattermost/mattermost-server";
|
goPackagePath = "github.com/mattermost/mattermost-server";
|
||||||
|
|
||||||
|
@ -22,7 +22,7 @@ let
|
||||||
owner = "mattermost";
|
owner = "mattermost";
|
||||||
repo = "mattermost-server";
|
repo = "mattermost-server";
|
||||||
rev = "v${version}";
|
rev = "v${version}";
|
||||||
sha256 = "WjBsbW7aEI+MX2I1LrEJh8JgNQ4Do7PpeshXgaQAk1s=";
|
sha256 = "y3VTDl01UrMpgoN06lf98C+uTu2N9u0EAWYADPpOI3w=";
|
||||||
};
|
};
|
||||||
|
|
||||||
ldflags = [
|
ldflags = [
|
||||||
|
@ -65,7 +65,7 @@ let
|
||||||
|
|
||||||
src = fetchurl {
|
src = fetchurl {
|
||||||
url = "https://releases.mattermost.com/${version}/mattermost-${version}-linux-amd64.tar.gz";
|
url = "https://releases.mattermost.com/${version}/mattermost-${version}-linux-amd64.tar.gz";
|
||||||
sha256 = "pV/MwMCK8vMzASXuM1+ePcarIgrcNAkFLEdmPya911E=";
|
sha256 = "PqinkPC7J6Ng1fjTrcAa6ZqiyB2JKkGRdvJ6h2wNS5w=";
|
||||||
};
|
};
|
||||||
|
|
||||||
installPhase = ''
|
installPhase = ''
|
||||||
|
|
|
@ -2,13 +2,13 @@
|
||||||
|
|
||||||
stdenv.mkDerivation rec {
|
stdenv.mkDerivation rec {
|
||||||
pname = "fuse-overlayfs";
|
pname = "fuse-overlayfs";
|
||||||
version = "1.8";
|
version = "1.8.1";
|
||||||
|
|
||||||
src = fetchFromGitHub {
|
src = fetchFromGitHub {
|
||||||
owner = "containers";
|
owner = "containers";
|
||||||
repo = pname;
|
repo = pname;
|
||||||
rev = "v${version}";
|
rev = "v${version}";
|
||||||
sha256 = "sha256-VqtBJ8HRyhjwKVoRu6+EArZMVbzXkaK89yV56MzRUJo=";
|
sha256 = "sha256-0vmcn3AOASjN61QzxxGYpPMWlukanh8+vbZQcFpU/vs=";
|
||||||
};
|
};
|
||||||
|
|
||||||
nativeBuildInputs = [ autoreconfHook pkg-config ];
|
nativeBuildInputs = [ autoreconfHook pkg-config ];
|
||||||
|
|
|
@ -2,13 +2,13 @@
|
||||||
|
|
||||||
buildGoModule rec {
|
buildGoModule rec {
|
||||||
pname = "telepresence2";
|
pname = "telepresence2";
|
||||||
version = "2.4.6";
|
version = "2.4.9";
|
||||||
|
|
||||||
src = fetchFromGitHub {
|
src = fetchFromGitHub {
|
||||||
owner = "telepresenceio";
|
owner = "telepresenceio";
|
||||||
repo = "telepresence";
|
repo = "telepresence";
|
||||||
rev = "v${version}";
|
rev = "v${version}";
|
||||||
sha256 = "09w7yk7jk5m6clq3drbgdr61w60b21jmfd635brfahms8pykmmzl";
|
sha256 = "sha256-cGG357Z0OI+aXGHWJaOPkkKUm1KcsYBvhHxNlIYlL+0=";
|
||||||
};
|
};
|
||||||
|
|
||||||
# The Helm chart is go:embed'ed as a tarball in the binary.
|
# The Helm chart is go:embed'ed as a tarball in the binary.
|
||||||
|
@ -21,7 +21,7 @@ buildGoModule rec {
|
||||||
go run ./build-aux/package_embedded_chart/main.go ${src.rev}
|
go run ./build-aux/package_embedded_chart/main.go ${src.rev}
|
||||||
'';
|
'';
|
||||||
|
|
||||||
vendorSha256 = "0przkcqaf56a0sgan2xxqfpbs9nbmq4brwdv1qnag7i9myzvixxb";
|
vendorSha256 = "sha256-DzAxqSiWag9mOgPznjhMCQJhtJZo7hsezhwJBidsvJQ=";
|
||||||
|
|
||||||
ldflags = [
|
ldflags = [
|
||||||
"-s" "-w" "-X=github.com/telepresenceio/telepresence/v2/pkg/version.Version=${src.rev}"
|
"-s" "-w" "-X=github.com/telepresenceio/telepresence/v2/pkg/version.Version=${src.rev}"
|
||||||
|
|
|
@ -997,6 +997,7 @@ mapAliases ({
|
||||||
telepathy_salut = telepathy-salut; # added 2018-02-25
|
telepathy_salut = telepathy-salut; # added 2018-02-25
|
||||||
telnet = inetutils; # added 2018-05-15
|
telnet = inetutils; # added 2018-05-15
|
||||||
terminus = throw "terminus has been removed, it was unmaintained in nixpkgs"; # added 2021-08-21
|
terminus = throw "terminus has been removed, it was unmaintained in nixpkgs"; # added 2021-08-21
|
||||||
|
terraform_0_12 = throw "terraform_0_12 has been removed from nixpkgs on 2021/01";
|
||||||
terraform_1_0_0 = throw "terraform_1_0_0 has been renamed to terraform_1"; # added 2021-06-15
|
terraform_1_0_0 = throw "terraform_1_0_0 has been renamed to terraform_1"; # added 2021-06-15
|
||||||
terraform_1_0 = throw "terraform_1_0 has been renamed to terraform_1"; # added 2021-12-08
|
terraform_1_0 = throw "terraform_1_0 has been renamed to terraform_1"; # added 2021-12-08
|
||||||
terraform-provider-ibm = terraform-providers.ibm; # added 2018-09-28
|
terraform-provider-ibm = terraform-providers.ibm; # added 2018-09-28
|
||||||
|
|
|
@ -20783,6 +20783,8 @@ with pkgs;
|
||||||
|
|
||||||
alerta-server = callPackage ../servers/monitoring/alerta { };
|
alerta-server = callPackage ../servers/monitoring/alerta { };
|
||||||
|
|
||||||
|
alps = callPackage ../servers/alps {};
|
||||||
|
|
||||||
apacheHttpd_2_4 = callPackage ../servers/http/apache-httpd/2.4.nix { };
|
apacheHttpd_2_4 = callPackage ../servers/http/apache-httpd/2.4.nix { };
|
||||||
apacheHttpd = apacheHttpd_2_4;
|
apacheHttpd = apacheHttpd_2_4;
|
||||||
|
|
||||||
|
@ -27211,7 +27213,9 @@ with pkgs;
|
||||||
ocamlPackages = ocaml-ng.ocamlPackages_4_01_0;
|
ocamlPackages = ocaml-ng.ocamlPackages_4_01_0;
|
||||||
};
|
};
|
||||||
|
|
||||||
monitor = callPackage ../applications/system/monitor { };
|
monitor = callPackage ../applications/system/monitor {
|
||||||
|
libXNVCtrl = linuxPackages.nvidia_x11.settings.libXNVCtrl;
|
||||||
|
};
|
||||||
|
|
||||||
moolticute = libsForQt5.callPackage ../applications/misc/moolticute { };
|
moolticute = libsForQt5.callPackage ../applications/misc/moolticute { };
|
||||||
|
|
||||||
|
@ -28066,6 +28070,10 @@ with pkgs;
|
||||||
|
|
||||||
polymake = callPackage ../applications/science/math/polymake { };
|
polymake = callPackage ../applications/science/math/polymake { };
|
||||||
|
|
||||||
|
pomotroid = callPackage ../applications/misc/pomotroid {
|
||||||
|
electron = electron_9;
|
||||||
|
};
|
||||||
|
|
||||||
pond = callPackage ../applications/networking/instant-messengers/pond { };
|
pond = callPackage ../applications/networking/instant-messengers/pond { };
|
||||||
|
|
||||||
ponymix = callPackage ../applications/audio/ponymix { };
|
ponymix = callPackage ../applications/audio/ponymix { };
|
||||||
|
@ -30275,6 +30283,22 @@ with pkgs;
|
||||||
|
|
||||||
drumkv1 = libsForQt5.callPackage ../applications/audio/drumkv1 { };
|
drumkv1 = libsForQt5.callPackage ../applications/audio/drumkv1 { };
|
||||||
|
|
||||||
|
gshhg-gmt = callPackage ../applications/gis/gmt/gshhg.nix { };
|
||||||
|
|
||||||
|
eureka-editor = callPackage ../applications/misc/eureka-editor { };
|
||||||
|
|
||||||
|
eureka-ideas = callPackage ../applications/misc/eureka-ideas {
|
||||||
|
inherit (darwin.apple_sdk.frameworks) Security;
|
||||||
|
};
|
||||||
|
|
||||||
|
fava = callPackage ../applications/office/fava {};
|
||||||
|
|
||||||
|
nux = callPackage ../tools/misc/nux { };
|
||||||
|
|
||||||
|
tts = callPackage ../tools/audio/tts { };
|
||||||
|
|
||||||
|
fslint = callPackage ../applications/misc/fslint { };
|
||||||
|
|
||||||
### GAMES
|
### GAMES
|
||||||
|
|
||||||
_1oom = callPackage ../games/1oom { };
|
_1oom = callPackage ../games/1oom { };
|
||||||
|
@ -30297,7 +30321,7 @@ with pkgs;
|
||||||
|
|
||||||
blockattack = callPackage ../games/blockattack { } ;
|
blockattack = callPackage ../games/blockattack { } ;
|
||||||
|
|
||||||
colobot = callPackage ../games/colobot {};
|
colobot = callPackage ../games/colobot { };
|
||||||
|
|
||||||
doom-bcc = callPackage ../games/zdoom/bcc-git.nix { };
|
doom-bcc = callPackage ../games/zdoom/bcc-git.nix { };
|
||||||
|
|
||||||
|
@ -30392,7 +30416,7 @@ with pkgs;
|
||||||
amoeba = callPackage ../games/amoeba { };
|
amoeba = callPackage ../games/amoeba { };
|
||||||
amoeba-data = callPackage ../games/amoeba/data.nix { };
|
amoeba-data = callPackage ../games/amoeba/data.nix { };
|
||||||
|
|
||||||
andyetitmoves = callPackage ../games/andyetitmoves {};
|
andyetitmoves = callPackage ../games/andyetitmoves { };
|
||||||
|
|
||||||
angband = callPackage ../games/angband { };
|
angband = callPackage ../games/angband { };
|
||||||
|
|
||||||
|
@ -30405,7 +30429,7 @@ with pkgs;
|
||||||
|
|
||||||
armagetronad-dedicated = callPackage ../games/armagetronad { dedicatedServer = true; };
|
armagetronad-dedicated = callPackage ../games/armagetronad { dedicatedServer = true; };
|
||||||
|
|
||||||
arena = callPackage ../games/arena {};
|
arena = callPackage ../games/arena { };
|
||||||
|
|
||||||
arx-libertatis = libsForQt5.callPackage ../games/arx-libertatis { };
|
arx-libertatis = libsForQt5.callPackage ../games/arx-libertatis { };
|
||||||
|
|
||||||
|
@ -30419,17 +30443,17 @@ with pkgs;
|
||||||
|
|
||||||
astromenace = callPackage ../games/astromenace { };
|
astromenace = callPackage ../games/astromenace { };
|
||||||
|
|
||||||
atanks = callPackage ../games/atanks {};
|
atanks = callPackage ../games/atanks { };
|
||||||
|
|
||||||
azimuth = callPackage ../games/azimuth {};
|
azimuth = callPackage ../games/azimuth { };
|
||||||
|
|
||||||
ballAndPaddle = callPackage ../games/ball-and-paddle {
|
ballAndPaddle = callPackage ../games/ball-and-paddle {
|
||||||
guile = guile_1_8;
|
guile = guile_1_8;
|
||||||
};
|
};
|
||||||
|
|
||||||
banner = callPackage ../games/banner {};
|
banner = callPackage ../games/banner { };
|
||||||
|
|
||||||
bastet = callPackage ../games/bastet {};
|
bastet = callPackage ../games/bastet { };
|
||||||
|
|
||||||
black-hole-solver = callPackage ../games/black-hole-solver {
|
black-hole-solver = callPackage ../games/black-hole-solver {
|
||||||
inherit (perlPackages) PathTiny;
|
inherit (perlPackages) PathTiny;
|
||||||
|
@ -30514,12 +30538,12 @@ with pkgs;
|
||||||
inherit (import ../games/crossfire pkgs)
|
inherit (import ../games/crossfire pkgs)
|
||||||
crossfire-server crossfire-arch crossfire-maps crossfire-client;
|
crossfire-server crossfire-arch crossfire-maps crossfire-client;
|
||||||
|
|
||||||
crrcsim = callPackage ../games/crrcsim {};
|
crrcsim = callPackage ../games/crrcsim { };
|
||||||
|
|
||||||
curseofwar = callPackage ../games/curseofwar { SDL = null; };
|
curseofwar = callPackage ../games/curseofwar { SDL = null; };
|
||||||
curseofwar-sdl = callPackage ../games/curseofwar { ncurses = null; };
|
curseofwar-sdl = callPackage ../games/curseofwar { ncurses = null; };
|
||||||
|
|
||||||
cutemaze = libsForQt5.callPackage ../games/cutemaze {};
|
cutemaze = libsForQt5.callPackage ../games/cutemaze { };
|
||||||
|
|
||||||
cuyo = callPackage ../games/cuyo { };
|
cuyo = callPackage ../games/cuyo { };
|
||||||
|
|
||||||
|
@ -30534,7 +30558,7 @@ with pkgs;
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
|
|
||||||
dhewm3 = callPackage ../games/dhewm3 {};
|
dhewm3 = callPackage ../games/dhewm3 { };
|
||||||
|
|
||||||
domination = callPackage ../games/domination { };
|
domination = callPackage ../games/domination { };
|
||||||
|
|
||||||
|
@ -30582,12 +30606,6 @@ with pkgs;
|
||||||
|
|
||||||
eternity = callPackage ../games/eternity-engine { };
|
eternity = callPackage ../games/eternity-engine { };
|
||||||
|
|
||||||
eureka-editor = callPackage ../applications/misc/eureka-editor { };
|
|
||||||
|
|
||||||
eureka-ideas = callPackage ../applications/misc/eureka-ideas {
|
|
||||||
inherit (darwin.apple_sdk.frameworks) Security;
|
|
||||||
};
|
|
||||||
|
|
||||||
extremetuxracer = callPackage ../games/extremetuxracer {
|
extremetuxracer = callPackage ../games/extremetuxracer {
|
||||||
libpng = libpng12;
|
libpng = libpng12;
|
||||||
};
|
};
|
||||||
|
@ -30616,13 +30634,11 @@ with pkgs;
|
||||||
|
|
||||||
factorio-utils = callPackage ../games/factorio/utils.nix { };
|
factorio-utils = callPackage ../games/factorio/utils.nix { };
|
||||||
|
|
||||||
fairymax = callPackage ../games/fairymax {};
|
fairymax = callPackage ../games/fairymax { };
|
||||||
|
|
||||||
fava = callPackage ../applications/office/fava {};
|
fheroes2 = callPackage ../games/fheroes2 { };
|
||||||
|
|
||||||
fheroes2 = callPackage ../games/fheroes2 {};
|
fish-fillets-ng = callPackage ../games/fish-fillets-ng { };
|
||||||
|
|
||||||
fish-fillets-ng = callPackage ../games/fish-fillets-ng {};
|
|
||||||
|
|
||||||
fishfight = callPackage ../games/fishfight {
|
fishfight = callPackage ../games/fishfight {
|
||||||
inherit (xorg) libX11 libXi;
|
inherit (xorg) libX11 libXi;
|
||||||
|
@ -30668,8 +30684,6 @@ with pkgs;
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
|
|
||||||
fslint = callPackage ../applications/misc/fslint {};
|
|
||||||
|
|
||||||
galaxis = callPackage ../games/galaxis { };
|
galaxis = callPackage ../games/galaxis { };
|
||||||
|
|
||||||
gambatte = callPackage ../games/gambatte { };
|
gambatte = callPackage ../games/gambatte { };
|
||||||
|
@ -30688,9 +30702,9 @@ with pkgs;
|
||||||
|
|
||||||
gemrb = callPackage ../games/gemrb { };
|
gemrb = callPackage ../games/gemrb { };
|
||||||
|
|
||||||
gimx = callPackage ../games/gimx {};
|
gimx = callPackage ../games/gimx { };
|
||||||
|
|
||||||
gl117 = callPackage ../games/gl-117 {};
|
gl117 = callPackage ../games/gl-117 { };
|
||||||
|
|
||||||
globulation2 = callPackage ../games/globulation {
|
globulation2 = callPackage ../games/globulation {
|
||||||
boost = boost155;
|
boost = boost155;
|
||||||
|
@ -30716,13 +30730,11 @@ with pkgs;
|
||||||
|
|
||||||
gnushogi = callPackage ../games/gnushogi { };
|
gnushogi = callPackage ../games/gnushogi { };
|
||||||
|
|
||||||
gogui = callPackage ../games/gogui {};
|
gogui = callPackage ../games/gogui { };
|
||||||
|
|
||||||
gscrabble = python3Packages.callPackage ../games/gscrabble {};
|
gscrabble = python3Packages.callPackage ../games/gscrabble { };
|
||||||
|
|
||||||
gshogi = python3Packages.callPackage ../games/gshogi {};
|
gshogi = python3Packages.callPackage ../games/gshogi { };
|
||||||
|
|
||||||
gshhg-gmt = callPackage ../applications/gis/gmt/gshhg.nix { };
|
|
||||||
|
|
||||||
qtads = qt5.callPackage ../games/qtads { };
|
qtads = qt5.callPackage ../games/qtads { };
|
||||||
|
|
||||||
|
@ -30736,7 +30748,7 @@ with pkgs;
|
||||||
|
|
||||||
gtypist = callPackage ../games/gtypist { };
|
gtypist = callPackage ../games/gtypist { };
|
||||||
|
|
||||||
gweled = callPackage ../games/gweled {};
|
gweled = callPackage ../games/gweled { };
|
||||||
|
|
||||||
gzdoom = callPackage ../games/gzdoom { };
|
gzdoom = callPackage ../games/gzdoom { };
|
||||||
|
|
||||||
|
@ -30784,7 +30796,7 @@ with pkgs;
|
||||||
enableGPU = false;
|
enableGPU = false;
|
||||||
};
|
};
|
||||||
|
|
||||||
klavaro = callPackage ../games/klavaro {};
|
klavaro = callPackage ../games/klavaro { };
|
||||||
|
|
||||||
kobodeluxe = callPackage ../games/kobodeluxe { };
|
kobodeluxe = callPackage ../games/kobodeluxe { };
|
||||||
|
|
||||||
|
@ -30806,7 +30818,7 @@ with pkgs;
|
||||||
|
|
||||||
liberation-circuit = callPackage ../games/liberation-circuit { };
|
liberation-circuit = callPackage ../games/liberation-circuit { };
|
||||||
|
|
||||||
lincity = callPackage ../games/lincity {};
|
lincity = callPackage ../games/lincity { };
|
||||||
|
|
||||||
lincity_ng = callPackage ../games/lincity/ng.nix {
|
lincity_ng = callPackage ../games/lincity/ng.nix {
|
||||||
# https://github.com/lincity-ng/lincity-ng/issues/25
|
# https://github.com/lincity-ng/lincity-ng/issues/25
|
||||||
|
@ -30820,7 +30832,7 @@ with pkgs;
|
||||||
liquidwar5 = callPackage ../games/liquidwar/5.nix {
|
liquidwar5 = callPackage ../games/liquidwar/5.nix {
|
||||||
};
|
};
|
||||||
|
|
||||||
lugaru = callPackage ../games/lugaru {};
|
lugaru = callPackage ../games/lugaru { };
|
||||||
|
|
||||||
macopix = callPackage ../games/macopix {
|
macopix = callPackage ../games/macopix {
|
||||||
gtk = gtk2;
|
gtk = gtk2;
|
||||||
|
@ -30832,7 +30844,7 @@ with pkgs;
|
||||||
|
|
||||||
mars = callPackage ../games/mars { };
|
mars = callPackage ../games/mars { };
|
||||||
|
|
||||||
megaglest = callPackage ../games/megaglest {};
|
megaglest = callPackage ../games/megaglest { };
|
||||||
|
|
||||||
methane = callPackage ../games/methane { };
|
methane = callPackage ../games/methane { };
|
||||||
|
|
||||||
|
@ -30855,7 +30867,7 @@ with pkgs;
|
||||||
minecraftServers = import ../games/minecraft-servers { inherit callPackage lib javaPackages; };
|
minecraftServers = import ../games/minecraft-servers { inherit callPackage lib javaPackages; };
|
||||||
minecraft-server = minecraftServers.vanilla; # backwards compatibility
|
minecraft-server = minecraftServers.vanilla; # backwards compatibility
|
||||||
|
|
||||||
moon-buggy = callPackage ../games/moon-buggy {};
|
moon-buggy = callPackage ../games/moon-buggy { };
|
||||||
|
|
||||||
inherit (callPackages ../games/minetest {
|
inherit (callPackages ../games/minetest {
|
||||||
inherit (darwin) libiconv;
|
inherit (darwin) libiconv;
|
||||||
|
@ -30901,8 +30913,6 @@ with pkgs;
|
||||||
|
|
||||||
nexuiz = callPackage ../games/nexuiz { };
|
nexuiz = callPackage ../games/nexuiz { };
|
||||||
|
|
||||||
nux = callPackage ../tools/misc/nux { };
|
|
||||||
|
|
||||||
ninvaders = callPackage ../games/ninvaders { };
|
ninvaders = callPackage ../games/ninvaders { };
|
||||||
|
|
||||||
njam = callPackage ../games/njam { };
|
njam = callPackage ../games/njam { };
|
||||||
|
@ -30939,7 +30949,7 @@ with pkgs;
|
||||||
|
|
||||||
portmod = callPackage ../games/portmod { };
|
portmod = callPackage ../games/portmod { };
|
||||||
|
|
||||||
tlauncher = callPackage ../games/tlauncher {};
|
tlauncher = callPackage ../games/tlauncher { };
|
||||||
|
|
||||||
tr-patcher = callPackage ../games/tr-patcher { };
|
tr-patcher = callPackage ../games/tr-patcher { };
|
||||||
|
|
||||||
|
@ -30967,8 +30977,8 @@ with pkgs;
|
||||||
static = true;
|
static = true;
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
openttd-grfcodec = callPackage ../games/openttd/grfcodec.nix {};
|
openttd-grfcodec = callPackage ../games/openttd/grfcodec.nix { };
|
||||||
openttd-nml = callPackage ../games/openttd/nml.nix {};
|
openttd-nml = callPackage ../games/openttd/nml.nix { };
|
||||||
|
|
||||||
opentyrian = callPackage ../games/opentyrian { };
|
opentyrian = callPackage ../games/opentyrian { };
|
||||||
|
|
||||||
|
@ -30990,7 +31000,7 @@ with pkgs;
|
||||||
|
|
||||||
pinball = callPackage ../games/pinball { };
|
pinball = callPackage ../games/pinball { };
|
||||||
|
|
||||||
pingus = callPackage ../games/pingus {};
|
pingus = callPackage ../games/pingus { };
|
||||||
|
|
||||||
pioneer = callPackage ../games/pioneer { };
|
pioneer = callPackage ../games/pioneer { };
|
||||||
|
|
||||||
|
@ -31034,7 +31044,7 @@ with pkgs;
|
||||||
ioquake3 = callPackage ../games/quake3/ioquake { };
|
ioquake3 = callPackage ../games/quake3/ioquake { };
|
||||||
quake3e = callPackage ../games/quake3/quake3e { };
|
quake3e = callPackage ../games/quake3/quake3e { };
|
||||||
|
|
||||||
quantumminigolf = callPackage ../games/quantumminigolf {};
|
quantumminigolf = callPackage ../games/quantumminigolf { };
|
||||||
|
|
||||||
r2mod_cli = callPackage ../games/r2mod_cli { };
|
r2mod_cli = callPackage ../games/r2mod_cli { };
|
||||||
|
|
||||||
|
@ -31085,7 +31095,7 @@ with pkgs;
|
||||||
openjdk = openjdk8;
|
openjdk = openjdk8;
|
||||||
};
|
};
|
||||||
|
|
||||||
sauerbraten = callPackage ../games/sauerbraten {};
|
sauerbraten = callPackage ../games/sauerbraten { };
|
||||||
|
|
||||||
scid = callPackage ../games/scid {
|
scid = callPackage ../games/scid {
|
||||||
tcl = tcl-8_5;
|
tcl = tcl-8_5;
|
||||||
|
@ -31158,7 +31168,7 @@ with pkgs;
|
||||||
|
|
||||||
ssl-cert-check = callPackage ../tools/admin/ssl-cert-check { };
|
ssl-cert-check = callPackage ../tools/admin/ssl-cert-check { };
|
||||||
|
|
||||||
stardust = callPackage ../games/stardust {};
|
stardust = callPackage ../games/stardust { };
|
||||||
|
|
||||||
starspace = callPackage ../applications/science/machine-learning/starspace { };
|
starspace = callPackage ../applications/science/machine-learning/starspace { };
|
||||||
|
|
||||||
|
@ -31260,8 +31270,6 @@ with pkgs;
|
||||||
|
|
||||||
tremulous = callPackage ../games/tremulous { };
|
tremulous = callPackage ../games/tremulous { };
|
||||||
|
|
||||||
tts = callPackage ../tools/audio/tts { };
|
|
||||||
|
|
||||||
tumiki-fighters = callPackage ../games/tumiki-fighters { };
|
tumiki-fighters = callPackage ../games/tumiki-fighters { };
|
||||||
|
|
||||||
tuxpaint = callPackage ../games/tuxpaint { };
|
tuxpaint = callPackage ../games/tuxpaint { };
|
||||||
|
@ -31404,8 +31412,8 @@ with pkgs;
|
||||||
|
|
||||||
|
|
||||||
xpilot-ng = callPackage ../games/xpilot { };
|
xpilot-ng = callPackage ../games/xpilot { };
|
||||||
bloodspilot-server = callPackage ../games/xpilot/bloodspilot-server.nix {};
|
bloodspilot-server = callPackage ../games/xpilot/bloodspilot-server.nix { };
|
||||||
bloodspilot-client = callPackage ../games/xpilot/bloodspilot-client.nix {};
|
bloodspilot-client = callPackage ../games/xpilot/bloodspilot-client.nix { };
|
||||||
|
|
||||||
xskat = callPackage ../games/xskat { };
|
xskat = callPackage ../games/xskat { };
|
||||||
|
|
||||||
|
@ -31454,6 +31462,10 @@ with pkgs;
|
||||||
|
|
||||||
_0verkill = callPackage ../games/0verkill { };
|
_0verkill = callPackage ../games/0verkill { };
|
||||||
|
|
||||||
|
hhexen = callPackage ../games/hhexen { };
|
||||||
|
|
||||||
|
wyvern = callPackage ../games/wyvern { };
|
||||||
|
|
||||||
### DESKTOP ENVIRONMENTS
|
### DESKTOP ENVIRONMENTS
|
||||||
|
|
||||||
cdesktopenv = callPackage ../desktops/cdesktopenv { };
|
cdesktopenv = callPackage ../desktops/cdesktopenv { };
|
||||||
|
@ -31483,8 +31495,6 @@ with pkgs;
|
||||||
|
|
||||||
gnome-tour = callPackage ../desktops/gnome/core/gnome-tour { };
|
gnome-tour = callPackage ../desktops/gnome/core/gnome-tour { };
|
||||||
|
|
||||||
hhexen = callPackage ../games/hhexen { };
|
|
||||||
|
|
||||||
hsetroot = callPackage ../tools/X11/hsetroot { };
|
hsetroot = callPackage ../tools/X11/hsetroot { };
|
||||||
|
|
||||||
imwheel = callPackage ../tools/X11/imwheel { };
|
imwheel = callPackage ../tools/X11/imwheel { };
|
||||||
|
@ -33613,7 +33623,6 @@ with pkgs;
|
||||||
buildGoModule = buildGo117Module;
|
buildGoModule = buildGo117Module;
|
||||||
})
|
})
|
||||||
mkTerraform
|
mkTerraform
|
||||||
terraform_0_12
|
|
||||||
terraform_0_13
|
terraform_0_13
|
||||||
terraform_0_14
|
terraform_0_14
|
||||||
terraform_0_15
|
terraform_0_15
|
||||||
|
@ -33873,8 +33882,6 @@ with pkgs;
|
||||||
wxGTK = wxGTK30;
|
wxGTK = wxGTK30;
|
||||||
};
|
};
|
||||||
|
|
||||||
wyvern = callPackage ../games/wyvern { };
|
|
||||||
|
|
||||||
x11idle = callPackage ../tools/misc/x11idle {};
|
x11idle = callPackage ../tools/misc/x11idle {};
|
||||||
|
|
||||||
x11docker = callPackage ../applications/virtualization/x11docker { };
|
x11docker = callPackage ../applications/virtualization/x11docker { };
|
||||||
|
|
Loading…
Reference in a new issue