Merge staging-next into staging
This commit is contained in:
commit
aee8ca6639
58 changed files with 1762 additions and 557 deletions
|
@ -513,12 +513,6 @@
|
||||||
githubId = 38869148;
|
githubId = 38869148;
|
||||||
name = "Alex Eyre";
|
name = "Alex Eyre";
|
||||||
};
|
};
|
||||||
algorith = {
|
|
||||||
email = "dries_van_daele@telenet.be";
|
|
||||||
github = "DriesVanDaele";
|
|
||||||
githubId = 1141488;
|
|
||||||
name = "Dries Van Daele";
|
|
||||||
};
|
|
||||||
alibabzo = {
|
alibabzo = {
|
||||||
email = "alistair.bill@gmail.com";
|
email = "alistair.bill@gmail.com";
|
||||||
github = "alibabzo";
|
github = "alibabzo";
|
||||||
|
@ -6536,6 +6530,12 @@
|
||||||
githubId = 787421;
|
githubId = 787421;
|
||||||
name = "Kevin Quick";
|
name = "Kevin Quick";
|
||||||
};
|
};
|
||||||
|
kradalby = {
|
||||||
|
name = "Kristoffer Dalby";
|
||||||
|
email = "kristoffer@dalby.cc";
|
||||||
|
github = "kradalby";
|
||||||
|
githubId = 98431;
|
||||||
|
};
|
||||||
kraem = {
|
kraem = {
|
||||||
email = "me@kraem.xyz";
|
email = "me@kraem.xyz";
|
||||||
github = "kraem";
|
github = "kraem";
|
||||||
|
|
|
@ -192,6 +192,15 @@
|
||||||
<link xlink:href="options.html#opt-services.rstudio-server.enable">services.rstudio-server</link>.
|
<link xlink:href="options.html#opt-services.rstudio-server.enable">services.rstudio-server</link>.
|
||||||
</para>
|
</para>
|
||||||
</listitem>
|
</listitem>
|
||||||
|
<listitem>
|
||||||
|
<para>
|
||||||
|
<link xlink:href="https://github.com/juanfont/headscale">headscale</link>,
|
||||||
|
an Open Source implementation of the
|
||||||
|
<link xlink:href="https://tailscale.io">Tailscale</link>
|
||||||
|
Control Server. Available as
|
||||||
|
<link xlink:href="options.html#opt-services.headscale.enable">services.headscale</link>
|
||||||
|
</para>
|
||||||
|
</listitem>
|
||||||
</itemizedlist>
|
</itemizedlist>
|
||||||
</section>
|
</section>
|
||||||
<section xml:id="sec-release-22.05-incompatibilities">
|
<section xml:id="sec-release-22.05-incompatibilities">
|
||||||
|
|
|
@ -58,6 +58,8 @@ In addition to numerous new and upgraded packages, this release has the followin
|
||||||
|
|
||||||
- [rstudio-server](https://www.rstudio.com/products/rstudio/#rstudio-server), a browser-based version of the RStudio IDE for the R programming language. Available as [services.rstudio-server](options.html#opt-services.rstudio-server.enable).
|
- [rstudio-server](https://www.rstudio.com/products/rstudio/#rstudio-server), a browser-based version of the RStudio IDE for the R programming language. Available as [services.rstudio-server](options.html#opt-services.rstudio-server.enable).
|
||||||
|
|
||||||
|
- [headscale](https://github.com/juanfont/headscale), an Open Source implementation of the [Tailscale](https://tailscale.io) Control Server. Available as [services.headscale](options.html#opt-services.headscale.enable)
|
||||||
|
|
||||||
<!-- To avoid merge conflicts, consider adding your item at an arbitrary place in the list instead. -->
|
<!-- To avoid merge conflicts, consider adding your item at an arbitrary place in the list instead. -->
|
||||||
|
|
||||||
## Backward Incompatibilities {#sec-release-22.05-incompatibilities}
|
## Backward Incompatibilities {#sec-release-22.05-incompatibilities}
|
||||||
|
|
|
@ -11,6 +11,9 @@ in rec {
|
||||||
|
|
||||||
mkPathSafeName = lib.replaceChars ["@" ":" "\\" "[" "]"] ["-" "-" "-" "" ""];
|
mkPathSafeName = lib.replaceChars ["@" ":" "\\" "[" "]"] ["-" "-" "-" "" ""];
|
||||||
|
|
||||||
|
# a type for options that take a unit name
|
||||||
|
unitNameType = types.strMatching "[a-zA-Z0-9@%:_.\\-]+[.](service|socket|device|mount|automount|swap|target|path|timer|scope|slice)";
|
||||||
|
|
||||||
makeUnit = name: unit:
|
makeUnit = name: unit:
|
||||||
if unit.enable then
|
if unit.enable then
|
||||||
pkgs.runCommand "unit-${mkPathSafeName name}"
|
pkgs.runCommand "unit-${mkPathSafeName name}"
|
||||||
|
|
|
@ -45,7 +45,7 @@ in rec {
|
||||||
|
|
||||||
requiredBy = mkOption {
|
requiredBy = mkOption {
|
||||||
default = [];
|
default = [];
|
||||||
type = types.listOf types.str;
|
type = types.listOf unitNameType;
|
||||||
description = ''
|
description = ''
|
||||||
Units that require (i.e. depend on and need to go down with)
|
Units that require (i.e. depend on and need to go down with)
|
||||||
this unit. The discussion under <literal>wantedBy</literal>
|
this unit. The discussion under <literal>wantedBy</literal>
|
||||||
|
@ -56,7 +56,7 @@ in rec {
|
||||||
|
|
||||||
wantedBy = mkOption {
|
wantedBy = mkOption {
|
||||||
default = [];
|
default = [];
|
||||||
type = types.listOf types.str;
|
type = types.listOf unitNameType;
|
||||||
description = ''
|
description = ''
|
||||||
Units that want (i.e. depend on) this unit. The standard way
|
Units that want (i.e. depend on) this unit. The standard way
|
||||||
to make a unit start by default at boot is to set this option
|
to make a unit start by default at boot is to set this option
|
||||||
|
@ -73,7 +73,7 @@ in rec {
|
||||||
|
|
||||||
aliases = mkOption {
|
aliases = mkOption {
|
||||||
default = [];
|
default = [];
|
||||||
type = types.listOf types.str;
|
type = types.listOf unitNameType;
|
||||||
description = "Aliases of that unit.";
|
description = "Aliases of that unit.";
|
||||||
};
|
};
|
||||||
|
|
||||||
|
@ -110,7 +110,7 @@ in rec {
|
||||||
|
|
||||||
requires = mkOption {
|
requires = mkOption {
|
||||||
default = [];
|
default = [];
|
||||||
type = types.listOf types.str;
|
type = types.listOf unitNameType;
|
||||||
description = ''
|
description = ''
|
||||||
Start the specified units when this unit is started, and stop
|
Start the specified units when this unit is started, and stop
|
||||||
this unit when the specified units are stopped or fail.
|
this unit when the specified units are stopped or fail.
|
||||||
|
@ -119,7 +119,7 @@ in rec {
|
||||||
|
|
||||||
wants = mkOption {
|
wants = mkOption {
|
||||||
default = [];
|
default = [];
|
||||||
type = types.listOf types.str;
|
type = types.listOf unitNameType;
|
||||||
description = ''
|
description = ''
|
||||||
Start the specified units when this unit is started.
|
Start the specified units when this unit is started.
|
||||||
'';
|
'';
|
||||||
|
@ -127,7 +127,7 @@ in rec {
|
||||||
|
|
||||||
after = mkOption {
|
after = mkOption {
|
||||||
default = [];
|
default = [];
|
||||||
type = types.listOf types.str;
|
type = types.listOf unitNameType;
|
||||||
description = ''
|
description = ''
|
||||||
If the specified units are started at the same time as
|
If the specified units are started at the same time as
|
||||||
this unit, delay this unit until they have started.
|
this unit, delay this unit until they have started.
|
||||||
|
@ -136,7 +136,7 @@ in rec {
|
||||||
|
|
||||||
before = mkOption {
|
before = mkOption {
|
||||||
default = [];
|
default = [];
|
||||||
type = types.listOf types.str;
|
type = types.listOf unitNameType;
|
||||||
description = ''
|
description = ''
|
||||||
If the specified units are started at the same time as
|
If the specified units are started at the same time as
|
||||||
this unit, delay them until this unit has started.
|
this unit, delay them until this unit has started.
|
||||||
|
@ -145,7 +145,7 @@ in rec {
|
||||||
|
|
||||||
bindsTo = mkOption {
|
bindsTo = mkOption {
|
||||||
default = [];
|
default = [];
|
||||||
type = types.listOf types.str;
|
type = types.listOf unitNameType;
|
||||||
description = ''
|
description = ''
|
||||||
Like ‘requires’, but in addition, if the specified units
|
Like ‘requires’, but in addition, if the specified units
|
||||||
unexpectedly disappear, this unit will be stopped as well.
|
unexpectedly disappear, this unit will be stopped as well.
|
||||||
|
@ -154,7 +154,7 @@ in rec {
|
||||||
|
|
||||||
partOf = mkOption {
|
partOf = mkOption {
|
||||||
default = [];
|
default = [];
|
||||||
type = types.listOf types.str;
|
type = types.listOf unitNameType;
|
||||||
description = ''
|
description = ''
|
||||||
If the specified units are stopped or restarted, then this
|
If the specified units are stopped or restarted, then this
|
||||||
unit is stopped or restarted as well.
|
unit is stopped or restarted as well.
|
||||||
|
@ -163,7 +163,7 @@ in rec {
|
||||||
|
|
||||||
conflicts = mkOption {
|
conflicts = mkOption {
|
||||||
default = [];
|
default = [];
|
||||||
type = types.listOf types.str;
|
type = types.listOf unitNameType;
|
||||||
description = ''
|
description = ''
|
||||||
If the specified units are started, then this unit is stopped
|
If the specified units are started, then this unit is stopped
|
||||||
and vice versa.
|
and vice versa.
|
||||||
|
@ -172,7 +172,7 @@ in rec {
|
||||||
|
|
||||||
requisite = mkOption {
|
requisite = mkOption {
|
||||||
default = [];
|
default = [];
|
||||||
type = types.listOf types.str;
|
type = types.listOf unitNameType;
|
||||||
description = ''
|
description = ''
|
||||||
Similar to requires. However if the units listed are not started,
|
Similar to requires. However if the units listed are not started,
|
||||||
they will not be started and the transaction will fail.
|
they will not be started and the transaction will fail.
|
||||||
|
@ -203,7 +203,7 @@ in rec {
|
||||||
|
|
||||||
onFailure = mkOption {
|
onFailure = mkOption {
|
||||||
default = [];
|
default = [];
|
||||||
type = types.listOf types.str;
|
type = types.listOf unitNameType;
|
||||||
description = ''
|
description = ''
|
||||||
A list of one or more units that are activated when
|
A list of one or more units that are activated when
|
||||||
this unit enters the "failed" state.
|
this unit enters the "failed" state.
|
||||||
|
|
|
@ -764,6 +764,7 @@
|
||||||
./services/networking/gvpe.nix
|
./services/networking/gvpe.nix
|
||||||
./services/networking/hans.nix
|
./services/networking/hans.nix
|
||||||
./services/networking/haproxy.nix
|
./services/networking/haproxy.nix
|
||||||
|
./services/networking/headscale.nix
|
||||||
./services/networking/hostapd.nix
|
./services/networking/hostapd.nix
|
||||||
./services/networking/htpdate.nix
|
./services/networking/htpdate.nix
|
||||||
./services/networking/hylafax/default.nix
|
./services/networking/hylafax/default.nix
|
||||||
|
|
490
nixos/modules/services/networking/headscale.nix
Normal file
490
nixos/modules/services/networking/headscale.nix
Normal file
|
@ -0,0 +1,490 @@
|
||||||
|
{ config, lib, pkgs, ... }:
|
||||||
|
with lib;
|
||||||
|
let
|
||||||
|
cfg = config.services.headscale;
|
||||||
|
|
||||||
|
dataDir = "/var/lib/headscale";
|
||||||
|
runDir = "/run/headscale";
|
||||||
|
|
||||||
|
settingsFormat = pkgs.formats.yaml { };
|
||||||
|
configFile = settingsFormat.generate "headscale.yaml" cfg.settings;
|
||||||
|
in
|
||||||
|
{
|
||||||
|
options = {
|
||||||
|
services.headscale = {
|
||||||
|
enable = mkEnableOption "headscale, Open Source coordination server for Tailscale";
|
||||||
|
|
||||||
|
package = mkOption {
|
||||||
|
type = types.package;
|
||||||
|
default = pkgs.headscale;
|
||||||
|
defaultText = literalExpression "pkgs.headscale";
|
||||||
|
description = ''
|
||||||
|
Which headscale package to use for the running server.
|
||||||
|
'';
|
||||||
|
};
|
||||||
|
|
||||||
|
user = mkOption {
|
||||||
|
default = "headscale";
|
||||||
|
type = types.str;
|
||||||
|
description = ''
|
||||||
|
User account under which headscale runs.
|
||||||
|
<note><para>
|
||||||
|
If left as the default value this user will automatically be created
|
||||||
|
on system activation, otherwise you are responsible for
|
||||||
|
ensuring the user exists before the headscale service starts.
|
||||||
|
</para></note>
|
||||||
|
'';
|
||||||
|
};
|
||||||
|
|
||||||
|
group = mkOption {
|
||||||
|
default = "headscale";
|
||||||
|
type = types.str;
|
||||||
|
description = ''
|
||||||
|
Group under which headscale runs.
|
||||||
|
<note><para>
|
||||||
|
If left as the default value this group will automatically be created
|
||||||
|
on system activation, otherwise you are responsible for
|
||||||
|
ensuring the user exists before the headscale service starts.
|
||||||
|
</para></note>
|
||||||
|
'';
|
||||||
|
};
|
||||||
|
|
||||||
|
serverUrl = mkOption {
|
||||||
|
type = types.str;
|
||||||
|
default = "http://127.0.0.1:8080";
|
||||||
|
description = ''
|
||||||
|
The url clients will connect to.
|
||||||
|
'';
|
||||||
|
example = "https://myheadscale.example.com:443";
|
||||||
|
};
|
||||||
|
|
||||||
|
address = mkOption {
|
||||||
|
type = types.str;
|
||||||
|
default = "127.0.0.1";
|
||||||
|
description = ''
|
||||||
|
Listening address of headscale.
|
||||||
|
'';
|
||||||
|
example = "0.0.0.0";
|
||||||
|
};
|
||||||
|
|
||||||
|
port = mkOption {
|
||||||
|
type = types.port;
|
||||||
|
default = 8080;
|
||||||
|
description = ''
|
||||||
|
Listening port of headscale.
|
||||||
|
'';
|
||||||
|
example = 443;
|
||||||
|
};
|
||||||
|
|
||||||
|
privateKeyFile = mkOption {
|
||||||
|
type = types.path;
|
||||||
|
default = "${dataDir}/private.key";
|
||||||
|
description = ''
|
||||||
|
Path to private key file, generated automatically if it does not exist.
|
||||||
|
'';
|
||||||
|
};
|
||||||
|
|
||||||
|
derp = {
|
||||||
|
urls = mkOption {
|
||||||
|
type = types.listOf types.str;
|
||||||
|
default = [ "https://controlplane.tailscale.com/derpmap/default" ];
|
||||||
|
description = ''
|
||||||
|
List of urls containing DERP maps.
|
||||||
|
See <link xlink:href="https://tailscale.com/blog/how-tailscale-works/">How Tailscale works</link> for more information on DERP maps.
|
||||||
|
'';
|
||||||
|
};
|
||||||
|
|
||||||
|
paths = mkOption {
|
||||||
|
type = types.listOf types.path;
|
||||||
|
default = [ ];
|
||||||
|
description = ''
|
||||||
|
List of file paths containing DERP maps.
|
||||||
|
See <link xlink:href="https://tailscale.com/blog/how-tailscale-works/">How Tailscale works</link> for more information on DERP maps.
|
||||||
|
'';
|
||||||
|
};
|
||||||
|
|
||||||
|
|
||||||
|
autoUpdate = mkOption {
|
||||||
|
type = types.bool;
|
||||||
|
default = true;
|
||||||
|
description = ''
|
||||||
|
Whether to automatically update DERP maps on a set frequency.
|
||||||
|
'';
|
||||||
|
example = false;
|
||||||
|
};
|
||||||
|
|
||||||
|
updateFrequency = mkOption {
|
||||||
|
type = types.str;
|
||||||
|
default = "24h";
|
||||||
|
description = ''
|
||||||
|
Frequency to update DERP maps.
|
||||||
|
'';
|
||||||
|
example = "5m";
|
||||||
|
};
|
||||||
|
|
||||||
|
};
|
||||||
|
|
||||||
|
ephemeralNodeInactivityTimeout = mkOption {
|
||||||
|
type = types.str;
|
||||||
|
default = "30m";
|
||||||
|
description = ''
|
||||||
|
Time before an inactive ephemeral node is deleted.
|
||||||
|
'';
|
||||||
|
example = "5m";
|
||||||
|
};
|
||||||
|
|
||||||
|
database = {
|
||||||
|
type = mkOption {
|
||||||
|
type = types.enum [ "sqlite3" "postgres" ];
|
||||||
|
example = "postgres";
|
||||||
|
default = "sqlite3";
|
||||||
|
description = "Database engine to use.";
|
||||||
|
};
|
||||||
|
|
||||||
|
host = mkOption {
|
||||||
|
type = types.nullOr types.str;
|
||||||
|
default = null;
|
||||||
|
example = "127.0.0.1";
|
||||||
|
description = "Database host address.";
|
||||||
|
};
|
||||||
|
|
||||||
|
port = mkOption {
|
||||||
|
type = types.nullOr types.port;
|
||||||
|
default = null;
|
||||||
|
example = 3306;
|
||||||
|
description = "Database host port.";
|
||||||
|
};
|
||||||
|
|
||||||
|
name = mkOption {
|
||||||
|
type = types.nullOr types.str;
|
||||||
|
default = null;
|
||||||
|
example = "headscale";
|
||||||
|
description = "Database name.";
|
||||||
|
};
|
||||||
|
|
||||||
|
user = mkOption {
|
||||||
|
type = types.nullOr types.str;
|
||||||
|
default = null;
|
||||||
|
example = "headscale";
|
||||||
|
description = "Database user.";
|
||||||
|
};
|
||||||
|
|
||||||
|
passwordFile = mkOption {
|
||||||
|
type = types.nullOr types.path;
|
||||||
|
default = null;
|
||||||
|
example = "/run/keys/headscale-dbpassword";
|
||||||
|
description = ''
|
||||||
|
A file containing the password corresponding to
|
||||||
|
<option>database.user</option>.
|
||||||
|
'';
|
||||||
|
};
|
||||||
|
|
||||||
|
path = mkOption {
|
||||||
|
type = types.nullOr types.str;
|
||||||
|
default = "${dataDir}/db.sqlite";
|
||||||
|
description = "Path to the sqlite3 database file.";
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
logLevel = mkOption {
|
||||||
|
type = types.str;
|
||||||
|
default = "info";
|
||||||
|
description = ''
|
||||||
|
headscale log level.
|
||||||
|
'';
|
||||||
|
example = "debug";
|
||||||
|
};
|
||||||
|
|
||||||
|
dns = {
|
||||||
|
nameservers = mkOption {
|
||||||
|
type = types.listOf types.str;
|
||||||
|
default = [ "1.1.1.1" ];
|
||||||
|
description = ''
|
||||||
|
List of nameservers to pass to Tailscale clients.
|
||||||
|
'';
|
||||||
|
};
|
||||||
|
|
||||||
|
domains = mkOption {
|
||||||
|
type = types.listOf types.str;
|
||||||
|
default = [ ];
|
||||||
|
description = ''
|
||||||
|
Search domains to inject to Tailscale clients.
|
||||||
|
'';
|
||||||
|
example = [ "mydomain.internal" ];
|
||||||
|
};
|
||||||
|
|
||||||
|
magicDns = mkOption {
|
||||||
|
type = types.bool;
|
||||||
|
default = true;
|
||||||
|
description = ''
|
||||||
|
Whether to use [MagicDNS](https://tailscale.com/kb/1081/magicdns/).
|
||||||
|
Only works if there is at least a nameserver defined.
|
||||||
|
'';
|
||||||
|
example = false;
|
||||||
|
};
|
||||||
|
|
||||||
|
baseDomain = mkOption {
|
||||||
|
type = types.str;
|
||||||
|
default = "";
|
||||||
|
description = ''
|
||||||
|
Defines the base domain to create the hostnames for MagicDNS.
|
||||||
|
<option>baseDomain</option> must be a FQDNs, without the trailing dot.
|
||||||
|
The FQDN of the hosts will be
|
||||||
|
<literal>hostname.namespace.base_domain</literal> (e.g.
|
||||||
|
<literal>myhost.mynamespace.example.com</literal>).
|
||||||
|
'';
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
openIdConnect = {
|
||||||
|
issuer = mkOption {
|
||||||
|
type = types.str;
|
||||||
|
default = "";
|
||||||
|
description = ''
|
||||||
|
URL to OpenID issuer.
|
||||||
|
'';
|
||||||
|
example = "https://openid.example.com";
|
||||||
|
};
|
||||||
|
|
||||||
|
clientId = mkOption {
|
||||||
|
type = types.str;
|
||||||
|
default = "";
|
||||||
|
description = ''
|
||||||
|
OpenID Connect client ID.
|
||||||
|
'';
|
||||||
|
};
|
||||||
|
|
||||||
|
clientSecretFile = mkOption {
|
||||||
|
type = types.nullOr types.path;
|
||||||
|
default = null;
|
||||||
|
description = ''
|
||||||
|
Path to OpenID Connect client secret file.
|
||||||
|
'';
|
||||||
|
};
|
||||||
|
|
||||||
|
domainMap = mkOption {
|
||||||
|
type = types.attrsOf types.str;
|
||||||
|
default = { };
|
||||||
|
description = ''
|
||||||
|
Domain map is used to map incomming users (by their email) to
|
||||||
|
a namespace. The key can be a string, or regex.
|
||||||
|
'';
|
||||||
|
example = {
|
||||||
|
".*" = "default-namespace";
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
};
|
||||||
|
|
||||||
|
tls = {
|
||||||
|
letsencrypt = {
|
||||||
|
hostname = mkOption {
|
||||||
|
type = types.nullOr types.str;
|
||||||
|
default = "";
|
||||||
|
description = ''
|
||||||
|
Domain name to request a TLS certificate for.
|
||||||
|
'';
|
||||||
|
};
|
||||||
|
challengeType = mkOption {
|
||||||
|
type = types.enum [ "TLS_ALPN-01" "HTTP-01" ];
|
||||||
|
default = "HTTP-01";
|
||||||
|
description = ''
|
||||||
|
Type of ACME challenge to use, currently supported types:
|
||||||
|
<literal>HTTP-01</literal> or <literal>TLS_ALPN-01</literal>.
|
||||||
|
'';
|
||||||
|
};
|
||||||
|
httpListen = mkOption {
|
||||||
|
type = types.nullOr types.str;
|
||||||
|
default = ":http";
|
||||||
|
description = ''
|
||||||
|
When HTTP-01 challenge is chosen, letsencrypt must set up a
|
||||||
|
verification endpoint, and it will be listening on:
|
||||||
|
<literal>:http = port 80</literal>.
|
||||||
|
'';
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
certFile = mkOption {
|
||||||
|
type = types.nullOr types.path;
|
||||||
|
default = null;
|
||||||
|
description = ''
|
||||||
|
Path to already created certificate.
|
||||||
|
'';
|
||||||
|
};
|
||||||
|
keyFile = mkOption {
|
||||||
|
type = types.nullOr types.path;
|
||||||
|
default = null;
|
||||||
|
description = ''
|
||||||
|
Path to key for already created certificate.
|
||||||
|
'';
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
aclPolicyFile = mkOption {
|
||||||
|
type = types.nullOr types.path;
|
||||||
|
default = null;
|
||||||
|
description = ''
|
||||||
|
Path to a file containg ACL policies.
|
||||||
|
'';
|
||||||
|
};
|
||||||
|
|
||||||
|
settings = mkOption {
|
||||||
|
type = settingsFormat.type;
|
||||||
|
default = { };
|
||||||
|
description = ''
|
||||||
|
Overrides to <filename>config.yaml</filename> as a Nix attribute set.
|
||||||
|
This option is ideal for overriding settings not exposed as Nix options.
|
||||||
|
Check the <link xlink:href="https://github.com/juanfont/headscale/blob/main/config-example.yaml">example config</link>
|
||||||
|
for possible options.
|
||||||
|
'';
|
||||||
|
};
|
||||||
|
|
||||||
|
|
||||||
|
};
|
||||||
|
|
||||||
|
};
|
||||||
|
config = mkIf cfg.enable {
|
||||||
|
|
||||||
|
services.headscale.settings = {
|
||||||
|
server_url = mkDefault cfg.serverUrl;
|
||||||
|
listen_addr = mkDefault "${cfg.address}:${toString cfg.port}";
|
||||||
|
|
||||||
|
private_key_path = mkDefault cfg.privateKeyFile;
|
||||||
|
|
||||||
|
derp = {
|
||||||
|
urls = mkDefault cfg.derp.urls;
|
||||||
|
paths = mkDefault cfg.derp.paths;
|
||||||
|
auto_update_enable = mkDefault cfg.derp.autoUpdate;
|
||||||
|
update_frequency = mkDefault cfg.derp.updateFrequency;
|
||||||
|
};
|
||||||
|
|
||||||
|
# Turn off update checks since the origin of our package
|
||||||
|
# is nixpkgs and not Github.
|
||||||
|
disable_check_updates = true;
|
||||||
|
|
||||||
|
ephemeral_node_inactivity_timeout = mkDefault cfg.ephemeralNodeInactivityTimeout;
|
||||||
|
|
||||||
|
db_type = mkDefault cfg.database.type;
|
||||||
|
db_path = mkDefault cfg.database.path;
|
||||||
|
|
||||||
|
log_level = mkDefault cfg.logLevel;
|
||||||
|
|
||||||
|
dns_config = {
|
||||||
|
nameservers = mkDefault cfg.dns.nameservers;
|
||||||
|
domains = mkDefault cfg.dns.domains;
|
||||||
|
magic_dns = mkDefault cfg.dns.magicDns;
|
||||||
|
base_domain = mkDefault cfg.dns.baseDomain;
|
||||||
|
};
|
||||||
|
|
||||||
|
unix_socket = "${runDir}/headscale.sock";
|
||||||
|
|
||||||
|
# OpenID Connect
|
||||||
|
oidc = {
|
||||||
|
issuer = mkDefault cfg.openIdConnect.issuer;
|
||||||
|
client_id = mkDefault cfg.openIdConnect.clientId;
|
||||||
|
domain_map = mkDefault cfg.openIdConnect.domainMap;
|
||||||
|
};
|
||||||
|
|
||||||
|
tls_letsencrypt_cache_dir = "${dataDir}/.cache";
|
||||||
|
|
||||||
|
} // optionalAttrs (cfg.database.host != null) {
|
||||||
|
db_host = mkDefault cfg.database.host;
|
||||||
|
} // optionalAttrs (cfg.database.port != null) {
|
||||||
|
db_port = mkDefault cfg.database.port;
|
||||||
|
} // optionalAttrs (cfg.database.name != null) {
|
||||||
|
db_name = mkDefault cfg.database.name;
|
||||||
|
} // optionalAttrs (cfg.database.user != null) {
|
||||||
|
db_user = mkDefault cfg.database.user;
|
||||||
|
} // optionalAttrs (cfg.tls.letsencrypt.hostname != null) {
|
||||||
|
tls_letsencrypt_hostname = mkDefault cfg.tls.letsencrypt.hostname;
|
||||||
|
} // optionalAttrs (cfg.tls.letsencrypt.challengeType != null) {
|
||||||
|
tls_letsencrypt_challenge_type = mkDefault cfg.tls.letsencrypt.challengeType;
|
||||||
|
} // optionalAttrs (cfg.tls.letsencrypt.httpListen != null) {
|
||||||
|
tls_letsencrypt_listen = mkDefault cfg.tls.letsencrypt.httpListen;
|
||||||
|
} // optionalAttrs (cfg.tls.certFile != null) {
|
||||||
|
tls_cert_path = mkDefault cfg.tls.certFile;
|
||||||
|
} // optionalAttrs (cfg.tls.keyFile != null) {
|
||||||
|
tls_key_path = mkDefault cfg.tls.keyFile;
|
||||||
|
} // optionalAttrs (cfg.aclPolicyFile != null) {
|
||||||
|
acl_policy_path = mkDefault cfg.aclPolicyFile;
|
||||||
|
};
|
||||||
|
|
||||||
|
# Setup the headscale configuration in a known path in /etc to
|
||||||
|
# allow both the Server and the Client use it to find the socket
|
||||||
|
# for communication.
|
||||||
|
environment.etc."headscale/config.yaml".source = configFile;
|
||||||
|
|
||||||
|
users.groups.headscale = mkIf (cfg.group == "headscale") { };
|
||||||
|
|
||||||
|
users.users.headscale = mkIf (cfg.user == "headscale") {
|
||||||
|
description = "headscale user";
|
||||||
|
home = dataDir;
|
||||||
|
group = cfg.group;
|
||||||
|
isSystemUser = true;
|
||||||
|
};
|
||||||
|
|
||||||
|
systemd.services.headscale = {
|
||||||
|
description = "headscale coordination server for Tailscale";
|
||||||
|
after = [ "network-online.target" ];
|
||||||
|
wantedBy = [ "multi-user.target" ];
|
||||||
|
restartTriggers = [ configFile ];
|
||||||
|
|
||||||
|
script = ''
|
||||||
|
${optionalString (cfg.database.passwordFile != null) ''
|
||||||
|
export HEADSCALE_DB_PASS="$(head -n1 ${escapeShellArg cfg.database.passwordFile})"
|
||||||
|
''}
|
||||||
|
|
||||||
|
export HEADSCALE_OIDC_CLIENT_SECRET="$(head -n1 ${escapeShellArg cfg.openIdConnect.clientSecretFile})"
|
||||||
|
exec ${cfg.package}/bin/headscale serve
|
||||||
|
'';
|
||||||
|
|
||||||
|
serviceConfig =
|
||||||
|
let
|
||||||
|
capabilityBoundingSet = [ "CAP_CHOWN" ] ++ optional (cfg.port < 1024) "CAP_NET_BIND_SERVICE";
|
||||||
|
in
|
||||||
|
{
|
||||||
|
Restart = "always";
|
||||||
|
Type = "simple";
|
||||||
|
User = cfg.user;
|
||||||
|
Group = cfg.group;
|
||||||
|
|
||||||
|
# Hardening options
|
||||||
|
RuntimeDirectory = "headscale";
|
||||||
|
# Allow headscale group access so users can be added and use the CLI.
|
||||||
|
RuntimeDirectoryMode = "0750";
|
||||||
|
|
||||||
|
StateDirectory = "headscale";
|
||||||
|
StateDirectoryMode = "0750";
|
||||||
|
|
||||||
|
ProtectSystem = "strict";
|
||||||
|
ProtectHome = true;
|
||||||
|
PrivateTmp = true;
|
||||||
|
PrivateDevices = true;
|
||||||
|
ProtectKernelTunables = true;
|
||||||
|
ProtectControlGroups = true;
|
||||||
|
RestrictSUIDSGID = true;
|
||||||
|
PrivateMounts = true;
|
||||||
|
ProtectKernelModules = true;
|
||||||
|
ProtectKernelLogs = true;
|
||||||
|
ProtectHostname = true;
|
||||||
|
ProtectClock = true;
|
||||||
|
ProtectProc = "invisible";
|
||||||
|
ProcSubset = "pid";
|
||||||
|
RestrictNamespaces = true;
|
||||||
|
RemoveIPC = true;
|
||||||
|
UMask = "0077";
|
||||||
|
|
||||||
|
CapabilityBoundingSet = capabilityBoundingSet;
|
||||||
|
AmbientCapabilities = capabilityBoundingSet;
|
||||||
|
NoNewPrivileges = true;
|
||||||
|
LockPersonality = true;
|
||||||
|
RestrictRealtime = true;
|
||||||
|
SystemCallFilter = [ "@system-service" "~@priviledged" "@chown" ];
|
||||||
|
SystemCallArchitectures = "native";
|
||||||
|
RestrictAddressFamilies = "AF_INET AF_INET6 AF_UNIX";
|
||||||
|
};
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
meta.maintainers = with maintainers; [ kradalby ];
|
||||||
|
}
|
|
@ -4,6 +4,8 @@ with lib;
|
||||||
let
|
let
|
||||||
cfg = config.services.miniflux;
|
cfg = config.services.miniflux;
|
||||||
|
|
||||||
|
defaultAddress = "localhost:8080";
|
||||||
|
|
||||||
dbUser = "miniflux";
|
dbUser = "miniflux";
|
||||||
dbPassword = "miniflux";
|
dbPassword = "miniflux";
|
||||||
dbHost = "localhost";
|
dbHost = "localhost";
|
||||||
|
@ -31,7 +33,7 @@ in
|
||||||
{
|
{
|
||||||
options = {
|
options = {
|
||||||
services.miniflux = {
|
services.miniflux = {
|
||||||
enable = mkEnableOption "miniflux";
|
enable = mkEnableOption "miniflux and creates a local postgres database for it";
|
||||||
|
|
||||||
config = mkOption {
|
config = mkOption {
|
||||||
type = types.attrsOf types.str;
|
type = types.attrsOf types.str;
|
||||||
|
@ -45,6 +47,9 @@ in
|
||||||
Configuration for Miniflux, refer to
|
Configuration for Miniflux, refer to
|
||||||
<link xlink:href="https://miniflux.app/docs/configuration.html"/>
|
<link xlink:href="https://miniflux.app/docs/configuration.html"/>
|
||||||
for documentation on the supported values.
|
for documentation on the supported values.
|
||||||
|
|
||||||
|
Correct configuration for the database is already provided.
|
||||||
|
By default, listens on ${defaultAddress}.
|
||||||
'';
|
'';
|
||||||
};
|
};
|
||||||
|
|
||||||
|
@ -64,7 +69,7 @@ in
|
||||||
config = mkIf cfg.enable {
|
config = mkIf cfg.enable {
|
||||||
|
|
||||||
services.miniflux.config = {
|
services.miniflux.config = {
|
||||||
LISTEN_ADDR = mkDefault "localhost:8080";
|
LISTEN_ADDR = mkDefault defaultAddress;
|
||||||
DATABASE_URL = "postgresql://${dbUser}:${dbPassword}@${dbHost}/${dbName}?sslmode=disable";
|
DATABASE_URL = "postgresql://${dbUser}:${dbPassword}@${dbHost}/${dbName}?sslmode=disable";
|
||||||
RUN_MIGRATIONS = "1";
|
RUN_MIGRATIONS = "1";
|
||||||
CREATE_ADMIN = "1";
|
CREATE_ADMIN = "1";
|
||||||
|
|
|
@ -2,11 +2,11 @@
|
||||||
|
|
||||||
stdenv.mkDerivation rec {
|
stdenv.mkDerivation rec {
|
||||||
pname = "ergo";
|
pname = "ergo";
|
||||||
version = "4.0.16.2";
|
version = "4.0.20.1";
|
||||||
|
|
||||||
src = fetchurl {
|
src = fetchurl {
|
||||||
url = "https://github.com/ergoplatform/ergo/releases/download/v${version}/ergo-${version}.jar";
|
url = "https://github.com/ergoplatform/ergo/releases/download/v${version}/ergo-${version}.jar";
|
||||||
sha256 = "sha256-nAaNT5Rt/oLBA2pSJSinoLKMYJ0VZmuC0zoMYbMSAJQ=";
|
sha256 = "sha256-uKt0TNKcqiXiT5MnsguU5fTdUyFgV7Km5KjrFS/7tws=";
|
||||||
};
|
};
|
||||||
|
|
||||||
nativeBuildInputs = [ makeWrapper ];
|
nativeBuildInputs = [ makeWrapper ];
|
||||||
|
|
47
pkgs/applications/misc/edgetx/default.nix
Normal file
47
pkgs/applications/misc/edgetx/default.nix
Normal file
|
@ -0,0 +1,47 @@
|
||||||
|
{ lib, mkDerivation, fetchFromGitHub
|
||||||
|
, cmake, gcc-arm-embedded, python3Packages
|
||||||
|
, qtbase, qtmultimedia, qttranslations, SDL, gtest
|
||||||
|
, dfu-util
|
||||||
|
}:
|
||||||
|
|
||||||
|
mkDerivation rec {
|
||||||
|
pname = "edgetx";
|
||||||
|
version = "2.6.0";
|
||||||
|
|
||||||
|
src = fetchFromGitHub {
|
||||||
|
owner = "EdgeTX";
|
||||||
|
repo = pname;
|
||||||
|
rev = "v${version}";
|
||||||
|
fetchSubmodules = true;
|
||||||
|
sha256 = "sha256-TffHFgr3g7v4VnNSSlLITz4cYjHM6wE0aI85W1g4IFA=";
|
||||||
|
};
|
||||||
|
|
||||||
|
nativeBuildInputs = [ cmake gcc-arm-embedded python3Packages.pillow ];
|
||||||
|
|
||||||
|
buildInputs = [ qtbase qtmultimedia qttranslations SDL ];
|
||||||
|
|
||||||
|
postPatch = ''
|
||||||
|
sed -i companion/src/burnconfigdialog.cpp \
|
||||||
|
-e 's|/usr/.*bin/dfu-util|${dfu-util}/bin/dfu-util|'
|
||||||
|
'';
|
||||||
|
|
||||||
|
cmakeFlags = [
|
||||||
|
"-DGTEST_ROOT=${gtest.src}/googletest"
|
||||||
|
"-DQT_TRANSLATIONS_DIR=${qttranslations}/translations"
|
||||||
|
"-DDFU_UTIL_PATH=${dfu-util}/bin/dfu-util"
|
||||||
|
];
|
||||||
|
|
||||||
|
meta = with lib; {
|
||||||
|
description = "EdgeTX Companion transmitter support software";
|
||||||
|
longDescription = ''
|
||||||
|
EdgeTX Companion is used for many different tasks like loading EdgeTX
|
||||||
|
firmware to the radio, backing up model settings, editing settings and
|
||||||
|
running radio simulators.
|
||||||
|
'';
|
||||||
|
homepage = "https://edgetx.org/";
|
||||||
|
license = licenses.gpl2Only;
|
||||||
|
platforms = [ "i686-linux" "x86_64-linux" "aarch64-linux" ];
|
||||||
|
maintainers = with maintainers; [ elitak lopsided98 wucke13 ];
|
||||||
|
};
|
||||||
|
|
||||||
|
}
|
|
@ -1,20 +1,36 @@
|
||||||
{ lib, stdenv, python3Packages, radicale3 }:
|
{ lib
|
||||||
|
, stdenv
|
||||||
|
, python3
|
||||||
|
, radicale3
|
||||||
|
}:
|
||||||
|
|
||||||
python3Packages.buildPythonApplication rec {
|
let
|
||||||
|
python = python3.override {
|
||||||
|
packageOverrides = self: super: {
|
||||||
|
flask_wtf = super.flask_wtf.overridePythonAttrs (old: rec {
|
||||||
|
version = "0.15.1";
|
||||||
|
src = old.src.override {
|
||||||
|
inherit version;
|
||||||
|
sha256 = "ff177185f891302dc253437fe63081e7a46a4e99aca61dfe086fb23e54fff2dc";
|
||||||
|
};
|
||||||
|
});
|
||||||
|
};
|
||||||
|
};
|
||||||
|
in python.pkgs.buildPythonApplication rec {
|
||||||
pname = "etesync-dav";
|
pname = "etesync-dav";
|
||||||
version = "0.30.8";
|
version = "0.32.1";
|
||||||
|
|
||||||
src = python3Packages.fetchPypi {
|
src = python.pkgs.fetchPypi {
|
||||||
inherit pname version;
|
inherit pname version;
|
||||||
sha256 = "sha256-HBLQsq3B6TMdcnUt8ukbk3+S0Ed44+gePkpuGZ2AyC4=";
|
sha256 = "a4e2ee83932755d29ac39c1e74005ec289880fd2d4d2164f09fe2464a294d720";
|
||||||
};
|
};
|
||||||
|
|
||||||
propagatedBuildInputs = with python3Packages; [
|
propagatedBuildInputs = with python.pkgs; [
|
||||||
etebase
|
etebase
|
||||||
etesync
|
etesync
|
||||||
flask
|
flask
|
||||||
flask_wtf
|
flask_wtf
|
||||||
radicale3
|
(python.pkgs.toPythonModule (radicale3.override { python3 = python; }))
|
||||||
];
|
];
|
||||||
|
|
||||||
doCheck = false;
|
doCheck = false;
|
||||||
|
|
|
@ -13,13 +13,13 @@
|
||||||
|
|
||||||
python3Packages.buildPythonApplication rec {
|
python3Packages.buildPythonApplication rec {
|
||||||
pname = "nwg-panel";
|
pname = "nwg-panel";
|
||||||
version = "0.5.4";
|
version = "0.5.7";
|
||||||
|
|
||||||
src = fetchFromGitHub {
|
src = fetchFromGitHub {
|
||||||
owner = "nwg-piotr";
|
owner = "nwg-piotr";
|
||||||
repo = "nwg-panel";
|
repo = "nwg-panel";
|
||||||
rev = "v${version}";
|
rev = "v${version}";
|
||||||
sha256 = "0vl9vfgpa1byf9vxn03j58h9zcbjd1y83b0kgv97cxm2mhqz12dg";
|
sha256 = "1d3qh42cwayb5d9ymhfs2vrbg5x5x6x73hw77m3xb9y4vyhji85x";
|
||||||
};
|
};
|
||||||
|
|
||||||
# No tests
|
# No tests
|
||||||
|
|
|
@ -4,6 +4,10 @@
|
||||||
, callPackage
|
, callPackage
|
||||||
}:
|
}:
|
||||||
|
|
||||||
|
let makeurl = { pname, year, version }: "https://download.qoppa.com/${pname}/v${year}/${
|
||||||
|
builtins.replaceStrings [ "pdfstudio" "viewer" "." ] [ "PDFStudio" "Viewer" "_" ] "${pname}_v${version}"
|
||||||
|
}_linux64.deb";
|
||||||
|
in
|
||||||
{
|
{
|
||||||
pdfstudio = callPackage ./common.nix rec {
|
pdfstudio = callPackage ./common.nix rec {
|
||||||
pname = program;
|
pname = program;
|
||||||
|
@ -17,9 +21,7 @@
|
||||||
libgccjit #for libstdc++.so.6 and libgomp.so.1
|
libgccjit #for libstdc++.so.6 and libgomp.so.1
|
||||||
];
|
];
|
||||||
src = fetchurl {
|
src = fetchurl {
|
||||||
url = "https://download.qoppa.com/${pname}/v${year}/PDFStudio_v${
|
url = makeurl { inherit pname year version; };
|
||||||
builtins.replaceStrings [ "." ] [ "_" ] version
|
|
||||||
}_linux64.deb";
|
|
||||||
sha256 = "1188ll2qz58rr2slavqxisbz4q3fdzidpasb1p33926z0ym3rk45";
|
sha256 = "1188ll2qz58rr2slavqxisbz4q3fdzidpasb1p33926z0ym3rk45";
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
|
@ -33,9 +35,7 @@
|
||||||
PDF Studio Viewer is an easy to use, full-featured PDF editing software. This is the free edition. For the standard/pro edition, see the package pdfstudio.
|
PDF Studio Viewer is an easy to use, full-featured PDF editing software. This is the free edition. For the standard/pro edition, see the package pdfstudio.
|
||||||
'';
|
'';
|
||||||
src = fetchurl {
|
src = fetchurl {
|
||||||
url = "https://download.qoppa.com/${pname}/v${year}/PDFStudioViewer_v${
|
url = makeurl { inherit pname year version; };
|
||||||
builtins.replaceStrings [ "." ] [ "_" ] version
|
|
||||||
}_linux64.deb";
|
|
||||||
sha256 = "128k3fm8m8zdykx4s30g5m2zl7cgmvs4qinf1w525zh84v56agz6";
|
sha256 = "128k3fm8m8zdykx4s30g5m2zl7cgmvs4qinf1w525zh84v56agz6";
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
|
|
|
@ -5,13 +5,13 @@ buildGoModule rec {
|
||||||
/* Do not use "dev" as a version. If you do, Tilt will consider itself
|
/* Do not use "dev" as a version. If you do, Tilt will consider itself
|
||||||
running in development environment and try to serve assets from the
|
running in development environment and try to serve assets from the
|
||||||
source tree, which is not there once build completes. */
|
source tree, which is not there once build completes. */
|
||||||
version = "0.23.4";
|
version = "0.23.5";
|
||||||
|
|
||||||
src = fetchFromGitHub {
|
src = fetchFromGitHub {
|
||||||
owner = "tilt-dev";
|
owner = "tilt-dev";
|
||||||
repo = pname;
|
repo = pname;
|
||||||
rev = "v${version}";
|
rev = "v${version}";
|
||||||
sha256 = "sha256-SWofXsbkuirPvqgU639W8IQklafLKbThoZUzOzfYwdQ=";
|
sha256 = "sha256-qVybS+gRuTezX89NMWYQVWtUH6wnjB11HImejrzVHAc=";
|
||||||
};
|
};
|
||||||
vendorSha256 = null;
|
vendorSha256 = null;
|
||||||
|
|
||||||
|
|
|
@ -1,37 +0,0 @@
|
||||||
From ac9387271b2420a71f7d172f44354fc35adac504 Mon Sep 17 00:00:00 2001
|
|
||||||
From: Manuel Nickschas <sputnick@quassel-irc.org>
|
|
||||||
Date: Tue, 7 Jan 2020 18:34:54 +0100
|
|
||||||
Subject: [PATCH] common: Disable enum type stream operators for Qt >= 5.14
|
|
||||||
|
|
||||||
Starting from version 5.14, Qt provides stream operators for enum
|
|
||||||
types, which collide with the ones we ship in types.h. Disable
|
|
||||||
Quassel's stream operators when compiling against Qt 5.14 or later.
|
|
||||||
|
|
||||||
(cherry-picked from 579e559a6322209df7cd51c34801fecff5fe734b)
|
|
||||||
---
|
|
||||||
src/common/types.h | 2 ++
|
|
||||||
1 file changed, 2 insertions(+)
|
|
||||||
|
|
||||||
diff --git a/src/common/types.h b/src/common/types.h
|
|
||||||
index 467d9fb2..c4b9f364 100644
|
|
||||||
--- a/src/common/types.h
|
|
||||||
+++ b/src/common/types.h
|
|
||||||
@@ -140,6 +140,7 @@ Q_DECLARE_METATYPE(QHostAddress)
|
|
||||||
typedef QList<MsgId> MsgIdList;
|
|
||||||
typedef QList<BufferId> BufferIdList;
|
|
||||||
|
|
||||||
+#if QT_VERSION < QT_VERSION_CHECK(5, 14, 0)
|
|
||||||
/**
|
|
||||||
* Catch-all stream serialization operator for enum types.
|
|
||||||
*
|
|
||||||
@@ -169,6 +170,7 @@ QDataStream &operator>>(QDataStream &in, T &value) {
|
|
||||||
value = static_cast<T>(v);
|
|
||||||
return in;
|
|
||||||
}
|
|
||||||
+#endif
|
|
||||||
|
|
||||||
// Exceptions
|
|
||||||
|
|
||||||
--
|
|
||||||
2.26.2
|
|
||||||
|
|
|
@ -5,7 +5,7 @@
|
||||||
, static ? false # link statically
|
, static ? false # link statically
|
||||||
|
|
||||||
, lib, stdenv, fetchFromGitHub, cmake, makeWrapper, dconf
|
, lib, stdenv, fetchFromGitHub, cmake, makeWrapper, dconf
|
||||||
, mkDerivation, qtbase, qtscript
|
, mkDerivation, qtbase, boost, zlib, qtscript
|
||||||
, phonon, libdbusmenu, qca-qt5
|
, phonon, libdbusmenu, qca-qt5
|
||||||
|
|
||||||
, withKDE ? true # enable KDE integration
|
, withKDE ? true # enable KDE integration
|
||||||
|
@ -33,27 +33,21 @@ let
|
||||||
|
|
||||||
in (if !buildClient then stdenv.mkDerivation else mkDerivation) rec {
|
in (if !buildClient then stdenv.mkDerivation else mkDerivation) rec {
|
||||||
pname = "quassel${tag}";
|
pname = "quassel${tag}";
|
||||||
version = "0.13.1";
|
version = "0.14.0";
|
||||||
|
|
||||||
src = fetchFromGitHub {
|
src = fetchFromGitHub {
|
||||||
owner = "quassel";
|
owner = "quassel";
|
||||||
repo = "quassel";
|
repo = "quassel";
|
||||||
rev = version;
|
rev = version;
|
||||||
sha256 = "0z8p7iv90yrrjbh31cyxhpr6hsynfmi23rlayn7p2f6ki5az7yc3";
|
sha256 = "sha256-eulhNcyCmy9ryietOhT2yVJeJH+MMZRbTUo2XuTy9qU=";
|
||||||
};
|
};
|
||||||
|
|
||||||
patches = [
|
|
||||||
# fixes build with Qt 5.14
|
|
||||||
# source: https://github.com/quassel/quassel/pull/518/commits/8a46d983fc99204711cdff1e4c542e272fef45b9
|
|
||||||
./0001-common-Disable-enum-type-stream-operators-for-Qt-5.1.patch
|
|
||||||
];
|
|
||||||
|
|
||||||
# Prevent ``undefined reference to `qt_version_tag''' in SSL check
|
# Prevent ``undefined reference to `qt_version_tag''' in SSL check
|
||||||
NIX_CFLAGS_COMPILE = "-DQT_NO_VERSION_TAGGING=1";
|
NIX_CFLAGS_COMPILE = "-DQT_NO_VERSION_TAGGING=1";
|
||||||
|
|
||||||
nativeBuildInputs = [ cmake makeWrapper ];
|
nativeBuildInputs = [ cmake makeWrapper ];
|
||||||
buildInputs = [ qtbase ]
|
buildInputs = [ qtbase boost zlib ]
|
||||||
++ lib.optionals buildCore [qtscript qca-qt5]
|
++ lib.optionals buildCore [qtscript qca-qt5 ]
|
||||||
++ lib.optionals buildClient [libdbusmenu phonon]
|
++ lib.optionals buildClient [libdbusmenu phonon]
|
||||||
++ lib.optionals (buildClient && withKDE) [
|
++ lib.optionals (buildClient && withKDE) [
|
||||||
extra-cmake-modules kconfigwidgets kcoreaddons
|
extra-cmake-modules kconfigwidgets kcoreaddons
|
||||||
|
|
59
pkgs/applications/office/morgen/default.nix
Normal file
59
pkgs/applications/office/morgen/default.nix
Normal file
|
@ -0,0 +1,59 @@
|
||||||
|
{ lib, stdenv, fetchurl, dpkg, autoPatchelfHook, makeWrapper, electron
|
||||||
|
, nodePackages, alsa-lib, gtk3, libxshmfence, mesa, nss }:
|
||||||
|
|
||||||
|
stdenv.mkDerivation rec {
|
||||||
|
pname = "morgen";
|
||||||
|
version = "2.4.3";
|
||||||
|
|
||||||
|
src = fetchurl {
|
||||||
|
url = "https://download.todesktop.com/210203cqcj00tw1/morgen-${version}.deb";
|
||||||
|
sha256 = "sha256-IWGeb0+IiFNYJ+jQAzGYfQ5FnrbR6HIpynS9jgd5/mY=";
|
||||||
|
};
|
||||||
|
|
||||||
|
nativeBuildInputs = [
|
||||||
|
dpkg
|
||||||
|
autoPatchelfHook
|
||||||
|
makeWrapper
|
||||||
|
nodePackages.asar
|
||||||
|
];
|
||||||
|
|
||||||
|
buildInputs = [ alsa-lib gtk3 libxshmfence mesa nss ];
|
||||||
|
|
||||||
|
dontBuild = true;
|
||||||
|
dontConfigure = true;
|
||||||
|
|
||||||
|
unpackCmd = ''
|
||||||
|
dpkg-deb -x ${src} ./morgen-${pname}
|
||||||
|
'';
|
||||||
|
|
||||||
|
installPhase = ''
|
||||||
|
runHook preInstall
|
||||||
|
|
||||||
|
mv usr $out
|
||||||
|
mv opt $out
|
||||||
|
|
||||||
|
asar extract $out/opt/Morgen/resources/app.asar "$TMP/work"
|
||||||
|
# 1. Fixes path for todesktop-runtime-config.json
|
||||||
|
# 2. Fixes startup script
|
||||||
|
substituteInPlace $TMP/work/dist/main.js \
|
||||||
|
--replace "process.resourcesPath,\"todesktop-runtime-config.json" "\"$out/opt/Morgen/resources/todesktop-runtime-config.json" \
|
||||||
|
--replace "Exec=\"+process.execPath+\"" "Exec=$out/bin/morgen"
|
||||||
|
asar pack --unpack='{*.node,*.ftz,rect-overlay}' "$TMP/work" $out/opt/Morgen/resources/app.asar
|
||||||
|
|
||||||
|
substituteInPlace $out/share/applications/morgen.desktop \
|
||||||
|
--replace '/opt/Morgen' $out/bin
|
||||||
|
|
||||||
|
makeWrapper ${electron}/bin/electron $out/bin/morgen \
|
||||||
|
--add-flags $out/opt/Morgen/resources/app.asar
|
||||||
|
|
||||||
|
runHook postInstall
|
||||||
|
'';
|
||||||
|
|
||||||
|
meta = with lib; {
|
||||||
|
description = "All-in-one Calendars, Tasks and Scheduler";
|
||||||
|
homepage = "https://morgen.so/download";
|
||||||
|
license = licenses.unfree;
|
||||||
|
maintainers = with maintainers; [ wolfangaukang ];
|
||||||
|
platforms = [ "x86_64-linux" ];
|
||||||
|
};
|
||||||
|
}
|
|
@ -7,11 +7,11 @@
|
||||||
|
|
||||||
mkDerivation rec {
|
mkDerivation rec {
|
||||||
pname = "skrooge";
|
pname = "skrooge";
|
||||||
version = "2.26.1";
|
version = "2.27.0";
|
||||||
|
|
||||||
src = fetchurl {
|
src = fetchurl {
|
||||||
url = "https://download.kde.org/stable/skrooge/${pname}-${version}.tar.xz";
|
url = "https://download.kde.org/stable/skrooge/${pname}-${version}.tar.xz";
|
||||||
sha256 = "sha256-66hoA+FDTeMbNAInr9TlTSnwUywJQjTRz87MkdNYn5Q=";
|
sha256 = "sha256-xkl0UyJEDOeYOqqXf3woCDMb8ZyC2c5ChQdDFFERZxE=";
|
||||||
};
|
};
|
||||||
|
|
||||||
nativeBuildInputs = [
|
nativeBuildInputs = [
|
||||||
|
|
|
@ -10,11 +10,11 @@
|
||||||
|
|
||||||
mkDerivation rec {
|
mkDerivation rec {
|
||||||
pname = "zanshin";
|
pname = "zanshin";
|
||||||
version = "21.12.0";
|
version = "21.12.1";
|
||||||
|
|
||||||
src = fetchurl {
|
src = fetchurl {
|
||||||
url = "mirror://kde/stable/release-service/${version}/src/zanshin-${version}.tar.xz";
|
url = "mirror://kde/stable/release-service/${version}/src/zanshin-${version}.tar.xz";
|
||||||
sha256 = "sha256-l8W47tS7q747fkSAH3HJdwPsqjMfCyxzl3xJEeAXeh0=";
|
sha256 = "sha256-hYbJwmnD9i/SL5ET2t9YgPxJHJUpAbMZ4a62WljhpHw=";
|
||||||
};
|
};
|
||||||
|
|
||||||
nativeBuildInputs = [
|
nativeBuildInputs = [
|
||||||
|
|
22
pkgs/applications/science/physics/shtns/default.nix
Normal file
22
pkgs/applications/science/physics/shtns/default.nix
Normal file
|
@ -0,0 +1,22 @@
|
||||||
|
{ lib, stdenv, fetchgit, fftw }:
|
||||||
|
|
||||||
|
stdenv.mkDerivation rec {
|
||||||
|
pname = "shtns";
|
||||||
|
version = "3.5.1";
|
||||||
|
|
||||||
|
src = fetchgit {
|
||||||
|
url = "https://bitbucket.org/nschaeff/shtns";
|
||||||
|
rev = "v${version}";
|
||||||
|
sha256 = "1ajrplhv7a2dvb3cn3n638281w0bzdcydvvwbg64awbjg622mdpd";
|
||||||
|
};
|
||||||
|
|
||||||
|
buildInputs = [ fftw ];
|
||||||
|
|
||||||
|
meta = with lib; {
|
||||||
|
description = "High performance library for Spherical Harmonic Transform";
|
||||||
|
homepage = "https://nschaeff.bitbucket.io/shtns/";
|
||||||
|
license = licenses.cecill21;
|
||||||
|
maintainers = [ maintainers.bzizou ];
|
||||||
|
platforms = platforms.linux;
|
||||||
|
};
|
||||||
|
}
|
|
@ -22,9 +22,9 @@ stdenv.mkDerivation {
|
||||||
xcbutilwm
|
xcbutilwm
|
||||||
];
|
];
|
||||||
|
|
||||||
sourceRoot = let
|
prePatch = let
|
||||||
subdir = if stdenv.isDarwin then "osx" else "linux";
|
subdir = if stdenv.isDarwin then "osx" else "linux";
|
||||||
in "source/${subdir}";
|
in "cd ${subdir}";
|
||||||
|
|
||||||
makeFlags = [ "PREFIX=${placeholder "out"}" ];
|
makeFlags = [ "PREFIX=${placeholder "out"}" ];
|
||||||
|
|
||||||
|
|
|
@ -1,6 +1,6 @@
|
||||||
{
|
{
|
||||||
"commit": "3034b8f1052c41d5b3c571cb2bedb5f62bbede65",
|
"commit": "b233c8c0ee187788a69d929293a953cf89ffc012",
|
||||||
"url": "https://github.com/commercialhaskell/all-cabal-hashes/archive/3034b8f1052c41d5b3c571cb2bedb5f62bbede65.tar.gz",
|
"url": "https://github.com/commercialhaskell/all-cabal-hashes/archive/b233c8c0ee187788a69d929293a953cf89ffc012.tar.gz",
|
||||||
"sha256": "0kqga1mf7vr292jcaqw8qk4s1bjwc2z1wwjih5xwli3hkk584l20",
|
"sha256": "00mi9jxjbd9mk2pghj1ks9mjy9i0x50kcgi28iajq0kvxc97c9sp",
|
||||||
"msg": "Update from Hackage at 2022-01-24T10:21:35Z"
|
"msg": "Update from Hackage at 2022-01-27T16:52:24Z"
|
||||||
}
|
}
|
||||||
|
|
|
@ -20,9 +20,10 @@
|
||||||
# build-time dependency too.
|
# build-time dependency too.
|
||||||
buildTargetLlvmPackages, llvmPackages
|
buildTargetLlvmPackages, llvmPackages
|
||||||
|
|
||||||
, # If enabled, GHC will be built with the GPL-free but slower integer-simple
|
, # If enabled, GHC will be built with the GPL-free but slightly slower native
|
||||||
# library instead of the faster but GPLed integer-gmp library.
|
# bignum backend instead of the faster but GPLed gmp backend.
|
||||||
enableIntegerSimple ? !(lib.meta.availableOn stdenv.hostPlatform gmp), gmp
|
enableNativeBignum ? !(lib.meta.availableOn stdenv.hostPlatform gmp)
|
||||||
|
, gmp
|
||||||
|
|
||||||
, # If enabled, use -fPIC when compiling static libs.
|
, # If enabled, use -fPIC when compiling static libs.
|
||||||
enableRelocatedStaticLibs ? stdenv.targetPlatform != stdenv.hostPlatform
|
enableRelocatedStaticLibs ? stdenv.targetPlatform != stdenv.hostPlatform
|
||||||
|
@ -61,7 +62,7 @@
|
||||||
disableLargeAddressSpace ? stdenv.targetPlatform.isiOS
|
disableLargeAddressSpace ? stdenv.targetPlatform.isiOS
|
||||||
}:
|
}:
|
||||||
|
|
||||||
assert !enableIntegerSimple -> gmp != null;
|
assert !enableNativeBignum -> gmp != null;
|
||||||
|
|
||||||
# Cross cannot currently build the `haddock` program for silly reasons,
|
# Cross cannot currently build the `haddock` program for silly reasons,
|
||||||
# see note [HADDOCK_DOCS].
|
# see note [HADDOCK_DOCS].
|
||||||
|
@ -98,7 +99,7 @@ let
|
||||||
''
|
''
|
||||||
HADDOCK_DOCS = ${if enableHaddockProgram then "YES" else "NO"}
|
HADDOCK_DOCS = ${if enableHaddockProgram then "YES" else "NO"}
|
||||||
DYNAMIC_GHC_PROGRAMS = ${if enableShared then "YES" else "NO"}
|
DYNAMIC_GHC_PROGRAMS = ${if enableShared then "YES" else "NO"}
|
||||||
INTEGER_LIBRARY = ${if enableIntegerSimple then "integer-simple" else "integer-gmp"}
|
BIGNUM_BACKEND = ${if enableNativeBignum then "native" else "gmp"}
|
||||||
'' + lib.optionalString (targetPlatform != hostPlatform) ''
|
'' + lib.optionalString (targetPlatform != hostPlatform) ''
|
||||||
Stage1Only = ${if targetPlatform.system == hostPlatform.system then "NO" else "YES"}
|
Stage1Only = ${if targetPlatform.system == hostPlatform.system then "NO" else "YES"}
|
||||||
CrossCompilePrefix = ${targetPrefix}
|
CrossCompilePrefix = ${targetPrefix}
|
||||||
|
@ -114,7 +115,7 @@ let
|
||||||
# Splicer will pull out correct variations
|
# Splicer will pull out correct variations
|
||||||
libDeps = platform: lib.optional enableTerminfo ncurses
|
libDeps = platform: lib.optional enableTerminfo ncurses
|
||||||
++ [libffi]
|
++ [libffi]
|
||||||
++ lib.optional (!enableIntegerSimple) gmp
|
++ lib.optional (!enableNativeBignum) gmp
|
||||||
++ lib.optional (platform.libc != "glibc" && !targetPlatform.isWindows) libiconv;
|
++ lib.optional (platform.libc != "glibc" && !targetPlatform.isWindows) libiconv;
|
||||||
|
|
||||||
# TODO(@sternenseemann): is buildTarget LLVM unnecessary?
|
# TODO(@sternenseemann): is buildTarget LLVM unnecessary?
|
||||||
|
@ -152,7 +153,7 @@ let
|
||||||
# Makes debugging easier to see which variant is at play in `nix-store -q --tree`.
|
# Makes debugging easier to see which variant is at play in `nix-store -q --tree`.
|
||||||
variantSuffix = lib.concatStrings [
|
variantSuffix = lib.concatStrings [
|
||||||
(lib.optionalString stdenv.hostPlatform.isMusl "-musl")
|
(lib.optionalString stdenv.hostPlatform.isMusl "-musl")
|
||||||
(lib.optionalString enableIntegerSimple "-integer-simple")
|
(lib.optionalString enableNativeBignum "-native-bignum")
|
||||||
];
|
];
|
||||||
|
|
||||||
in
|
in
|
||||||
|
@ -251,7 +252,7 @@ stdenv.mkDerivation (rec {
|
||||||
"--with-system-libffi"
|
"--with-system-libffi"
|
||||||
"--with-ffi-includes=${targetPackages.libffi.dev}/include"
|
"--with-ffi-includes=${targetPackages.libffi.dev}/include"
|
||||||
"--with-ffi-libraries=${targetPackages.libffi.out}/lib"
|
"--with-ffi-libraries=${targetPackages.libffi.out}/lib"
|
||||||
] ++ lib.optionals (targetPlatform == hostPlatform && !enableIntegerSimple) [
|
] ++ lib.optionals (targetPlatform == hostPlatform && !enableNativeBignum) [
|
||||||
"--with-gmp-includes=${targetPackages.gmp.dev}/include"
|
"--with-gmp-includes=${targetPackages.gmp.dev}/include"
|
||||||
"--with-gmp-libraries=${targetPackages.gmp.out}/lib"
|
"--with-gmp-libraries=${targetPackages.gmp.out}/lib"
|
||||||
] ++ lib.optionals (targetPlatform == hostPlatform && hostPlatform.libc != "glibc" && !targetPlatform.isWindows) [
|
] ++ lib.optionals (targetPlatform == hostPlatform && hostPlatform.libc != "glibc" && !targetPlatform.isWindows) [
|
||||||
|
|
|
@ -21,9 +21,10 @@
|
||||||
# build-time dependency too.
|
# build-time dependency too.
|
||||||
buildTargetLlvmPackages, llvmPackages
|
buildTargetLlvmPackages, llvmPackages
|
||||||
|
|
||||||
, # If enabled, GHC will be built with the GPL-free but slower integer-simple
|
, # If enabled, GHC will be built with the GPL-free but slightly slower native
|
||||||
# library instead of the faster but GPLed integer-gmp library.
|
# bignum backend instead of the faster but GPLed gmp backend.
|
||||||
enableIntegerSimple ? !(lib.meta.availableOn stdenv.hostPlatform gmp), gmp
|
enableNativeBignum ? !(lib.meta.availableOn stdenv.hostPlatform gmp)
|
||||||
|
, gmp
|
||||||
|
|
||||||
, # If enabled, use -fPIC when compiling static libs.
|
, # If enabled, use -fPIC when compiling static libs.
|
||||||
enableRelocatedStaticLibs ? stdenv.targetPlatform != stdenv.hostPlatform
|
enableRelocatedStaticLibs ? stdenv.targetPlatform != stdenv.hostPlatform
|
||||||
|
@ -62,7 +63,7 @@
|
||||||
disableLargeAddressSpace ? stdenv.targetPlatform.isiOS
|
disableLargeAddressSpace ? stdenv.targetPlatform.isiOS
|
||||||
}:
|
}:
|
||||||
|
|
||||||
assert !enableIntegerSimple -> gmp != null;
|
assert !enableNativeBignum -> gmp != null;
|
||||||
|
|
||||||
# Cross cannot currently build the `haddock` program for silly reasons,
|
# Cross cannot currently build the `haddock` program for silly reasons,
|
||||||
# see note [HADDOCK_DOCS].
|
# see note [HADDOCK_DOCS].
|
||||||
|
@ -99,7 +100,7 @@ let
|
||||||
''
|
''
|
||||||
HADDOCK_DOCS = ${if enableHaddockProgram then "YES" else "NO"}
|
HADDOCK_DOCS = ${if enableHaddockProgram then "YES" else "NO"}
|
||||||
DYNAMIC_GHC_PROGRAMS = ${if enableShared then "YES" else "NO"}
|
DYNAMIC_GHC_PROGRAMS = ${if enableShared then "YES" else "NO"}
|
||||||
INTEGER_LIBRARY = ${if enableIntegerSimple then "integer-simple" else "integer-gmp"}
|
BIGNUM_BACKEND = ${if enableNativeBignum then "native" else "gmp"}
|
||||||
'' + lib.optionalString (targetPlatform != hostPlatform) ''
|
'' + lib.optionalString (targetPlatform != hostPlatform) ''
|
||||||
Stage1Only = ${if targetPlatform.system == hostPlatform.system then "NO" else "YES"}
|
Stage1Only = ${if targetPlatform.system == hostPlatform.system then "NO" else "YES"}
|
||||||
CrossCompilePrefix = ${targetPrefix}
|
CrossCompilePrefix = ${targetPrefix}
|
||||||
|
@ -115,7 +116,7 @@ let
|
||||||
# Splicer will pull out correct variations
|
# Splicer will pull out correct variations
|
||||||
libDeps = platform: lib.optional enableTerminfo ncurses
|
libDeps = platform: lib.optional enableTerminfo ncurses
|
||||||
++ [libffi]
|
++ [libffi]
|
||||||
++ lib.optional (!enableIntegerSimple) gmp
|
++ lib.optional (!enableNativeBignum) gmp
|
||||||
++ lib.optional (platform.libc != "glibc" && !targetPlatform.isWindows) libiconv;
|
++ lib.optional (platform.libc != "glibc" && !targetPlatform.isWindows) libiconv;
|
||||||
|
|
||||||
# TODO(@sternenseemann): is buildTarget LLVM unnecessary?
|
# TODO(@sternenseemann): is buildTarget LLVM unnecessary?
|
||||||
|
@ -153,7 +154,7 @@ let
|
||||||
# Makes debugging easier to see which variant is at play in `nix-store -q --tree`.
|
# Makes debugging easier to see which variant is at play in `nix-store -q --tree`.
|
||||||
variantSuffix = lib.concatStrings [
|
variantSuffix = lib.concatStrings [
|
||||||
(lib.optionalString stdenv.hostPlatform.isMusl "-musl")
|
(lib.optionalString stdenv.hostPlatform.isMusl "-musl")
|
||||||
(lib.optionalString enableIntegerSimple "-integer-simple")
|
(lib.optionalString enableNativeBignum "-native-bignum")
|
||||||
];
|
];
|
||||||
|
|
||||||
in
|
in
|
||||||
|
@ -252,7 +253,7 @@ stdenv.mkDerivation (rec {
|
||||||
"--with-system-libffi"
|
"--with-system-libffi"
|
||||||
"--with-ffi-includes=${targetPackages.libffi.dev}/include"
|
"--with-ffi-includes=${targetPackages.libffi.dev}/include"
|
||||||
"--with-ffi-libraries=${targetPackages.libffi.out}/lib"
|
"--with-ffi-libraries=${targetPackages.libffi.out}/lib"
|
||||||
] ++ lib.optionals (targetPlatform == hostPlatform && !enableIntegerSimple) [
|
] ++ lib.optionals (targetPlatform == hostPlatform && !enableNativeBignum) [
|
||||||
"--with-gmp-includes=${targetPackages.gmp.dev}/include"
|
"--with-gmp-includes=${targetPackages.gmp.dev}/include"
|
||||||
"--with-gmp-libraries=${targetPackages.gmp.out}/lib"
|
"--with-gmp-libraries=${targetPackages.gmp.out}/lib"
|
||||||
] ++ lib.optionals (targetPlatform == hostPlatform && hostPlatform.libc != "glibc" && !targetPlatform.isWindows) [
|
] ++ lib.optionals (targetPlatform == hostPlatform && hostPlatform.libc != "glibc" && !targetPlatform.isWindows) [
|
||||||
|
|
|
@ -201,6 +201,7 @@ broken-packages:
|
||||||
- arrow-list
|
- arrow-list
|
||||||
- arrowp
|
- arrowp
|
||||||
- arrowp-qq
|
- arrowp-qq
|
||||||
|
- arrow-utils
|
||||||
- ArrowVHDL
|
- ArrowVHDL
|
||||||
- artery
|
- artery
|
||||||
- artifact
|
- artifact
|
||||||
|
@ -5379,6 +5380,7 @@ broken-packages:
|
||||||
- wavefront-obj
|
- wavefront-obj
|
||||||
- weak-bag
|
- weak-bag
|
||||||
- weather-api
|
- weather-api
|
||||||
|
- web3-polkadot
|
||||||
- webapi
|
- webapi
|
||||||
- webapp
|
- webapp
|
||||||
- webauthn
|
- webauthn
|
||||||
|
|
|
@ -752,6 +752,7 @@ dont-distribute-packages:
|
||||||
- clckwrks-theme-clckwrks
|
- clckwrks-theme-clckwrks
|
||||||
- clckwrks-theme-geo-bootstrap
|
- clckwrks-theme-geo-bootstrap
|
||||||
- cless
|
- cless
|
||||||
|
- cleveland
|
||||||
- click-clack
|
- click-clack
|
||||||
- clifford
|
- clifford
|
||||||
- clippings
|
- clippings
|
||||||
|
@ -1771,6 +1772,7 @@ dont-distribute-packages:
|
||||||
- indentation-trifecta
|
- indentation-trifecta
|
||||||
- indexation
|
- indexation
|
||||||
- indieweb-algorithms
|
- indieweb-algorithms
|
||||||
|
- indigo
|
||||||
- infernu
|
- infernu
|
||||||
- inline-java
|
- inline-java
|
||||||
- inspector-wrecker
|
- inspector-wrecker
|
||||||
|
@ -2161,6 +2163,8 @@ dont-distribute-packages:
|
||||||
- moo
|
- moo
|
||||||
- moo-nad
|
- moo-nad
|
||||||
- morley
|
- morley
|
||||||
|
- morley-client
|
||||||
|
- morley-upgradeable
|
||||||
- morloc
|
- morloc
|
||||||
- morpheus-graphql-client_0_18_0
|
- morpheus-graphql-client_0_18_0
|
||||||
- morpheus-graphql_0_18_0
|
- morpheus-graphql_0_18_0
|
||||||
|
@ -3221,6 +3225,7 @@ dont-distribute-packages:
|
||||||
- web-routes-regular
|
- web-routes-regular
|
||||||
- web-routing
|
- web-routing
|
||||||
- web3
|
- web3
|
||||||
|
- web3-ethereum
|
||||||
- webcrank-wai
|
- webcrank-wai
|
||||||
- webdriver-w3c
|
- webdriver-w3c
|
||||||
- webserver
|
- webserver
|
||||||
|
|
832
pkgs/development/haskell-modules/hackage-packages.nix
generated
832
pkgs/development/haskell-modules/hackage-packages.nix
generated
File diff suppressed because it is too large
Load diff
|
@ -2,13 +2,13 @@
|
||||||
|
|
||||||
stdenv.mkDerivation rec {
|
stdenv.mkDerivation rec {
|
||||||
pname = "zef";
|
pname = "zef";
|
||||||
version = "0.13.4";
|
version = "0.13.6";
|
||||||
|
|
||||||
src = fetchFromGitHub {
|
src = fetchFromGitHub {
|
||||||
owner = "ugexe";
|
owner = "ugexe";
|
||||||
repo = "zef";
|
repo = "zef";
|
||||||
rev = "v${version}";
|
rev = "v${version}";
|
||||||
sha256 = "sha256-zTgXMICuLn612bmL5e6GP5aBQ4uOcSLfce0PCRYGob0=";
|
sha256 = "sha256-Bios3h2bcR6PntFt6JWF7l5u6gjKaljS8HsKfTf+0X8=";
|
||||||
};
|
};
|
||||||
|
|
||||||
nativeBuildInputs = [ makeWrapper ];
|
nativeBuildInputs = [ makeWrapper ];
|
||||||
|
|
|
@ -15,13 +15,13 @@
|
||||||
|
|
||||||
stdenv.mkDerivation rec {
|
stdenv.mkDerivation rec {
|
||||||
pname = "indilib";
|
pname = "indilib";
|
||||||
version = "1.9.3";
|
version = "1.9.4";
|
||||||
|
|
||||||
src = fetchFromGitHub {
|
src = fetchFromGitHub {
|
||||||
owner = "indilib";
|
owner = "indilib";
|
||||||
repo = "indi";
|
repo = "indi";
|
||||||
rev = "v${version}";
|
rev = "v${version}";
|
||||||
sha256 = "sha256-Ik62kbOetA2vSMpnwrSiNRNJqOgmqlCB2+KNhpBo9TA=";
|
sha256 = "sha256-U3Q0WUEDRn0zfBIdHXFp5Zcaf+M6HrSFnpeu5aAkjks=";
|
||||||
};
|
};
|
||||||
|
|
||||||
nativeBuildInputs = [
|
nativeBuildInputs = [
|
||||||
|
|
|
@ -1,5 +1,6 @@
|
||||||
{ cmake
|
{ cmake
|
||||||
, fetchFromGitHub
|
, fetchFromGitHub
|
||||||
|
, fetchpatch
|
||||||
, sqlite
|
, sqlite
|
||||||
, postgresql
|
, postgresql
|
||||||
, boost
|
, boost
|
||||||
|
@ -17,6 +18,14 @@ stdenv.mkDerivation rec {
|
||||||
sha256 = "sha256-NE0ApbX8HG2VAQ9cg9+kX3kJQ4PR1XvWL9BlT8NphmE=";
|
sha256 = "sha256-NE0ApbX8HG2VAQ9cg9+kX3kJQ4PR1XvWL9BlT8NphmE=";
|
||||||
};
|
};
|
||||||
|
|
||||||
|
patches = [
|
||||||
|
(fetchpatch {
|
||||||
|
name = "fix-backend-search-path.patch";
|
||||||
|
url = "https://github.com/SOCI/soci/commit/56c93afc467bdba8ffbe68739eea76059ea62f7a.patch";
|
||||||
|
sha256 = "sha256-nC/39pn3Cv5e65GgIfF3l64/AbCsfZHPUPIWETZFZAY=";
|
||||||
|
})
|
||||||
|
];
|
||||||
|
|
||||||
# Do not build static libraries
|
# Do not build static libraries
|
||||||
cmakeFlags = [ "-DSOCI_STATIC=OFF" "-DCMAKE_CXX_STANDARD=11" ];
|
cmakeFlags = [ "-DSOCI_STATIC=OFF" "-DCMAKE_CXX_STANDARD=11" ];
|
||||||
|
|
||||||
|
|
|
@ -13,8 +13,11 @@ buildPecl {
|
||||||
sha256 = "sha256-Dw1+pYJmZ3U2+rgSOEkx4a6HB8FebSr7YZodOjSipjI=";
|
sha256 = "sha256-Dw1+pYJmZ3U2+rgSOEkx4a6HB8FebSr7YZodOjSipjI=";
|
||||||
};
|
};
|
||||||
|
|
||||||
|
prePatch = ''
|
||||||
|
cd ext
|
||||||
|
'';
|
||||||
|
|
||||||
buildInputs = [ libmaxminddb ];
|
buildInputs = [ libmaxminddb ];
|
||||||
sourceRoot = "source/ext";
|
|
||||||
|
|
||||||
meta = with lib; {
|
meta = with lib; {
|
||||||
description = "C extension that is a drop-in replacement for MaxMind\\Db\\Reader";
|
description = "C extension that is a drop-in replacement for MaxMind\\Db\\Reader";
|
||||||
|
|
|
@ -4,11 +4,11 @@
|
||||||
|
|
||||||
buildPythonPackage rec {
|
buildPythonPackage rec {
|
||||||
pname = "treq";
|
pname = "treq";
|
||||||
version = "21.5.0";
|
version = "22.1.0";
|
||||||
|
|
||||||
src = fetchPypi {
|
src = fetchPypi {
|
||||||
inherit pname version;
|
inherit pname version;
|
||||||
sha256 = "02ea86383fc4b57539c45a965eaa1e9fd28302cdf382d21da8430050c97be9b8";
|
sha256 = "sha256-d1WBYEkZo9echFQBWYoP0HDKvG3oOEBHLY6fpxXy02w=";
|
||||||
};
|
};
|
||||||
|
|
||||||
propagatedBuildInputs = [
|
propagatedBuildInputs = [
|
||||||
|
|
|
@ -5,12 +5,12 @@
|
||||||
|
|
||||||
buildPythonPackage rec {
|
buildPythonPackage rec {
|
||||||
pname = "types-urllib3";
|
pname = "types-urllib3";
|
||||||
version = "1.26.7";
|
version = "1.26.8";
|
||||||
format = "setuptools";
|
format = "setuptools";
|
||||||
|
|
||||||
src = fetchPypi {
|
src = fetchPypi {
|
||||||
inherit pname version;
|
inherit pname version;
|
||||||
hash = "sha256-z9H7vkuppgXtFIKUAIqsinuLdHJlHRzDV9UHrlli49I=";
|
hash = "sha256-qg3iaJPxOFI9VVK7sCOCbAzH6ldJ2AwWk8V6q3tV9Gk=";
|
||||||
};
|
};
|
||||||
|
|
||||||
# Module doesn't have tests
|
# Module doesn't have tests
|
||||||
|
|
|
@ -2,15 +2,15 @@
|
||||||
|
|
||||||
buildGoModule rec {
|
buildGoModule rec {
|
||||||
pname = "konstraint";
|
pname = "konstraint";
|
||||||
version = "0.15.1";
|
version = "0.16.0";
|
||||||
|
|
||||||
src = fetchFromGitHub {
|
src = fetchFromGitHub {
|
||||||
owner = "plexsystems";
|
owner = "plexsystems";
|
||||||
repo = pname;
|
repo = pname;
|
||||||
rev = "v${version}";
|
rev = "v${version}";
|
||||||
sha256 = "sha256-vt8/hYsThBoAxMglF8pjdVphmkbHXsuzaHFJhnGXdU4=";
|
sha256 = "sha256-j1rVkI5hXYtY0jtP+i/yRw1sS3iN3KyVI4gV9fNdj/E=";
|
||||||
};
|
};
|
||||||
vendorSha256 = "sha256-3m+mN90Edb/yMgVmkokRQrDM2EdB7cb2opL0QZJ8L+U=";
|
vendorSha256 = "sha256-oYIUeHMEK55mCkf5cb5ECCU5y6tUZAM258sINrBl9kM=";
|
||||||
|
|
||||||
# Exclude go within .github folder
|
# Exclude go within .github folder
|
||||||
excludedPackages = ".github";
|
excludedPackages = ".github";
|
||||||
|
|
|
@ -19,11 +19,11 @@ let
|
||||||
|
|
||||||
in buildPythonApplication rec {
|
in buildPythonApplication rec {
|
||||||
pname = "pipenv";
|
pname = "pipenv";
|
||||||
version = "2021.11.23";
|
version = "2022.1.8";
|
||||||
|
|
||||||
src = fetchPypi {
|
src = fetchPypi {
|
||||||
inherit pname version;
|
inherit pname version;
|
||||||
sha256 = "1bde859e8bbd1d21d503fd995bc0170048d6da7686ab885f074592c99a16e8f3";
|
sha256 = "f84d7119239b22ab2ac2b8fbc7d619d83cf41135206d72a17c4f151cda529fd0";
|
||||||
};
|
};
|
||||||
|
|
||||||
LC_ALL = "en_US.UTF-8";
|
LC_ALL = "en_US.UTF-8";
|
||||||
|
|
|
@ -1,32 +0,0 @@
|
||||||
{ lib, stdenv, fetchurl, python2, wxGTK29, mupen64plus, SDL, libX11, libGLU, libGL
|
|
||||||
, wafHook }:
|
|
||||||
|
|
||||||
stdenv.mkDerivation rec {
|
|
||||||
pname = "wxmupen64plus";
|
|
||||||
version = "0.3";
|
|
||||||
|
|
||||||
src = fetchurl {
|
|
||||||
url = "https://bitbucket.org/auria/wxmupen64plus/get/${version}.tar.bz2";
|
|
||||||
sha256 = "1mnxi4k011dd300k35li2p6x4wccwi6im21qz8dkznnz397ps67c";
|
|
||||||
};
|
|
||||||
|
|
||||||
nativeBuildInputs = [ wafHook ];
|
|
||||||
buildInputs = [ python2 wxGTK29 SDL libX11 libGLU libGL ];
|
|
||||||
|
|
||||||
preConfigure = ''
|
|
||||||
tar xf ${mupen64plus.src}
|
|
||||||
APIDIR=$(eval echo `pwd`/mupen64plus*/source/mupen64plus-core/src/api)
|
|
||||||
export CXXFLAGS="-I${libX11.dev}/include/X11 -DLIBDIR=\\\"${mupen64plus}/lib/\\\""
|
|
||||||
export LDFLAGS="-lwx_gtk2u_adv-2.9"
|
|
||||||
|
|
||||||
wafConfigureFlagsArray+=("--mupenapi=$APIDIR" "--wxconfig=`type -P wx-config`")
|
|
||||||
'';
|
|
||||||
|
|
||||||
NIX_CFLAGS_COMPILE = "-fpermissive";
|
|
||||||
|
|
||||||
meta = {
|
|
||||||
description = "GUI for the Mupen64Plus 2.0 emulator";
|
|
||||||
license = lib.licenses.gpl2Plus;
|
|
||||||
homepage = "https://bitbucket.org/auria/wxmupen64plus/wiki/Home";
|
|
||||||
};
|
|
||||||
}
|
|
File diff suppressed because it is too large
Load diff
|
@ -796,7 +796,7 @@ self: super: {
|
||||||
libiconv
|
libiconv
|
||||||
];
|
];
|
||||||
|
|
||||||
cargoSha256 = "sha256-4VXXQjGmGGQXgfzSOvFnQS+iQjidj0FjaNKZ3VzBqw0=";
|
cargoSha256 = "sha256-y4yQ8Zv9bpfOyQrBX/TAuVYHhDsXdj0rh8nHJonxgcU=";
|
||||||
};
|
};
|
||||||
in
|
in
|
||||||
''
|
''
|
||||||
|
|
|
@ -203,7 +203,6 @@ github/copilot.vim
|
||||||
gleam-lang/gleam.vim
|
gleam-lang/gleam.vim
|
||||||
glepnir/dashboard-nvim
|
glepnir/dashboard-nvim
|
||||||
glepnir/galaxyline.nvim
|
glepnir/galaxyline.nvim
|
||||||
glepnir/lspsaga.nvim
|
|
||||||
glepnir/oceanic-material
|
glepnir/oceanic-material
|
||||||
glepnir/zephyr-nvim
|
glepnir/zephyr-nvim
|
||||||
glts/vim-textobj-comment
|
glts/vim-textobj-comment
|
||||||
|
@ -779,6 +778,7 @@ tamago324/compe-zsh
|
||||||
tamago324/lir.nvim
|
tamago324/lir.nvim
|
||||||
tami5/compe-conjure
|
tami5/compe-conjure
|
||||||
tami5/lispdocs.nvim
|
tami5/lispdocs.nvim
|
||||||
|
tami5/lspsaga.nvim
|
||||||
tami5/sqlite.lua
|
tami5/sqlite.lua
|
||||||
tbastos/vim-lua
|
tbastos/vim-lua
|
||||||
tbodt/deoplete-tabnine
|
tbodt/deoplete-tabnine
|
||||||
|
|
|
@ -66,6 +66,8 @@ stdenv.mkDerivation rec {
|
||||||
./busybox-in-store.patch
|
./busybox-in-store.patch
|
||||||
] ++ lib.optional (stdenv.hostPlatform != stdenv.buildPlatform) ./clang-cross.patch;
|
] ++ lib.optional (stdenv.hostPlatform != stdenv.buildPlatform) ./clang-cross.patch;
|
||||||
|
|
||||||
|
separateDebugInfo = true;
|
||||||
|
|
||||||
postPatch = "patchShebangs .";
|
postPatch = "patchShebangs .";
|
||||||
|
|
||||||
configurePhase = ''
|
configurePhase = ''
|
||||||
|
@ -120,6 +122,8 @@ stdenv.mkDerivation rec {
|
||||||
makeFlagsArray+=("CC=${stdenv.cc.targetPrefix}cc -isystem ${musl.dev}/include -B${musl}/lib -L${musl}/lib")
|
makeFlagsArray+=("CC=${stdenv.cc.targetPrefix}cc -isystem ${musl.dev}/include -B${musl}/lib -L${musl}/lib")
|
||||||
'';
|
'';
|
||||||
|
|
||||||
|
makeFlags = [ "SKIP_STRIP=y" ];
|
||||||
|
|
||||||
postInstall = ''
|
postInstall = ''
|
||||||
sed -e '
|
sed -e '
|
||||||
1 a busybox() { '$out'/bin/busybox "$@"; }\
|
1 a busybox() { '$out'/bin/busybox "$@"; }\
|
||||||
|
|
|
@ -1,17 +1,32 @@
|
||||||
{ lib, stdenv, fetchurl, pkg-config, numactl, ncurses, check }:
|
{ lib, stdenv, fetchFromGitHub, fetchpatch, autoreconfHook, pkg-config, numactl, ncurses, check }:
|
||||||
|
|
||||||
stdenv.mkDerivation rec {
|
stdenv.mkDerivation rec {
|
||||||
pname = "numatop";
|
pname = "numatop";
|
||||||
version = "2.1";
|
version = "2.2";
|
||||||
src = fetchurl {
|
src = fetchFromGitHub {
|
||||||
url = "https://github.com/intel/${pname}/releases/download/v${version}/${pname}-v${version}.tar.xz";
|
owner = "intel";
|
||||||
sha256 = "1s7psq1xyswj0lpx10zg5lnppav2xy9safkfx3rssrs9c2fp5d76";
|
repo = "numatop";
|
||||||
|
rev = "v${version}";
|
||||||
|
sha256 = "sha256-GJvTwqgx34ZW10eIJj/xiKe3ZkAfs7GlJImz8jrnjfI=";
|
||||||
};
|
};
|
||||||
|
|
||||||
nativeBuildInputs = [ pkg-config ];
|
nativeBuildInputs = [ autoreconfHook pkg-config ];
|
||||||
buildInputs = [ numactl ncurses ];
|
buildInputs = [ numactl ncurses ];
|
||||||
checkInputs = [ check ];
|
checkInputs = [ check ];
|
||||||
|
|
||||||
|
patches = [
|
||||||
|
(fetchpatch {
|
||||||
|
url = "https://github.com/intel/numatop/pull/54.patch";
|
||||||
|
sha256 = "sha256-TbMLv7TT9T8wE4uJ1a/AroyPPwrwL0eX5IBLsh9GTTM=";
|
||||||
|
name = "fix-string-operations.patch";
|
||||||
|
})
|
||||||
|
(fetchpatch {
|
||||||
|
url = "https://github.com/intel/numatop/pull/64.patch";
|
||||||
|
sha256 = "sha256-IevbSFJRTS5iQ5apHOVXzF67f3LJaW6j7DySFmVuyiM=";
|
||||||
|
name = "fix-format-strings-mvwprintw.patch";
|
||||||
|
})
|
||||||
|
];
|
||||||
|
|
||||||
doCheck = true;
|
doCheck = true;
|
||||||
|
|
||||||
meta = with lib; {
|
meta = with lib; {
|
||||||
|
@ -20,8 +35,8 @@ stdenv.mkDerivation rec {
|
||||||
license = licenses.bsd3;
|
license = licenses.bsd3;
|
||||||
maintainers = with maintainers; [ dtzWill ];
|
maintainers = with maintainers; [ dtzWill ];
|
||||||
platforms = [
|
platforms = [
|
||||||
{ kernel.name = "linux"; cpu.family = "x86"; }
|
"i686-linux" "x86_64-linux"
|
||||||
{ kernel.name = "linux"; cpu.family = "power"; }
|
"powerpc64-linux" "powerpc64le-linux"
|
||||||
];
|
];
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
|
|
@ -8,12 +8,12 @@ let
|
||||||
_kernel = kernel;
|
_kernel = kernel;
|
||||||
pythonEnv = python3.withPackages (ps: with ps; [ six ]);
|
pythonEnv = python3.withPackages (ps: with ps; [ six ]);
|
||||||
in stdenv.mkDerivation rec {
|
in stdenv.mkDerivation rec {
|
||||||
version = "2.15.1";
|
version = "2.16.2";
|
||||||
pname = "openvswitch";
|
pname = "openvswitch";
|
||||||
|
|
||||||
src = fetchurl {
|
src = fetchurl {
|
||||||
url = "https://www.openvswitch.org/releases/${pname}-${version}.tar.gz";
|
url = "https://www.openvswitch.org/releases/${pname}-${version}.tar.gz";
|
||||||
sha256 = "0vgijwycf3wvzv9v811jrfr5rlwmihlxwpf16spl6k9n6zaswysw";
|
sha256 = "sha256-A6xMMpmzjlbAtNTCejKclYsAOgjztUigo8qLmU8tSTQ=";
|
||||||
};
|
};
|
||||||
|
|
||||||
kernel = optional (_kernel != null) _kernel.dev;
|
kernel = optional (_kernel != null) _kernel.dev;
|
||||||
|
|
|
@ -2,16 +2,16 @@
|
||||||
|
|
||||||
buildGoModule rec {
|
buildGoModule rec {
|
||||||
pname = "gitlab-pages";
|
pname = "gitlab-pages";
|
||||||
version = "1.48.0";
|
version = "1.49.0";
|
||||||
|
|
||||||
src = fetchFromGitLab {
|
src = fetchFromGitLab {
|
||||||
owner = "gitlab-org";
|
owner = "gitlab-org";
|
||||||
repo = "gitlab-pages";
|
repo = "gitlab-pages";
|
||||||
rev = "v${version}";
|
rev = "v${version}";
|
||||||
sha256 = "sha256-oSimHF4qiI2zcMSx51qxs88AcrrewHIbhaRW8s4Ut7Q=";
|
sha256 = "sha256-9orJEt0w0ORHKEOpp40Aubj/pfnNO/A3oHEgWIdk+vM=";
|
||||||
};
|
};
|
||||||
|
|
||||||
vendorSha256 = "sha256-dzYO1yAQSVJmDJvjB5XPRBiYCk+ko1n928CTtUXbHBc=";
|
vendorSha256 = "sha256-/dmEsoeB3UDOBZ/9rbnywRtpXVKaJKGF6xPeWTA4PPE=";
|
||||||
subPackages = [ "." ];
|
subPackages = [ "." ];
|
||||||
|
|
||||||
meta = with lib; {
|
meta = with lib; {
|
||||||
|
|
|
@ -2,12 +2,12 @@
|
||||||
|
|
||||||
stdenv.mkDerivation rec {
|
stdenv.mkDerivation rec {
|
||||||
pname = "atheme";
|
pname = "atheme";
|
||||||
version = "7.2.11";
|
version = "7.2.12";
|
||||||
|
|
||||||
src = fetchgit {
|
src = fetchgit {
|
||||||
url = "https://github.com/atheme/atheme.git";
|
url = "https://github.com/atheme/atheme.git";
|
||||||
rev = "v${version}";
|
rev = "v${version}";
|
||||||
sha256 = "15fs48cgzxblh2g4abl5v647ndfx9hg8cih2x67v3y7s9wz68wk2";
|
sha256 = "sha256-KAC1ZPNo4TqfVryKOYYef8cRWRgFmyEdvl1bgvpGNiM=";
|
||||||
leaveDotGit = true;
|
leaveDotGit = true;
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|
|
@ -6,13 +6,13 @@
|
||||||
}:
|
}:
|
||||||
stdenv.mkDerivation rec {
|
stdenv.mkDerivation rec {
|
||||||
pname = "klipper";
|
pname = "klipper";
|
||||||
version = "unstable-2021-12-24";
|
version = "unstable-2022-01-09";
|
||||||
|
|
||||||
src = fetchFromGitHub {
|
src = fetchFromGitHub {
|
||||||
owner = "KevinOConnor";
|
owner = "KevinOConnor";
|
||||||
repo = "klipper";
|
repo = "klipper";
|
||||||
rev = "247cd753e283e70a9949e76d0ba669d99c0eb144";
|
rev = "6e6ad7b5201d3452aa605f4ae852c51239c2c7d8";
|
||||||
sha256 = "sha256-65wxhE/XqNK6ly+fxZFLjtImvpJlgU54RStUve40CJA=";
|
sha256 = "sha256-cflcGweEjB0xj2LhYJzyvqFSQen2vhYXlL7lz/HoGaM=";
|
||||||
};
|
};
|
||||||
|
|
||||||
sourceRoot = "source/klippy";
|
sourceRoot = "source/klippy";
|
||||||
|
|
|
@ -2,13 +2,13 @@
|
||||||
|
|
||||||
python3.pkgs.buildPythonApplication rec {
|
python3.pkgs.buildPythonApplication rec {
|
||||||
pname = "radicale";
|
pname = "radicale";
|
||||||
version = "3.1.0";
|
version = "3.1.3";
|
||||||
|
|
||||||
src = fetchFromGitHub {
|
src = fetchFromGitHub {
|
||||||
owner = "Kozea";
|
owner = "Kozea";
|
||||||
repo = "Radicale";
|
repo = "Radicale";
|
||||||
rev = "v${version}";
|
rev = "v${version}";
|
||||||
hash = "sha256-LtPv+3FQMGC2YP2+1cSPZVUIzrUhteJTl58+JdvGcQg=";
|
hash = "sha256-a1oapCktJPvNO+MTsB9COtxSFB/ZIZvJiuqX+s+lncY=";
|
||||||
};
|
};
|
||||||
|
|
||||||
postPatch = ''
|
postPatch = ''
|
||||||
|
@ -36,6 +36,6 @@ python3.pkgs.buildPythonApplication rec {
|
||||||
homepage = "https://radicale.org/v3.html";
|
homepage = "https://radicale.org/v3.html";
|
||||||
description = "CalDAV and CardDAV server";
|
description = "CalDAV and CardDAV server";
|
||||||
license = licenses.gpl3Plus;
|
license = licenses.gpl3Plus;
|
||||||
maintainers = with maintainers; [ dotlambda ];
|
maintainers = with maintainers; [ dotlambda erictapen ];
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
|
|
@ -2,11 +2,11 @@
|
||||||
|
|
||||||
stdenv.mkDerivation rec {
|
stdenv.mkDerivation rec {
|
||||||
pname = "serviio";
|
pname = "serviio";
|
||||||
version = "2.1";
|
version = "2.2.1";
|
||||||
|
|
||||||
src = fetchurl {
|
src = fetchurl {
|
||||||
url = "http://download.serviio.org/releases/${pname}-${version}-linux.tar.gz";
|
url = "http://download.serviio.org/releases/${pname}-${version}-linux.tar.gz";
|
||||||
sha256 = "0mxpdyhjf4w83q8ssmvpxm95hw4x7lfkh48vvdablccfndh82x2i";
|
sha256 = "sha256-uRRWKMv4f2b1yIE9OnXDIZAmcoqw/8F0z1LOesQBsyQ=";
|
||||||
};
|
};
|
||||||
|
|
||||||
installPhase = ''
|
installPhase = ''
|
||||||
|
|
|
@ -2,11 +2,11 @@
|
||||||
|
|
||||||
stdenv.mkDerivation rec {
|
stdenv.mkDerivation rec {
|
||||||
pname = "abcMIDI";
|
pname = "abcMIDI";
|
||||||
version = "2022.01.13";
|
version = "2022.01.28";
|
||||||
|
|
||||||
src = fetchzip {
|
src = fetchzip {
|
||||||
url = "https://ifdo.ca/~seymour/runabc/${pname}-${version}.zip";
|
url = "https://ifdo.ca/~seymour/runabc/${pname}-${version}.zip";
|
||||||
hash = "sha256-jXXUdPAmU6JcnqWBnzc9tfjEyLSdYxZZJh4w4iSCD1w=";
|
hash = "sha256-+g5oKUfm6vRuRQfOx0QDueYMabgScL8Mfw5GJcXQztg=";
|
||||||
};
|
};
|
||||||
|
|
||||||
meta = with lib; {
|
meta = with lib; {
|
||||||
|
|
|
@ -2,18 +2,18 @@
|
||||||
|
|
||||||
buildGoModule rec {
|
buildGoModule rec {
|
||||||
pname = "cloud-sql-proxy";
|
pname = "cloud-sql-proxy";
|
||||||
version = "1.27.1";
|
version = "1.28.0";
|
||||||
|
|
||||||
src = fetchFromGitHub {
|
src = fetchFromGitHub {
|
||||||
owner = "GoogleCloudPlatform";
|
owner = "GoogleCloudPlatform";
|
||||||
repo = "cloudsql-proxy";
|
repo = "cloudsql-proxy";
|
||||||
rev = "v${version}";
|
rev = "v${version}";
|
||||||
sha256 = "sha256-xVPs7D639KY2ryDZpivineH4yZSNXi78FWk2SFKX1sk=";
|
sha256 = "sha256-XA74rZ477Mwf8u0KLkFngfwiJexS10vh++ST6VtkcVg=";
|
||||||
};
|
};
|
||||||
|
|
||||||
subPackages = [ "cmd/cloud_sql_proxy" ];
|
subPackages = [ "cmd/cloud_sql_proxy" ];
|
||||||
|
|
||||||
vendorSha256 = "sha256-913GJ/rPvDavQQMqDDTe4gBXziPPeQRPpUUG3DAz96g=";
|
vendorSha256 = "sha256-ZXWhADfzvHcEW3IZlPyau5nHEXBJRH8aTvb3zCKl/LE=";
|
||||||
|
|
||||||
checkFlags = [ "-short" ];
|
checkFlags = [ "-short" ];
|
||||||
|
|
||||||
|
|
|
@ -2,7 +2,7 @@
|
||||||
|
|
||||||
stdenv.mkDerivation rec {
|
stdenv.mkDerivation rec {
|
||||||
pname = "boundary";
|
pname = "boundary";
|
||||||
version = "0.7.1";
|
version = "0.7.3";
|
||||||
|
|
||||||
src =
|
src =
|
||||||
let
|
let
|
||||||
|
@ -14,9 +14,9 @@ stdenv.mkDerivation rec {
|
||||||
x86_64-darwin = "darwin_amd64";
|
x86_64-darwin = "darwin_amd64";
|
||||||
};
|
};
|
||||||
sha256 = selectSystem {
|
sha256 = selectSystem {
|
||||||
x86_64-linux = "sha256-5m5ckeX3gVY82q9aQWusnq3o/+UBPJSPDdISL86OfV8=";
|
x86_64-linux = "sha256-9WEvGU4VfJ1781DlvdJhpdzY4djoSRWu6ZzfOpBvKJQ=";
|
||||||
aarch64-linux = "sha256-+dnQh89kg3JcDL8sucMceCMRFyUjoAIYuZtDM8AUMYw=";
|
aarch64-linux = "sha256-QLjewB1FeYHVehM1U81GzyewWns40IlVEFWgzWP+2Vw=";
|
||||||
x86_64-darwin = "sha256-ZoWW8y048+5Ru3s7lUxLTMxuITFBC9AgwqafyHPDc54=";
|
x86_64-darwin = "sha256-YxPkZnU8EBvRWBMsB0jifS63tJ7LQibgtwTbqosC/fg=";
|
||||||
};
|
};
|
||||||
in
|
in
|
||||||
fetchzip {
|
fetchzip {
|
||||||
|
|
|
@ -4,7 +4,7 @@ with lib;
|
||||||
|
|
||||||
buildGoModule rec {
|
buildGoModule rec {
|
||||||
pname = "flannel";
|
pname = "flannel";
|
||||||
version = "0.15.1";
|
version = "0.16.1";
|
||||||
rev = "v${version}";
|
rev = "v${version}";
|
||||||
|
|
||||||
vendorSha256 = null;
|
vendorSha256 = null;
|
||||||
|
@ -13,7 +13,7 @@ buildGoModule rec {
|
||||||
inherit rev;
|
inherit rev;
|
||||||
owner = "flannel-io";
|
owner = "flannel-io";
|
||||||
repo = "flannel";
|
repo = "flannel";
|
||||||
sha256 = "1p4rz4kdiif8i78zgxhw6dd0c1bq159f6l1idvig5apph7zi2bwm";
|
sha256 = "sha256-5NrULpbf3PStzoywLyrfM5qup43idzeHCMRSuNLXR3g=";
|
||||||
};
|
};
|
||||||
|
|
||||||
ldflags = [ "-X github.com/flannel-io/flannel/version.Version=${rev}" ];
|
ldflags = [ "-X github.com/flannel-io/flannel/version.Version=${rev}" ];
|
||||||
|
|
|
@ -2,11 +2,11 @@
|
||||||
|
|
||||||
stdenv.mkDerivation rec {
|
stdenv.mkDerivation rec {
|
||||||
pname = "i2p";
|
pname = "i2p";
|
||||||
version = "1.5.0";
|
version = "1.6.1";
|
||||||
|
|
||||||
src = fetchurl {
|
src = fetchurl {
|
||||||
url = "https://download.i2p2.de/releases/${version}/i2psource_${version}.tar.bz2";
|
url = "https://download.i2p2.de/releases/${version}/i2psource_${version}.tar.bz2";
|
||||||
sha256 = "sha256-JuX02VsaB2aHD5ezDlfJqOmGkCecO/CRmOMO/6vsxFA=";
|
sha256 = "sha256-cZYGxMtRDeT+dPJLv6U5EacFMYIfwe55op49luqhZzM=";
|
||||||
};
|
};
|
||||||
|
|
||||||
buildInputs = [ jdk ant gettext which ];
|
buildInputs = [ jdk ant gettext which ];
|
||||||
|
|
|
@ -2,7 +2,7 @@
|
||||||
|
|
||||||
buildGoModule rec {
|
buildGoModule rec {
|
||||||
pname = "spire";
|
pname = "spire";
|
||||||
version = "1.1.2";
|
version = "1.2.0";
|
||||||
|
|
||||||
outputs = [ "out" "agent" "server" ];
|
outputs = [ "out" "agent" "server" ];
|
||||||
|
|
||||||
|
@ -10,10 +10,10 @@ buildGoModule rec {
|
||||||
owner = "spiffe";
|
owner = "spiffe";
|
||||||
repo = pname;
|
repo = pname;
|
||||||
rev = "v${version}";
|
rev = "v${version}";
|
||||||
sha256 = "sha256-MX2kbdLj72S2WBceUW/3ps34Bcsf/VArK8RN4r13wQY=";
|
sha256 = "01ph9jzh18bnidrsbnnxm3gxh0cgfllnjvf7a5haqz51lm6a9pny";
|
||||||
};
|
};
|
||||||
|
|
||||||
vendorSha256 = "sha256-ZRcXMNKhNY3W5fV9q/V7xsnODoG6KWHrzpWte9hx/Ms=";
|
vendorSha256 = "17d845lwlbk19lsc937c22b1l0ikimhlagknm2i7mn8s8xrs57q8";
|
||||||
|
|
||||||
subPackages = [ "cmd/spire-agent" "cmd/spire-server" ];
|
subPackages = [ "cmd/spire-agent" "cmd/spire-server" ];
|
||||||
|
|
||||||
|
|
|
@ -1101,6 +1101,7 @@ mapAliases ({
|
||||||
winswitch = throw "winswitch has been removed from nixpkgs."; # added 2019-12-10
|
winswitch = throw "winswitch has been removed from nixpkgs."; # added 2019-12-10
|
||||||
wireshark-gtk = throw "wireshark-gtk is not supported anymore. Use wireshark-qt or wireshark-cli instead."; # added 2019-11-18
|
wireshark-gtk = throw "wireshark-gtk is not supported anymore. Use wireshark-qt or wireshark-cli instead."; # added 2019-11-18
|
||||||
wireguard = wireguard-tools; # added 2018-05-19
|
wireguard = wireguard-tools; # added 2018-05-19
|
||||||
|
wxmupen64plus = throw "wxmupen64plus was removed because the upstream disappeared."; # 2022-01-31
|
||||||
morituri = whipper; # added 2018-09-13
|
morituri = whipper; # added 2018-09-13
|
||||||
xbmc-retroarch-advanced-launchers = kodi-retroarch-advanced-launchers; # added 2021-11-19
|
xbmc-retroarch-advanced-launchers = kodi-retroarch-advanced-launchers; # added 2021-11-19
|
||||||
xp-pen-g430 = pentablet-driver; # added 2020-05-03
|
xp-pen-g430 = pentablet-driver; # added 2020-05-03
|
||||||
|
|
|
@ -7903,6 +7903,10 @@ with pkgs;
|
||||||
|
|
||||||
mole = callPackage ../tools/networking/mole { };
|
mole = callPackage ../tools/networking/mole { };
|
||||||
|
|
||||||
|
morgen = callPackage ../applications/office/morgen {
|
||||||
|
electron = electron_15;
|
||||||
|
};
|
||||||
|
|
||||||
mosh = callPackage ../tools/networking/mosh { };
|
mosh = callPackage ../tools/networking/mosh { };
|
||||||
|
|
||||||
mpage = callPackage ../tools/text/mpage { };
|
mpage = callPackage ../tools/text/mpage { };
|
||||||
|
@ -27474,6 +27478,8 @@ with pkgs;
|
||||||
|
|
||||||
mozjpeg = callPackage ../applications/graphics/mozjpeg { };
|
mozjpeg = callPackage ../applications/graphics/mozjpeg { };
|
||||||
|
|
||||||
|
edgetx = libsForQt5.callPackage ../applications/misc/edgetx { };
|
||||||
|
|
||||||
easytag = callPackage ../applications/audio/easytag { };
|
easytag = callPackage ../applications/audio/easytag { };
|
||||||
|
|
||||||
mp3gain = callPackage ../applications/audio/mp3gain { };
|
mp3gain = callPackage ../applications/audio/mp3gain { };
|
||||||
|
@ -32297,6 +32303,8 @@ with pkgs;
|
||||||
|
|
||||||
sherpa = callPackage ../applications/science/physics/sherpa {};
|
sherpa = callPackage ../applications/science/physics/sherpa {};
|
||||||
|
|
||||||
|
shtns = callPackage ../applications/science/physics/shtns { };
|
||||||
|
|
||||||
xfitter = callPackage ../applications/science/physics/xfitter {};
|
xfitter = callPackage ../applications/science/physics/xfitter {};
|
||||||
|
|
||||||
xflr5 = libsForQt5.callPackage ../applications/science/physics/xflr5 { };
|
xflr5 = libsForQt5.callPackage ../applications/science/physics/xflr5 { };
|
||||||
|
@ -34111,8 +34119,6 @@ with pkgs;
|
||||||
|
|
||||||
wraith = callPackage ../applications/networking/irc/wraith { };
|
wraith = callPackage ../applications/networking/irc/wraith { };
|
||||||
|
|
||||||
wxmupen64plus = callPackage ../misc/emulators/wxmupen64plus { };
|
|
||||||
|
|
||||||
wxsqlite3 = callPackage ../development/libraries/wxsqlite3 {
|
wxsqlite3 = callPackage ../development/libraries/wxsqlite3 {
|
||||||
wxGTK = wxGTK30;
|
wxGTK = wxGTK30;
|
||||||
inherit (darwin.apple_sdk.frameworks) Cocoa;
|
inherit (darwin.apple_sdk.frameworks) Cocoa;
|
||||||
|
|
|
@ -12,10 +12,14 @@ let
|
||||||
"ghcjs810"
|
"ghcjs810"
|
||||||
"integer-simple"
|
"integer-simple"
|
||||||
"native-bignum"
|
"native-bignum"
|
||||||
|
"ghc902"
|
||||||
|
"ghc921"
|
||||||
"ghcHEAD"
|
"ghcHEAD"
|
||||||
];
|
];
|
||||||
|
|
||||||
nativeBignumIncludes = [
|
nativeBignumIncludes = [
|
||||||
|
"ghc902"
|
||||||
|
"ghc921"
|
||||||
"ghcHEAD"
|
"ghcHEAD"
|
||||||
];
|
];
|
||||||
|
|
||||||
|
|
|
@ -729,11 +729,20 @@ let
|
||||||
|
|
||||||
Appcpanminus = buildPerlPackage {
|
Appcpanminus = buildPerlPackage {
|
||||||
pname = "App-cpanminus";
|
pname = "App-cpanminus";
|
||||||
version = "1.7044";
|
version = "1.7045";
|
||||||
src = fetchurl {
|
src = fetchurl {
|
||||||
url = "mirror://cpan/authors/id/M/MI/MIYAGAWA/App-cpanminus-1.7044.tar.gz";
|
url = "mirror://cpan/authors/id/M/MI/MIYAGAWA/App-cpanminus-1.7045.tar.gz";
|
||||||
sha256 = "9b60767fe40752ef7a9d3f13f19060a63389a5c23acc3e9827e19b75500f81f3";
|
sha256 = "1779w07zxlgfk35s24ksr7k9azd5yl8sbb48y1aaph7y4gf4lkmc";
|
||||||
};
|
};
|
||||||
|
# Use TLS endpoints for downloads and metadata by default
|
||||||
|
preConfigure = ''
|
||||||
|
substituteInPlace bin/cpanm \
|
||||||
|
--replace http://www.cpan.org https://www.cpan.org \
|
||||||
|
--replace http://backpan.perl.org https://backpan.perl.org \
|
||||||
|
--replace http://fastapi.metacpan.org https://fastapi.metacpan.org \
|
||||||
|
--replace http://cpanmetadb.plackperl.org https://cpanmetadb.plackperl.org
|
||||||
|
'';
|
||||||
|
propagatedBuildInputs = [ IOSocketSSL ];
|
||||||
meta = {
|
meta = {
|
||||||
homepage = "https://github.com/miyagawa/cpanminus";
|
homepage = "https://github.com/miyagawa/cpanminus";
|
||||||
description = "Get, unpack, build and install modules from CPAN";
|
description = "Get, unpack, build and install modules from CPAN";
|
||||||
|
|
|
@ -398,8 +398,8 @@ let
|
||||||
jobs.pkgsMusl.haskell.compiler.ghc921
|
jobs.pkgsMusl.haskell.compiler.ghc921
|
||||||
jobs.pkgsMusl.haskell.compiler.ghcHEAD
|
jobs.pkgsMusl.haskell.compiler.ghcHEAD
|
||||||
jobs.pkgsMusl.haskell.compiler.integer-simple.ghc8107
|
jobs.pkgsMusl.haskell.compiler.integer-simple.ghc8107
|
||||||
jobs.pkgsMusl.haskell.compiler.integer-simple.ghc902
|
jobs.pkgsMusl.haskell.compiler.native-bignum.ghc902
|
||||||
jobs.pkgsMusl.haskell.compiler.integer-simple.ghc921
|
jobs.pkgsMusl.haskell.compiler.native-bignum.ghc921
|
||||||
jobs.pkgsMusl.haskell.compiler.native-bignum.ghcHEAD
|
jobs.pkgsMusl.haskell.compiler.native-bignum.ghcHEAD
|
||||||
];
|
];
|
||||||
};
|
};
|
||||||
|
|
Loading…
Reference in a new issue