Merge branch 'staging-next' into staging
This commit is contained in:
commit
54757b35c1
2
.github/CODEOWNERS
vendored
2
.github/CODEOWNERS
vendored
|
@ -100,7 +100,7 @@
|
||||||
|
|
||||||
# Rust
|
# Rust
|
||||||
/pkgs/development/compilers/rust @Mic92 @LnL7 @zowoq
|
/pkgs/development/compilers/rust @Mic92 @LnL7 @zowoq
|
||||||
/pkgs/build-support/rust @andir @zowoq
|
/pkgs/build-support/rust @andir @danieldk @zowoq
|
||||||
|
|
||||||
# Darwin-related
|
# Darwin-related
|
||||||
/pkgs/stdenv/darwin @NixOS/darwin-maintainers
|
/pkgs/stdenv/darwin @NixOS/darwin-maintainers
|
||||||
|
|
|
@ -80,6 +80,33 @@ The fetcher will verify that the `Cargo.lock` file is in sync with the `src`
|
||||||
attribute, and fail the build if not. It will also will compress the vendor
|
attribute, and fail the build if not. It will also will compress the vendor
|
||||||
directory into a tar.gz archive.
|
directory into a tar.gz archive.
|
||||||
|
|
||||||
|
The tarball with vendored dependencies contains a directory with the
|
||||||
|
package's `name`, which is normally composed of `pname` and
|
||||||
|
`version`. This means that the vendored dependencies hash
|
||||||
|
(`cargoSha256`/`cargoHash`) is dependent on the package name and
|
||||||
|
version. The `cargoDepsName` attribute can be used to use another name
|
||||||
|
for the directory of vendored dependencies. For example, the hash can
|
||||||
|
be made invariant to the version by setting `cargoDepsName` to
|
||||||
|
`pname`:
|
||||||
|
|
||||||
|
```nix
|
||||||
|
rustPlatform.buildRustPackage rec {
|
||||||
|
pname = "broot";
|
||||||
|
version = "1.2.0";
|
||||||
|
|
||||||
|
src = fetchCrate {
|
||||||
|
inherit pname version;
|
||||||
|
sha256 = "1mqaynrqaas82f5957lx31x80v74zwmwmjxxlbywajb61vh00d38";
|
||||||
|
};
|
||||||
|
|
||||||
|
cargoHash = "sha256-JmBZcDVYJaK1cK05cxx5BrnGWp4t8ca6FLUbvIot67s=";
|
||||||
|
cargoDepsName = pname;
|
||||||
|
|
||||||
|
# ...
|
||||||
|
}
|
||||||
|
```
|
||||||
|
|
||||||
|
|
||||||
### Cross compilation
|
### Cross compilation
|
||||||
|
|
||||||
By default, Rust packages are compiled for the host platform, just like any
|
By default, Rust packages are compiled for the host platform, just like any
|
||||||
|
|
|
@ -151,26 +151,26 @@
|
||||||
</listitem>
|
</listitem>
|
||||||
<listitem>
|
<listitem>
|
||||||
<para>
|
<para>
|
||||||
It is also possible to whitelist and blacklist licenses that are specifically acceptable or not acceptable, using <literal>whitelistedLicenses</literal> and <literal>blacklistedLicenses</literal>, respectively.
|
It is also possible to allow and block licenses that are specifically acceptable or not acceptable, using <literal>allowlistedLicenses</literal> and <literal>blocklistedLicenses</literal>, respectively.
|
||||||
</para>
|
</para>
|
||||||
<para>
|
<para>
|
||||||
The following example configuration whitelists the licenses <literal>amd</literal> and <literal>wtfpl</literal>:
|
The following example configuration allowlists the licenses <literal>amd</literal> and <literal>wtfpl</literal>:
|
||||||
<programlisting>
|
<programlisting>
|
||||||
{
|
{
|
||||||
whitelistedLicenses = with lib.licenses; [ amd wtfpl ];
|
allowlistedLicenses = with lib.licenses; [ amd wtfpl ];
|
||||||
}
|
}
|
||||||
</programlisting>
|
</programlisting>
|
||||||
</para>
|
</para>
|
||||||
<para>
|
<para>
|
||||||
The following example configuration blacklists the <literal>gpl3Only</literal> and <literal>agpl3Only</literal> licenses:
|
The following example configuration blocklists the <literal>gpl3Only</literal> and <literal>agpl3Only</literal> licenses:
|
||||||
<programlisting>
|
<programlisting>
|
||||||
{
|
{
|
||||||
blacklistedLicenses = with lib.licenses; [ agpl3Only gpl3Only ];
|
blocklistedLicenses = with lib.licenses; [ agpl3Only gpl3Only ];
|
||||||
}
|
}
|
||||||
</programlisting>
|
</programlisting>
|
||||||
</para>
|
</para>
|
||||||
<para>
|
<para>
|
||||||
Note that <literal>whitelistedLicenses</literal> only applies to unfree licenses unless <literal>allowUnfree</literal> is enabled. It is not a generic whitelist for all types of licenses. <literal>blacklistedLicenses</literal> applies to all licenses.
|
Note that <literal>allowlistedLicenses</literal> only applies to unfree licenses unless <literal>allowUnfree</literal> is enabled. It is not a generic allowlist for all types of licenses. <literal>blocklistedLicenses</literal> applies to all licenses.
|
||||||
</para>
|
</para>
|
||||||
</listitem>
|
</listitem>
|
||||||
</itemizedlist>
|
</itemizedlist>
|
||||||
|
|
|
@ -7203,6 +7203,12 @@
|
||||||
githubId = 157610;
|
githubId = 157610;
|
||||||
name = "Piotr Bogdan";
|
name = "Piotr Bogdan";
|
||||||
};
|
};
|
||||||
|
pborzenkov = {
|
||||||
|
email = "pavel@borzenkov.net";
|
||||||
|
github = "pborzenkov";
|
||||||
|
githubId = 434254;
|
||||||
|
name = "Pavel Borzenkov";
|
||||||
|
};
|
||||||
pblkt = {
|
pblkt = {
|
||||||
email = "pebblekite@gmail.com";
|
email = "pebblekite@gmail.com";
|
||||||
github = "pblkt";
|
github = "pblkt";
|
||||||
|
|
|
@ -100,6 +100,12 @@
|
||||||
<link linkend="sec-custom-ifnames">Assigning custom names</link> section
|
<link linkend="sec-custom-ifnames">Assigning custom names</link> section
|
||||||
of the NixOS manual for an example using networkd links.
|
of the NixOS manual for an example using networkd links.
|
||||||
</para>
|
</para>
|
||||||
|
</listitem>
|
||||||
|
<listitem>
|
||||||
|
<para>
|
||||||
|
The <option>security.hideProcessInformation</option> module has been removed.
|
||||||
|
It was broken since the switch to cgroups-v2.
|
||||||
|
</para>
|
||||||
</listitem>
|
</listitem>
|
||||||
<listitem>
|
<listitem>
|
||||||
<para>
|
<para>
|
||||||
|
|
|
@ -144,11 +144,16 @@ in
|
||||||
''}
|
''}
|
||||||
'';
|
'';
|
||||||
|
|
||||||
systemd.services.systemd-vconsole-setup =
|
systemd.services.reload-systemd-vconsole-setup =
|
||||||
{
|
{ description = "Reset console on configuration changes";
|
||||||
before = optional config.services.xserver.enable "display-manager.service";
|
wantedBy = [ "multi-user.target" ];
|
||||||
after = [ "systemd-udev-settle.service" ];
|
|
||||||
restartTriggers = [ vconsoleConf consoleEnv ];
|
restartTriggers = [ vconsoleConf consoleEnv ];
|
||||||
|
reloadIfChanged = true;
|
||||||
|
serviceConfig =
|
||||||
|
{ RemainAfterExit = true;
|
||||||
|
ExecStart = "${pkgs.coreutils}/bin/true";
|
||||||
|
ExecReload = "/run/current-system/systemd/bin/systemctl restart systemd-vconsole-setup";
|
||||||
|
};
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -207,7 +207,6 @@
|
||||||
./security/dhparams.nix
|
./security/dhparams.nix
|
||||||
./security/duosec.nix
|
./security/duosec.nix
|
||||||
./security/google_oslogin.nix
|
./security/google_oslogin.nix
|
||||||
./security/hidepid.nix
|
|
||||||
./security/lock-kernel-modules.nix
|
./security/lock-kernel-modules.nix
|
||||||
./security/misc.nix
|
./security/misc.nix
|
||||||
./security/oath.nix
|
./security/oath.nix
|
||||||
|
@ -257,6 +256,8 @@
|
||||||
./services/backup/tsm.nix
|
./services/backup/tsm.nix
|
||||||
./services/backup/zfs-replication.nix
|
./services/backup/zfs-replication.nix
|
||||||
./services/backup/znapzend.nix
|
./services/backup/znapzend.nix
|
||||||
|
./services/blockchain/ethereum/geth.nix
|
||||||
|
./services/backup/zrepl.nix
|
||||||
./services/cluster/hadoop/default.nix
|
./services/cluster/hadoop/default.nix
|
||||||
./services/cluster/k3s/default.nix
|
./services/cluster/k3s/default.nix
|
||||||
./services/cluster/kubernetes/addons/dns.nix
|
./services/cluster/kubernetes/addons/dns.nix
|
||||||
|
|
|
@ -22,8 +22,6 @@ with lib;
|
||||||
environment.memoryAllocator.provider = mkDefault "scudo";
|
environment.memoryAllocator.provider = mkDefault "scudo";
|
||||||
environment.variables.SCUDO_OPTIONS = mkDefault "ZeroContents=1";
|
environment.variables.SCUDO_OPTIONS = mkDefault "ZeroContents=1";
|
||||||
|
|
||||||
security.hideProcessInformation = mkDefault true;
|
|
||||||
|
|
||||||
security.lockKernelModules = mkDefault true;
|
security.lockKernelModules = mkDefault true;
|
||||||
|
|
||||||
security.protectKernelImage = mkDefault true;
|
security.protectKernelImage = mkDefault true;
|
||||||
|
|
|
@ -4,6 +4,13 @@ with lib;
|
||||||
|
|
||||||
let
|
let
|
||||||
cfg = config.programs.steam;
|
cfg = config.programs.steam;
|
||||||
|
|
||||||
|
steam = pkgs.steam.override {
|
||||||
|
extraLibraries = pkgs: with config.hardware.opengl;
|
||||||
|
if pkgs.hostPlatform.is64bit
|
||||||
|
then [ package ] ++ extraPackages
|
||||||
|
else [ package32 ] ++ extraPackages32;
|
||||||
|
};
|
||||||
in {
|
in {
|
||||||
options.programs.steam.enable = mkEnableOption "steam";
|
options.programs.steam.enable = mkEnableOption "steam";
|
||||||
|
|
||||||
|
@ -18,7 +25,7 @@ in {
|
||||||
|
|
||||||
hardware.steam-hardware.enable = true;
|
hardware.steam-hardware.enable = true;
|
||||||
|
|
||||||
environment.systemPackages = [ pkgs.steam ];
|
environment.systemPackages = [ steam steam.run ];
|
||||||
};
|
};
|
||||||
|
|
||||||
meta.maintainers = with maintainers; [ mkg20001 ];
|
meta.maintainers = with maintainers; [ mkg20001 ];
|
||||||
|
|
|
@ -73,6 +73,11 @@ with lib;
|
||||||
(mkRemovedOptionModule [ "services" "venus" ] "The corresponding package was removed from nixpkgs.")
|
(mkRemovedOptionModule [ "services" "venus" ] "The corresponding package was removed from nixpkgs.")
|
||||||
(mkRemovedOptionModule [ "services" "flashpolicyd" ] "The flashpolicyd module has been removed. Adobe Flash Player is deprecated.")
|
(mkRemovedOptionModule [ "services" "flashpolicyd" ] "The flashpolicyd module has been removed. Adobe Flash Player is deprecated.")
|
||||||
|
|
||||||
|
(mkRemovedOptionModule [ "security" "hideProcessInformation" ] ''
|
||||||
|
The hidepid module was removed, since the underlying machinery
|
||||||
|
is broken when using cgroups-v2.
|
||||||
|
'')
|
||||||
|
|
||||||
# Do NOT add any option renames here, see top of the file
|
# Do NOT add any option renames here, see top of the file
|
||||||
];
|
];
|
||||||
}
|
}
|
||||||
|
|
|
@ -1,31 +0,0 @@
|
||||||
{ config, lib, ... }:
|
|
||||||
with lib;
|
|
||||||
|
|
||||||
{
|
|
||||||
meta = {
|
|
||||||
maintainers = [ maintainers.joachifm ];
|
|
||||||
doc = ./hidepid.xml;
|
|
||||||
};
|
|
||||||
|
|
||||||
options = {
|
|
||||||
security.hideProcessInformation = mkOption {
|
|
||||||
type = types.bool;
|
|
||||||
default = false;
|
|
||||||
description = ''
|
|
||||||
Restrict process information to the owning user.
|
|
||||||
'';
|
|
||||||
};
|
|
||||||
};
|
|
||||||
|
|
||||||
config = mkIf config.security.hideProcessInformation {
|
|
||||||
users.groups.proc.gid = config.ids.gids.proc;
|
|
||||||
users.groups.proc.members = [ "polkituser" ];
|
|
||||||
|
|
||||||
boot.specialFileSystems."/proc".options = [ "hidepid=2" "gid=${toString config.ids.gids.proc}" ];
|
|
||||||
systemd.services.systemd-logind.serviceConfig.SupplementaryGroups = [ "proc" ];
|
|
||||||
|
|
||||||
# Disable cgroupsv2, which doesn't work with hidepid.
|
|
||||||
# https://github.com/NixOS/nixpkgs/pull/104094#issuecomment-729996203
|
|
||||||
systemd.enableUnifiedCgroupHierarchy = false;
|
|
||||||
};
|
|
||||||
}
|
|
|
@ -1,28 +0,0 @@
|
||||||
<chapter xmlns="http://docbook.org/ns/docbook"
|
|
||||||
xmlns:xlink="http://www.w3.org/1999/xlink"
|
|
||||||
xmlns:xi="http://www.w3.org/2001/XInclude"
|
|
||||||
version="5.0"
|
|
||||||
xml:id="sec-hidepid">
|
|
||||||
<title>Hiding process information</title>
|
|
||||||
<para>
|
|
||||||
Setting
|
|
||||||
<programlisting>
|
|
||||||
<xref linkend="opt-security.hideProcessInformation"/> = true;
|
|
||||||
</programlisting>
|
|
||||||
ensures that access to process information is restricted to the owning user.
|
|
||||||
This implies, among other things, that command-line arguments remain private.
|
|
||||||
Unless your deployment relies on unprivileged users being able to inspect the
|
|
||||||
process information of other users, this option should be safe to enable.
|
|
||||||
</para>
|
|
||||||
<para>
|
|
||||||
Members of the <literal>proc</literal> group are exempt from process
|
|
||||||
information hiding.
|
|
||||||
</para>
|
|
||||||
<para>
|
|
||||||
To allow a service <replaceable>foo</replaceable> to run without process
|
|
||||||
information hiding, set
|
|
||||||
<programlisting>
|
|
||||||
<link linkend="opt-systemd.services._name_.serviceConfig">systemd.services.<replaceable>foo</replaceable>.serviceConfig</link>.SupplementaryGroups = [ "proc" ];
|
|
||||||
</programlisting>
|
|
||||||
</para>
|
|
||||||
</chapter>
|
|
54
nixos/modules/services/backup/zrepl.nix
Normal file
54
nixos/modules/services/backup/zrepl.nix
Normal file
|
@ -0,0 +1,54 @@
|
||||||
|
{ config, pkgs, lib, ... }:
|
||||||
|
|
||||||
|
with lib;
|
||||||
|
let
|
||||||
|
cfg = config.services.zrepl;
|
||||||
|
format = pkgs.formats.yaml { };
|
||||||
|
configFile = format.generate "zrepl.yml" cfg.settings;
|
||||||
|
in
|
||||||
|
{
|
||||||
|
meta.maintainers = with maintainers; [ cole-h ];
|
||||||
|
|
||||||
|
options = {
|
||||||
|
services.zrepl = {
|
||||||
|
enable = mkEnableOption "zrepl";
|
||||||
|
|
||||||
|
settings = mkOption {
|
||||||
|
default = { };
|
||||||
|
description = ''
|
||||||
|
Configuration for zrepl. See <link
|
||||||
|
xlink:href="https://zrepl.github.io/configuration.html"/>
|
||||||
|
for more information.
|
||||||
|
'';
|
||||||
|
type = types.submodule {
|
||||||
|
freeformType = format.type;
|
||||||
|
};
|
||||||
|
};
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
### Implementation ###
|
||||||
|
|
||||||
|
config = mkIf cfg.enable {
|
||||||
|
environment.systemPackages = [ pkgs.zrepl ];
|
||||||
|
|
||||||
|
# zrepl looks for its config in this location by default. This
|
||||||
|
# allows the use of e.g. `zrepl signal wakeup <job>` without having
|
||||||
|
# to specify the storepath of the config.
|
||||||
|
environment.etc."zrepl/zrepl.yml".source = configFile;
|
||||||
|
|
||||||
|
systemd.packages = [ pkgs.zrepl ];
|
||||||
|
systemd.services.zrepl = {
|
||||||
|
requires = [ "local-fs.target" ];
|
||||||
|
wantedBy = [ "zfs.target" ];
|
||||||
|
after = [ "zfs.target" ];
|
||||||
|
|
||||||
|
path = [ config.boot.zfs.package ];
|
||||||
|
restartTriggers = [ configFile ];
|
||||||
|
|
||||||
|
serviceConfig = {
|
||||||
|
Restart = "on-failure";
|
||||||
|
};
|
||||||
|
};
|
||||||
|
};
|
||||||
|
}
|
178
nixos/modules/services/blockchain/ethereum/geth.nix
Normal file
178
nixos/modules/services/blockchain/ethereum/geth.nix
Normal file
|
@ -0,0 +1,178 @@
|
||||||
|
{ config, lib, pkgs, ... }:
|
||||||
|
|
||||||
|
with lib;
|
||||||
|
|
||||||
|
let
|
||||||
|
eachGeth = config.services.geth;
|
||||||
|
|
||||||
|
gethOpts = { config, lib, name, ...}: {
|
||||||
|
|
||||||
|
options = {
|
||||||
|
|
||||||
|
enable = lib.mkEnableOption "Go Ethereum Node";
|
||||||
|
|
||||||
|
port = mkOption {
|
||||||
|
type = types.port;
|
||||||
|
default = 30303;
|
||||||
|
description = "Port number Go Ethereum will be listening on, both TCP and UDP.";
|
||||||
|
};
|
||||||
|
|
||||||
|
http = {
|
||||||
|
enable = lib.mkEnableOption "Go Ethereum HTTP API";
|
||||||
|
address = mkOption {
|
||||||
|
type = types.str;
|
||||||
|
default = "127.0.0.1";
|
||||||
|
description = "Listen address of Go Ethereum HTTP API.";
|
||||||
|
};
|
||||||
|
|
||||||
|
port = mkOption {
|
||||||
|
type = types.port;
|
||||||
|
default = 8545;
|
||||||
|
description = "Port number of Go Ethereum HTTP API.";
|
||||||
|
};
|
||||||
|
|
||||||
|
apis = mkOption {
|
||||||
|
type = types.nullOr (types.listOf types.str);
|
||||||
|
default = null;
|
||||||
|
description = "APIs to enable over WebSocket";
|
||||||
|
example = ["net" "eth"];
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
websocket = {
|
||||||
|
enable = lib.mkEnableOption "Go Ethereum WebSocket API";
|
||||||
|
address = mkOption {
|
||||||
|
type = types.str;
|
||||||
|
default = "127.0.0.1";
|
||||||
|
description = "Listen address of Go Ethereum WebSocket API.";
|
||||||
|
};
|
||||||
|
|
||||||
|
port = mkOption {
|
||||||
|
type = types.port;
|
||||||
|
default = 8546;
|
||||||
|
description = "Port number of Go Ethereum WebSocket API.";
|
||||||
|
};
|
||||||
|
|
||||||
|
apis = mkOption {
|
||||||
|
type = types.nullOr (types.listOf types.str);
|
||||||
|
default = null;
|
||||||
|
description = "APIs to enable over WebSocket";
|
||||||
|
example = ["net" "eth"];
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
metrics = {
|
||||||
|
enable = lib.mkEnableOption "Go Ethereum prometheus metrics";
|
||||||
|
address = mkOption {
|
||||||
|
type = types.str;
|
||||||
|
default = "127.0.0.1";
|
||||||
|
description = "Listen address of Go Ethereum metrics service.";
|
||||||
|
};
|
||||||
|
|
||||||
|
port = mkOption {
|
||||||
|
type = types.port;
|
||||||
|
default = 6060;
|
||||||
|
description = "Port number of Go Ethereum metrics service.";
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
network = mkOption {
|
||||||
|
type = types.nullOr (types.enum [ "goerli" "rinkeby" "yolov2" "ropsten" ]);
|
||||||
|
default = null;
|
||||||
|
description = "The network to connect to. Mainnet (null) is the default ethereum network.";
|
||||||
|
};
|
||||||
|
|
||||||
|
syncmode = mkOption {
|
||||||
|
type = types.enum [ "fast" "full" "light" ];
|
||||||
|
default = "fast";
|
||||||
|
description = "Blockchain sync mode.";
|
||||||
|
};
|
||||||
|
|
||||||
|
gcmode = mkOption {
|
||||||
|
type = types.enum [ "full" "archive" ];
|
||||||
|
default = "full";
|
||||||
|
description = "Blockchain garbage collection mode.";
|
||||||
|
};
|
||||||
|
|
||||||
|
maxpeers = mkOption {
|
||||||
|
type = types.int;
|
||||||
|
default = 50;
|
||||||
|
description = "Maximum peers to connect to.";
|
||||||
|
};
|
||||||
|
|
||||||
|
extraArgs = mkOption {
|
||||||
|
type = types.listOf types.str;
|
||||||
|
description = "Additional arguments passed to Go Ethereum.";
|
||||||
|
default = [];
|
||||||
|
};
|
||||||
|
|
||||||
|
package = mkOption {
|
||||||
|
default = pkgs.go-ethereum.geth;
|
||||||
|
type = types.package;
|
||||||
|
description = "Package to use as Go Ethereum node.";
|
||||||
|
};
|
||||||
|
};
|
||||||
|
};
|
||||||
|
in
|
||||||
|
|
||||||
|
{
|
||||||
|
|
||||||
|
###### interface
|
||||||
|
|
||||||
|
options = {
|
||||||
|
services.geth = mkOption {
|
||||||
|
type = types.attrsOf (types.submodule gethOpts);
|
||||||
|
default = {};
|
||||||
|
description = "Specification of one or more geth instances.";
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
###### implementation
|
||||||
|
|
||||||
|
config = mkIf (eachGeth != {}) {
|
||||||
|
|
||||||
|
environment.systemPackages = flatten (mapAttrsToList (gethName: cfg: [
|
||||||
|
cfg.package
|
||||||
|
]) eachGeth);
|
||||||
|
|
||||||
|
systemd.services = mapAttrs' (gethName: cfg: (
|
||||||
|
nameValuePair "geth-${gethName}" (mkIf cfg.enable {
|
||||||
|
description = "Go Ethereum node (${gethName})";
|
||||||
|
wantedBy = [ "multi-user.target" ];
|
||||||
|
after = [ "network.target" ];
|
||||||
|
|
||||||
|
serviceConfig = {
|
||||||
|
DynamicUser = true;
|
||||||
|
Restart = "always";
|
||||||
|
StateDirectory = "goethereum/${gethName}/${if (cfg.network == null) then "mainnet" else cfg.network}";
|
||||||
|
|
||||||
|
# Hardening measures
|
||||||
|
PrivateTmp = "true";
|
||||||
|
ProtectSystem = "full";
|
||||||
|
NoNewPrivileges = "true";
|
||||||
|
PrivateDevices = "true";
|
||||||
|
MemoryDenyWriteExecute = "true";
|
||||||
|
};
|
||||||
|
|
||||||
|
script = ''
|
||||||
|
${cfg.package}/bin/geth \
|
||||||
|
--nousb \
|
||||||
|
--ipcdisable \
|
||||||
|
${optionalString (cfg.network != null) ''--${cfg.network}''} \
|
||||||
|
--syncmode ${cfg.syncmode} \
|
||||||
|
--gcmode ${cfg.gcmode} \
|
||||||
|
--port ${toString cfg.port} \
|
||||||
|
--maxpeers ${toString cfg.maxpeers} \
|
||||||
|
${if cfg.http.enable then ''--http --http.addr ${cfg.http.address} --http.port ${toString cfg.http.port}'' else ""} \
|
||||||
|
${optionalString (cfg.http.apis != null) ''--http.api ${lib.concatStringsSep "," cfg.http.apis}''} \
|
||||||
|
${if cfg.websocket.enable then ''--ws --ws.addr ${cfg.websocket.address} --ws.port ${toString cfg.websocket.port}'' else ""} \
|
||||||
|
${optionalString (cfg.websocket.apis != null) ''--ws.api ${lib.concatStringsSep "," cfg.websocket.apis}''} \
|
||||||
|
${optionalString cfg.metrics.enable ''--metrics --metrics.addr ${cfg.metrics.address} --metrics.port ${toString cfg.metrics.port}''} \
|
||||||
|
${lib.escapeShellArgs cfg.extraArgs} \
|
||||||
|
--datadir /var/lib/goethereum/${gethName}/${if (cfg.network == null) then "mainnet" else cfg.network}
|
||||||
|
'';
|
||||||
|
}))) eachGeth;
|
||||||
|
|
||||||
|
};
|
||||||
|
|
||||||
|
}
|
|
@ -375,6 +375,18 @@ in
|
||||||
fi
|
fi
|
||||||
'';
|
'';
|
||||||
|
|
||||||
|
script = ''
|
||||||
|
# https://mariadb.com/kb/en/getting-started-with-mariadb-galera-cluster/#systemd-and-galera-recovery
|
||||||
|
if test -n "''${_WSREP_START_POSITION}"; then
|
||||||
|
if test -e "${cfg.package}/bin/galera_recovery"; then
|
||||||
|
VAR=$(cd ${cfg.package}/bin/..; ${cfg.package}/bin/galera_recovery); [[ $? -eq 0 ]] && export _WSREP_START_POSITION=$VAR || exit 1
|
||||||
|
fi
|
||||||
|
fi
|
||||||
|
|
||||||
|
# The last two environment variables are used for starting Galera clusters
|
||||||
|
exec ${cfg.package}/bin/mysqld --defaults-file=/etc/my.cnf ${mysqldOptions} $_WSREP_NEW_CLUSTER $_WSREP_START_POSITION
|
||||||
|
'';
|
||||||
|
|
||||||
postStart = let
|
postStart = let
|
||||||
# The super user account to use on *first* run of MySQL server
|
# The super user account to use on *first* run of MySQL server
|
||||||
superUser = if isMariaDB then cfg.user else "root";
|
superUser = if isMariaDB then cfg.user else "root";
|
||||||
|
@ -481,8 +493,7 @@ in
|
||||||
Type = if hasNotify then "notify" else "simple";
|
Type = if hasNotify then "notify" else "simple";
|
||||||
Restart = "on-abort";
|
Restart = "on-abort";
|
||||||
RestartSec = "5s";
|
RestartSec = "5s";
|
||||||
# The last two environment variables are used for starting Galera clusters
|
|
||||||
ExecStart = "${cfg.package}/bin/mysqld --defaults-file=/etc/my.cnf ${mysqldOptions} $_WSREP_NEW_CLUSTER $_WSREP_START_POSITION";
|
|
||||||
# User and group
|
# User and group
|
||||||
User = cfg.user;
|
User = cfg.user;
|
||||||
Group = cfg.group;
|
Group = cfg.group;
|
||||||
|
|
|
@ -8,30 +8,19 @@ let
|
||||||
cfg = config.services.clamav;
|
cfg = config.services.clamav;
|
||||||
pkg = pkgs.clamav;
|
pkg = pkgs.clamav;
|
||||||
|
|
||||||
clamdConfigFile = pkgs.writeText "clamd.conf" ''
|
toKeyValue = generators.toKeyValue {
|
||||||
DatabaseDirectory ${stateDir}
|
mkKeyValue = generators.mkKeyValueDefault {} " ";
|
||||||
LocalSocket ${runDir}/clamd.ctl
|
listsAsDuplicateKeys = true;
|
||||||
PidFile ${runDir}/clamd.pid
|
};
|
||||||
TemporaryDirectory /tmp
|
|
||||||
User clamav
|
|
||||||
Foreground yes
|
|
||||||
|
|
||||||
${cfg.daemon.extraConfig}
|
clamdConfigFile = pkgs.writeText "clamd.conf" (toKeyValue cfg.daemon.settings);
|
||||||
'';
|
freshclamConfigFile = pkgs.writeText "freshclam.conf" (toKeyValue cfg.updater.settings);
|
||||||
|
|
||||||
freshclamConfigFile = pkgs.writeText "freshclam.conf" ''
|
|
||||||
DatabaseDirectory ${stateDir}
|
|
||||||
Foreground yes
|
|
||||||
Checks ${toString cfg.updater.frequency}
|
|
||||||
|
|
||||||
${cfg.updater.extraConfig}
|
|
||||||
|
|
||||||
DatabaseMirror database.clamav.net
|
|
||||||
'';
|
|
||||||
in
|
in
|
||||||
{
|
{
|
||||||
imports = [
|
imports = [
|
||||||
(mkRenamedOptionModule [ "services" "clamav" "updater" "config" ] [ "services" "clamav" "updater" "extraConfig" ])
|
(mkRemovedOptionModule [ "services" "clamav" "updater" "config" ] "Use services.clamav.updater.settings instead.")
|
||||||
|
(mkRemovedOptionModule [ "services" "clamav" "updater" "extraConfig" ] "Use services.clamav.updater.settings instead.")
|
||||||
|
(mkRemovedOptionModule [ "services" "clamav" "daemon" "extraConfig" ] "Use services.clamav.daemon.settings instead.")
|
||||||
];
|
];
|
||||||
|
|
||||||
options = {
|
options = {
|
||||||
|
@ -39,12 +28,12 @@ in
|
||||||
daemon = {
|
daemon = {
|
||||||
enable = mkEnableOption "ClamAV clamd daemon";
|
enable = mkEnableOption "ClamAV clamd daemon";
|
||||||
|
|
||||||
extraConfig = mkOption {
|
settings = mkOption {
|
||||||
type = types.lines;
|
type = with types; attrsOf (oneOf [ bool int str (listOf str) ]);
|
||||||
default = "";
|
default = {};
|
||||||
description = ''
|
description = ''
|
||||||
Extra configuration for clamd. Contents will be added verbatim to the
|
ClamAV configuration. Refer to <link xlink:href="https://linux.die.net/man/5/clamd.conf"/>,
|
||||||
configuration file.
|
for details on supported values.
|
||||||
'';
|
'';
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
|
@ -68,12 +57,12 @@ in
|
||||||
'';
|
'';
|
||||||
};
|
};
|
||||||
|
|
||||||
extraConfig = mkOption {
|
settings = mkOption {
|
||||||
type = types.lines;
|
type = with types; attrsOf (oneOf [ bool int str (listOf str) ]);
|
||||||
default = "";
|
default = {};
|
||||||
description = ''
|
description = ''
|
||||||
Extra configuration for freshclam. Contents will be added verbatim to the
|
freshclam configuration. Refer to <link xlink:href="https://linux.die.net/man/5/freshclam.conf"/>,
|
||||||
configuration file.
|
for details on supported values.
|
||||||
'';
|
'';
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
|
@ -93,6 +82,22 @@ in
|
||||||
users.groups.${clamavGroup} =
|
users.groups.${clamavGroup} =
|
||||||
{ gid = config.ids.gids.clamav; };
|
{ gid = config.ids.gids.clamav; };
|
||||||
|
|
||||||
|
services.clamav.daemon.settings = {
|
||||||
|
DatabaseDirectory = stateDir;
|
||||||
|
LocalSocket = "${runDir}/clamd.ctl";
|
||||||
|
PidFile = "${runDir}/clamd.pid";
|
||||||
|
TemporaryDirectory = "/tmp";
|
||||||
|
User = "clamav";
|
||||||
|
Foreground = true;
|
||||||
|
};
|
||||||
|
|
||||||
|
services.clamav.updater.settings = {
|
||||||
|
DatabaseDirectory = stateDir;
|
||||||
|
Foreground = true;
|
||||||
|
Checks = cfg.updater.frequency;
|
||||||
|
DatabaseMirror = [ "database.clamav.net" ];
|
||||||
|
};
|
||||||
|
|
||||||
environment.etc."clamav/freshclam.conf".source = freshclamConfigFile;
|
environment.etc."clamav/freshclam.conf".source = freshclamConfigFile;
|
||||||
environment.etc."clamav/clamd.conf".source = clamdConfigFile;
|
environment.etc."clamav/clamd.conf".source = clamdConfigFile;
|
||||||
|
|
||||||
|
|
|
@ -277,6 +277,18 @@ in
|
||||||
'';
|
'';
|
||||||
};
|
};
|
||||||
|
|
||||||
|
virtualisation.msize =
|
||||||
|
mkOption {
|
||||||
|
default = null;
|
||||||
|
type = types.nullOr types.ints.unsigned;
|
||||||
|
description =
|
||||||
|
''
|
||||||
|
msize (maximum packet size) option passed to 9p file systems, in
|
||||||
|
bytes. Increasing this should increase performance significantly,
|
||||||
|
at the cost of higher RAM usage.
|
||||||
|
'';
|
||||||
|
};
|
||||||
|
|
||||||
virtualisation.diskSize =
|
virtualisation.diskSize =
|
||||||
mkOption {
|
mkOption {
|
||||||
default = 512;
|
default = 512;
|
||||||
|
@ -666,7 +678,7 @@ in
|
||||||
${if cfg.writableStore then "/nix/.ro-store" else "/nix/store"} =
|
${if cfg.writableStore then "/nix/.ro-store" else "/nix/store"} =
|
||||||
{ device = "store";
|
{ device = "store";
|
||||||
fsType = "9p";
|
fsType = "9p";
|
||||||
options = [ "trans=virtio" "version=9p2000.L" "cache=loose" ];
|
options = [ "trans=virtio" "version=9p2000.L" "cache=loose" ] ++ lib.optional (cfg.msize != null) "msize=${toString cfg.msize}";
|
||||||
neededForBoot = true;
|
neededForBoot = true;
|
||||||
};
|
};
|
||||||
"/tmp" = mkIf config.boot.tmpOnTmpfs
|
"/tmp" = mkIf config.boot.tmpOnTmpfs
|
||||||
|
@ -679,13 +691,13 @@ in
|
||||||
"/tmp/xchg" =
|
"/tmp/xchg" =
|
||||||
{ device = "xchg";
|
{ device = "xchg";
|
||||||
fsType = "9p";
|
fsType = "9p";
|
||||||
options = [ "trans=virtio" "version=9p2000.L" ];
|
options = [ "trans=virtio" "version=9p2000.L" ] ++ lib.optional (cfg.msize != null) "msize=${toString cfg.msize}";
|
||||||
neededForBoot = true;
|
neededForBoot = true;
|
||||||
};
|
};
|
||||||
"/tmp/shared" =
|
"/tmp/shared" =
|
||||||
{ device = "shared";
|
{ device = "shared";
|
||||||
fsType = "9p";
|
fsType = "9p";
|
||||||
options = [ "trans=virtio" "version=9p2000.L" ];
|
options = [ "trans=virtio" "version=9p2000.L" ] ++ lib.optional (cfg.msize != null) "msize=${toString cfg.msize}";
|
||||||
neededForBoot = true;
|
neededForBoot = true;
|
||||||
};
|
};
|
||||||
} // optionalAttrs (cfg.writableStore && cfg.writableStoreUseTmpfs)
|
} // optionalAttrs (cfg.writableStore && cfg.writableStoreUseTmpfs)
|
||||||
|
|
|
@ -182,7 +182,6 @@ in
|
||||||
jenkins = handleTest ./jenkins.nix {};
|
jenkins = handleTest ./jenkins.nix {};
|
||||||
jirafeau = handleTest ./jirafeau.nix {};
|
jirafeau = handleTest ./jirafeau.nix {};
|
||||||
jitsi-meet = handleTest ./jitsi-meet.nix {};
|
jitsi-meet = handleTest ./jitsi-meet.nix {};
|
||||||
jq = handleTest ./jq.nix {};
|
|
||||||
k3s = handleTest ./k3s.nix {};
|
k3s = handleTest ./k3s.nix {};
|
||||||
kafka = handleTest ./kafka.nix {};
|
kafka = handleTest ./kafka.nix {};
|
||||||
keepalived = handleTest ./keepalived.nix {};
|
keepalived = handleTest ./keepalived.nix {};
|
||||||
|
@ -344,8 +343,6 @@ in
|
||||||
samba = handleTest ./samba.nix {};
|
samba = handleTest ./samba.nix {};
|
||||||
samba-wsdd = handleTest ./samba-wsdd.nix {};
|
samba-wsdd = handleTest ./samba-wsdd.nix {};
|
||||||
sanoid = handleTest ./sanoid.nix {};
|
sanoid = handleTest ./sanoid.nix {};
|
||||||
sbt = handleTest ./sbt.nix {};
|
|
||||||
sbt-extras = handleTest ./sbt-extras.nix {};
|
|
||||||
sddm = handleTest ./sddm.nix {};
|
sddm = handleTest ./sddm.nix {};
|
||||||
searx = handleTest ./searx.nix {};
|
searx = handleTest ./searx.nix {};
|
||||||
service-runner = handleTest ./service-runner.nix {};
|
service-runner = handleTest ./service-runner.nix {};
|
||||||
|
|
41
nixos/tests/geth.nix
Normal file
41
nixos/tests/geth.nix
Normal file
|
@ -0,0 +1,41 @@
|
||||||
|
import ./make-test-python.nix ({ pkgs, ... }: {
|
||||||
|
name = "geth";
|
||||||
|
meta = with pkgs.lib; {
|
||||||
|
maintainers = with maintainers; [bachp ];
|
||||||
|
};
|
||||||
|
|
||||||
|
machine = { ... }: {
|
||||||
|
services.geth."mainnet" = {
|
||||||
|
enable = true;
|
||||||
|
http = {
|
||||||
|
enable = true;
|
||||||
|
};
|
||||||
|
};
|
||||||
|
services.geth."testnet" = {
|
||||||
|
enable = true;
|
||||||
|
port = 30304;
|
||||||
|
network = "goerli";
|
||||||
|
http = {
|
||||||
|
enable = true;
|
||||||
|
port = 18545;
|
||||||
|
};
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
testScript = ''
|
||||||
|
start_all()
|
||||||
|
|
||||||
|
machine.wait_for_unit("geth-mainnet.service")
|
||||||
|
machine.wait_for_unit("geth-testnet.service")
|
||||||
|
machine.wait_for_open_port(8545)
|
||||||
|
machine.wait_for_open_port(18545)
|
||||||
|
|
||||||
|
machine.succeed(
|
||||||
|
'geth attach --exec "eth.chainId()" http://localhost:8545 | grep \'"0x0"\' '
|
||||||
|
)
|
||||||
|
|
||||||
|
machine.succeed(
|
||||||
|
'geth attach --exec "eth.chainId()" http://localhost:18545 | grep \'"0x5"\' '
|
||||||
|
)
|
||||||
|
'';
|
||||||
|
})
|
|
@ -65,17 +65,6 @@ import ./make-test-python.nix ({ pkgs, latestKernel ? false, ... } : {
|
||||||
machine.succeed("grep -Fq wireguard /proc/modules")
|
machine.succeed("grep -Fq wireguard /proc/modules")
|
||||||
|
|
||||||
|
|
||||||
# Test hidepid
|
|
||||||
with subtest("hidepid=2 option is applied and works"):
|
|
||||||
# Linux >= 5.8 shows "invisible"
|
|
||||||
machine.succeed(
|
|
||||||
"grep -Fq hidepid=2 /proc/mounts || grep -Fq hidepid=invisible /proc/mounts"
|
|
||||||
)
|
|
||||||
# cannot use pgrep -u here, it segfaults when access to process info is denied
|
|
||||||
machine.succeed("[ `su - sybil -c 'ps --no-headers --user root | wc -l'` = 0 ]")
|
|
||||||
machine.succeed("[ `su - alice -c 'ps --no-headers --user root | wc -l'` != 0 ]")
|
|
||||||
|
|
||||||
|
|
||||||
# Test kernel module hardening
|
# Test kernel module hardening
|
||||||
with subtest("No more kernel modules can be loaded"):
|
with subtest("No more kernel modules can be loaded"):
|
||||||
# note: this better a be module we normally wouldn't load ...
|
# note: this better a be module we normally wouldn't load ...
|
||||||
|
|
|
@ -1,10 +0,0 @@
|
||||||
import ./make-test-python.nix ({ pkgs, ... }: {
|
|
||||||
name = "jq";
|
|
||||||
meta = with pkgs.lib.maintainers; { maintainers = [ nequissimus ]; };
|
|
||||||
|
|
||||||
nodes.jq = { pkgs, ... }: { environment.systemPackages = [ pkgs.jq ]; };
|
|
||||||
|
|
||||||
testScript = ''
|
|
||||||
assert "world" in jq.succeed('echo \'{"values":["hello","world"]}\'| jq \'.values[1]\''')
|
|
||||||
'';
|
|
||||||
})
|
|
|
@ -1,16 +0,0 @@
|
||||||
import ./make-test-python.nix ({ pkgs, ...} : {
|
|
||||||
name = "sbt-extras";
|
|
||||||
meta = with pkgs.lib.maintainers; {
|
|
||||||
maintainers = [ nequissimus ];
|
|
||||||
};
|
|
||||||
|
|
||||||
machine = { pkgs, ... }:
|
|
||||||
{
|
|
||||||
environment.systemPackages = [ pkgs.sbt-extras ];
|
|
||||||
};
|
|
||||||
|
|
||||||
testScript =
|
|
||||||
''
|
|
||||||
machine.succeed("(sbt -h)")
|
|
||||||
'';
|
|
||||||
})
|
|
|
@ -1,18 +0,0 @@
|
||||||
import ./make-test-python.nix ({ pkgs, ...} : {
|
|
||||||
name = "sbt";
|
|
||||||
meta = with pkgs.lib.maintainers; {
|
|
||||||
maintainers = [ nequissimus ];
|
|
||||||
};
|
|
||||||
|
|
||||||
machine = { pkgs, ... }:
|
|
||||||
{
|
|
||||||
environment.systemPackages = [ pkgs.sbt ];
|
|
||||||
};
|
|
||||||
|
|
||||||
testScript =
|
|
||||||
''
|
|
||||||
machine.succeed(
|
|
||||||
"(sbt --offline --version 2>&1 || true) | grep 'getting org.scala-sbt sbt ${pkgs.sbt.version} (this may take some time)'"
|
|
||||||
)
|
|
||||||
'';
|
|
||||||
})
|
|
|
@ -27,6 +27,9 @@ import ./make-test-python.nix ({ pkgs, lib, ... }:
|
||||||
# disable the root anchor update as we do not have internet access during
|
# disable the root anchor update as we do not have internet access during
|
||||||
# the test execution
|
# the test execution
|
||||||
services.unbound.enableRootTrustAnchor = false;
|
services.unbound.enableRootTrustAnchor = false;
|
||||||
|
|
||||||
|
# we want to test the full-variant of the package to also get DoH support
|
||||||
|
services.unbound.package = pkgs.unbound-full;
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
|
|
||||||
|
@ -81,13 +84,16 @@ import ./make-test-python.nix ({ pkgs, lib, ... }:
|
||||||
networking.firewall.allowedTCPPorts = [
|
networking.firewall.allowedTCPPorts = [
|
||||||
53 # regular DNS
|
53 # regular DNS
|
||||||
853 # DNS over TLS
|
853 # DNS over TLS
|
||||||
|
443 # DNS over HTTPS
|
||||||
];
|
];
|
||||||
networking.firewall.allowedUDPPorts = [ 53 ];
|
networking.firewall.allowedUDPPorts = [ 53 ];
|
||||||
|
|
||||||
services.unbound = {
|
services.unbound = {
|
||||||
enable = true;
|
enable = true;
|
||||||
allowedAccess = [ "192.168.0.0/24" "fd21::/64" "::1" "127.0.0.0/8" ];
|
allowedAccess = [ "192.168.0.0/24" "fd21::/64" "::1" "127.0.0.0/8" ];
|
||||||
interfaces = [ "::1" "127.0.0.1" "192.168.0.2" "fd21::2" "192.168.0.2@853" "fd21::2@853" "::1@853" "127.0.0.1@853" ];
|
interfaces = [ "::1" "127.0.0.1" "192.168.0.2" "fd21::2"
|
||||||
|
"192.168.0.2@853" "fd21::2@853" "::1@853" "127.0.0.1@853"
|
||||||
|
"192.168.0.2@443" "fd21::2@443" "::1@443" "127.0.0.1@443" ];
|
||||||
forwardAddresses = [
|
forwardAddresses = [
|
||||||
(lib.head nodes.authoritative.config.networking.interfaces.eth1.ipv6.addresses).address
|
(lib.head nodes.authoritative.config.networking.interfaces.eth1.ipv6.addresses).address
|
||||||
(lib.head nodes.authoritative.config.networking.interfaces.eth1.ipv4.addresses).address
|
(lib.head nodes.authoritative.config.networking.interfaces.eth1.ipv4.addresses).address
|
||||||
|
@ -217,6 +223,14 @@ import ./make-test-python.nix ({ pkgs, lib, ... }:
|
||||||
expected,
|
expected,
|
||||||
["+tcp", "+tls"] + args,
|
["+tcp", "+tls"] + args,
|
||||||
)
|
)
|
||||||
|
query(
|
||||||
|
machine,
|
||||||
|
remote,
|
||||||
|
query_type,
|
||||||
|
zone,
|
||||||
|
expected,
|
||||||
|
["+https"] + args,
|
||||||
|
)
|
||||||
|
|
||||||
|
|
||||||
client.start()
|
client.start()
|
||||||
|
|
|
@ -2,13 +2,13 @@
|
||||||
|
|
||||||
stdenv.mkDerivation rec {
|
stdenv.mkDerivation rec {
|
||||||
pname = "BSlizr";
|
pname = "BSlizr";
|
||||||
version = "1.2.8";
|
version = "1.2.10";
|
||||||
|
|
||||||
src = fetchFromGitHub {
|
src = fetchFromGitHub {
|
||||||
owner = "sjaehn";
|
owner = "sjaehn";
|
||||||
repo = pname;
|
repo = pname;
|
||||||
rev = version;
|
rev = version;
|
||||||
sha256 = "1f7xrljvsy7a1p8c7wln2zhwarl3ara7gbjxkpyh47wfdpigpdb0";
|
sha256 = "sha256-tEGJrVg8dN9Torybx02qIpXsGOuCgn/Wb+jemfCjiK4=";
|
||||||
};
|
};
|
||||||
|
|
||||||
nativeBuildInputs = [ pkg-config ];
|
nativeBuildInputs = [ pkg-config ];
|
||||||
|
|
33
pkgs/applications/audio/ebumeter/default.nix
Normal file
33
pkgs/applications/audio/ebumeter/default.nix
Normal file
|
@ -0,0 +1,33 @@
|
||||||
|
{ lib, stdenv, fetchurl
|
||||||
|
, libX11, libXft, libclthreads, libclxclient, libjack2, libpng, libsndfile, zita-resampler
|
||||||
|
}:
|
||||||
|
|
||||||
|
stdenv.mkDerivation rec {
|
||||||
|
pname = "ebumeter";
|
||||||
|
version = "0.4.2";
|
||||||
|
|
||||||
|
src = fetchurl {
|
||||||
|
url = "https://kokkinizita.linuxaudio.org/linuxaudio/downloads/${pname}-${version}.tar.bz2";
|
||||||
|
sha256 = "1wm9j1phmpicrp7jdsvdbc3mghdd92l61yl9qbps0brq2ljjyd5s";
|
||||||
|
};
|
||||||
|
|
||||||
|
buildInputs = [
|
||||||
|
libX11 libXft libclthreads libclxclient libjack2 libpng libsndfile zita-resampler
|
||||||
|
];
|
||||||
|
|
||||||
|
preConfigure = ''
|
||||||
|
cd source
|
||||||
|
'';
|
||||||
|
|
||||||
|
makeFlags = [ "PREFIX=$(out)" ];
|
||||||
|
|
||||||
|
enableParallelBuilding = true;
|
||||||
|
|
||||||
|
meta = with lib; {
|
||||||
|
description = "Level metering according to the EBU R-128 recommendation";
|
||||||
|
homepage = "http://kokkinizita.linuxaudio.org/linuxaudio/index.html";
|
||||||
|
license = licenses.gpl2Plus;
|
||||||
|
maintainers = with maintainers; [ orivej ];
|
||||||
|
platforms = platforms.linux;
|
||||||
|
};
|
||||||
|
}
|
|
@ -1,7 +1,6 @@
|
||||||
{ lib
|
{ lib
|
||||||
, rustPlatform
|
, rustPlatform
|
||||||
, fetchFromGitLab
|
, fetchFromGitLab
|
||||||
, fetchpatch
|
|
||||||
, meson
|
, meson
|
||||||
, ninja
|
, ninja
|
||||||
, gettext
|
, gettext
|
||||||
|
|
|
@ -18,13 +18,13 @@ assert pcreSupport -> pcre != null;
|
||||||
|
|
||||||
stdenv.mkDerivation rec {
|
stdenv.mkDerivation rec {
|
||||||
pname = "ncmpc";
|
pname = "ncmpc";
|
||||||
version = "0.44";
|
version = "0.45";
|
||||||
|
|
||||||
src = fetchFromGitHub {
|
src = fetchFromGitHub {
|
||||||
owner = "MusicPlayerDaemon";
|
owner = "MusicPlayerDaemon";
|
||||||
repo = "ncmpc";
|
repo = "ncmpc";
|
||||||
rev = "v${version}";
|
rev = "v${version}";
|
||||||
sha256 = "sha256-Qu41TL8KSKC9L25D6Z8bEbJUJQ9QI08grTGZ+0qGdUQ=";
|
sha256 = "sha256-KDSHbEZ2PJLEIlXqPvBQ2ZPWno+IoajTjkl9faAXIko=";
|
||||||
};
|
};
|
||||||
|
|
||||||
buildInputs = [ glib ncurses libmpdclient boost ]
|
buildInputs = [ glib ncurses libmpdclient boost ]
|
||||||
|
|
|
@ -40,11 +40,6 @@ in pythonPackages.buildPythonApplication rec {
|
||||||
dateutil
|
dateutil
|
||||||
];
|
];
|
||||||
|
|
||||||
prePatch = ''
|
|
||||||
# Pesky unicode punctuation.
|
|
||||||
substituteInPlace setup.cfg --replace "‘" "'"
|
|
||||||
'';
|
|
||||||
|
|
||||||
# In order to spare double wrapping, we use:
|
# In order to spare double wrapping, we use:
|
||||||
preFixup = ''
|
preFixup = ''
|
||||||
makeWrapperArgs+=("''${qtWrapperArgs[@]}")
|
makeWrapperArgs+=("''${qtWrapperArgs[@]}")
|
||||||
|
|
|
@ -36,13 +36,13 @@ assert withLastfm -> withCD;
|
||||||
|
|
||||||
mkDerivation rec {
|
mkDerivation rec {
|
||||||
pname = "pragha";
|
pname = "pragha";
|
||||||
version = "1.3.4";
|
version = "1.3.99.1";
|
||||||
|
|
||||||
src = fetchFromGitHub {
|
src = fetchFromGitHub {
|
||||||
owner = "pragha-music-player";
|
owner = "pragha-music-player";
|
||||||
repo = "pragha";
|
repo = "pragha";
|
||||||
rev = "v${version}";
|
rev = "v${version}";
|
||||||
sha256 = "sha256:0n8gx8amg5l9g4w7s4agjf8mlmpgjydgzx3vryp9lzzs9xrd5vqh";
|
sha256 = "sha256-C4zh2NHqP4bwKMi5s+3AfEtKqxRlzL66H8OyNonGzxE=";
|
||||||
};
|
};
|
||||||
|
|
||||||
nativeBuildInputs = [
|
nativeBuildInputs = [
|
||||||
|
|
|
@ -14,7 +14,6 @@
|
||||||
, openssl
|
, openssl
|
||||||
, pkg-config
|
, pkg-config
|
||||||
, python3
|
, python3
|
||||||
, rust
|
|
||||||
, rustc
|
, rustc
|
||||||
, rustPlatform
|
, rustPlatform
|
||||||
, sqlite
|
, sqlite
|
||||||
|
|
|
@ -1,4 +1,4 @@
|
||||||
{ lib, fetchFromGitHub, rustPackages, pkg-config, openssl
|
{ lib, fetchFromGitHub, rustPackages_1_45, pkg-config, openssl
|
||||||
, withALSA ? true, alsaLib ? null
|
, withALSA ? true, alsaLib ? null
|
||||||
, withPulseAudio ? false, libpulseaudio ? null
|
, withPulseAudio ? false, libpulseaudio ? null
|
||||||
, withPortAudio ? false, portaudio ? null
|
, withPortAudio ? false, portaudio ? null
|
||||||
|
@ -7,7 +7,7 @@
|
||||||
, dbus ? null
|
, dbus ? null
|
||||||
}:
|
}:
|
||||||
|
|
||||||
rustPackages.rustPlatform.buildRustPackage rec {
|
rustPackages_1_45.rustPlatform.buildRustPackage rec {
|
||||||
pname = "spotifyd";
|
pname = "spotifyd";
|
||||||
version = "0.3.0";
|
version = "0.3.0";
|
||||||
|
|
||||||
|
@ -39,7 +39,7 @@ rustPackages.rustPlatform.buildRustPackage rec {
|
||||||
meta = with lib; {
|
meta = with lib; {
|
||||||
description = "An open source Spotify client running as a UNIX daemon";
|
description = "An open source Spotify client running as a UNIX daemon";
|
||||||
homepage = "https://github.com/Spotifyd/spotifyd";
|
homepage = "https://github.com/Spotifyd/spotifyd";
|
||||||
license = with licenses; [ gpl3 ];
|
license = licenses.gpl3Plus;
|
||||||
maintainers = with maintainers; [ anderslundstedt Br1ght0ne marsam ];
|
maintainers = with maintainers; [ anderslundstedt Br1ght0ne marsam ];
|
||||||
platforms = platforms.unix;
|
platforms = platforms.unix;
|
||||||
};
|
};
|
||||||
|
|
|
@ -2,7 +2,6 @@
|
||||||
, fetchFromGitHub
|
, fetchFromGitHub
|
||||||
, lib
|
, lib
|
||||||
, python3Packages
|
, python3Packages
|
||||||
, youtube-dl
|
|
||||||
}:
|
}:
|
||||||
|
|
||||||
buildPythonApplication rec {
|
buildPythonApplication rec {
|
||||||
|
|
|
@ -2,11 +2,11 @@
|
||||||
|
|
||||||
stdenv.mkDerivation rec {
|
stdenv.mkDerivation rec {
|
||||||
pname = "ergo";
|
pname = "ergo";
|
||||||
version = "3.3.6";
|
version = "4.0.0";
|
||||||
|
|
||||||
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 = "1zi559ixjxxsrpvvjbxa1d0g96px3h9amjvy149sfhp7b8w5hhk3";
|
sha256 = "sha256-M0kgd/txqc04WNLNZiq+imHMM9YGFd12jMWJyY2ExrY=";
|
||||||
};
|
};
|
||||||
|
|
||||||
nativeBuildInputs = [ makeWrapper ];
|
nativeBuildInputs = [ makeWrapper ];
|
||||||
|
|
|
@ -1,6 +1,12 @@
|
||||||
{ lib, stdenv, buildGoModule, fetchFromGitHub, libobjc, IOKit }:
|
{ lib, stdenv, buildGoModule, fetchFromGitHub, libobjc, IOKit }:
|
||||||
|
|
||||||
buildGoModule rec {
|
let
|
||||||
|
# A list of binaries to put into separate outputs
|
||||||
|
bins = [
|
||||||
|
"geth"
|
||||||
|
];
|
||||||
|
|
||||||
|
in buildGoModule rec {
|
||||||
pname = "go-ethereum";
|
pname = "go-ethereum";
|
||||||
version = "1.9.25";
|
version = "1.9.25";
|
||||||
|
|
||||||
|
@ -16,6 +22,13 @@ buildGoModule rec {
|
||||||
|
|
||||||
doCheck = false;
|
doCheck = false;
|
||||||
|
|
||||||
|
outputs = [ "out" ] ++ bins;
|
||||||
|
|
||||||
|
# Move binaries to separate outputs and symlink them back to $out
|
||||||
|
postInstall = lib.concatStringsSep "\n" (
|
||||||
|
builtins.map (bin: "mkdir -p \$${bin}/bin && mv $out/bin/${bin} \$${bin}/bin/ && ln -s \$${bin}/bin/${bin} $out/bin/") bins
|
||||||
|
);
|
||||||
|
|
||||||
subPackages = [
|
subPackages = [
|
||||||
"cmd/abidump"
|
"cmd/abidump"
|
||||||
"cmd/abigen"
|
"cmd/abigen"
|
||||||
|
@ -40,7 +53,7 @@ buildGoModule rec {
|
||||||
meta = with lib; {
|
meta = with lib; {
|
||||||
homepage = "https://geth.ethereum.org/";
|
homepage = "https://geth.ethereum.org/";
|
||||||
description = "Official golang implementation of the Ethereum protocol";
|
description = "Official golang implementation of the Ethereum protocol";
|
||||||
license = with licenses; [ lgpl3 gpl3 ];
|
license = with licenses; [ lgpl3Plus gpl3Plus ];
|
||||||
maintainers = with maintainers; [ adisbladis lionello xrelkd RaghavSood ];
|
maintainers = with maintainers; [ adisbladis lionello xrelkd RaghavSood ];
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
|
|
@ -2,13 +2,13 @@
|
||||||
|
|
||||||
stdenv.mkDerivation rec {
|
stdenv.mkDerivation rec {
|
||||||
pname = "lightdm-mini-greeter";
|
pname = "lightdm-mini-greeter";
|
||||||
version = "0.4.0";
|
version = "0.5.0";
|
||||||
|
|
||||||
src = fetchFromGitHub {
|
src = fetchFromGitHub {
|
||||||
owner = "prikhi";
|
owner = "prikhi";
|
||||||
repo = "lightdm-mini-greeter";
|
repo = "lightdm-mini-greeter";
|
||||||
rev = version;
|
rev = version;
|
||||||
sha256 = "10hga7pmfyjdvj4xwm3djwrhk50brcpycj3p3c57pa0vnx4ill3s";
|
sha256 = "sha256-cVOnd3k+9hFQjROiwPpxZcCxD2NiH1eclJHF88eV6BM=";
|
||||||
};
|
};
|
||||||
|
|
||||||
nativeBuildInputs = [ autoreconfHook pkg-config wrapGAppsHook ];
|
nativeBuildInputs = [ autoreconfHook pkg-config wrapGAppsHook ];
|
||||||
|
|
|
@ -1,4 +1,4 @@
|
||||||
{ lib, external, pkgs }: self: with self; with lib.licenses; {
|
{ lib, pkgs }: self: with self; with lib.licenses; {
|
||||||
|
|
||||||
elisp-ffi = melpaBuild rec {
|
elisp-ffi = melpaBuild rec {
|
||||||
pname = "elisp-ffi";
|
pname = "elisp-ffi";
|
||||||
|
@ -9,7 +9,7 @@
|
||||||
rev = version;
|
rev = version;
|
||||||
sha256 = "0z2n3h5l5fj8wl8i1ilfzv11l3zba14sgph6gz7dx7q12cnp9j22";
|
sha256 = "0z2n3h5l5fj8wl8i1ilfzv11l3zba14sgph6gz7dx7q12cnp9j22";
|
||||||
};
|
};
|
||||||
buildInputs = [ external.libffi ];
|
buildInputs = [ pkgs.libffi ];
|
||||||
preBuild = "make";
|
preBuild = "make";
|
||||||
recipe = pkgs.writeText "recipe" ''
|
recipe = pkgs.writeText "recipe" ''
|
||||||
(elisp-ffi
|
(elisp-ffi
|
||||||
|
@ -29,15 +29,15 @@
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
|
|
||||||
agda2-mode = with external; trivialBuild {
|
agda2-mode = trivialBuild {
|
||||||
pname = "agda-mode";
|
pname = "agda-mode";
|
||||||
version = Agda.version;
|
version = pkgs.haskellPackages.Agda.version;
|
||||||
|
|
||||||
phases = [ "buildPhase" "installPhase" ];
|
phases = [ "buildPhase" "installPhase" ];
|
||||||
|
|
||||||
# already byte-compiled by Agda builder
|
# already byte-compiled by Agda builder
|
||||||
buildPhase = ''
|
buildPhase = ''
|
||||||
agda=`${Agda}/bin/agda-mode locate`
|
agda=`${pkgs.haskellPackages.Agda}/bin/agda-mode locate`
|
||||||
cp `dirname $agda`/*.el* .
|
cp `dirname $agda`/*.el* .
|
||||||
'';
|
'';
|
||||||
|
|
||||||
|
@ -47,21 +47,21 @@
|
||||||
Wrapper packages that liberates init.el from `agda-mode locate` magic.
|
Wrapper packages that liberates init.el from `agda-mode locate` magic.
|
||||||
Simply add this to user profile or systemPackages and do `(require 'agda2)` in init.el.
|
Simply add this to user profile or systemPackages and do `(require 'agda2)` in init.el.
|
||||||
'';
|
'';
|
||||||
homepage = Agda.meta.homepage;
|
homepage = pkgs.haskellPackages.Agda.meta.homepage;
|
||||||
license = Agda.meta.license;
|
license = pkgs.haskellPackages.Agda.meta.license;
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
|
|
||||||
agda-input = self.trivialBuild {
|
agda-input = self.trivialBuild {
|
||||||
pname = "agda-input";
|
pname = "agda-input";
|
||||||
|
|
||||||
inherit (external.Agda) src version;
|
inherit (pkgs.haskellPackages.Agda) src version;
|
||||||
|
|
||||||
postUnpack = "mv $sourceRoot/src/data/emacs-mode/agda-input.el $sourceRoot";
|
postUnpack = "mv $sourceRoot/src/data/emacs-mode/agda-input.el $sourceRoot";
|
||||||
|
|
||||||
meta = {
|
meta = {
|
||||||
description = "Standalone package providing the agda-input method without building Agda.";
|
description = "Standalone package providing the agda-input method without building Agda.";
|
||||||
inherit (external.Agda.meta) homepage license;
|
inherit (pkgs.haskellPackages.Agda.meta) homepage license;
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
|
|
||||||
|
@ -74,10 +74,10 @@
|
||||||
|
|
||||||
ghc-mod = melpaBuild {
|
ghc-mod = melpaBuild {
|
||||||
pname = "ghc";
|
pname = "ghc";
|
||||||
version = external.ghc-mod.version;
|
version = pkgs.haskellPackages.ghc-mod.version;
|
||||||
src = external.ghc-mod.src;
|
src = pkgs.haskellPackages.ghc-mod.src;
|
||||||
packageRequires = [ haskell-mode ];
|
packageRequires = [ haskell-mode ];
|
||||||
propagatedUserEnvPkgs = [ external.ghc-mod ];
|
propagatedUserEnvPkgs = [ pkgs.haskellPackages.ghc-mod ];
|
||||||
recipe = pkgs.writeText "recipe" ''
|
recipe = pkgs.writeText "recipe" ''
|
||||||
(ghc-mod :repo "DanielG/ghc-mod" :fetcher github :files ("elisp/*.el"))
|
(ghc-mod :repo "DanielG/ghc-mod" :fetcher github :files ("elisp/*.el"))
|
||||||
'';
|
'';
|
||||||
|
@ -115,7 +115,7 @@
|
||||||
|
|
||||||
llvm-mode = trivialBuild {
|
llvm-mode = trivialBuild {
|
||||||
pname = "llvm-mode";
|
pname = "llvm-mode";
|
||||||
inherit (external.llvmPackages.llvm) src version;
|
inherit (pkgs.llvmPackages.llvm) src version;
|
||||||
|
|
||||||
dontConfigure = true;
|
dontConfigure = true;
|
||||||
buildPhase = ''
|
buildPhase = ''
|
||||||
|
@ -123,24 +123,73 @@
|
||||||
'';
|
'';
|
||||||
|
|
||||||
meta = {
|
meta = {
|
||||||
inherit (external.llvmPackages.llvm.meta) homepage license;
|
inherit (pkgs.llvmPackages.llvm.meta) homepage license;
|
||||||
description = "Major mode for the LLVM assembler language.";
|
description = "Major mode for the LLVM assembler language.";
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
|
|
||||||
|
matrix-client = melpaBuild {
|
||||||
|
pname = "matrix-client";
|
||||||
|
version = "0.3.0";
|
||||||
|
|
||||||
|
src = pkgs.fetchFromGitHub {
|
||||||
|
owner = "alphapapa";
|
||||||
|
repo = "matrix-client.el";
|
||||||
|
rev = "d2ac55293c96d4c95971ed8e2a3f6f354565c5ed";
|
||||||
|
sha256 = "1scfv1502yg7x4bsl253cpr6plml1j4d437vci2ggs764sh3rcqq";
|
||||||
|
};
|
||||||
|
|
||||||
|
patches = [
|
||||||
|
(pkgs.fetchpatch {
|
||||||
|
url = "https://github.com/alphapapa/matrix-client.el/commit/5f49e615c7cf2872f48882d3ee5c4a2bff117d07.patch";
|
||||||
|
sha256 = "07bvid7s1nv1377p5n61q46yww3m1w6bw4vnd4iyayw3fby1lxbm";
|
||||||
|
})
|
||||||
|
];
|
||||||
|
|
||||||
|
packageRequires = [
|
||||||
|
anaphora
|
||||||
|
cl-lib
|
||||||
|
self.map
|
||||||
|
dash-functional
|
||||||
|
esxml
|
||||||
|
f
|
||||||
|
ov
|
||||||
|
tracking
|
||||||
|
rainbow-identifiers
|
||||||
|
dash
|
||||||
|
s
|
||||||
|
request
|
||||||
|
frame-purpose
|
||||||
|
a
|
||||||
|
ht
|
||||||
|
];
|
||||||
|
|
||||||
|
recipe = pkgs.writeText "recipe" ''
|
||||||
|
(matrix-client
|
||||||
|
:repo "alphapapa/matrix-client.el"
|
||||||
|
:fetcher github)
|
||||||
|
'';
|
||||||
|
|
||||||
|
meta = {
|
||||||
|
description = "A chat client and API wrapper for Matrix.org";
|
||||||
|
license = gpl3Plus;
|
||||||
|
};
|
||||||
|
|
||||||
|
};
|
||||||
|
|
||||||
org-mac-link =
|
org-mac-link =
|
||||||
callPackage ./org-mac-link { };
|
callPackage ./org-mac-link { };
|
||||||
|
|
||||||
ott-mode = self.trivialBuild {
|
ott-mode = self.trivialBuild {
|
||||||
pname = "ott-mod";
|
pname = "ott-mod";
|
||||||
|
|
||||||
inherit (external.ott) src version;
|
inherit (pkgs.ott) src version;
|
||||||
|
|
||||||
postUnpack = "mv $sourceRoot/emacs/ott-mode.el $sourceRoot";
|
postUnpack = "mv $sourceRoot/emacs/ott-mode.el $sourceRoot";
|
||||||
|
|
||||||
meta = {
|
meta = {
|
||||||
description = "Standalone package providing ott-mode without building ott and with compiled bytecode.";
|
description = "Standalone package providing ott-mode without building ott and with compiled bytecode.";
|
||||||
inherit (external.Agda.meta) homepage license;
|
inherit (pkgs.haskellPackages.Agda.meta) homepage license;
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|
|
@ -22,7 +22,7 @@ instantenous and formats commits for you.
|
||||||
|
|
||||||
*/
|
*/
|
||||||
|
|
||||||
{ lib, external, pkgs }: variant: self:
|
{ lib, pkgs }: variant: self:
|
||||||
let
|
let
|
||||||
dontConfigure = pkg:
|
dontConfigure = pkg:
|
||||||
if pkg != null then pkg.override (args: {
|
if pkg != null then pkg.override (args: {
|
||||||
|
@ -53,7 +53,7 @@ let
|
||||||
});
|
});
|
||||||
|
|
||||||
fix-rtags = pkg:
|
fix-rtags = pkg:
|
||||||
if pkg != null then dontConfigure (externalSrc pkg external.rtags)
|
if pkg != null then dontConfigure (externalSrc pkg pkgs.rtags)
|
||||||
else null;
|
else null;
|
||||||
|
|
||||||
generateMelpa = lib.makeOverridable ({ archiveJson ? ./recipes-archive-melpa.json
|
generateMelpa = lib.makeOverridable ({ archiveJson ? ./recipes-archive-melpa.json
|
||||||
|
@ -79,9 +79,9 @@ let
|
||||||
};
|
};
|
||||||
|
|
||||||
auto-complete-clang-async = super.auto-complete-clang-async.overrideAttrs (old: {
|
auto-complete-clang-async = super.auto-complete-clang-async.overrideAttrs (old: {
|
||||||
buildInputs = old.buildInputs ++ [ external.llvmPackages.llvm ];
|
buildInputs = old.buildInputs ++ [ pkgs.llvmPackages.llvm ];
|
||||||
CFLAGS = "-I${external.llvmPackages.clang}/include";
|
CFLAGS = "-I${pkgs.llvmPackages.clang}/include";
|
||||||
LDFLAGS = "-L${external.llvmPackages.clang}/lib";
|
LDFLAGS = "-L${pkgs.llvmPackages.clang}/lib";
|
||||||
});
|
});
|
||||||
|
|
||||||
# part of a larger package
|
# part of a larger package
|
||||||
|
@ -132,8 +132,8 @@ let
|
||||||
flycheck-rtags = fix-rtags super.flycheck-rtags;
|
flycheck-rtags = fix-rtags super.flycheck-rtags;
|
||||||
|
|
||||||
pdf-tools = super.pdf-tools.overrideAttrs (old: {
|
pdf-tools = super.pdf-tools.overrideAttrs (old: {
|
||||||
nativeBuildInputs = [ external.pkg-config ];
|
nativeBuildInputs = [ pkgs.pkg-config ];
|
||||||
buildInputs = with external; old.buildInputs ++ [ autoconf automake libpng zlib poppler ];
|
buildInputs = with pkgs; old.buildInputs ++ [ autoconf automake libpng zlib poppler ];
|
||||||
preBuild = "make server/epdfinfo";
|
preBuild = "make server/epdfinfo";
|
||||||
recipe = pkgs.writeText "recipe" ''
|
recipe = pkgs.writeText "recipe" ''
|
||||||
(pdf-tools
|
(pdf-tools
|
||||||
|
@ -143,7 +143,7 @@ let
|
||||||
});
|
});
|
||||||
|
|
||||||
# Build same version as Haskell package
|
# Build same version as Haskell package
|
||||||
hindent = (externalSrc super.hindent external.hindent).overrideAttrs (attrs: {
|
hindent = (externalSrc super.hindent pkgs.haskellPackages.hindent).overrideAttrs (attrs: {
|
||||||
packageRequires = [ self.haskell-mode ];
|
packageRequires = [ self.haskell-mode ];
|
||||||
});
|
});
|
||||||
|
|
||||||
|
@ -169,7 +169,7 @@ let
|
||||||
dontUseCmakeBuildDir = true;
|
dontUseCmakeBuildDir = true;
|
||||||
doCheck = true;
|
doCheck = true;
|
||||||
packageRequires = [ self.emacs ];
|
packageRequires = [ self.emacs ];
|
||||||
nativeBuildInputs = [ external.cmake external.llvmPackages.llvm external.llvmPackages.clang ];
|
nativeBuildInputs = [ pkgs.cmake pkgs.llvmPackages.llvm pkgs.llvmPackages.clang ];
|
||||||
});
|
});
|
||||||
|
|
||||||
# tries to write a log file to $HOME
|
# tries to write a log file to $HOME
|
||||||
|
@ -286,18 +286,28 @@ let
|
||||||
# part of a larger package
|
# part of a larger package
|
||||||
notmuch = dontConfigure super.notmuch;
|
notmuch = dontConfigure super.notmuch;
|
||||||
|
|
||||||
rtags = dontConfigure (externalSrc super.rtags external.rtags);
|
rtags = dontConfigure (externalSrc super.rtags pkgs.rtags);
|
||||||
|
|
||||||
rtags-xref = dontConfigure super.rtags;
|
rtags-xref = dontConfigure super.rtags;
|
||||||
|
|
||||||
shm = super.shm.overrideAttrs (attrs: {
|
shm = super.shm.overrideAttrs (attrs: {
|
||||||
propagatedUserEnvPkgs = [ external.structured-haskell-mode ];
|
propagatedUserEnvPkgs = [ pkgs.haskellPackages.structured-haskell-mode ];
|
||||||
});
|
});
|
||||||
|
|
||||||
# Telega has a server portion for it's network protocol
|
# Telega has a server portion for it's network protocol
|
||||||
telega = super.telega.overrideAttrs (old: {
|
telega = super.telega.overrideAttrs (old: {
|
||||||
buildInputs = old.buildInputs ++ [ pkgs.tdlib ];
|
buildInputs = old.buildInputs ++ [ pkgs.tdlib ];
|
||||||
nativeBuildInputs = [ external.pkg-config ];
|
nativeBuildInputs = [ pkgs.pkg-config ];
|
||||||
|
|
||||||
|
postPatch = ''
|
||||||
|
substituteInPlace telega-customize.el \
|
||||||
|
--replace 'defcustom telega-server-command "telega-server"' \
|
||||||
|
"defcustom telega-server-command \"$out/bin/telega-server\""
|
||||||
|
|
||||||
|
substituteInPlace telega-sticker.el --replace '"dwebp"' '"${pkgs.libwebp}/bin/dwebp"'
|
||||||
|
|
||||||
|
substituteInPlace telega-vvnote.el --replace '"ffmpeg' '"${pkgs.ffmpeg}/bin/ffmpeg'
|
||||||
|
'';
|
||||||
|
|
||||||
postBuild = ''
|
postBuild = ''
|
||||||
cd source/server
|
cd source/server
|
||||||
|
@ -314,12 +324,12 @@ let
|
||||||
treemacs-magit = super.treemacs-magit.overrideAttrs (attrs: {
|
treemacs-magit = super.treemacs-magit.overrideAttrs (attrs: {
|
||||||
# searches for Git at build time
|
# searches for Git at build time
|
||||||
nativeBuildInputs =
|
nativeBuildInputs =
|
||||||
(attrs.nativeBuildInputs or [ ]) ++ [ external.git ];
|
(attrs.nativeBuildInputs or [ ]) ++ [ pkgs.git ];
|
||||||
});
|
});
|
||||||
|
|
||||||
vdiff-magit = super.vdiff-magit.overrideAttrs (attrs: {
|
vdiff-magit = super.vdiff-magit.overrideAttrs (attrs: {
|
||||||
nativeBuildInputs =
|
nativeBuildInputs =
|
||||||
(attrs.nativeBuildInputs or [ ]) ++ [ external.git ];
|
(attrs.nativeBuildInputs or [ ]) ++ [ pkgs.git ];
|
||||||
});
|
});
|
||||||
|
|
||||||
zmq = super.zmq.overrideAttrs (old: {
|
zmq = super.zmq.overrideAttrs (old: {
|
||||||
|
@ -328,11 +338,11 @@ let
|
||||||
make
|
make
|
||||||
'';
|
'';
|
||||||
nativeBuildInputs = [
|
nativeBuildInputs = [
|
||||||
external.autoconf
|
pkgs.autoconf
|
||||||
external.automake
|
pkgs.automake
|
||||||
external.pkg-config
|
pkgs.pkg-config
|
||||||
external.libtool
|
pkgs.libtool
|
||||||
(external.zeromq.override { enableDrafts = true; })
|
(pkgs.zeromq.override { enableDrafts = true; })
|
||||||
];
|
];
|
||||||
postInstall = ''
|
postInstall = ''
|
||||||
mv $out/share/emacs/site-lisp/elpa/zmq-*/src/.libs/emacs-zmq.so $out/share/emacs/site-lisp/elpa/zmq-*
|
mv $out/share/emacs/site-lisp/elpa/zmq-*/src/.libs/emacs-zmq.so $out/share/emacs/site-lisp/elpa/zmq-*
|
||||||
|
@ -415,7 +425,7 @@ let
|
||||||
window-numbering = markBroken super.window-numbering;
|
window-numbering = markBroken super.window-numbering;
|
||||||
|
|
||||||
editorconfig = super.editorconfig.overrideAttrs (attrs: {
|
editorconfig = super.editorconfig.overrideAttrs (attrs: {
|
||||||
propagatedUserEnvPkgs = [ external.editorconfig-core-c ];
|
propagatedUserEnvPkgs = [ pkgs.editorconfig-core-c ];
|
||||||
});
|
});
|
||||||
|
|
||||||
# missing dependencies
|
# missing dependencies
|
||||||
|
@ -433,7 +443,7 @@ let
|
||||||
racer = super.racer.overrideAttrs (attrs: {
|
racer = super.racer.overrideAttrs (attrs: {
|
||||||
postPatch = attrs.postPatch or "" + ''
|
postPatch = attrs.postPatch or "" + ''
|
||||||
substituteInPlace racer.el \
|
substituteInPlace racer.el \
|
||||||
--replace /usr/local/src/rust/src ${external.rustPlatform.rustcSrc}
|
--replace /usr/local/src/rust/src ${pkgs.rustPlatform.rustcSrc}
|
||||||
'';
|
'';
|
||||||
});
|
});
|
||||||
|
|
||||||
|
@ -462,7 +472,7 @@ let
|
||||||
w3m = super.w3m.override (args: {
|
w3m = super.w3m.override (args: {
|
||||||
melpaBuild = drv: args.melpaBuild (drv // {
|
melpaBuild = drv: args.melpaBuild (drv // {
|
||||||
prePatch =
|
prePatch =
|
||||||
let w3m = "${lib.getBin external.w3m}/bin/w3m"; in
|
let w3m = "${lib.getBin pkgs.w3m}/bin/w3m"; in
|
||||||
''
|
''
|
||||||
substituteInPlace w3m.el \
|
substituteInPlace w3m.el \
|
||||||
--replace 'defcustom w3m-command nil' \
|
--replace 'defcustom w3m-command nil' \
|
||||||
|
|
|
@ -2,7 +2,6 @@ import ./generic.nix (rec {
|
||||||
version = "26.3";
|
version = "26.3";
|
||||||
sha256 = "119ldpk7sgn9jlpyngv5y4z3i7bb8q3xp4p0qqi7i5nq39syd42d";
|
sha256 = "119ldpk7sgn9jlpyngv5y4z3i7bb8q3xp4p0qqi7i5nq39syd42d";
|
||||||
patches = [
|
patches = [
|
||||||
./clean-env-26.patch
|
|
||||||
./tramp-detect-wrapped-gvfsd-26.patch
|
./tramp-detect-wrapped-gvfsd-26.patch
|
||||||
];
|
];
|
||||||
})
|
})
|
||||||
|
|
|
@ -2,7 +2,6 @@ import ./generic.nix (rec {
|
||||||
version = "27.1";
|
version = "27.1";
|
||||||
sha256 = "0h9f2wpmp6rb5rfwvqwv1ia1nw86h74p7hnz3vb3gjazj67i4k2a";
|
sha256 = "0h9f2wpmp6rb5rfwvqwv1ia1nw86h74p7hnz3vb3gjazj67i4k2a";
|
||||||
patches = [
|
patches = [
|
||||||
./clean-env.patch
|
|
||||||
./tramp-detect-wrapped-gvfsd.patch
|
./tramp-detect-wrapped-gvfsd.patch
|
||||||
];
|
];
|
||||||
})
|
})
|
||||||
|
|
|
@ -1,15 +0,0 @@
|
||||||
Dump temacs in an empty environment to prevent -dev paths from ending
|
|
||||||
up in the dumped image.
|
|
||||||
|
|
||||||
diff --git a/src/Makefile.in b/src/Makefile.in
|
|
||||||
--- a/src/Makefile.in
|
|
||||||
+++ b/src/Makefile.in
|
|
||||||
@@ -535,7 +535,7 @@ ifeq ($(CANNOT_DUMP),yes)
|
|
||||||
ln -f temacs$(EXEEXT) $@
|
|
||||||
else
|
|
||||||
unset EMACS_HEAP_EXEC; \
|
|
||||||
- LC_ALL=C $(RUN_TEMACS) -batch $(BUILD_DETAILS) -l loadup dump
|
|
||||||
+ env -i LC_ALL=C $(RUN_TEMACS) -batch $(BUILD_DETAILS) -l loadup dump
|
|
||||||
ifneq ($(PAXCTL_dumped),)
|
|
||||||
$(PAXCTL_dumped) $@
|
|
||||||
endif
|
|
|
@ -1,16 +0,0 @@
|
||||||
Dump temacs in an empty environment to prevent -dev paths from ending
|
|
||||||
up in the dumped image.
|
|
||||||
|
|
||||||
diff --git a/src/Makefile.in b/src/Makefile.in
|
|
||||||
index fd05a45df5..13f529c253 100644
|
|
||||||
--- a/src/Makefile.in
|
|
||||||
+++ b/src/Makefile.in
|
|
||||||
@@ -570,7 +570,7 @@ emacs$(EXEEXT): temacs$(EXEEXT) \
|
|
||||||
lisp.mk $(etc)/DOC $(lisp) \
|
|
||||||
$(lispsource)/international/charprop.el ${charsets}
|
|
||||||
ifeq ($(DUMPING),unexec)
|
|
||||||
- LC_ALL=C $(RUN_TEMACS) -batch $(BUILD_DETAILS) -l loadup --temacs=dump
|
|
||||||
+ env -i LC_ALL=C $(RUN_TEMACS) -batch $(BUILD_DETAILS) -l loadup --temacs=dump
|
|
||||||
ifneq ($(PAXCTL_dumped),)
|
|
||||||
$(PAXCTL_dumped) emacs$(EXEEXT)
|
|
||||||
endif
|
|
|
@ -63,6 +63,12 @@ let emacs = stdenv.mkDerivation (lib.optionalAttrs nativeComp {
|
||||||
rm -fr .git
|
rm -fr .git
|
||||||
'')
|
'')
|
||||||
|
|
||||||
|
# Reduce closure size by cleaning the environment of the emacs dumper
|
||||||
|
''
|
||||||
|
substituteInPlace src/Makefile.in \
|
||||||
|
--replace 'RUN_TEMACS = ./temacs' 'RUN_TEMACS = env -i ./temacs'
|
||||||
|
''
|
||||||
|
|
||||||
''
|
''
|
||||||
substituteInPlace lisp/international/mule-cmds.el \
|
substituteInPlace lisp/international/mule-cmds.el \
|
||||||
--replace /usr/share/locale ${gettext}/share/locale
|
--replace /usr/share/locale ${gettext}/share/locale
|
||||||
|
|
|
@ -26,8 +26,6 @@ stdenv.mkDerivation rec {
|
||||||
sha256 = "0f2wzdw2a3ac581322b2y79rlj3c9f33ddrq9allj97r1si6v5xk";
|
sha256 = "0f2wzdw2a3ac581322b2y79rlj3c9f33ddrq9allj97r1si6v5xk";
|
||||||
};
|
};
|
||||||
|
|
||||||
patches = [ ./clean-env.patch ];
|
|
||||||
|
|
||||||
enableParallelBuilding = true;
|
enableParallelBuilding = true;
|
||||||
|
|
||||||
nativeBuildInputs = [ pkg-config autoconf automake ];
|
nativeBuildInputs = [ pkg-config autoconf automake ];
|
||||||
|
@ -57,6 +55,11 @@ stdenv.mkDerivation rec {
|
||||||
# Fix sandbox impurities.
|
# Fix sandbox impurities.
|
||||||
substituteInPlace Makefile.in --replace '/bin/pwd' 'pwd'
|
substituteInPlace Makefile.in --replace '/bin/pwd' 'pwd'
|
||||||
substituteInPlace lib-src/Makefile.in --replace '/bin/pwd' 'pwd'
|
substituteInPlace lib-src/Makefile.in --replace '/bin/pwd' 'pwd'
|
||||||
|
|
||||||
|
|
||||||
|
# Reduce closure size by cleaning the environment of the emacs dumper
|
||||||
|
substituteInPlace src/Makefile.in \
|
||||||
|
--replace 'RUN_TEMACS = ./temacs' 'RUN_TEMACS = env -i ./temacs'
|
||||||
'';
|
'';
|
||||||
|
|
||||||
configureFlags = [
|
configureFlags = [
|
||||||
|
|
|
@ -35,7 +35,6 @@
|
||||||
, wrapGAppsHook
|
, wrapGAppsHook
|
||||||
, dbus
|
, dbus
|
||||||
, xvfb_run
|
, xvfb_run
|
||||||
, glib
|
|
||||||
}:
|
}:
|
||||||
|
|
||||||
stdenv.mkDerivation rec {
|
stdenv.mkDerivation rec {
|
||||||
|
|
|
@ -1,31 +1,41 @@
|
||||||
{ lib, stdenv, fetchurl, ncurses, gpm }:
|
{ lib
|
||||||
|
, stdenv
|
||||||
|
, fetchurl
|
||||||
|
, ncurses
|
||||||
|
, gpm
|
||||||
|
}:
|
||||||
|
|
||||||
stdenv.mkDerivation rec {
|
stdenv.mkDerivation rec {
|
||||||
|
|
||||||
pname = "jupp";
|
pname = "jupp";
|
||||||
version = "39";
|
version = "40";
|
||||||
srcName = "joe-3.1${pname}${version}";
|
srcName = "joe-3.1${pname}${version}";
|
||||||
|
|
||||||
src = fetchurl {
|
src = fetchurl {
|
||||||
urls = [
|
urls = [
|
||||||
"https://www.mirbsd.org/MirOS/dist/jupp/${srcName}.tgz"
|
"https://www.mirbsd.org/MirOS/dist/jupp/${srcName}.tgz"
|
||||||
"https://pub.allbsd.org/MirOS/dist/jupp/${srcName}.tgz" ];
|
"https://pub.allbsd.org/MirOS/dist/jupp/${srcName}.tgz"
|
||||||
sha256 = "14gys92dy3kq9ikigry7q2x4w5v2z76d97vp212bddrxiqy5np8d";
|
];
|
||||||
|
sha256 = "S+1DnN5/K+KU6W5J7z6RPqkPvl6RTbiIQD46J+gDWxo=";
|
||||||
};
|
};
|
||||||
|
|
||||||
preConfigure = "chmod +x ./configure";
|
preConfigure = "chmod +x ./configure";
|
||||||
|
|
||||||
buildInputs = [ ncurses gpm ];
|
buildInputs = [
|
||||||
|
gpm
|
||||||
|
ncurses
|
||||||
|
];
|
||||||
|
|
||||||
configureFlags = [
|
configureFlags = [
|
||||||
"--enable-curses"
|
"--enable-curses"
|
||||||
"--enable-termcap"
|
|
||||||
"--enable-termidx"
|
|
||||||
"--enable-getpwnam"
|
"--enable-getpwnam"
|
||||||
"--enable-largefile"
|
"--enable-largefile"
|
||||||
|
"--enable-termcap"
|
||||||
|
"--enable-termidx"
|
||||||
];
|
];
|
||||||
|
|
||||||
meta = with lib; {
|
meta = with lib; {
|
||||||
|
homepage = "http://www.mirbsd.org/jupp.htm";
|
||||||
|
downloadPage = "https://www.mirbsd.org/MirOS/dist/jupp/";
|
||||||
description = "A portable fork of Joe's editor";
|
description = "A portable fork of Joe's editor";
|
||||||
longDescription = ''
|
longDescription = ''
|
||||||
This is the portable version of JOE's Own Editor, which is currently
|
This is the portable version of JOE's Own Editor, which is currently
|
||||||
|
@ -35,8 +45,8 @@ stdenv.mkDerivation rec {
|
||||||
and has a lot of bugs fixed. It is based upon an older version of joe
|
and has a lot of bugs fixed. It is based upon an older version of joe
|
||||||
because these behave better overall.
|
because these behave better overall.
|
||||||
'';
|
'';
|
||||||
homepage = "http://www.mirbsd.org/jupp.htm";
|
license = licenses.gpl1Only;
|
||||||
license = licenses.gpl1;
|
|
||||||
maintainers = with maintainers; [ AndersonTorres ];
|
maintainers = with maintainers; [ AndersonTorres ];
|
||||||
|
platforms = with platforms; unix;
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
|
|
@ -16,11 +16,11 @@ let
|
||||||
|
|
||||||
in stdenv.mkDerivation rec {
|
in stdenv.mkDerivation rec {
|
||||||
pname = "nano";
|
pname = "nano";
|
||||||
version = "5.5";
|
version = "5.6";
|
||||||
|
|
||||||
src = fetchurl {
|
src = fetchurl {
|
||||||
url = "mirror://gnu/nano/${pname}-${version}.tar.xz";
|
url = "mirror://gnu/nano/${pname}-${version}.tar.xz";
|
||||||
sha256 = "0jkyd3yzcidnvnj1k9bmplzlbd303x6xxblpp5np7zs1kfzq22rr";
|
sha256 = "0ckscf3klm2k1zjvcv8mkza1yp80g7ss56n73790fk83lzj87qgw";
|
||||||
};
|
};
|
||||||
|
|
||||||
nativeBuildInputs = [ texinfo ] ++ optional enableNls gettext;
|
nativeBuildInputs = [ texinfo ] ++ optional enableNls gettext;
|
||||||
|
|
|
@ -3,13 +3,13 @@
|
||||||
|
|
||||||
mkDerivation rec {
|
mkDerivation rec {
|
||||||
pname = "texstudio";
|
pname = "texstudio";
|
||||||
version = "3.1.0";
|
version = "3.1.1";
|
||||||
|
|
||||||
src = fetchFromGitHub {
|
src = fetchFromGitHub {
|
||||||
owner = "${pname}-org";
|
owner = "${pname}-org";
|
||||||
repo = pname;
|
repo = pname;
|
||||||
rev = version;
|
rev = version;
|
||||||
sha256 = "sha256-40VgWfSjyERHJapiIXSk89O3X1V8rb8JEWqfnAyf1Sc=";
|
sha256 = "sha256-MFCQwhdF+WCTqDt4q5qw431y/zqEy9vHudcUYb4BYNQ=";
|
||||||
};
|
};
|
||||||
|
|
||||||
nativeBuildInputs = [ qmake wrapQtAppsHook pkg-config ];
|
nativeBuildInputs = [ qmake wrapQtAppsHook pkg-config ];
|
||||||
|
|
71
pkgs/applications/editors/xed-editor/default.nix
Normal file
71
pkgs/applications/editors/xed-editor/default.nix
Normal file
|
@ -0,0 +1,71 @@
|
||||||
|
{ stdenv
|
||||||
|
, lib
|
||||||
|
, fetchFromGitHub
|
||||||
|
, cmake
|
||||||
|
, libxml2
|
||||||
|
, libpeas
|
||||||
|
, glib
|
||||||
|
, gtk3
|
||||||
|
, gtksourceview4
|
||||||
|
, gspell
|
||||||
|
, xapps
|
||||||
|
, pkg-config
|
||||||
|
, meson
|
||||||
|
, ninja
|
||||||
|
, wrapGAppsHook
|
||||||
|
, intltool
|
||||||
|
, itstool }:
|
||||||
|
|
||||||
|
stdenv.mkDerivation rec {
|
||||||
|
pname = "xed-editor";
|
||||||
|
version = "2.8.4";
|
||||||
|
|
||||||
|
src = fetchFromGitHub {
|
||||||
|
owner = "linuxmint";
|
||||||
|
repo = "xed";
|
||||||
|
rev = version;
|
||||||
|
sha256 = "1hqr4157kp110p01jygqnnzj86zxlfiq4b53j345vqpx0f80c340";
|
||||||
|
};
|
||||||
|
|
||||||
|
nativeBuildInputs = [
|
||||||
|
meson
|
||||||
|
cmake
|
||||||
|
pkg-config
|
||||||
|
intltool
|
||||||
|
itstool
|
||||||
|
ninja
|
||||||
|
wrapGAppsHook
|
||||||
|
];
|
||||||
|
|
||||||
|
buildInputs = [
|
||||||
|
libxml2
|
||||||
|
glib
|
||||||
|
gtk3
|
||||||
|
gtksourceview4
|
||||||
|
libpeas
|
||||||
|
gspell
|
||||||
|
xapps
|
||||||
|
];
|
||||||
|
|
||||||
|
postInstall = ''
|
||||||
|
glib-compile-schemas $out/share/glib-2.0/schemas
|
||||||
|
'';
|
||||||
|
|
||||||
|
doInstallCheck = true;
|
||||||
|
installCheckPhase = ''
|
||||||
|
if [[ "$($out/bin/xed --version)" == "xed - Version ${version}" ]] ; then
|
||||||
|
echo "${pname} smoke test passed"
|
||||||
|
else
|
||||||
|
echo "${pname} smoke test failed"
|
||||||
|
return 1
|
||||||
|
fi
|
||||||
|
'';
|
||||||
|
|
||||||
|
meta = with lib; {
|
||||||
|
description = "Light weight text editor from Linux Mint";
|
||||||
|
homepage = "https://github.com/linuxmint/xed";
|
||||||
|
license = licenses.gpl2Only;
|
||||||
|
platforms = platforms.linux;
|
||||||
|
maintainers = with maintainers; [ tu-maurice ];
|
||||||
|
};
|
||||||
|
}
|
|
@ -5,11 +5,11 @@
|
||||||
|
|
||||||
stdenv.mkDerivation rec {
|
stdenv.mkDerivation rec {
|
||||||
pname = "avocode";
|
pname = "avocode";
|
||||||
version = "4.11.2";
|
version = "4.12.0";
|
||||||
|
|
||||||
src = fetchurl {
|
src = fetchurl {
|
||||||
url = "https://media.avocode.com/download/avocode-app/${version}/avocode-${version}-linux.zip";
|
url = "https://media.avocode.com/download/avocode-app/${version}/avocode-${version}-linux.zip";
|
||||||
sha256 = "sha256-gE00Pukkf5wXP+SGqJgKJeLR82VtH/iwFNYkBb4Z8q0=";
|
sha256 = "sha256-qbG0Ii3Xmj1UGGS+n+LdiNPAHBkpQZMGEzrDvOcaUNA=";
|
||||||
};
|
};
|
||||||
|
|
||||||
libPath = lib.makeLibraryPath (with xorg; [
|
libPath = lib.makeLibraryPath (with xorg; [
|
||||||
|
|
|
@ -11,11 +11,11 @@
|
||||||
|
|
||||||
stdenv.mkDerivation rec {
|
stdenv.mkDerivation rec {
|
||||||
pname = "drawio";
|
pname = "drawio";
|
||||||
version = "14.1.5";
|
version = "14.4.3";
|
||||||
|
|
||||||
src = fetchurl {
|
src = fetchurl {
|
||||||
url = "https://github.com/jgraph/drawio-desktop/releases/download/v${version}/draw.io-x86_64-${version}.rpm";
|
url = "https://github.com/jgraph/drawio-desktop/releases/download/v${version}/draw.io-x86_64-${version}.rpm";
|
||||||
hash = "sha256-dM/DGtUDnJBD4Cfhm/zbxfgBhUcIlEzlF4z3cmQuW14=";
|
hash = "sha256-0wBjZg6IvjVTzAGeXTBBZjIN6s9NxKV0r76YK9h4fFk=";
|
||||||
};
|
};
|
||||||
|
|
||||||
nativeBuildInputs = [
|
nativeBuildInputs = [
|
||||||
|
|
|
@ -1,6 +1,5 @@
|
||||||
{ lib, stdenv
|
{ lib, stdenv
|
||||||
, fetchurl
|
, fetchurl
|
||||||
, fetchpatch
|
|
||||||
, gnome3
|
, gnome3
|
||||||
, pkg-config
|
, pkg-config
|
||||||
, meson
|
, meson
|
||||||
|
|
|
@ -1,14 +1,14 @@
|
||||||
{ lib, stdenv, fetchgit, cmake, pkg-config, zlib, libpng, cairo, freetype
|
{ lib, stdenv, fetchFromGitHub, cmake, pkg-config, zlib, libpng, cairo, freetype
|
||||||
, json_c, fontconfig, gtkmm3, pangomm, glew, libGLU, xorg, pcre
|
, json_c, fontconfig, gtkmm3, pangomm, glew, libGLU, xorg, pcre, wrapGAppsHook
|
||||||
, wrapGAppsHook
|
|
||||||
}:
|
}:
|
||||||
stdenv.mkDerivation rec {
|
stdenv.mkDerivation rec {
|
||||||
name = "solvespace-2.3-20190501";
|
pname = "solvespace";
|
||||||
rev = "e7b75f19c34c923780db776592b47152650d8f22";
|
version = "v3.0.rc2";
|
||||||
src = fetchgit {
|
src = fetchFromGitHub {
|
||||||
url = "https://github.com/solvespace/solvespace";
|
owner = pname;
|
||||||
inherit rev;
|
repo = pname;
|
||||||
sha256 = "07k4mbzxf0dmzwdhjx5nc09y7rn1schkaypsw9kz0l7ppylprpp2";
|
rev = version;
|
||||||
|
sha256 = "1z0873gwcr0hybrpqy4hwislir6k2zb4s62lbsivq5nbkizy7gjm";
|
||||||
fetchSubmodules = true;
|
fetchSubmodules = true;
|
||||||
};
|
};
|
||||||
|
|
||||||
|
@ -31,7 +31,7 @@ stdenv.mkDerivation rec {
|
||||||
+# include(GetGitCommitHash)
|
+# include(GetGitCommitHash)
|
||||||
# and instead uncomment the following, adding the complete git hash of the checkout you are using:
|
# and instead uncomment the following, adding the complete git hash of the checkout you are using:
|
||||||
-# set(GIT_COMMIT_HASH 0000000000000000000000000000000000000000)
|
-# set(GIT_COMMIT_HASH 0000000000000000000000000000000000000000)
|
||||||
+set(GIT_COMMIT_HASH $rev)
|
+set(GIT_COMMIT_HASH $version)
|
||||||
EOF
|
EOF
|
||||||
'';
|
'';
|
||||||
|
|
||||||
|
@ -42,7 +42,7 @@ stdenv.mkDerivation rec {
|
||||||
|
|
||||||
meta = with lib; {
|
meta = with lib; {
|
||||||
description = "A parametric 3d CAD program";
|
description = "A parametric 3d CAD program";
|
||||||
license = licenses.gpl3;
|
license = licenses.gpl3Plus;
|
||||||
maintainers = [ maintainers.edef ];
|
maintainers = [ maintainers.edef ];
|
||||||
platforms = platforms.linux;
|
platforms = platforms.linux;
|
||||||
homepage = "http://solvespace.com";
|
homepage = "http://solvespace.com";
|
||||||
|
|
|
@ -8,11 +8,11 @@
|
||||||
|
|
||||||
stdenv.mkDerivation rec {
|
stdenv.mkDerivation rec {
|
||||||
pname = "1password";
|
pname = "1password";
|
||||||
version = "0.9.13";
|
version = "0.9.14-4";
|
||||||
|
|
||||||
src = fetchurl {
|
src = fetchurl {
|
||||||
url = "https://onepassword.s3.amazonaws.com/linux/appimage/${pname}-${version}.AppImage";
|
url = "https://onepassword.s3.amazonaws.com/linux/appimage/${pname}-${version}.AppImage";
|
||||||
hash = "sha256-VdbdmpLiQGVFH3q6baE2yuuKz11Tn0gMpkGDI9KI3HQ=";
|
hash = "sha256-ZEpHeBeP2LpjABWD1eQxUORUKsRWvZ8WYa5IxSRLeXc=";
|
||||||
};
|
};
|
||||||
|
|
||||||
nativeBuildInputs = [ makeWrapper ];
|
nativeBuildInputs = [ makeWrapper ];
|
||||||
|
|
32
pkgs/applications/misc/9menu/default.nix
Normal file
32
pkgs/applications/misc/9menu/default.nix
Normal file
|
@ -0,0 +1,32 @@
|
||||||
|
{ lib
|
||||||
|
, stdenv
|
||||||
|
, fetchFromGitHub
|
||||||
|
, pkg-config
|
||||||
|
, meson
|
||||||
|
, ninja
|
||||||
|
, libX11
|
||||||
|
, libXext
|
||||||
|
}:
|
||||||
|
|
||||||
|
stdenv.mkDerivation rec {
|
||||||
|
pname = "9menu";
|
||||||
|
version = "unstable-2021-02-24";
|
||||||
|
|
||||||
|
src = fetchFromGitHub {
|
||||||
|
owner = "arnoldrobbins";
|
||||||
|
repo = pname;
|
||||||
|
rev = "00cbf99c48dc580ca28f81ed66c89a98b7a182c8";
|
||||||
|
sha256 = "arca8Gbr4ytiCk43cifmNj7SUrDgn1XB26zAhZrVDs0=";
|
||||||
|
};
|
||||||
|
|
||||||
|
nativeBuildInputs = [ pkg-config meson ninja ];
|
||||||
|
buildInputs = [ libX11 libXext ];
|
||||||
|
|
||||||
|
meta = with lib; {
|
||||||
|
homepage = "https://github.com/arnoldrobbins/9menu";
|
||||||
|
description = "Simple X11 menu program for running commands";
|
||||||
|
license = licenses.gpl3Plus;
|
||||||
|
maintainers = with maintainers; [ AndersonTorres ];
|
||||||
|
platforms = libX11.meta.platforms;
|
||||||
|
};
|
||||||
|
}
|
|
@ -5,11 +5,11 @@ watchdog, wtforms, html2text, flask-compress }:
|
||||||
|
|
||||||
python3.pkgs.buildPythonApplication rec {
|
python3.pkgs.buildPythonApplication rec {
|
||||||
pname = "archivy";
|
pname = "archivy";
|
||||||
version = "1.0.1";
|
version = "1.0.2";
|
||||||
|
|
||||||
src = fetchPypi {
|
src = fetchPypi {
|
||||||
inherit pname version;
|
inherit pname version;
|
||||||
sha256 = "53a43e26e9081ac266412d8643c66c07c289c4639bbaec374fd5147441253a4f";
|
sha256 = "6f706b925175852d8101a4afe2304ab7ee7d56e9658538b9a8e49e925978b87e";
|
||||||
};
|
};
|
||||||
|
|
||||||
# Relax some dependencies
|
# Relax some dependencies
|
||||||
|
|
58
pkgs/applications/misc/caerbannog/default.nix
Normal file
58
pkgs/applications/misc/caerbannog/default.nix
Normal file
|
@ -0,0 +1,58 @@
|
||||||
|
{ lib
|
||||||
|
, fetchgit
|
||||||
|
, python3
|
||||||
|
, glib
|
||||||
|
, gobject-introspection
|
||||||
|
, meson
|
||||||
|
, ninja
|
||||||
|
, pkg-config
|
||||||
|
, wrapGAppsHook
|
||||||
|
, atk
|
||||||
|
, libhandy
|
||||||
|
, libnotify
|
||||||
|
, pango
|
||||||
|
}:
|
||||||
|
|
||||||
|
python3.pkgs.buildPythonApplication rec {
|
||||||
|
pname = "caerbannog";
|
||||||
|
version = "0.3";
|
||||||
|
format = "other";
|
||||||
|
|
||||||
|
src = fetchgit {
|
||||||
|
url = "https://git.sr.ht/~craftyguy/caerbannog";
|
||||||
|
rev = version;
|
||||||
|
sha256 = "0wqkb9zcllxm3fdsr5lphknkzy8r1cr80f84q200hbi99qql1dxh";
|
||||||
|
};
|
||||||
|
|
||||||
|
nativeBuildInputs = [
|
||||||
|
glib
|
||||||
|
gobject-introspection
|
||||||
|
meson
|
||||||
|
ninja
|
||||||
|
pkg-config
|
||||||
|
wrapGAppsHook
|
||||||
|
];
|
||||||
|
|
||||||
|
buildInputs = [
|
||||||
|
atk
|
||||||
|
gobject-introspection
|
||||||
|
libhandy
|
||||||
|
libnotify
|
||||||
|
pango
|
||||||
|
];
|
||||||
|
|
||||||
|
propagatedBuildInputs = with python3.pkgs; [
|
||||||
|
anytree
|
||||||
|
fuzzyfinder
|
||||||
|
gpgme
|
||||||
|
pygobject3
|
||||||
|
];
|
||||||
|
|
||||||
|
meta = with lib; {
|
||||||
|
description = "Mobile-friendly Gtk frontend for password-store";
|
||||||
|
homepage = "https://sr.ht/~craftyguy/caerbannog/";
|
||||||
|
changelog = "https://git.sr.ht/~craftyguy/caerbannog/refs/${version}";
|
||||||
|
license = licenses.gpl3Plus;
|
||||||
|
maintainers = with maintainers; [ dotlambda ];
|
||||||
|
};
|
||||||
|
}
|
|
@ -5,13 +5,13 @@
|
||||||
|
|
||||||
buildGoModule rec {
|
buildGoModule rec {
|
||||||
pname = "dasel";
|
pname = "dasel";
|
||||||
version = "1.13.1";
|
version = "1.13.2";
|
||||||
|
|
||||||
src = fetchFromGitHub {
|
src = fetchFromGitHub {
|
||||||
owner = "TomWright";
|
owner = "TomWright";
|
||||||
repo = pname;
|
repo = pname;
|
||||||
rev = "v${version}";
|
rev = "v${version}";
|
||||||
sha256 = "sha256-fgXhWouqStfxWs6cFNVxWI1INVYswVUTOuLr09utxpY=";
|
sha256 = "sha256-++8vTK0OR44Mcdh5g2bJEq7aO+fWySKw0XlSz2KJNio=";
|
||||||
};
|
};
|
||||||
|
|
||||||
vendorSha256 = "sha256-BdX4DO77mIf/+aBdkNVFUzClsIml1UMcgvikDbbdgcY=";
|
vendorSha256 = "sha256-BdX4DO77mIf/+aBdkNVFUzClsIml1UMcgvikDbbdgcY=";
|
||||||
|
|
|
@ -1,12 +1,13 @@
|
||||||
{ stdenv, lib, fetchFromGitHub, makeWrapper
|
{ stdenv, lib, fetchFromGitHub, makeWrapper
|
||||||
, pkg-config, which, perl, libXrandr
|
, pkg-config, which, perl, libXrandr
|
||||||
, cairo, dbus, systemd, gdk-pixbuf, glib, libX11, libXScrnSaver
|
, cairo, dbus, systemd, gdk-pixbuf, glib, libX11, libXScrnSaver
|
||||||
|
, gtk3, wayland, wayland-protocols
|
||||||
, libXinerama, libnotify, pango, xorgproto, librsvg, dunstify ? false
|
, libXinerama, libnotify, pango, xorgproto, librsvg, dunstify ? false
|
||||||
}:
|
}:
|
||||||
|
|
||||||
stdenv.mkDerivation rec {
|
stdenv.mkDerivation rec {
|
||||||
pname = "dunst";
|
pname = "dunst";
|
||||||
version = "1.5.0";
|
version = "1.6.1";
|
||||||
|
|
||||||
src = fetchFromGitHub {
|
src = fetchFromGitHub {
|
||||||
owner = "dunst-project";
|
owner = "dunst-project";
|
||||||
|
@ -20,6 +21,7 @@ stdenv.mkDerivation rec {
|
||||||
buildInputs = [
|
buildInputs = [
|
||||||
cairo dbus gdk-pixbuf glib libX11 libXScrnSaver
|
cairo dbus gdk-pixbuf glib libX11 libXScrnSaver
|
||||||
libXinerama libnotify pango xorgproto librsvg libXrandr
|
libXinerama libnotify pango xorgproto librsvg libXrandr
|
||||||
|
gtk3 wayland wayland-protocols
|
||||||
];
|
];
|
||||||
|
|
||||||
outputs = [ "out" "man" ];
|
outputs = [ "out" "man" ];
|
||||||
|
|
|
@ -8,13 +8,13 @@
|
||||||
|
|
||||||
stdenv.mkDerivation rec {
|
stdenv.mkDerivation rec {
|
||||||
pname = "free42";
|
pname = "free42";
|
||||||
version = "2.5.24a";
|
version = "3.0";
|
||||||
|
|
||||||
src = fetchFromGitHub {
|
src = fetchFromGitHub {
|
||||||
owner = "thomasokken";
|
owner = "thomasokken";
|
||||||
repo = pname;
|
repo = pname;
|
||||||
rev = "v${version}";
|
rev = "v${version}";
|
||||||
sha256 = "xP0kzpmX6Q5Dg7azvyUZIdoi52AYkUmiCkUA1aVY+nQ=";
|
sha256 = "jzNopLndYH9dIdm30pyDaZNksHwS4i5LTZUXRmcrTp8=";
|
||||||
};
|
};
|
||||||
|
|
||||||
nativeBuildInputs = [ pkg-config ];
|
nativeBuildInputs = [ pkg-config ];
|
||||||
|
|
|
@ -2,11 +2,11 @@
|
||||||
|
|
||||||
buildPythonApplication rec {
|
buildPythonApplication rec {
|
||||||
pname = "gallery_dl";
|
pname = "gallery_dl";
|
||||||
version = "1.16.4";
|
version = "1.16.5";
|
||||||
|
|
||||||
src = fetchPypi {
|
src = fetchPypi {
|
||||||
inherit pname version;
|
inherit pname version;
|
||||||
sha256 = "744deddf22fdbc51d1d89776c41b0f1127d2b4d212bd092718fad2c0dc7f160f";
|
sha256 = "fb8c927630b292abf5052f8f75c3eebccbdffa609566768d4dc4d9665df91e68";
|
||||||
};
|
};
|
||||||
|
|
||||||
propagatedBuildInputs = [ requests ];
|
propagatedBuildInputs = [ requests ];
|
||||||
|
|
|
@ -2,13 +2,13 @@
|
||||||
|
|
||||||
mkDerivation rec {
|
mkDerivation rec {
|
||||||
pname = "gpxsee";
|
pname = "gpxsee";
|
||||||
version = "8.6";
|
version = "8.7";
|
||||||
|
|
||||||
src = fetchFromGitHub {
|
src = fetchFromGitHub {
|
||||||
owner = "tumic0";
|
owner = "tumic0";
|
||||||
repo = "GPXSee";
|
repo = "GPXSee";
|
||||||
rev = version;
|
rev = version;
|
||||||
sha256 = "sha256-RAqTwi65YskQhsjlHxQqy50R5s8z2yriWLkrg5J/eTc=";
|
sha256 = "sha256-pBNG9lDdqvxh2hGmOcL21mkkyFD7id1mWCUSgkTG71M=";
|
||||||
};
|
};
|
||||||
|
|
||||||
patches = (substituteAll {
|
patches = (substituteAll {
|
||||||
|
|
159
pkgs/applications/misc/lscolors/cargo.lock.patch
Normal file
159
pkgs/applications/misc/lscolors/cargo.lock.patch
Normal file
|
@ -0,0 +1,159 @@
|
||||||
|
diff --git a/Cargo.lock b/Cargo.lock
|
||||||
|
new file mode 100644
|
||||||
|
index 0000000..3528c6c
|
||||||
|
--- /dev/null
|
||||||
|
+++ b/Cargo.lock
|
||||||
|
@@ -0,0 +1,153 @@
|
||||||
|
+# This file is automatically @generated by Cargo.
|
||||||
|
+# It is not intended for manual editing.
|
||||||
|
+[[package]]
|
||||||
|
+name = "ansi_term"
|
||||||
|
+version = "0.12.1"
|
||||||
|
+source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||||
|
+checksum = "d52a9bb7ec0cf484c551830a7ce27bd20d67eac647e1befb56b0be4ee39a55d2"
|
||||||
|
+dependencies = [
|
||||||
|
+ "winapi",
|
||||||
|
+]
|
||||||
|
+
|
||||||
|
+[[package]]
|
||||||
|
+name = "bitflags"
|
||||||
|
+version = "1.2.1"
|
||||||
|
+source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||||
|
+checksum = "cf1de2fe8c75bc145a2f577add951f8134889b4795d47466a54a5c846d691693"
|
||||||
|
+
|
||||||
|
+[[package]]
|
||||||
|
+name = "cfg-if"
|
||||||
|
+version = "1.0.0"
|
||||||
|
+source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||||
|
+checksum = "baf1de4339761588bc0619e3cbc0120ee582ebb74b53b4efbf79117bd2da40fd"
|
||||||
|
+
|
||||||
|
+[[package]]
|
||||||
|
+name = "getrandom"
|
||||||
|
+version = "0.2.2"
|
||||||
|
+source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||||
|
+checksum = "c9495705279e7140bf035dde1f6e750c162df8b625267cd52cc44e0b156732c8"
|
||||||
|
+dependencies = [
|
||||||
|
+ "cfg-if",
|
||||||
|
+ "libc",
|
||||||
|
+ "wasi",
|
||||||
|
+]
|
||||||
|
+
|
||||||
|
+[[package]]
|
||||||
|
+name = "libc"
|
||||||
|
+version = "0.2.86"
|
||||||
|
+source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||||
|
+checksum = "b7282d924be3275cec7f6756ff4121987bc6481325397dde6ba3e7802b1a8b1c"
|
||||||
|
+
|
||||||
|
+[[package]]
|
||||||
|
+name = "lscolors"
|
||||||
|
+version = "0.7.1"
|
||||||
|
+dependencies = [
|
||||||
|
+ "ansi_term",
|
||||||
|
+ "tempfile",
|
||||||
|
+]
|
||||||
|
+
|
||||||
|
+[[package]]
|
||||||
|
+name = "ppv-lite86"
|
||||||
|
+version = "0.2.10"
|
||||||
|
+source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||||
|
+checksum = "ac74c624d6b2d21f425f752262f42188365d7b8ff1aff74c82e45136510a4857"
|
||||||
|
+
|
||||||
|
+[[package]]
|
||||||
|
+name = "rand"
|
||||||
|
+version = "0.8.3"
|
||||||
|
+source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||||
|
+checksum = "0ef9e7e66b4468674bfcb0c81af8b7fa0bb154fa9f28eb840da5c447baeb8d7e"
|
||||||
|
+dependencies = [
|
||||||
|
+ "libc",
|
||||||
|
+ "rand_chacha",
|
||||||
|
+ "rand_core",
|
||||||
|
+ "rand_hc",
|
||||||
|
+]
|
||||||
|
+
|
||||||
|
+[[package]]
|
||||||
|
+name = "rand_chacha"
|
||||||
|
+version = "0.3.0"
|
||||||
|
+source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||||
|
+checksum = "e12735cf05c9e10bf21534da50a147b924d555dc7a547c42e6bb2d5b6017ae0d"
|
||||||
|
+dependencies = [
|
||||||
|
+ "ppv-lite86",
|
||||||
|
+ "rand_core",
|
||||||
|
+]
|
||||||
|
+
|
||||||
|
+[[package]]
|
||||||
|
+name = "rand_core"
|
||||||
|
+version = "0.6.2"
|
||||||
|
+source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||||
|
+checksum = "34cf66eb183df1c5876e2dcf6b13d57340741e8dc255b48e40a26de954d06ae7"
|
||||||
|
+dependencies = [
|
||||||
|
+ "getrandom",
|
||||||
|
+]
|
||||||
|
+
|
||||||
|
+[[package]]
|
||||||
|
+name = "rand_hc"
|
||||||
|
+version = "0.3.0"
|
||||||
|
+source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||||
|
+checksum = "3190ef7066a446f2e7f42e239d161e905420ccab01eb967c9eb27d21b2322a73"
|
||||||
|
+dependencies = [
|
||||||
|
+ "rand_core",
|
||||||
|
+]
|
||||||
|
+
|
||||||
|
+[[package]]
|
||||||
|
+name = "redox_syscall"
|
||||||
|
+version = "0.2.5"
|
||||||
|
+source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||||
|
+checksum = "94341e4e44e24f6b591b59e47a8a027df12e008d73fd5672dbea9cc22f4507d9"
|
||||||
|
+dependencies = [
|
||||||
|
+ "bitflags",
|
||||||
|
+]
|
||||||
|
+
|
||||||
|
+[[package]]
|
||||||
|
+name = "remove_dir_all"
|
||||||
|
+version = "0.5.3"
|
||||||
|
+source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||||
|
+checksum = "3acd125665422973a33ac9d3dd2df85edad0f4ae9b00dafb1a05e43a9f5ef8e7"
|
||||||
|
+dependencies = [
|
||||||
|
+ "winapi",
|
||||||
|
+]
|
||||||
|
+
|
||||||
|
+[[package]]
|
||||||
|
+name = "tempfile"
|
||||||
|
+version = "3.2.0"
|
||||||
|
+source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||||
|
+checksum = "dac1c663cfc93810f88aed9b8941d48cabf856a1b111c29a40439018d870eb22"
|
||||||
|
+dependencies = [
|
||||||
|
+ "cfg-if",
|
||||||
|
+ "libc",
|
||||||
|
+ "rand",
|
||||||
|
+ "redox_syscall",
|
||||||
|
+ "remove_dir_all",
|
||||||
|
+ "winapi",
|
||||||
|
+]
|
||||||
|
+
|
||||||
|
+[[package]]
|
||||||
|
+name = "wasi"
|
||||||
|
+version = "0.10.2+wasi-snapshot-preview1"
|
||||||
|
+source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||||
|
+checksum = "fd6fbd9a79829dd1ad0cc20627bf1ed606756a7f77edff7b66b7064f9cb327c6"
|
||||||
|
+
|
||||||
|
+[[package]]
|
||||||
|
+name = "winapi"
|
||||||
|
+version = "0.3.9"
|
||||||
|
+source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||||
|
+checksum = "5c839a674fcd7a98952e593242ea400abe93992746761e38641405d28b00f419"
|
||||||
|
+dependencies = [
|
||||||
|
+ "winapi-i686-pc-windows-gnu",
|
||||||
|
+ "winapi-x86_64-pc-windows-gnu",
|
||||||
|
+]
|
||||||
|
+
|
||||||
|
+[[package]]
|
||||||
|
+name = "winapi-i686-pc-windows-gnu"
|
||||||
|
+version = "0.4.0"
|
||||||
|
+source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||||
|
+checksum = "ac3b87c63620426dd9b991e5ce0329eff545bccbbb34f3be09ff6fb6ab51b7b6"
|
||||||
|
+
|
||||||
|
+[[package]]
|
||||||
|
+name = "winapi-x86_64-pc-windows-gnu"
|
||||||
|
+version = "0.4.0"
|
||||||
|
+source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||||
|
+checksum = "712e227841d057c1ee1cd2fb22fa7e5a5461ae8e48fa2ca79ec42cfc1931183f"
|
26
pkgs/applications/misc/lscolors/default.nix
Normal file
26
pkgs/applications/misc/lscolors/default.nix
Normal file
|
@ -0,0 +1,26 @@
|
||||||
|
{ lib, rustPlatform, fetchFromGitHub }:
|
||||||
|
|
||||||
|
rustPlatform.buildRustPackage rec {
|
||||||
|
pname = "lscolors";
|
||||||
|
version = "0.7.1";
|
||||||
|
|
||||||
|
src = fetchFromGitHub {
|
||||||
|
owner = "sharkdp";
|
||||||
|
repo = pname;
|
||||||
|
rev = "v${version}";
|
||||||
|
sha256 = "0av3v31fvanvn59bdm9d0v9zh5lzrq0f4vqhg6xlvabkgsa8jk04";
|
||||||
|
};
|
||||||
|
|
||||||
|
cargoPatches = [
|
||||||
|
./cargo.lock.patch
|
||||||
|
];
|
||||||
|
|
||||||
|
cargoSha256 = "02k23idwy0sb4lnjrwnyah3qp22zj161ilbc13p75k0hdijfaxl5";
|
||||||
|
|
||||||
|
meta = with lib; {
|
||||||
|
description = "Rust library and tool to colorize paths using LS_COLORS";
|
||||||
|
homepage = "https://github.com/sharkdp/lscolors";
|
||||||
|
license = with licenses; [ asl20 mit ];
|
||||||
|
maintainers = with maintainers; [ SuperSandro2000 ];
|
||||||
|
};
|
||||||
|
}
|
|
@ -1,4 +1,4 @@
|
||||||
{ buildPythonApplication, lib, fetchFromGitHub, fetchpatch
|
{ buildPythonApplication, lib, fetchFromGitHub
|
||||||
|
|
||||||
# build inputs
|
# build inputs
|
||||||
, atk
|
, atk
|
||||||
|
|
|
@ -30,12 +30,12 @@ let
|
||||||
|
|
||||||
in stdenv.mkDerivation rec {
|
in stdenv.mkDerivation rec {
|
||||||
pname = "obsidian";
|
pname = "obsidian";
|
||||||
version = "0.10.13";
|
version = "0.11.0";
|
||||||
|
|
||||||
src = fetchurl {
|
src = fetchurl {
|
||||||
url =
|
url =
|
||||||
"https://github.com/obsidianmd/obsidian-releases/releases/download/v${version}/obsidian-${version}.asar.gz";
|
"https://github.com/obsidianmd/obsidian-releases/releases/download/v${version}/obsidian-${version}.asar.gz";
|
||||||
sha256 = "J4kaNtB6DVivNDhrGwrRZJBvu4Bpzl0jY1ZtlAtQiZE=";
|
sha256 = "AkPx7X00kEds7B1syXJPSV1+TJlqQ7NnR6w9wSG2BRw=";
|
||||||
};
|
};
|
||||||
|
|
||||||
nativeBuildInputs = [ makeWrapper graphicsmagick ];
|
nativeBuildInputs = [ makeWrapper graphicsmagick ];
|
||||||
|
|
|
@ -6,7 +6,6 @@
|
||||||
, atspiSupport ? true
|
, atspiSupport ? true
|
||||||
, bash
|
, bash
|
||||||
, glib
|
, glib
|
||||||
, glibcLocales
|
|
||||||
, dconf
|
, dconf
|
||||||
, gobject-introspection
|
, gobject-introspection
|
||||||
, gsettings-desktop-schemas
|
, gsettings-desktop-schemas
|
||||||
|
@ -130,8 +129,7 @@ python3.pkgs.buildPythonApplication rec {
|
||||||
--replace "/etc" "$out/etc"
|
--replace "/etc" "$out/etc"
|
||||||
|
|
||||||
substituteInPlace ./Onboard/LanguageSupport.py \
|
substituteInPlace ./Onboard/LanguageSupport.py \
|
||||||
--replace "/usr/share/xml/iso-codes" "${isocodes}/share/xml/iso-codes" \
|
--replace "/usr/share/xml/iso-codes" "${isocodes}/share/xml/iso-codes"
|
||||||
--replace "/usr/bin/yelp" "${yelp}/bin/yelp"
|
|
||||||
|
|
||||||
substituteInPlace ./Onboard/Indicator.py \
|
substituteInPlace ./Onboard/Indicator.py \
|
||||||
--replace "/usr/bin/yelp" "${yelp}/bin/yelp"
|
--replace "/usr/bin/yelp" "${yelp}/bin/yelp"
|
||||||
|
|
|
@ -1,4 +1,4 @@
|
||||||
{ lib, stdenv, fetchFromGitHub, cmake, pkg-config, vala, gtk3, libgee, fetchpatch
|
{ lib, stdenv, fetchFromGitHub, cmake, pkg-config, vala, gtk3, libgee
|
||||||
, poppler, libpthreadstubs, gstreamer, gst-plugins-base, gst-plugins-good, gst-libav, librsvg, pcre, gobject-introspection, wrapGAppsHook
|
, poppler, libpthreadstubs, gstreamer, gst-plugins-base, gst-plugins-good, gst-libav, librsvg, pcre, gobject-introspection, wrapGAppsHook
|
||||||
, webkitgtk, discount, json-glib }:
|
, webkitgtk, discount, json-glib }:
|
||||||
|
|
||||||
|
|
17
pkgs/applications/misc/playonlinux/0001-fix-locale.patch
Normal file
17
pkgs/applications/misc/playonlinux/0001-fix-locale.patch
Normal file
|
@ -0,0 +1,17 @@
|
||||||
|
diff --git a/python/lib/lng.py b/python/lib/lng.py
|
||||||
|
index a390d920..00c3527e 100755
|
||||||
|
--- a/python/lib/lng.py
|
||||||
|
+++ b/python/lib/lng.py
|
||||||
|
@@ -12,11 +12,7 @@ class Lang(object):
|
||||||
|
|
||||||
|
class iLang(object):
|
||||||
|
def __init__(self):
|
||||||
|
- if(os.environ["DEBIAN_PACKAGE"] == "TRUE"):
|
||||||
|
- languages = os.listdir('/usr/share/locale')
|
||||||
|
- else:
|
||||||
|
- languages = os.listdir(Variables.playonlinux_env+'/lang/locale')
|
||||||
|
-
|
||||||
|
+ languages = os.listdir('@out@/share/playonlinux/lang/locale')
|
||||||
|
if(os.environ["POL_OS"] == "Mac"):
|
||||||
|
wxLocale = wx.Locale().FindLanguageInfo(os.environ["RLANG"])
|
||||||
|
|
|
@ -9,7 +9,7 @@
|
||||||
, imagemagick
|
, imagemagick
|
||||||
, netcat-gnu
|
, netcat-gnu
|
||||||
, p7zip
|
, p7zip
|
||||||
, python2
|
, python3
|
||||||
, unzip
|
, unzip
|
||||||
, wget
|
, wget
|
||||||
, wine
|
, wine
|
||||||
|
@ -22,6 +22,9 @@
|
||||||
, jq
|
, jq
|
||||||
, xorg
|
, xorg
|
||||||
, libGL
|
, libGL
|
||||||
|
, steam-run-native
|
||||||
|
# needed for avoiding crash on file selector
|
||||||
|
, gsettings-desktop-schemas
|
||||||
}:
|
}:
|
||||||
|
|
||||||
let
|
let
|
||||||
|
@ -54,9 +57,10 @@ let
|
||||||
ld64 = "${stdenv.cc}/nix-support/dynamic-linker";
|
ld64 = "${stdenv.cc}/nix-support/dynamic-linker";
|
||||||
libs = pkgs: lib.makeLibraryPath [ xorg.libX11 libGL ];
|
libs = pkgs: lib.makeLibraryPath [ xorg.libX11 libGL ];
|
||||||
|
|
||||||
python = python2.withPackages(ps: with ps; [
|
python = python3.withPackages(ps: with ps; [
|
||||||
wxPython
|
wxPython_4_1
|
||||||
setuptools
|
setuptools
|
||||||
|
natsort
|
||||||
]);
|
]);
|
||||||
|
|
||||||
in stdenv.mkDerivation {
|
in stdenv.mkDerivation {
|
||||||
|
@ -68,8 +72,16 @@ in stdenv.mkDerivation {
|
||||||
sha256 = "0n40927c8cnjackfns68zwl7h4d7dvhf7cyqdkazzwwx4k2xxvma";
|
sha256 = "0n40927c8cnjackfns68zwl7h4d7dvhf7cyqdkazzwwx4k2xxvma";
|
||||||
};
|
};
|
||||||
|
|
||||||
|
patches = [
|
||||||
|
./0001-fix-locale.patch
|
||||||
|
];
|
||||||
|
|
||||||
nativeBuildInputs = [ makeWrapper ];
|
nativeBuildInputs = [ makeWrapper ];
|
||||||
|
|
||||||
|
preBuild = ''
|
||||||
|
makeFlagsArray+=(PYTHON="python -m py_compile")
|
||||||
|
'';
|
||||||
|
|
||||||
buildInputs = [
|
buildInputs = [
|
||||||
xorg.libX11
|
xorg.libX11
|
||||||
libGL
|
libGL
|
||||||
|
@ -77,6 +89,7 @@ in stdenv.mkDerivation {
|
||||||
];
|
];
|
||||||
|
|
||||||
postPatch = ''
|
postPatch = ''
|
||||||
|
substituteAllInPlace python/lib/lng.py
|
||||||
patchShebangs python tests/python
|
patchShebangs python tests/python
|
||||||
sed -i "s/ %F//g" etc/PlayOnLinux.desktop
|
sed -i "s/ %F//g" etc/PlayOnLinux.desktop
|
||||||
'';
|
'';
|
||||||
|
@ -87,8 +100,16 @@ in stdenv.mkDerivation {
|
||||||
|
|
||||||
install -D -m644 etc/PlayOnLinux.desktop $out/share/applications/playonlinux.desktop
|
install -D -m644 etc/PlayOnLinux.desktop $out/share/applications/playonlinux.desktop
|
||||||
|
|
||||||
makeWrapper $out/share/playonlinux/playonlinux $out/bin/playonlinux \
|
makeWrapper $out/share/playonlinux/playonlinux{,-wrapper} \
|
||||||
--prefix PATH : ${binpath}
|
--prefix PATH : ${binpath} \
|
||||||
|
--prefix XDG_DATA_DIRS : ${gsettings-desktop-schemas}/share/GConf
|
||||||
|
# steam-run is needed to run the downloaded wine executables
|
||||||
|
mkdir -p $out/bin
|
||||||
|
cat > $out/bin/playonlinux <<EOF
|
||||||
|
#!${stdenv.shell} -e
|
||||||
|
exec ${steam-run-native}/bin/steam-run $out/share/playonlinux/playonlinux-wrapper "\$@"
|
||||||
|
EOF
|
||||||
|
chmod a+x $out/bin/playonlinux
|
||||||
|
|
||||||
bunzip2 $out/share/playonlinux/bin/check_dd_x86.bz2
|
bunzip2 $out/share/playonlinux/bin/check_dd_x86.bz2
|
||||||
patchelf --set-interpreter $(cat ${ld32}) --set-rpath ${libs pkgsi686Linux} $out/share/playonlinux/bin/check_dd_x86
|
patchelf --set-interpreter $(cat ${ld32}) --set-rpath ${libs pkgsi686Linux} $out/share/playonlinux/bin/check_dd_x86
|
||||||
|
@ -107,7 +128,7 @@ in stdenv.mkDerivation {
|
||||||
description = "GUI for managing Windows programs under linux";
|
description = "GUI for managing Windows programs under linux";
|
||||||
homepage = "https://www.playonlinux.com/";
|
homepage = "https://www.playonlinux.com/";
|
||||||
license = licenses.gpl3;
|
license = licenses.gpl3;
|
||||||
maintainers = [ maintainers.a1russell ];
|
maintainers = [ maintainers.pasqui23 ];
|
||||||
platforms = [ "x86_64-linux" "i686-linux" ];
|
platforms = [ "x86_64-linux" "i686-linux" ];
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
|
|
@ -1,5 +1,20 @@
|
||||||
{ lib, stdenv, fetchurl, fetchsvn, makeWrapper, makeDesktopItem, jdk, jre, ant
|
{ lib
|
||||||
, gtk3, gsettings-desktop-schemas, p7zip, libXxf86vm }:
|
, stdenv
|
||||||
|
, fetchurl
|
||||||
|
, fetchsvn
|
||||||
|
, makeWrapper
|
||||||
|
, makeDesktopItem
|
||||||
|
# sweethome3d 6.4.2 does not yet build with jdk 9 and later.
|
||||||
|
# this is fixed on trunk (7699?) but let's build with jdk8 until then.
|
||||||
|
, jdk8
|
||||||
|
# it can run on the latest stable jre fine though
|
||||||
|
, jre
|
||||||
|
, ant
|
||||||
|
, gtk3
|
||||||
|
, gsettings-desktop-schemas
|
||||||
|
, p7zip
|
||||||
|
, libXxf86vm
|
||||||
|
}:
|
||||||
|
|
||||||
let
|
let
|
||||||
|
|
||||||
|
@ -27,7 +42,7 @@ let
|
||||||
categories = "Graphics;2DGraphics;3DGraphics;";
|
categories = "Graphics;2DGraphics;3DGraphics;";
|
||||||
};
|
};
|
||||||
|
|
||||||
patchPhase = ''
|
postPatch = ''
|
||||||
patchelf --set-rpath ${libXxf86vm}/lib lib/java3d-1.6/linux/amd64/libnativewindow_awt.so
|
patchelf --set-rpath ${libXxf86vm}/lib lib/java3d-1.6/linux/amd64/libnativewindow_awt.so
|
||||||
patchelf --set-rpath ${libXxf86vm}/lib lib/java3d-1.6/linux/amd64/libnativewindow_x11.so
|
patchelf --set-rpath ${libXxf86vm}/lib lib/java3d-1.6/linux/amd64/libnativewindow_x11.so
|
||||||
patchelf --set-rpath ${libXxf86vm}/lib lib/java3d-1.6/linux/i586/libnativewindow_awt.so
|
patchelf --set-rpath ${libXxf86vm}/lib lib/java3d-1.6/linux/i586/libnativewindow_awt.so
|
||||||
|
@ -35,16 +50,22 @@ let
|
||||||
'';
|
'';
|
||||||
|
|
||||||
nativeBuildInputs = [ makeWrapper ];
|
nativeBuildInputs = [ makeWrapper ];
|
||||||
buildInputs = [ ant jdk p7zip gtk3 gsettings-desktop-schemas ];
|
buildInputs = [ ant jdk8 p7zip gtk3 gsettings-desktop-schemas ];
|
||||||
|
|
||||||
buildPhase = ''
|
buildPhase = ''
|
||||||
|
runHook preBuild
|
||||||
|
|
||||||
ant furniture textures help
|
ant furniture textures help
|
||||||
mkdir -p $out/share/{java,applications}
|
mkdir -p $out/share/{java,applications}
|
||||||
mv "build/"*.jar $out/share/java/.
|
mv "build/"*.jar $out/share/java/.
|
||||||
ant
|
ant
|
||||||
|
|
||||||
|
runHook postBuild
|
||||||
'';
|
'';
|
||||||
|
|
||||||
installPhase = ''
|
installPhase = ''
|
||||||
|
runHook preInstall
|
||||||
|
|
||||||
mkdir -p $out/bin
|
mkdir -p $out/bin
|
||||||
cp install/${module}-${version}.jar $out/share/java/.
|
cp install/${module}-${version}.jar $out/share/java/.
|
||||||
|
|
||||||
|
@ -60,6 +81,8 @@ let
|
||||||
--set MESA_GL_VERSION_OVERRIDE 2.1 \
|
--set MESA_GL_VERSION_OVERRIDE 2.1 \
|
||||||
--prefix XDG_DATA_DIRS : "$XDG_ICON_DIRS:${gtk3.out}/share:${gsettings-desktop-schemas}/share:$out/share:$GSETTINGS_SCHEMAS_PATH" \
|
--prefix XDG_DATA_DIRS : "$XDG_ICON_DIRS:${gtk3.out}/share:${gsettings-desktop-schemas}/share:$out/share:$GSETTINGS_SCHEMAS_PATH" \
|
||||||
--add-flags "-Dsun.java2d.opengl=true -jar $out/share/java/${module}-${version}.jar -cp $out/share/java/Furniture.jar:$out/share/java/Textures.jar:$out/share/java/Help.jar -d${toString stdenv.hostPlatform.parsed.cpu.bits}"
|
--add-flags "-Dsun.java2d.opengl=true -jar $out/share/java/${module}-${version}.jar -cp $out/share/java/Furniture.jar:$out/share/java/Textures.jar:$out/share/java/Help.jar -d${toString stdenv.hostPlatform.parsed.cpu.bits}"
|
||||||
|
|
||||||
|
runHook postInstall
|
||||||
'';
|
'';
|
||||||
|
|
||||||
dontStrip = true;
|
dontStrip = true;
|
||||||
|
|
|
@ -1,5 +1,17 @@
|
||||||
{ lib, stdenv, fetchcvs, makeWrapper, makeDesktopItem, jdk, jre, ant
|
{ lib
|
||||||
, gtk3, gsettings-desktop-schemas, sweethome3dApp }:
|
, stdenv
|
||||||
|
, fetchcvs
|
||||||
|
, makeWrapper
|
||||||
|
, makeDesktopItem
|
||||||
|
# sweethome3d 6.4.2 does not yet build with jdk 9 and later.
|
||||||
|
# this is fixed on trunk (7699?) but let's build with jdk8 until then.
|
||||||
|
, jdk8
|
||||||
|
# it can run on the latest stable jre fine though
|
||||||
|
, jre
|
||||||
|
, ant
|
||||||
|
, gtk3
|
||||||
|
, gsettings-desktop-schemas
|
||||||
|
, sweethome3dApp }:
|
||||||
|
|
||||||
let
|
let
|
||||||
|
|
||||||
|
@ -24,15 +36,19 @@ let
|
||||||
};
|
};
|
||||||
|
|
||||||
nativeBuildInputs = [ makeWrapper ];
|
nativeBuildInputs = [ makeWrapper ];
|
||||||
buildInputs = [ ant jre jdk gtk3 gsettings-desktop-schemas ];
|
buildInputs = [ ant jre jdk8 gtk3 gsettings-desktop-schemas ];
|
||||||
|
|
||||||
patchPhase = ''
|
postPatch = ''
|
||||||
sed -i -e 's,../SweetHome3D,${application.src},g' build.xml
|
sed -i -e 's,../SweetHome3D,${application.src},g' build.xml
|
||||||
sed -i -e 's,lib/macosx/java3d-1.6/jogl-all.jar,lib/java3d-1.6/jogl-all.jar,g' build.xml
|
sed -i -e 's,lib/macosx/java3d-1.6/jogl-all.jar,lib/java3d-1.6/jogl-all.jar,g' build.xml
|
||||||
'';
|
'';
|
||||||
|
|
||||||
buildPhase = ''
|
buildPhase = ''
|
||||||
ant -lib ${application.src}/libtest -lib ${application.src}/lib -lib ${jdk}/lib
|
runHook preBuild
|
||||||
|
|
||||||
|
ant -lib ${application.src}/libtest -lib ${application.src}/lib -lib ${jdk8}/lib
|
||||||
|
|
||||||
|
runHook postBuild
|
||||||
'';
|
'';
|
||||||
|
|
||||||
installPhase = ''
|
installPhase = ''
|
||||||
|
|
|
@ -2,13 +2,13 @@
|
||||||
|
|
||||||
buildGoModule rec {
|
buildGoModule rec {
|
||||||
pname = "ticker";
|
pname = "ticker";
|
||||||
version = "3.1.7";
|
version = "3.1.8";
|
||||||
|
|
||||||
src = fetchFromGitHub {
|
src = fetchFromGitHub {
|
||||||
owner = "achannarasappa";
|
owner = "achannarasappa";
|
||||||
repo = "ticker";
|
repo = "ticker";
|
||||||
rev = "v${version}";
|
rev = "v${version}";
|
||||||
sha256 = "sha256-OA01GYp6E0zsEwkUUtvpmvl0y/YTXChl0pwIKozB4Qg=";
|
sha256 = "sha256-U2TYUB4RHUBPoXe/te+QpXglbVcrT6SItiDrA7ODX6w=";
|
||||||
};
|
};
|
||||||
|
|
||||||
vendorSha256 = "sha256-aUBj7ZGWBeWc71y1CWm/KCw+El5TwH29S+KxyZGH1Zo=";
|
vendorSha256 = "sha256-aUBj7ZGWBeWc71y1CWm/KCw+El5TwH29S+KxyZGH1Zo=";
|
||||||
|
|
|
@ -2,16 +2,16 @@
|
||||||
|
|
||||||
rustPlatform.buildRustPackage rec {
|
rustPlatform.buildRustPackage rec {
|
||||||
pname = "tickrs";
|
pname = "tickrs";
|
||||||
version = "0.13.0";
|
version = "0.13.1";
|
||||||
|
|
||||||
src = fetchFromGitHub {
|
src = fetchFromGitHub {
|
||||||
owner = "tarkah";
|
owner = "tarkah";
|
||||||
repo = pname;
|
repo = pname;
|
||||||
rev = "v${version}";
|
rev = "v${version}";
|
||||||
sha256 = "sha256-Gxrz0RNv7sEIfl0Ac5eLVXvbbxIWIL31mDOZrgY88ps=";
|
sha256 = "sha256-PGJztoGVIjUwx4x42LdpxJQMZH60x6JWY+yTHQgjHWM=";
|
||||||
};
|
};
|
||||||
|
|
||||||
cargoSha256 = "sha256-9UlEmc9gbZDWelOPD3jZAIkVKNk9jMq5Ljzwur1UiGs=";
|
cargoSha256 = "sha256-0NNdo28fLoqwKXBQ1fBTKPGE/zE7pnWnIjgCITsaGJc=";
|
||||||
|
|
||||||
nativeBuildInputs = [ perl ];
|
nativeBuildInputs = [ perl ];
|
||||||
|
|
||||||
|
|
|
@ -1,4 +1,4 @@
|
||||||
{ version ? "release", stdenv, lib, substituteAll, fetchFromGitHub, go-ethereum }:
|
{ version ? "release", stdenv, lib, fetchFromGitHub, go-ethereum }:
|
||||||
|
|
||||||
stdenv.mkDerivation rec {
|
stdenv.mkDerivation rec {
|
||||||
pname = "bee-clef";
|
pname = "bee-clef";
|
||||||
|
|
|
@ -88,11 +88,11 @@ in
|
||||||
|
|
||||||
stdenv.mkDerivation rec {
|
stdenv.mkDerivation rec {
|
||||||
pname = "brave";
|
pname = "brave";
|
||||||
version = "1.19.88";
|
version = "1.20.110";
|
||||||
|
|
||||||
src = fetchurl {
|
src = fetchurl {
|
||||||
url = "https://github.com/brave/brave-browser/releases/download/v${version}/brave-browser_${version}_amd64.deb";
|
url = "https://github.com/brave/brave-browser/releases/download/v${version}/brave-browser_${version}_amd64.deb";
|
||||||
sha256 = "jySedvm9V3O4kri1PgoqC0OsC1gvB0Nwx8leoUZnHK0=";
|
sha256 = "0xmf74qh85f2jvi90q4cw2n7cvx5p46xmdr2iznfy09hdsymxfry";
|
||||||
};
|
};
|
||||||
|
|
||||||
dontConfigure = true;
|
dontConfigure = true;
|
||||||
|
|
|
@ -13,13 +13,13 @@ assert enablePython -> python != null;
|
||||||
|
|
||||||
stdenv.mkDerivation rec {
|
stdenv.mkDerivation rec {
|
||||||
pname = "elinks";
|
pname = "elinks";
|
||||||
version = "0.13.5";
|
version = "0.14.0";
|
||||||
|
|
||||||
src = fetchFromGitHub {
|
src = fetchFromGitHub {
|
||||||
owner = "rkd77";
|
owner = "rkd77";
|
||||||
repo = "felinks";
|
repo = "felinks";
|
||||||
rev = "v${version}";
|
rev = "v${version}";
|
||||||
sha256 = "067l9m47j40039q8mvvnxd1amwrac3x6vv0c0svimfpvj4ammgkg";
|
sha256 = "sha256-LxJJ0yBlw9hJ/agyL9dbVe4STKdXE8rtk1mMFqe1fFI=";
|
||||||
};
|
};
|
||||||
|
|
||||||
buildInputs = [
|
buildInputs = [
|
||||||
|
|
File diff suppressed because it is too large
Load diff
|
@ -14,13 +14,13 @@
|
||||||
|
|
||||||
stdenv.mkDerivation rec {
|
stdenv.mkDerivation rec {
|
||||||
pname = "lagrange";
|
pname = "lagrange";
|
||||||
version = "1.1.1";
|
version = "1.1.4";
|
||||||
|
|
||||||
src = fetchFromGitHub {
|
src = fetchFromGitHub {
|
||||||
owner = "skyjake";
|
owner = "skyjake";
|
||||||
repo = "lagrange";
|
repo = "lagrange";
|
||||||
rev = "v${version}";
|
rev = "v${version}";
|
||||||
sha256 = "0c7w4a19cwx3bkmbhc9c1wx0zmqd3a1grrj4ffifdic95wdihv7x";
|
sha256 = "sha256-EN0fQ5Scwrd7Tv31upQVbuqoNCoYudtruwtPR1IKTzE=";
|
||||||
fetchSubmodules = true;
|
fetchSubmodules = true;
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|
|
@ -1,4 +1,4 @@
|
||||||
{ stdenv, lib, lispPackages, sbcl
|
{ stdenv, lib, lispPackages
|
||||||
, makeWrapper, wrapGAppsHook, gst_all_1
|
, makeWrapper, wrapGAppsHook, gst_all_1
|
||||||
, glib, gdk-pixbuf, cairo
|
, glib, gdk-pixbuf, cairo
|
||||||
, mime-types, pango, gtk3
|
, mime-types, pango, gtk3
|
||||||
|
|
|
@ -19,9 +19,7 @@
|
||||||
, dbus
|
, dbus
|
||||||
, vala
|
, vala
|
||||||
, wrapGAppsHook
|
, wrapGAppsHook
|
||||||
, xorg
|
|
||||||
, xvfb_run
|
, xvfb_run
|
||||||
, libxml2
|
|
||||||
}:
|
}:
|
||||||
|
|
||||||
stdenv.mkDerivation rec {
|
stdenv.mkDerivation rec {
|
||||||
|
|
|
@ -2,17 +2,17 @@
|
||||||
|
|
||||||
buildGoModule rec {
|
buildGoModule rec {
|
||||||
pname = "argocd";
|
pname = "argocd";
|
||||||
version = "1.8.4";
|
version = "1.8.5";
|
||||||
commit = "28aea3dfdede00443b52cc584814d80e8f896200";
|
commit = "28aea3dfdede00443b52cc584814d80e8f896200";
|
||||||
|
|
||||||
src = fetchFromGitHub {
|
src = fetchFromGitHub {
|
||||||
owner = "argoproj";
|
owner = "argoproj";
|
||||||
repo = "argo-cd";
|
repo = "argo-cd";
|
||||||
rev = "v${version}";
|
rev = "v${version}";
|
||||||
sha256 = "sha256:155396rnihha31jxy0zk1jykiirpv4dhc69w45y6nx3nx4k0gwhk";
|
sha256 = "sha256-JjxibnGSDTjd0E9L3X2wnl9G713IYBs+O449RdrT19w=";
|
||||||
};
|
};
|
||||||
|
|
||||||
vendorSha256 = "sha256-6DOay+aeXz7EQKe5SzQSmg/5KyUI0g6wzPgx/+F2RW4=";
|
vendorSha256 = "sha256-rZ/ox180h9scocheYtMmKkoHY2/jH+I++vYX8R0fdlA=";
|
||||||
|
|
||||||
doCheck = false;
|
doCheck = false;
|
||||||
|
|
||||||
|
|
|
@ -1,9 +1,12 @@
|
||||||
{ lib, stdenv, fetchurl, makeWrapper, pkg-config, which, maven, cmake, jre, bash
|
{ lib, stdenv, fetchurl, makeWrapper, pkg-config, which, maven, cmake, jre, jdk8, bash
|
||||||
, coreutils, glibc, protobuf2_5, fuse, snappy, zlib, bzip2, openssl, openssl_1_0_2
|
, coreutils, glibc, protobuf2_5, fuse, snappy, zlib, bzip2, openssl, openssl_1_0_2
|
||||||
}:
|
}:
|
||||||
|
|
||||||
let
|
let
|
||||||
common = { version, sha256, dependencies-sha256, tomcat, opensslPkg ? openssl }:
|
maven-jdk8 = maven.override {
|
||||||
|
jdk = jdk8;
|
||||||
|
};
|
||||||
|
common = { version, sha256, dependencies-sha256, maven, tomcat, opensslPkg ? openssl }:
|
||||||
let
|
let
|
||||||
# compile the hadoop tarball from sources, it requires some patches
|
# compile the hadoop tarball from sources, it requires some patches
|
||||||
binary-distributon = stdenv.mkDerivation rec {
|
binary-distributon = stdenv.mkDerivation rec {
|
||||||
|
@ -131,6 +134,7 @@ in {
|
||||||
dependencies-sha256 = "1lsr9nvrynzspxqcamb10d596zlnmnfpxhkd884gdiva0frm0b1r";
|
dependencies-sha256 = "1lsr9nvrynzspxqcamb10d596zlnmnfpxhkd884gdiva0frm0b1r";
|
||||||
tomcat = tomcat_6_0_48;
|
tomcat = tomcat_6_0_48;
|
||||||
opensslPkg = openssl_1_0_2;
|
opensslPkg = openssl_1_0_2;
|
||||||
|
maven = maven-jdk8;
|
||||||
};
|
};
|
||||||
hadoop_2_8 = common {
|
hadoop_2_8 = common {
|
||||||
version = "2.8.4";
|
version = "2.8.4";
|
||||||
|
@ -138,6 +142,7 @@ in {
|
||||||
dependencies-sha256 = "1j4f461487fydgr5978nnm245ksv4xbvskfr8pbmfhcyss6b7w03";
|
dependencies-sha256 = "1j4f461487fydgr5978nnm245ksv4xbvskfr8pbmfhcyss6b7w03";
|
||||||
tomcat = tomcat_6_0_48;
|
tomcat = tomcat_6_0_48;
|
||||||
opensslPkg = openssl_1_0_2;
|
opensslPkg = openssl_1_0_2;
|
||||||
|
maven = maven-jdk8;
|
||||||
};
|
};
|
||||||
hadoop_2_9 = common {
|
hadoop_2_9 = common {
|
||||||
version = "2.9.1";
|
version = "2.9.1";
|
||||||
|
@ -145,17 +150,20 @@ in {
|
||||||
dependencies-sha256 = "1d5i8jj5y746rrqb9lscycnd7acmxlkz64ydsiyqsh5cdqgy2x7x";
|
dependencies-sha256 = "1d5i8jj5y746rrqb9lscycnd7acmxlkz64ydsiyqsh5cdqgy2x7x";
|
||||||
tomcat = tomcat_6_0_48;
|
tomcat = tomcat_6_0_48;
|
||||||
opensslPkg = openssl_1_0_2;
|
opensslPkg = openssl_1_0_2;
|
||||||
|
maven = maven-jdk8;
|
||||||
};
|
};
|
||||||
hadoop_3_0 = common {
|
hadoop_3_0 = common {
|
||||||
version = "3.0.3";
|
version = "3.0.3";
|
||||||
sha256 = "1vvkci0kx4b48dg0niifn2d3r4wwq8pb3c5z20wy8pqsqrqhlci5";
|
sha256 = "1vvkci0kx4b48dg0niifn2d3r4wwq8pb3c5z20wy8pqsqrqhlci5";
|
||||||
dependencies-sha256 = "1kzkna9ywacm2m1cirj9cyip66bgqjhid2xf9rrhq6g10lhr8j9m";
|
dependencies-sha256 = "1kzkna9ywacm2m1cirj9cyip66bgqjhid2xf9rrhq6g10lhr8j9m";
|
||||||
tomcat = null;
|
tomcat = null;
|
||||||
|
maven = maven-jdk8;
|
||||||
};
|
};
|
||||||
hadoop_3_1 = common {
|
hadoop_3_1 = common {
|
||||||
version = "3.1.1";
|
version = "3.1.1";
|
||||||
sha256 = "04hhdbyd4x1hy0fpy537f8mi0864hww97zap29x7dk1smrffwabd";
|
sha256 = "04hhdbyd4x1hy0fpy537f8mi0864hww97zap29x7dk1smrffwabd";
|
||||||
dependencies-sha256 = "1q63jsxg3d31x0p8hvhpvbly2b07almyzsbhwphbczl3fhlqgiwn";
|
dependencies-sha256 = "1q63jsxg3d31x0p8hvhpvbly2b07almyzsbhwphbczl3fhlqgiwn";
|
||||||
tomcat = null;
|
tomcat = null;
|
||||||
|
maven = maven-jdk8;
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
|
|
@ -2,7 +2,7 @@
|
||||||
|
|
||||||
buildGoPackage rec {
|
buildGoPackage rec {
|
||||||
pname = "kube-router";
|
pname = "kube-router";
|
||||||
version = "1.1.0";
|
version = "1.1.1";
|
||||||
|
|
||||||
goPackagePath = "github.com/cloudnativelabs/kube-router";
|
goPackagePath = "github.com/cloudnativelabs/kube-router";
|
||||||
|
|
||||||
|
@ -10,7 +10,7 @@ buildGoPackage rec {
|
||||||
owner = "cloudnativelabs";
|
owner = "cloudnativelabs";
|
||||||
repo = pname;
|
repo = pname;
|
||||||
rev = "v${version}";
|
rev = "v${version}";
|
||||||
sha256 = "0nsd371w667qhgiygxcg4kmynwldb0pbip6x03rc7j854hg8l7k0";
|
sha256 = "sha256-U7vjWtVXmyEPYFS1fAPOgV3WILGPhWsmoawV7B0pZaE=";
|
||||||
};
|
};
|
||||||
|
|
||||||
buildFlagsArray = ''
|
buildFlagsArray = ''
|
||||||
|
|
|
@ -2,13 +2,13 @@
|
||||||
|
|
||||||
buildGoModule rec {
|
buildGoModule rec {
|
||||||
pname = "kubeseal";
|
pname = "kubeseal";
|
||||||
version = "0.14.1";
|
version = "0.15.0";
|
||||||
|
|
||||||
src = fetchFromGitHub {
|
src = fetchFromGitHub {
|
||||||
owner = "bitnami-labs";
|
owner = "bitnami-labs";
|
||||||
repo = "sealed-secrets";
|
repo = "sealed-secrets";
|
||||||
rev = "v${version}";
|
rev = "v${version}";
|
||||||
sha256 = "sha256-sUeXzmgSOkpqzqrX9+wNGj2X7gcf5QSpavXK4MJe8qE=";
|
sha256 = "sha256-wzaNFM/4V2mWqhkqeT70ieQuhgNK79U2b7PhxKqn/X0=";
|
||||||
};
|
};
|
||||||
|
|
||||||
vendorSha256 = null;
|
vendorSha256 = null;
|
||||||
|
|
|
@ -9,16 +9,16 @@
|
||||||
|
|
||||||
buildGoModule rec {
|
buildGoModule rec {
|
||||||
pname = "nerdctl";
|
pname = "nerdctl";
|
||||||
version = "0.6.0";
|
version = "0.6.1";
|
||||||
|
|
||||||
src = fetchFromGitHub {
|
src = fetchFromGitHub {
|
||||||
owner = "AkihiroSuda";
|
owner = "AkihiroSuda";
|
||||||
repo = pname;
|
repo = pname;
|
||||||
rev = "v${version}";
|
rev = "v${version}";
|
||||||
sha256 = "sha256-lSvYiTh67gK9kJls7VsayV8T3H6RzFEEKe49BOWnUBw=";
|
sha256 = "sha256-zexvTPEQw7iW1d3ahHmqTn+UaT/bJMlr1sVlWErc2ck=";
|
||||||
};
|
};
|
||||||
|
|
||||||
vendorSha256 = "sha256-qywiaNoO3pI7sfyPbwWR8BLd86RvJ2xSWwCJUsm3RkM=";
|
vendorSha256 = "sha256-bX1GfKbAbdEAnW3kPNsbF/cJWufxvuhm//G88qJ3u08=";
|
||||||
|
|
||||||
nativeBuildInputs = [ makeWrapper ];
|
nativeBuildInputs = [ makeWrapper ];
|
||||||
|
|
||||||
|
@ -30,6 +30,9 @@ buildGoModule rec {
|
||||||
"-X github.com/AkihiroSuda/nerdctl/pkg/version.Revision=<unknown>"
|
"-X github.com/AkihiroSuda/nerdctl/pkg/version.Revision=<unknown>"
|
||||||
];
|
];
|
||||||
|
|
||||||
|
# Many checks require a containerd socket and running nerdctl after it's built
|
||||||
|
doCheck = false;
|
||||||
|
|
||||||
postInstall = ''
|
postInstall = ''
|
||||||
wrapProgram $out/bin/nerdctl \
|
wrapProgram $out/bin/nerdctl \
|
||||||
--prefix PATH : "${lib.makeBinPath ([ buildkit ] ++ extraPackages)}" \
|
--prefix PATH : "${lib.makeBinPath ([ buildkit ] ++ extraPackages)}" \
|
||||||
|
@ -39,6 +42,9 @@ buildGoModule rec {
|
||||||
doInstallCheck = true;
|
doInstallCheck = true;
|
||||||
installCheckPhase = ''
|
installCheckPhase = ''
|
||||||
runHook preInstallCheck
|
runHook preInstallCheck
|
||||||
|
# nerdctl expects XDG_RUNTIME_DIR to be set
|
||||||
|
export XDG_RUNTIME_DIR=$TMPDIR
|
||||||
|
|
||||||
$out/bin/nerdctl --help
|
$out/bin/nerdctl --help
|
||||||
# --version will error without containerd.sock access
|
# --version will error without containerd.sock access
|
||||||
$out/bin/nerdctl --help | grep "${version}"
|
$out/bin/nerdctl --help | grep "${version}"
|
||||||
|
|
|
@ -2,13 +2,13 @@
|
||||||
|
|
||||||
buildGoModule rec {
|
buildGoModule rec {
|
||||||
pname = "node-problem-detector";
|
pname = "node-problem-detector";
|
||||||
version = "0.8.6";
|
version = "0.8.7";
|
||||||
|
|
||||||
src = fetchFromGitHub {
|
src = fetchFromGitHub {
|
||||||
owner = "kubernetes";
|
owner = "kubernetes";
|
||||||
repo = pname;
|
repo = pname;
|
||||||
rev = "v${version}";
|
rev = "v${version}";
|
||||||
sha256 = "sha256-8qY99sEEOFY2eMfuZSWv49nw1LKVHn50P1gYQN6y2f4=";
|
sha256 = "sha256-GyWvwgLtE8N+HLmGKUOjv5HXl2sdnecjh5y6VCOs+/0=";
|
||||||
};
|
};
|
||||||
|
|
||||||
vendorSha256 = null;
|
vendorSha256 = null;
|
||||||
|
|
|
@ -6,6 +6,6 @@
|
||||||
|
|
||||||
callPackage ./generic.nix {
|
callPackage ./generic.nix {
|
||||||
inherit buildGoPackage nvidia_x11 nvidiaGpuSupport;
|
inherit buildGoPackage nvidia_x11 nvidiaGpuSupport;
|
||||||
version = "1.0.3";
|
version = "1.0.4";
|
||||||
sha256 = "142rwpli8mbyg4vhhybnym34rk9w1ns4ddfhqjr1ygmxb1rlsngi";
|
sha256 = "0znaxz9mzbqb59p6rwa5h89m344m2ci39jsx8dfh1v5fc17r0fcq";
|
||||||
}
|
}
|
||||||
|
|
|
@ -2,13 +2,13 @@
|
||||||
|
|
||||||
buildGoModule rec {
|
buildGoModule rec {
|
||||||
pname = "terragrunt";
|
pname = "terragrunt";
|
||||||
version = "0.28.6";
|
version = "0.28.7";
|
||||||
|
|
||||||
src = fetchFromGitHub {
|
src = fetchFromGitHub {
|
||||||
owner = "gruntwork-io";
|
owner = "gruntwork-io";
|
||||||
repo = pname;
|
repo = pname;
|
||||||
rev = "v${version}";
|
rev = "v${version}";
|
||||||
sha256 = "sha256-DzC/HNwFNNEJhic/8KpHchrBmsSbrn7xf1DjY0JTH08=";
|
sha256 = "sha256-pM3R85gdP2eVoXx//2tKePNAi14eM8Ut+eXR+vB0Ukk=";
|
||||||
};
|
};
|
||||||
|
|
||||||
vendorSha256 = "sha256-lRJerUYafpkXAGf8MEM8SeG3aB86mlMo7iLpeHFAnd4=";
|
vendorSha256 = "sha256-lRJerUYafpkXAGf8MEM8SeG3aB86mlMo7iLpeHFAnd4=";
|
||||||
|
@ -22,6 +22,14 @@ buildGoModule rec {
|
||||||
"-X main.VERSION=v${version}"
|
"-X main.VERSION=v${version}"
|
||||||
];
|
];
|
||||||
|
|
||||||
|
doInstallCheck = true;
|
||||||
|
installCheckPhase = ''
|
||||||
|
runHook preInstallCheck
|
||||||
|
$out/bin/terragrunt --help
|
||||||
|
$out/bin/terragrunt --version | grep "v${version}"
|
||||||
|
runHook postInstallCheck
|
||||||
|
'';
|
||||||
|
|
||||||
meta = with lib; {
|
meta = with lib; {
|
||||||
homepage = "https://terragrunt.gruntwork.io";
|
homepage = "https://terragrunt.gruntwork.io";
|
||||||
changelog = "https://github.com/gruntwork-io/terragrunt/releases/tag/v${version}";
|
changelog = "https://github.com/gruntwork-io/terragrunt/releases/tag/v${version}";
|
||||||
|
|
|
@ -2,29 +2,45 @@
|
||||||
|
|
||||||
buildGoModule rec {
|
buildGoModule rec {
|
||||||
pname = "waypoint";
|
pname = "waypoint";
|
||||||
version = "0.2.2";
|
version = "0.2.3";
|
||||||
|
|
||||||
src = fetchFromGitHub {
|
src = fetchFromGitHub {
|
||||||
owner = "hashicorp";
|
owner = "hashicorp";
|
||||||
repo = pname;
|
repo = pname;
|
||||||
rev = "v${version}";
|
rev = "v${version}";
|
||||||
sha256 = "sha256-JeuVrlm6JB8MgSUmgMLQPuPmlKSScSdsVga9jUwLWHM=";
|
sha256 = "sha256-FTBBDKFUoyC+Xdm3+2QWXK57fLwitYrFP89OvAyHHVY=";
|
||||||
};
|
};
|
||||||
|
|
||||||
deleteVendor = true;
|
deleteVendor = true;
|
||||||
vendorSha256 = "sha256-ArebHOjP3zvpASVAoaPXpSbrG/jq+Jbx7+EaQ1uHSVY=";
|
vendorSha256 = "sha256-ihelAumTRgLALevJdVq3V3SISitiRPCQZUh2h5/eczA=";
|
||||||
|
|
||||||
nativeBuildInputs = [ go-bindata ];
|
nativeBuildInputs = [ go-bindata ];
|
||||||
|
|
||||||
# GIT_{COMMIT,DIRTY} filled in blank to prevent trying to run git and ending up blank anyway
|
# GIT_{COMMIT,DIRTY} filled in blank to prevent trying to run git and ending up blank anyway
|
||||||
buildPhase = ''
|
buildPhase = ''
|
||||||
|
runHook preBuild
|
||||||
make bin GIT_DESCRIBE="v${version}" GIT_COMMIT="" GIT_DIRTY=""
|
make bin GIT_DESCRIBE="v${version}" GIT_COMMIT="" GIT_DIRTY=""
|
||||||
|
runHook postBuild
|
||||||
'';
|
'';
|
||||||
|
|
||||||
installPhase = ''
|
installPhase = ''
|
||||||
|
runHook preInstall
|
||||||
install -D waypoint $out/bin/waypoint
|
install -D waypoint $out/bin/waypoint
|
||||||
|
runHook postInstall
|
||||||
'';
|
'';
|
||||||
|
|
||||||
|
doInstallCheck = true;
|
||||||
|
installCheckPhase = ''
|
||||||
|
runHook preInstallCheck
|
||||||
|
# `version` tries to write to ~/.config/waypoint
|
||||||
|
export HOME="$TMPDIR"
|
||||||
|
|
||||||
|
$out/bin/waypoint --help
|
||||||
|
$out/bin/waypoint version # | grep "Waypoint v${version}"
|
||||||
|
runHook postInstallCheck
|
||||||
|
'';
|
||||||
|
|
||||||
|
# Binary is static
|
||||||
dontPatchELF = true;
|
dontPatchELF = true;
|
||||||
dontPatchShebangs = true;
|
dontPatchShebangs = true;
|
||||||
|
|
||||||
|
|
|
@ -2,13 +2,13 @@
|
||||||
|
|
||||||
stdenv.mkDerivation rec {
|
stdenv.mkDerivation rec {
|
||||||
pname = "rssguard";
|
pname = "rssguard";
|
||||||
version = "3.8.4";
|
version = "3.9.0";
|
||||||
|
|
||||||
src = fetchFromGitHub {
|
src = fetchFromGitHub {
|
||||||
owner = "martinrotter";
|
owner = "martinrotter";
|
||||||
repo = pname;
|
repo = pname;
|
||||||
rev = version;
|
rev = version;
|
||||||
sha256 = "sha256-2NC5Y8WxVYrzpuqDzhXXJ16b04Em1HqZaE2VK9tmfYk=";
|
sha256 = "sha256-pprWJIYAFYSTPhWVCW4dz3GWeAS53Vo8UXiyQ56Mwjo=";
|
||||||
};
|
};
|
||||||
|
|
||||||
buildInputs = [ qtwebengine qttools ];
|
buildInputs = [ qtwebengine qttools ];
|
||||||
|
@ -23,7 +23,7 @@ stdenv.mkDerivation rec {
|
||||||
for ownCloud/Nextcloud.
|
for ownCloud/Nextcloud.
|
||||||
'';
|
'';
|
||||||
homepage = "https://github.com/martinrotter/rssguard";
|
homepage = "https://github.com/martinrotter/rssguard";
|
||||||
license = licenses.gpl3;
|
license = licenses.gpl3Plus;
|
||||||
platforms = platforms.linux;
|
platforms = platforms.linux;
|
||||||
maintainers = with maintainers; [ jluttine ];
|
maintainers = with maintainers; [ jluttine ];
|
||||||
};
|
};
|
||||||
|
|
|
@ -2,11 +2,11 @@
|
||||||
|
|
||||||
python3Packages.buildPythonApplication rec {
|
python3Packages.buildPythonApplication rec {
|
||||||
pname = "FlexGet";
|
pname = "FlexGet";
|
||||||
version = "3.1.98";
|
version = "3.1.103";
|
||||||
|
|
||||||
src = python3Packages.fetchPypi {
|
src = python3Packages.fetchPypi {
|
||||||
inherit pname version;
|
inherit pname version;
|
||||||
sha256 = "d2d17a5ea821a580c55680294fce9ecf7012ef86c086c742414ec5bcb8468972";
|
sha256 = "da635a01ae7d15ba31b41081ab3e0214b8c5ab5e4662c381246495d7d1eba9be";
|
||||||
};
|
};
|
||||||
|
|
||||||
postPatch = ''
|
postPatch = ''
|
||||||
|
|
|
@ -21,11 +21,11 @@ let
|
||||||
in
|
in
|
||||||
stdenv.mkDerivation rec {
|
stdenv.mkDerivation rec {
|
||||||
pname = "zeek";
|
pname = "zeek";
|
||||||
version = "3.2.3";
|
version = "3.2.4";
|
||||||
|
|
||||||
src = fetchurl {
|
src = fetchurl {
|
||||||
url = "https://download.zeek.org/zeek-${version}.tar.gz";
|
url = "https://download.zeek.org/zeek-${version}.tar.gz";
|
||||||
sha256 = "1in25clpbb2vdhms3iypj6r5sp8d1dxjcfn85c272sh7shnmqagr";
|
sha256 = "11dy4w810jms75nrr3n3dy5anrl5ksb5pmnk31z37k60hg9q9afm";
|
||||||
};
|
};
|
||||||
|
|
||||||
nativeBuildInputs = [ cmake flex bison file ];
|
nativeBuildInputs = [ cmake flex bison file ];
|
||||||
|
|
|
@ -1,13 +1,14 @@
|
||||||
{ lib, fetchurl, appimageTools }:
|
{ lib, fetchurl, appimageTools, gsettings-desktop-schemas, gtk3 }:
|
||||||
|
|
||||||
let
|
let
|
||||||
pname = "deltachat-electron";
|
pname = "deltachat-electron";
|
||||||
version = "1.14.1";
|
version = "1.15.1";
|
||||||
name = "${pname}-${version}";
|
name = "${pname}-${version}";
|
||||||
|
|
||||||
src = fetchurl {
|
src = fetchurl {
|
||||||
url =
|
url =
|
||||||
"https://download.delta.chat/desktop/v${version}/DeltaChat-${version}.AppImage";
|
"https://download.delta.chat/desktop/v${version}/DeltaChat-${version}.AppImage";
|
||||||
sha256 = "0w00qr8wwrxwa2g71biyz42k8y5y766m6k876bnzq927vcjilq6b";
|
sha256 = "sha256-lItI1aIFHYQ3wGRVn4Yw0nA7qgfhyHT/43kKbY/1cgI=";
|
||||||
};
|
};
|
||||||
|
|
||||||
appimageContents = appimageTools.extract { inherit name src; };
|
appimageContents = appimageTools.extract { inherit name src; };
|
||||||
|
@ -16,6 +17,10 @@ in
|
||||||
appimageTools.wrapType2 {
|
appimageTools.wrapType2 {
|
||||||
inherit name src;
|
inherit name src;
|
||||||
|
|
||||||
|
profile = ''
|
||||||
|
export XDG_DATA_DIRS=${gsettings-desktop-schemas}/share/gsettings-schemas/${gsettings-desktop-schemas.name}:${gtk3}/share/gsettings-schemas/${gtk3.name}:$XDG_DATA_DIRS
|
||||||
|
'';
|
||||||
|
|
||||||
extraInstallCommands = ''
|
extraInstallCommands = ''
|
||||||
mv $out/bin/${name} $out/bin/${pname}
|
mv $out/bin/${name} $out/bin/${pname}
|
||||||
install -m 444 -D \
|
install -m 444 -D \
|
||||||
|
|
|
@ -3,8 +3,6 @@
|
||||||
, fetchFromGitLab
|
, fetchFromGitLab
|
||||||
, pkg-config
|
, pkg-config
|
||||||
, cmake
|
, cmake
|
||||||
, qtbase
|
|
||||||
, qttools
|
|
||||||
, qtquickcontrols2
|
, qtquickcontrols2
|
||||||
, qtmultimedia
|
, qtmultimedia
|
||||||
, qtgraphicaleffects
|
, qtgraphicaleffects
|
||||||
|
@ -26,14 +24,14 @@
|
||||||
|
|
||||||
mkDerivation rec {
|
mkDerivation rec {
|
||||||
pname = "neochat";
|
pname = "neochat";
|
||||||
version = "1.0.1";
|
version = "1.1.1";
|
||||||
|
|
||||||
src = fetchFromGitLab {
|
src = fetchFromGitLab {
|
||||||
domain = "invent.kde.org";
|
domain = "invent.kde.org";
|
||||||
owner = "network";
|
owner = "network";
|
||||||
repo = pname;
|
repo = pname;
|
||||||
rev = "v${version}";
|
rev = "v${version}";
|
||||||
sha256 = "sha256-xGqGFJHyoZXHLv/n3UGr/KVbgs5Gc9kKKWIuKMr9DtQ=";
|
sha256 = "sha256-HvLPsU+fxlyPDP7i9OSnZ/C1RjouOQCp+4WCl6FlFJo=";
|
||||||
};
|
};
|
||||||
|
|
||||||
nativeBuildInputs = [ cmake extra-cmake-modules pkg-config ];
|
nativeBuildInputs = [ cmake extra-cmake-modules pkg-config ];
|
||||||
|
|
|
@ -23,6 +23,9 @@
|
||||||
, olm
|
, olm
|
||||||
, pkg-config
|
, pkg-config
|
||||||
, nlohmann_json
|
, nlohmann_json
|
||||||
|
, voipSupport ? true
|
||||||
|
, gst_all_1
|
||||||
|
, libnice
|
||||||
}:
|
}:
|
||||||
|
|
||||||
mkDerivation rec {
|
mkDerivation rec {
|
||||||
|
@ -59,12 +62,24 @@ mkDerivation rec {
|
||||||
qtquickcontrols2
|
qtquickcontrols2
|
||||||
qtgraphicaleffects
|
qtgraphicaleffects
|
||||||
qtkeychain
|
qtkeychain
|
||||||
] ++ lib.optional stdenv.isDarwin qtmacextras;
|
] ++ lib.optional stdenv.isDarwin qtmacextras
|
||||||
|
++ lib.optionals voipSupport (with gst_all_1; [
|
||||||
|
gstreamer
|
||||||
|
gst-plugins-base
|
||||||
|
(gst-plugins-good.override { qt5Support = true; })
|
||||||
|
gst-plugins-bad
|
||||||
|
libnice
|
||||||
|
]);
|
||||||
|
|
||||||
cmakeFlags = [
|
cmakeFlags = [
|
||||||
"-DCOMPILE_QML=ON" # see https://github.com/Nheko-Reborn/nheko/issues/389
|
"-DCOMPILE_QML=ON" # see https://github.com/Nheko-Reborn/nheko/issues/389
|
||||||
];
|
];
|
||||||
|
|
||||||
|
preFixup = lib.optionalString voipSupport ''
|
||||||
|
# add gstreamer plugins path to the wrapper
|
||||||
|
qtWrapperArgs+=(--prefix GST_PLUGIN_SYSTEM_PATH_1_0 : "$GST_PLUGIN_SYSTEM_PATH_1_0")
|
||||||
|
'';
|
||||||
|
|
||||||
meta = with lib; {
|
meta = with lib; {
|
||||||
description = "Desktop client for the Matrix protocol";
|
description = "Desktop client for the Matrix protocol";
|
||||||
homepage = "https://github.com/Nheko-Reborn/nheko";
|
homepage = "https://github.com/Nheko-Reborn/nheko";
|
||||||
|
|
|
@ -25,7 +25,7 @@ let
|
||||||
else "");
|
else "");
|
||||||
in stdenv.mkDerivation rec {
|
in stdenv.mkDerivation rec {
|
||||||
pname = "signal-desktop";
|
pname = "signal-desktop";
|
||||||
version = "1.40.0"; # Please backport all updates to the stable channel.
|
version = "1.40.1"; # Please backport all updates to the stable channel.
|
||||||
# All releases have a limited lifetime and "expire" 90 days after the release.
|
# All releases have a limited lifetime and "expire" 90 days after the release.
|
||||||
# When releases "expire" the application becomes unusable until an update is
|
# When releases "expire" the application becomes unusable until an update is
|
||||||
# applied. The expiration date for the current release can be extracted with:
|
# applied. The expiration date for the current release can be extracted with:
|
||||||
|
@ -35,7 +35,7 @@ in stdenv.mkDerivation rec {
|
||||||
|
|
||||||
src = fetchurl {
|
src = fetchurl {
|
||||||
url = "https://updates.signal.org/desktop/apt/pool/main/s/signal-desktop/signal-desktop_${version}_amd64.deb";
|
url = "https://updates.signal.org/desktop/apt/pool/main/s/signal-desktop/signal-desktop_${version}_amd64.deb";
|
||||||
sha256 = "1xd38a9mi23c4r873k37rzip68hfk3a4bk9j4j24v2kb3yvixrpp";
|
sha256 = "0k57r1x64w38n0295qdrf3p19d3z8m530h46ps0j2x0krhah47w7";
|
||||||
};
|
};
|
||||||
|
|
||||||
nativeBuildInputs = [
|
nativeBuildInputs = [
|
||||||
|
|
|
@ -41,11 +41,11 @@ let
|
||||||
|
|
||||||
pname = "slack";
|
pname = "slack";
|
||||||
|
|
||||||
x86_64-darwin-version = "4.12.2";
|
x86_64-darwin-version = "4.13.0";
|
||||||
x86_64-darwin-sha256 = "0qflv2glfy7d77zjgqi7qcjr53c9dni26gmqkg9vk2xijmmd3xy7";
|
x86_64-darwin-sha256 = "1f155fgbdmqxy7324lxj3ysx1p332rzpwy06iac90rm6irf5v57f";
|
||||||
|
|
||||||
x86_64-linux-version = "4.12.2";
|
x86_64-linux-version = "4.13.0";
|
||||||
x86_64-linux-sha256 = "sha256-G5uQI078N7AbhEJs6a/17Hoi5DSdwvYLM1T/ttrEw4s=";
|
x86_64-linux-sha256 = "1hqvynkhbkfwxvfgjqv91x5k7qlzayjr5mmf8rz0ncp4j4d3x9mq";
|
||||||
|
|
||||||
version = {
|
version = {
|
||||||
x86_64-darwin = x86_64-darwin-version;
|
x86_64-darwin = x86_64-darwin-version;
|
||||||
|
|
|
@ -3,8 +3,9 @@
|
||||||
, qtbase, qtimageformats, gtk3, libsForQt5, enchant2, lz4, xxHash
|
, qtbase, qtimageformats, gtk3, libsForQt5, enchant2, lz4, xxHash
|
||||||
, dee, ffmpeg, openalSoft, minizip, libopus, alsaLib, libpulseaudio, range-v3
|
, dee, ffmpeg, openalSoft, minizip, libopus, alsaLib, libpulseaudio, range-v3
|
||||||
, tl-expected, hunspell
|
, tl-expected, hunspell
|
||||||
# TODO: Shouldn't be required:
|
# Transitive dependencies:
|
||||||
, pcre, xorg, util-linux, libselinux, libsepol, epoxy, at-spi2-core, libXtst
|
, pcre, xorg, util-linux, libselinux, libsepol, epoxy
|
||||||
|
, at-spi2-core, libXtst, libthai, libdatrie
|
||||||
, xdg-utils
|
, xdg-utils
|
||||||
}:
|
}:
|
||||||
|
|
||||||
|
@ -22,12 +23,12 @@ let
|
||||||
|
|
||||||
in mkDerivation rec {
|
in mkDerivation rec {
|
||||||
pname = "telegram-desktop";
|
pname = "telegram-desktop";
|
||||||
version = "2.5.9";
|
version = "2.6.0";
|
||||||
|
|
||||||
# Telegram-Desktop with submodules
|
# Telegram-Desktop with submodules
|
||||||
src = fetchurl {
|
src = fetchurl {
|
||||||
url = "https://github.com/telegramdesktop/tdesktop/releases/download/v${version}/tdesktop-${version}-full.tar.gz";
|
url = "https://github.com/telegramdesktop/tdesktop/releases/download/v${version}/tdesktop-${version}-full.tar.gz";
|
||||||
sha256 = "1311dab9cil8hl1qlh01ynrczyjbldcsq1l6ibh818wb5lsgvvl2";
|
sha256 = "18ifmvll0nnmjf8ba6r23ri9i4fggy7k2dqs3qf4f52cklmlfj06";
|
||||||
};
|
};
|
||||||
|
|
||||||
postPatch = ''
|
postPatch = ''
|
||||||
|
@ -48,8 +49,9 @@ in mkDerivation rec {
|
||||||
dee ffmpeg openalSoft minizip libopus alsaLib libpulseaudio range-v3
|
dee ffmpeg openalSoft minizip libopus alsaLib libpulseaudio range-v3
|
||||||
tl-expected hunspell
|
tl-expected hunspell
|
||||||
tg_owt
|
tg_owt
|
||||||
# TODO: Shouldn't be required:
|
# Transitive dependencies:
|
||||||
pcre xorg.libpthreadstubs xorg.libXdmcp util-linux libselinux libsepol epoxy at-spi2-core libXtst
|
pcre xorg.libpthreadstubs xorg.libXdmcp util-linux libselinux libsepol epoxy
|
||||||
|
at-spi2-core libXtst libthai libdatrie
|
||||||
];
|
];
|
||||||
|
|
||||||
cmakeFlags = [
|
cmakeFlags = [
|
||||||
|
|
|
@ -5,12 +5,12 @@
|
||||||
|
|
||||||
let
|
let
|
||||||
pname = "zulip";
|
pname = "zulip";
|
||||||
version = "5.5.0";
|
version = "5.6.0";
|
||||||
name = "${pname}-${version}";
|
name = "${pname}-${version}";
|
||||||
|
|
||||||
src = fetchurl {
|
src = fetchurl {
|
||||||
url = "https://github.com/zulip/zulip-desktop/releases/download/v${version}/Zulip-${version}-x86_64.AppImage";
|
url = "https://github.com/zulip/zulip-desktop/releases/download/v${version}/Zulip-${version}-x86_64.AppImage";
|
||||||
sha256 = "059zfcvaq8wnsz2lfd4gdb17b6nngqk3vgisy2kb29ifqf3lpzqi";
|
sha256 = "19sdmkxxzaidb89m8k56p94hq2yaxwn9islzrzwb86f50hlrq46w";
|
||||||
name="${pname}-${version}.AppImage";
|
name="${pname}-${version}.AppImage";
|
||||||
};
|
};
|
||||||
|
|
||||||
|
@ -34,7 +34,7 @@ in appimageTools.wrapType2 {
|
||||||
description = "Desktop client for Zulip Chat";
|
description = "Desktop client for Zulip Chat";
|
||||||
homepage = "https://zulip.com";
|
homepage = "https://zulip.com";
|
||||||
license = licenses.asl20;
|
license = licenses.asl20;
|
||||||
maintainers = with maintainers; [ jonafato ];
|
maintainers = with maintainers; [ andersk jonafato ];
|
||||||
platforms = [ "x86_64-linux" ];
|
platforms = [ "x86_64-linux" ];
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
|
Some files were not shown because too many files have changed in this diff Show more
Loading…
Reference in a new issue