Merge branch 'master' into staging
This commit is contained in:
commit
f7781f5293
@ -735,6 +735,62 @@ sets at once:
|
||||
}
|
||||
```
|
||||
|
||||
### How to specify source overrides for your Haskell package
|
||||
|
||||
When starting a Haskell project you can use `developPackage`
|
||||
to define a derivation for your package at the `root` path
|
||||
as well as source override versions for Hackage packages, like so:
|
||||
|
||||
```nix
|
||||
# default.nix
|
||||
{ compilerVersion ? "ghc842" }:
|
||||
let
|
||||
# pinning nixpkgs using new Nix 2.0 builtin `fetchGit`
|
||||
pkgs = import (fetchGit (import ./version.nix)) { };
|
||||
compiler = pkgs.haskell.packages."${compilerVersion}";
|
||||
pkg = compiler.developPackage {
|
||||
root = ./.;
|
||||
source-overrides = {
|
||||
# Let's say the GHC 8.4.2 haskellPackages uses 1.6.0.0 and your test suite is incompatible with >= 1.6.0.0
|
||||
HUnit = "1.5.0.0";
|
||||
};
|
||||
};
|
||||
in pkg
|
||||
```
|
||||
|
||||
This could be used in place of a simplified `stack.yaml` defining a Nix
|
||||
derivation for your Haskell package.
|
||||
|
||||
As you can see this allows you to specify only the source version found on
|
||||
Hackage and nixpkgs will take care of the rest.
|
||||
|
||||
You can also specify `buildInputs` for your Haskell derivation for packages
|
||||
that directly depend on external libraries like so:
|
||||
|
||||
```nix
|
||||
# default.nix
|
||||
{ compilerVersion ? "ghc842" }:
|
||||
let
|
||||
# pinning nixpkgs using new Nix 2.0 builtin `fetchGit`
|
||||
pkgs = import (fetchGit (import ./version.nix)) { };
|
||||
compiler = pkgs.haskell.packages."${compilerVersion}";
|
||||
pkg = compiler.developPackage {
|
||||
root = ./.;
|
||||
source-overrides = {
|
||||
HUnit = "1.5.0.0"; # Let's say the GHC 8.4.2 haskellPackages uses 1.6.0.0 and your test suite is incompatible with >= 1.6.0.0
|
||||
};
|
||||
};
|
||||
# in case your package source depends on any libraries directly, not just transitively.
|
||||
buildInputs = [ zlib ];
|
||||
in pkg.overrideAttrs(attrs: {
|
||||
buildInputs = attrs.buildInputs ++ buildInputs;
|
||||
})
|
||||
```
|
||||
|
||||
Notice that you will need to override (via `overrideAttrs` or similar) the
|
||||
derivation returned by the `developPackage` Nix lambda as there is no `buildInputs`
|
||||
named argument you can pass directly into the `developPackage` lambda.
|
||||
|
||||
### How to recover from GHC's infamous non-deterministic library ID bug
|
||||
|
||||
GHC and distributed build farms don't get along well:
|
||||
|
@ -200,7 +200,7 @@ building Python libraries is `buildPythonPackage`. Let's see how we can build th
|
||||
doCheck = false;
|
||||
|
||||
meta = {
|
||||
homepage = "http://github.com/pytoolz/toolz/";
|
||||
homepage = "https://github.com/pytoolz/toolz/";
|
||||
description = "List processing tools and functional utilities";
|
||||
license = licenses.bsd3;
|
||||
maintainers = with maintainers; [ fridh ];
|
||||
@ -245,7 +245,7 @@ with import <nixpkgs> {};
|
||||
doCheck = false;
|
||||
|
||||
meta = {
|
||||
homepage = "http://github.com/pytoolz/toolz/";
|
||||
homepage = "https://github.com/pytoolz/toolz/";
|
||||
description = "List processing tools and functional utilities";
|
||||
};
|
||||
};
|
||||
|
@ -173,6 +173,53 @@ rec {
|
||||
fna);
|
||||
in if fna == {} then "<λ>"
|
||||
else "<λ:{${showFnas}}>"
|
||||
else abort "toPretty: should never happen (v = ${v})";
|
||||
else abort "generators.toPretty: should never happen (v = ${v})";
|
||||
|
||||
# PLIST handling
|
||||
toPlist = {}: v: let
|
||||
expr = ind: x: with builtins;
|
||||
if isNull x then "" else
|
||||
if isBool x then bool ind x else
|
||||
if isInt x then int ind x else
|
||||
if isString x then str ind x else
|
||||
if isList x then list ind x else
|
||||
if isAttrs x then attrs ind x else
|
||||
abort "generators.toPlist: should never happen (v = ${v})";
|
||||
|
||||
literal = ind: x: ind + x;
|
||||
|
||||
bool = ind: x: literal ind (if x then "<true/>" else "<false/>");
|
||||
int = ind: x: literal ind "<integer>${toString x}</integer>";
|
||||
str = ind: x: literal ind "<string>${x}</string>";
|
||||
key = ind: x: literal ind "<key>${x}</key>";
|
||||
|
||||
indent = ind: expr "\t${ind}";
|
||||
|
||||
item = ind: libStr.concatMapStringsSep "\n" (indent ind);
|
||||
|
||||
list = ind: x: libStr.concatStringsSep "\n" [
|
||||
(literal ind "<array>")
|
||||
(item ind x)
|
||||
(literal ind "</array>")
|
||||
];
|
||||
|
||||
attrs = ind: x: libStr.concatStringsSep "\n" [
|
||||
(literal ind "<dict>")
|
||||
(attr ind x)
|
||||
(literal ind "</dict>")
|
||||
];
|
||||
|
||||
attr = let attrFilter = name: value: name != "_module" && value != null;
|
||||
in ind: x: libStr.concatStringsSep "\n" (lib.flatten (lib.mapAttrsToList
|
||||
(name: value: lib.optional (attrFilter name value) [
|
||||
(key "\t${ind}" name)
|
||||
(expr "\t${ind}" value)
|
||||
]) x));
|
||||
|
||||
in ''<?xml version="1.0" encoding="UTF-8"?>
|
||||
<!DOCTYPE plist PUBLIC "-//Apple Computer//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
|
||||
<plist version="1.0">
|
||||
${expr "" v}
|
||||
</plist>'';
|
||||
|
||||
}
|
||||
|
@ -493,7 +493,7 @@ rec {
|
||||
inherit priority content;
|
||||
};
|
||||
|
||||
mkOptionDefault = mkOverride 1001; # priority of option defaults
|
||||
mkOptionDefault = mkOverride 1500; # priority of option defaults
|
||||
mkDefault = mkOverride 1000; # used in config sections of non-user modules to set a default
|
||||
mkForce = mkOverride 50;
|
||||
mkVMOverride = mkOverride 10; # used by ‘nixos-rebuild build-vm’
|
||||
@ -532,9 +532,7 @@ rec {
|
||||
#
|
||||
mkAliasDefinitions = mkAliasAndWrapDefinitions id;
|
||||
mkAliasAndWrapDefinitions = wrap: option:
|
||||
mkMerge
|
||||
(optional (isOption option && option.isDefined)
|
||||
(wrap (mkMerge option.definitions)));
|
||||
mkIf (isOption option && option.isDefined) (wrap (mkMerge option.definitions));
|
||||
|
||||
|
||||
/* Compatibility. */
|
||||
@ -669,22 +667,26 @@ rec {
|
||||
};
|
||||
|
||||
doRename = { from, to, visible, warn, use }:
|
||||
{ config, options, ... }:
|
||||
let
|
||||
fromOpt = getAttrFromPath from options;
|
||||
toOpt = getAttrFromPath to options;
|
||||
toOf = attrByPath to
|
||||
(abort "Renaming error: option `${showOption to}' does not exist.");
|
||||
in
|
||||
{ config, options, ... }:
|
||||
{ options = setAttrByPath from (mkOption {
|
||||
inherit visible;
|
||||
description = "Alias of <option>${showOption to}</option>.";
|
||||
apply = x: use (toOf config);
|
||||
});
|
||||
config = {
|
||||
warnings =
|
||||
let opt = getAttrFromPath from options; in
|
||||
optional (warn && opt.isDefined)
|
||||
"The option `${showOption from}' defined in ${showFiles opt.files} has been renamed to `${showOption to}'.";
|
||||
} // setAttrByPath to (mkAliasDefinitions (getAttrFromPath from options));
|
||||
};
|
||||
{
|
||||
options = setAttrByPath from (mkOption {
|
||||
inherit visible;
|
||||
description = "Alias of <option>${showOption to}</option>.";
|
||||
apply = x: use (toOf config);
|
||||
});
|
||||
config = mkMerge [
|
||||
{
|
||||
warnings = optional (warn && fromOpt.isDefined)
|
||||
"The option `${showOption from}' defined in ${showFiles fromOpt.files} has been renamed to `${showOption to}'.";
|
||||
}
|
||||
(mkAliasAndWrapDefinitions (setAttrByPath to) fromOpt)
|
||||
];
|
||||
};
|
||||
|
||||
}
|
||||
|
@ -46,7 +46,6 @@ rec {
|
||||
# Misc boolean options
|
||||
useAndroidPrebuilt = false;
|
||||
useiOSPrebuilt = false;
|
||||
isiPhoneSimulator = false;
|
||||
} // mapAttrs (n: v: v final.parsed) inspect.predicates
|
||||
// args;
|
||||
in assert final.useAndroidPrebuilt -> final.isAndroid;
|
||||
|
@ -100,6 +100,8 @@ rec {
|
||||
config = "aarch64-apple-ios";
|
||||
# config = "aarch64-apple-darwin14";
|
||||
sdkVer = "10.2";
|
||||
xcodeVer = "8.2";
|
||||
xcodePlatform = "iPhoneOS";
|
||||
useiOSPrebuilt = true;
|
||||
platform = {};
|
||||
};
|
||||
@ -108,6 +110,8 @@ rec {
|
||||
config = "armv7a-apple-ios";
|
||||
# config = "arm-apple-darwin10";
|
||||
sdkVer = "10.2";
|
||||
xcodeVer = "8.2";
|
||||
xcodePlatform = "iPhoneOS";
|
||||
useiOSPrebuilt = true;
|
||||
platform = {};
|
||||
};
|
||||
@ -116,8 +120,9 @@ rec {
|
||||
config = "x86_64-apple-ios";
|
||||
# config = "x86_64-apple-darwin14";
|
||||
sdkVer = "10.2";
|
||||
xcodeVer = "8.2";
|
||||
xcodePlatform = "iPhoneSimulator";
|
||||
useiOSPrebuilt = true;
|
||||
isiPhoneSimulator = true;
|
||||
platform = {};
|
||||
};
|
||||
|
||||
@ -125,8 +130,9 @@ rec {
|
||||
config = "i686-apple-ios";
|
||||
# config = "i386-apple-darwin11";
|
||||
sdkVer = "10.2";
|
||||
xcodeVer = "8.2";
|
||||
xcodePlatform = "iPhoneSimulator";
|
||||
useiOSPrebuilt = true;
|
||||
isiPhoneSimulator = true;
|
||||
platform = {};
|
||||
};
|
||||
|
||||
|
@ -581,7 +581,7 @@
|
||||
email = "brandon.barker@gmail.com";
|
||||
github = "bbarker";
|
||||
name = "Brandon Elam Barker";
|
||||
};
|
||||
};
|
||||
bcarrell = {
|
||||
email = "brandoncarrell@gmail.com";
|
||||
github = "bcarrell";
|
||||
@ -1707,6 +1707,11 @@
|
||||
github = "igsha";
|
||||
name = "Igor Sharonov";
|
||||
};
|
||||
iimog = {
|
||||
email = "iimog@iimog.org";
|
||||
github = "iimog";
|
||||
name = "Markus J. Ankenbrand";
|
||||
};
|
||||
ikervagyok = {
|
||||
email = "ikervagyok@gmail.com";
|
||||
github = "ikervagyok";
|
||||
@ -1717,6 +1722,16 @@
|
||||
github = "ilya-kolpakov";
|
||||
name = "Ilya Kolpakov";
|
||||
};
|
||||
imalison = {
|
||||
email = "IvanMalison@gmail.com";
|
||||
github = "IvanMalison";
|
||||
name = "Ivan Malison";
|
||||
};
|
||||
imalsogreg = {
|
||||
email = "imalsogreg@gmail.com";
|
||||
github = "imalsogreg";
|
||||
name = "Greg Hale";
|
||||
};
|
||||
infinisil = {
|
||||
email = "infinisil@icloud.com";
|
||||
github = "infinisil";
|
||||
@ -3092,6 +3107,11 @@
|
||||
github = "pmiddend";
|
||||
name = "Philipp Middendorf";
|
||||
};
|
||||
pmyjavec = {
|
||||
email = "pauly@myjavec.com";
|
||||
github = "pmyjavec";
|
||||
name = "Pauly Myjavec";
|
||||
};
|
||||
pneumaticat = {
|
||||
email = "kevin@potatofrom.space";
|
||||
github = "pneumaticat";
|
||||
@ -3871,6 +3891,11 @@
|
||||
github = "timor";
|
||||
name = "timor";
|
||||
};
|
||||
timput = {
|
||||
email = "tim@timput.com";
|
||||
github = "TimPut";
|
||||
name = "Tim Put";
|
||||
};
|
||||
tiramiseb = {
|
||||
email = "sebastien@maccagnoni.eu";
|
||||
github = "tiramiseb";
|
||||
@ -3906,6 +3931,11 @@
|
||||
github = "tokudan";
|
||||
name = "Daniel Frank";
|
||||
};
|
||||
tomahna = {
|
||||
email = "kevin.rauscher@tomahna.fr";
|
||||
github = "Tomahna";
|
||||
name = "Kevin Rauscher";
|
||||
};
|
||||
tomberek = {
|
||||
email = "tomberek@gmail.com";
|
||||
github = "tomberek";
|
||||
|
@ -68,6 +68,18 @@ ibus.engines = with pkgs.ibus-engines; [ table table-others ];
|
||||
<para>To use any input method, the package must be added in the configuration,
|
||||
as shown above, and also (after running <literal>nixos-rebuild</literal>) the
|
||||
input method must be added from IBus' preference dialog.</para>
|
||||
|
||||
<simplesect>
|
||||
<title>Troubleshooting</title>
|
||||
<para>If IBus works in some applications but not others, a likely cause of
|
||||
this is that IBus is depending on a different version of
|
||||
<literal>glib</literal> to what the applications are depending on. This can
|
||||
be checked by running <literal>nix-store -q --requisites <path> | grep
|
||||
glib</literal>, where <literal><path></literal> is the path of either
|
||||
IBus or an application in the Nix store. The <literal>glib</literal>
|
||||
packages must match exactly. If they do not, uninstalling and reinstalling
|
||||
the application is a likely fix.</para>
|
||||
</simplesect>
|
||||
</section>
|
||||
|
||||
<section><title>Fcitx</title>
|
||||
|
@ -242,6 +242,7 @@
|
||||
./services/desktops/gnome3/tracker-miners.nix
|
||||
./services/desktops/profile-sync-daemon.nix
|
||||
./services/desktops/telepathy.nix
|
||||
./services/development/bloop.nix
|
||||
./services/development/hoogle.nix
|
||||
./services/editors/emacs.nix
|
||||
./services/editors/infinoted.nix
|
||||
@ -486,6 +487,7 @@
|
||||
./services/networking/flannel.nix
|
||||
./services/networking/flashpolicyd.nix
|
||||
./services/networking/freenet.nix
|
||||
./services/networking/freeradius.nix
|
||||
./services/networking/gale.nix
|
||||
./services/networking/gateone.nix
|
||||
./services/networking/gdomap.nix
|
||||
@ -662,6 +664,7 @@
|
||||
./services/web-apps/tt-rss.nix
|
||||
./services/web-apps/selfoss.nix
|
||||
./services/web-apps/quassel-webserver.nix
|
||||
./services/web-apps/virtlyst.nix
|
||||
./services/web-apps/youtrack.nix
|
||||
./services/web-servers/apache-httpd/default.nix
|
||||
./services/web-servers/caddy.nix
|
||||
|
@ -14,7 +14,15 @@ with lib;
|
||||
Read the repository password from a file.
|
||||
'';
|
||||
example = "/etc/nixos/restic-password";
|
||||
};
|
||||
|
||||
s3CredentialsFile = mkOption {
|
||||
type = with types; nullOr str;
|
||||
description = ''
|
||||
file containing the AWS_ACCESS_KEY_ID and AWS_SECRET_ACCESS_KEY
|
||||
for an S3-hosted repository, in the format of an EnvironmentFile
|
||||
as described by systemd.exec(5)
|
||||
'';
|
||||
};
|
||||
|
||||
repository = mkOption {
|
||||
@ -134,6 +142,8 @@ with lib;
|
||||
Type = "oneshot";
|
||||
ExecStart = "${resticCmd} backup ${concatStringsSep " " backup.extraBackupArgs} ${concatStringsSep " " backup.paths}";
|
||||
User = backup.user;
|
||||
} // optionalAttrs (backup.s3CredentialsFile != null) {
|
||||
EnvironmentFile = backup.s3CredentialsFile;
|
||||
};
|
||||
} // optionalAttrs backup.initialize {
|
||||
preStart = ''
|
||||
|
37
nixos/modules/services/development/bloop.nix
Normal file
37
nixos/modules/services/development/bloop.nix
Normal file
@ -0,0 +1,37 @@
|
||||
{ config, lib, pkgs, ... }:
|
||||
|
||||
with lib;
|
||||
|
||||
let
|
||||
|
||||
cfg = config.services.bloop;
|
||||
|
||||
in {
|
||||
|
||||
options.services.bloop = {
|
||||
install = mkOption {
|
||||
type = types.bool;
|
||||
default = false;
|
||||
description = ''
|
||||
Whether to install a user service for the Bloop server.
|
||||
|
||||
The service must be manually started for each user with
|
||||
"systemctl --user start bloop".
|
||||
'';
|
||||
};
|
||||
};
|
||||
|
||||
config = mkIf (cfg.install) {
|
||||
systemd.user.services.bloop = {
|
||||
description = "Bloop Scala build server";
|
||||
|
||||
serviceConfig = {
|
||||
Type = "simple";
|
||||
ExecStart = ''${pkgs.bloop}/bin/blp-server'';
|
||||
Restart = "always";
|
||||
};
|
||||
};
|
||||
|
||||
environment.systemPackages = [ pkgs.bloop ];
|
||||
};
|
||||
}
|
@ -9,18 +9,11 @@ let
|
||||
# /var/lib/misc is for dnsmasq.leases.
|
||||
stateDirs = "/var/lib/NetworkManager /var/lib/dhclient /var/lib/misc";
|
||||
|
||||
dns =
|
||||
if cfg.dns == "none" then "none"
|
||||
else if cfg.dns == "dnsmasq" then "dnsmasq"
|
||||
else if config.services.resolved.enable then "systemd-resolved"
|
||||
else if config.services.unbound.enable then "unbound"
|
||||
else "default";
|
||||
|
||||
configFile = writeText "NetworkManager.conf" ''
|
||||
[main]
|
||||
plugins=keyfile
|
||||
dhcp=${cfg.dhcp}
|
||||
dns=${dns}
|
||||
dns=${cfg.dns}
|
||||
|
||||
[keyfile]
|
||||
${optionalString (cfg.unmanaged != [])
|
||||
@ -217,19 +210,73 @@ in {
|
||||
};
|
||||
|
||||
dns = mkOption {
|
||||
type = types.enum [ "auto" "dnsmasq" "none" ];
|
||||
default = "auto";
|
||||
type = types.enum [ "default" "dnsmasq" "unbound" "systemd-resolved" "none" ];
|
||||
default = "default";
|
||||
description = ''
|
||||
Set the DNS (<literal>resolv.conf</literal>) processing mode.
|
||||
</para>
|
||||
<para>
|
||||
Options:
|
||||
- auto: Check for systemd-resolved, unbound, or use default.
|
||||
- dnsmasq:
|
||||
Enable NetworkManager's dnsmasq integration. NetworkManager will run
|
||||
dnsmasq as a local caching nameserver, using a "split DNS"
|
||||
configuration if you are connected to a VPN, and then update
|
||||
resolv.conf to point to the local nameserver.
|
||||
- none:
|
||||
Disable NetworkManager's DNS integration completely.
|
||||
It will not touch your /etc/resolv.conf.
|
||||
<variablelist>
|
||||
<varlistentry>
|
||||
<term><literal>"default"</literal></term>
|
||||
<listitem><para>
|
||||
NetworkManager will update <literal>/etc/resolv.conf</literal> to
|
||||
reflect the nameservers provided by currently active connections.
|
||||
</para></listitem>
|
||||
</varlistentry>
|
||||
<varlistentry>
|
||||
<term><literal>"dnsmasq"</literal></term>
|
||||
<listitem>
|
||||
<para>
|
||||
Enable NetworkManager's dnsmasq integration. NetworkManager will
|
||||
run dnsmasq as a local caching nameserver, using a "split DNS"
|
||||
configuration if you are connected to a VPN, and then update
|
||||
<literal>resolv.conf</literal> to point to the local nameserver.
|
||||
</para>
|
||||
<para>
|
||||
It is possible to pass custom options to the dnsmasq instance by
|
||||
adding them to files in the
|
||||
<literal>/etc/NetworkManager/dnsmasq.d/</literal> directory.
|
||||
</para>
|
||||
<para>
|
||||
When multiple upstream servers are available, dnsmasq will
|
||||
initially contact them in parallel and then use the fastest to
|
||||
respond, probing again other servers after some time. This
|
||||
behavior can be modified passing the
|
||||
<literal>all-servers</literal> or <literal>strict-order</literal>
|
||||
options to dnsmasq (see the manual page for more details).
|
||||
</para>
|
||||
<para>
|
||||
Note that this option causes NetworkManager to launch and manage
|
||||
its own instance of the dnsmasq daemon, which is
|
||||
<emphasis>not</emphasis> the same as setting
|
||||
<literal>services.dnsmasq.enable = true;</literal>.
|
||||
</para>
|
||||
</listitem>
|
||||
</varlistentry>
|
||||
<varlistentry>
|
||||
<term><literal>"unbound"</literal></term>
|
||||
<listitem><para>
|
||||
NetworkManager will talk to unbound and dnssec-triggerd,
|
||||
providing a "split DNS" configuration with DNSSEC support.
|
||||
<literal>/etc/resolv.conf</literal> will be managed by
|
||||
dnssec-trigger daemon.
|
||||
</para></listitem>
|
||||
</varlistentry>
|
||||
<varlistentry>
|
||||
<term><literal>"systemd-resolved"</literal></term>
|
||||
<listitem><para>
|
||||
NetworkManager will push the DNS configuration to systemd-resolved.
|
||||
</para></listitem>
|
||||
</varlistentry>
|
||||
<varlistentry>
|
||||
<term><literal>"none"</literal></term>
|
||||
<listitem><para>
|
||||
NetworkManager will not modify resolv.conf.
|
||||
</para></listitem>
|
||||
</varlistentry>
|
||||
</variablelist>
|
||||
'';
|
||||
};
|
||||
|
||||
|
@ -938,9 +938,12 @@ in {
|
||||
protection.
|
||||
'';
|
||||
|
||||
hw_offload = mkYesNoParam no ''
|
||||
hw_offload = mkEnumParam ["yes" "no" "auto"] "no" ''
|
||||
Enable hardware offload for this CHILD_SA, if supported by the IPsec
|
||||
implementation.
|
||||
implementation. The value <literal>yes</literal> enforces offloading
|
||||
and the installation will fail if it's not supported by either kernel or
|
||||
device. The value <literal>auto</literal> enables offloading, if it's
|
||||
supported, but the installation does not fail otherwise.
|
||||
'';
|
||||
|
||||
start_action = mkEnumParam ["none" "trap" "start"] "none" ''
|
||||
|
@ -131,6 +131,9 @@ in
|
||||
};
|
||||
};
|
||||
|
||||
# If networkmanager is enabled, ask it to interface with unbound.
|
||||
networking.networkmanager.dns = "unbound";
|
||||
|
||||
};
|
||||
|
||||
}
|
||||
|
@ -47,7 +47,7 @@ in
|
||||
};
|
||||
|
||||
# ZeroTier does not issue DHCP leases, but some strangers might...
|
||||
networking.dhcpcd.denyInterfaces = [ "zt0" ];
|
||||
networking.dhcpcd.denyInterfaces = [ "zt*" ];
|
||||
|
||||
# ZeroTier receives UDP transmissions on port 9993 by default
|
||||
networking.firewall.allowedUDPPorts = [ 9993 ];
|
||||
|
@ -100,6 +100,7 @@ in
|
||||
# Don't restart dbus-daemon. Bad things tend to happen if we do.
|
||||
reloadIfChanged = true;
|
||||
restartTriggers = [ configDir ];
|
||||
environment = { LD_LIBRARY_PATH = config.system.nssModules.path; };
|
||||
};
|
||||
|
||||
systemd.user = {
|
||||
|
@ -76,6 +76,8 @@ let
|
||||
define('SMTP_FROM_NAME', '${escape ["'" "\\"] cfg.email.fromName}');
|
||||
define('SMTP_FROM_ADDRESS', '${escape ["'" "\\"] cfg.email.fromAddress}');
|
||||
define('DIGEST_SUBJECT', '${escape ["'" "\\"] cfg.email.digestSubject}');
|
||||
|
||||
${cfg.extraConfig}
|
||||
'';
|
||||
|
||||
in {
|
||||
@ -431,6 +433,26 @@ let
|
||||
'';
|
||||
};
|
||||
|
||||
pluginPackages = mkOption {
|
||||
type = types.listOf types.package;
|
||||
default = [];
|
||||
description = ''
|
||||
List of plugins to install. The list elements are expected to
|
||||
be derivations. All elements in this derivation are automatically
|
||||
copied to the <literal>plugins.local</literal> directory.
|
||||
'';
|
||||
};
|
||||
|
||||
themePackages = mkOption {
|
||||
type = types.listOf types.package;
|
||||
default = [];
|
||||
description = ''
|
||||
List of themes to install. The list elements are expected to
|
||||
be derivations. All elements in this derivation are automatically
|
||||
copied to the <literal>themes.local</literal> directory.
|
||||
'';
|
||||
};
|
||||
|
||||
logDestination = mkOption {
|
||||
type = types.enum ["" "sql" "syslog"];
|
||||
default = "sql";
|
||||
@ -441,6 +463,14 @@ let
|
||||
error.log).
|
||||
'';
|
||||
};
|
||||
|
||||
extraConfig = mkOption {
|
||||
type = types.lines;
|
||||
default = "";
|
||||
description = ''
|
||||
Additional lines to append to <literal>config.php</literal>.
|
||||
'';
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
@ -517,6 +547,16 @@ let
|
||||
rm -rf "${cfg.root}/*"
|
||||
mkdir -m 755 -p "${cfg.root}"
|
||||
cp -r "${pkgs.tt-rss}/"* "${cfg.root}"
|
||||
${optionalString (cfg.pluginPackages != []) ''
|
||||
for plugin in ${concatStringsSep " " cfg.pluginPackages}; do
|
||||
cp -r "$plugin"/* "${cfg.root}/plugins.local/"
|
||||
done
|
||||
''}
|
||||
${optionalString (cfg.themePackages != []) ''
|
||||
for theme in ${concatStringsSep " " cfg.themePackages}; do
|
||||
cp -r "$theme"/* "${cfg.root}/themes.local/"
|
||||
done
|
||||
''}
|
||||
ln -sf "${tt-rss-config}" "${cfg.root}/config.php"
|
||||
chown -R "${cfg.user}" "${cfg.root}"
|
||||
chmod -R 755 "${cfg.root}"
|
||||
|
72
nixos/modules/services/web-apps/virtlyst.nix
Normal file
72
nixos/modules/services/web-apps/virtlyst.nix
Normal file
@ -0,0 +1,72 @@
|
||||
{ config, lib, pkgs, ... }:
|
||||
|
||||
with lib;
|
||||
|
||||
let
|
||||
|
||||
cfg = config.services.virtlyst;
|
||||
stateDir = "/var/lib/virtlyst";
|
||||
|
||||
ini = pkgs.writeText "virtlyst-config.ini" ''
|
||||
[wsgi]
|
||||
master = true
|
||||
threads = auto
|
||||
http-socket = ${cfg.httpSocket}
|
||||
application = ${pkgs.virtlyst}/lib/libVirtlyst.so
|
||||
chdir2 = ${stateDir}
|
||||
static-map = /static=${pkgs.virtlyst}/root/static
|
||||
|
||||
[Cutelyst]
|
||||
production = true
|
||||
DatabasePath = virtlyst.sqlite
|
||||
TemplatePath = ${pkgs.virtlyst}/root/src
|
||||
|
||||
[Rules]
|
||||
cutelyst.* = true
|
||||
virtlyst.* = true
|
||||
'';
|
||||
|
||||
in
|
||||
|
||||
{
|
||||
|
||||
options.services.virtlyst = {
|
||||
enable = mkEnableOption "Virtlyst libvirt web interface";
|
||||
|
||||
adminPassword = mkOption {
|
||||
type = types.str;
|
||||
description = ''
|
||||
Initial admin password with which the database will be seeded.
|
||||
'';
|
||||
};
|
||||
|
||||
httpSocket = mkOption {
|
||||
type = types.str;
|
||||
default = "localhost:3000";
|
||||
description = ''
|
||||
IP and/or port to which to bind the http socket.
|
||||
'';
|
||||
};
|
||||
};
|
||||
|
||||
config = mkIf cfg.enable {
|
||||
users.extraUsers.virtlyst = {
|
||||
home = stateDir;
|
||||
createHome = true;
|
||||
group = mkIf config.virtualisation.libvirtd.enable "libvirtd";
|
||||
};
|
||||
|
||||
systemd.services.virtlyst = {
|
||||
wantedBy = [ "multi-user.target" ];
|
||||
environment = {
|
||||
VIRTLYST_ADMIN_PASSWORD = cfg.adminPassword;
|
||||
};
|
||||
serviceConfig = {
|
||||
ExecStart = "${pkgs.cutelyst}/bin/cutelyst-wsgi2 --ini ${ini}";
|
||||
User = "virtlyst";
|
||||
WorkingDirectory = stateDir;
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
}
|
@ -4,8 +4,15 @@ with lib;
|
||||
|
||||
let
|
||||
cfg = config.services.lighttpd.cgit;
|
||||
pathPrefix = if stringLength cfg.subdir == 0 then "" else "/" + cfg.subdir;
|
||||
configFile = pkgs.writeText "cgitrc"
|
||||
''
|
||||
# default paths to static assets
|
||||
css=${pathPrefix}/cgit.css
|
||||
logo=${pathPrefix}/cgit.png
|
||||
favicon=${pathPrefix}/favicon.ico
|
||||
|
||||
# user configuration
|
||||
${cfg.configText}
|
||||
'';
|
||||
in
|
||||
@ -18,8 +25,17 @@ in
|
||||
type = types.bool;
|
||||
description = ''
|
||||
If true, enable cgit (fast web interface for git repositories) as a
|
||||
sub-service in lighttpd. cgit will be accessible at
|
||||
http://yourserver/cgit
|
||||
sub-service in lighttpd.
|
||||
'';
|
||||
};
|
||||
|
||||
subdir = mkOption {
|
||||
default = "cgit";
|
||||
example = "";
|
||||
type = types.str;
|
||||
description = ''
|
||||
The subdirectory in which to serve cgit. The web application will be
|
||||
accessible at http://yourserver/''${subdir}
|
||||
'';
|
||||
};
|
||||
|
||||
@ -48,14 +64,14 @@ in
|
||||
services.lighttpd.enableModules = [ "mod_cgi" "mod_alias" "mod_setenv" ];
|
||||
|
||||
services.lighttpd.extraConfig = ''
|
||||
$HTTP["url"] =~ "^/cgit" {
|
||||
$HTTP["url"] =~ "^/${cfg.subdir}" {
|
||||
cgi.assign = (
|
||||
"cgit.cgi" => "${pkgs.cgit}/cgit/cgit.cgi"
|
||||
)
|
||||
alias.url = (
|
||||
"/cgit.css" => "${pkgs.cgit}/cgit/cgit.css",
|
||||
"/cgit.png" => "${pkgs.cgit}/cgit/cgit.png",
|
||||
"/cgit" => "${pkgs.cgit}/cgit/cgit.cgi"
|
||||
"${pathPrefix}/cgit.css" => "${pkgs.cgit}/cgit/cgit.css",
|
||||
"${pathPrefix}/cgit.png" => "${pkgs.cgit}/cgit/cgit.png",
|
||||
"${pathPrefix}" => "${pkgs.cgit}/cgit/cgit.cgi"
|
||||
)
|
||||
setenv.add-environment = (
|
||||
"CGIT_CONFIG" => "${configFile}"
|
||||
|
@ -147,6 +147,8 @@ in
|
||||
${config.services.resolved.extraConfig}
|
||||
'';
|
||||
|
||||
# If networkmanager is enabled, ask it to interface with resolved.
|
||||
networking.networkmanager.dns = "systemd-resolved";
|
||||
};
|
||||
|
||||
}
|
||||
|
@ -171,8 +171,12 @@ in
|
||||
default = config.boot.zfs.enableUnstable;
|
||||
description = ''
|
||||
Request encryption keys or passwords for all encrypted datasets on import.
|
||||
|
||||
Dataset encryption is only supported in zfsUnstable at the moment.
|
||||
For root pools the encryption key can be supplied via both an
|
||||
interactive prompt (keylocation=prompt) and from a file
|
||||
(keylocation=file://). Note that for data pools the encryption key can
|
||||
be only loaded from a file and not via interactive prompt since the
|
||||
import is processed in a background systemd service.
|
||||
'';
|
||||
};
|
||||
|
||||
@ -394,6 +398,7 @@ in
|
||||
script = ''
|
||||
zpool_cmd="${packages.zfsUser}/sbin/zpool"
|
||||
("$zpool_cmd" list "${pool}" >/dev/null) || "$zpool_cmd" import -d ${cfgZfs.devNodes} -N ${optionalString cfgZfs.forceImportAll "-f"} "${pool}"
|
||||
${optionalString cfgZfs.requestEncryptionCredentials "\"${packages.zfsUser}/sbin/zfs\" load-key -r \"${pool}\""}
|
||||
'';
|
||||
};
|
||||
|
||||
|
@ -364,6 +364,7 @@ in rec {
|
||||
tests.nsd = callTest tests/nsd.nix {};
|
||||
tests.openssh = callTest tests/openssh.nix {};
|
||||
tests.openldap = callTest tests/openldap.nix {};
|
||||
tests.opensmtpd = callTest tests/opensmtpd.nix {};
|
||||
tests.owncloud = callTest tests/owncloud.nix {};
|
||||
tests.pam-oath-login = callTest tests/pam-oath-login.nix {};
|
||||
tests.peerflix = callTest tests/peerflix.nix {};
|
||||
|
115
nixos/tests/opensmtpd.nix
Normal file
115
nixos/tests/opensmtpd.nix
Normal file
@ -0,0 +1,115 @@
|
||||
import ./make-test.nix {
|
||||
name = "opensmtpd";
|
||||
|
||||
nodes = {
|
||||
smtp1 = { pkgs, ... }: {
|
||||
imports = [ common/user-account.nix ];
|
||||
networking = {
|
||||
firewall.allowedTCPPorts = [ 25 ];
|
||||
useDHCP = false;
|
||||
interfaces.eth1.ipv4.addresses = pkgs.lib.mkOverride 0 [
|
||||
{ address = "192.168.1.1"; prefixLength = 24; }
|
||||
];
|
||||
};
|
||||
environment.systemPackages = [ pkgs.opensmtpd ];
|
||||
services.opensmtpd = {
|
||||
enable = true;
|
||||
extraServerArgs = [ "-v" ];
|
||||
serverConfiguration = ''
|
||||
listen on 0.0.0.0
|
||||
# DO NOT DO THIS IN PRODUCTION!
|
||||
# Setting up authentication requires a certificate which is painful in
|
||||
# a test environment, but THIS WOULD BE DANGEROUS OUTSIDE OF A
|
||||
# WELL-CONTROLLED ENVIRONMENT!
|
||||
accept from any for any relay
|
||||
'';
|
||||
};
|
||||
};
|
||||
|
||||
smtp2 = { pkgs, ... }: {
|
||||
imports = [ common/user-account.nix ];
|
||||
networking = {
|
||||
firewall.allowedTCPPorts = [ 25 143 ];
|
||||
useDHCP = false;
|
||||
interfaces.eth1.ipv4.addresses = pkgs.lib.mkOverride 0 [
|
||||
{ address = "192.168.1.2"; prefixLength = 24; }
|
||||
];
|
||||
};
|
||||
environment.systemPackages = [ pkgs.opensmtpd ];
|
||||
services.opensmtpd = {
|
||||
enable = true;
|
||||
extraServerArgs = [ "-v" ];
|
||||
serverConfiguration = ''
|
||||
listen on 0.0.0.0
|
||||
accept from any for local deliver to mda \
|
||||
"${pkgs.dovecot}/libexec/dovecot/deliver -d %{user.username}"
|
||||
'';
|
||||
};
|
||||
services.dovecot2 = {
|
||||
enable = true;
|
||||
enableImap = true;
|
||||
mailLocation = "maildir:~/mail";
|
||||
protocols = [ "imap" ];
|
||||
};
|
||||
};
|
||||
|
||||
client = { pkgs, ... }: {
|
||||
networking = {
|
||||
useDHCP = false;
|
||||
interfaces.eth1.ipv4.addresses = pkgs.lib.mkOverride 0 [
|
||||
{ address = "192.168.1.3"; prefixLength = 24; }
|
||||
];
|
||||
};
|
||||
environment.systemPackages = let
|
||||
sendTestMail = pkgs.writeScriptBin "send-a-test-mail" ''
|
||||
#!${pkgs.python3.interpreter}
|
||||
import smtplib, sys
|
||||
|
||||
with smtplib.SMTP('192.168.1.1') as smtp:
|
||||
smtp.sendmail('alice@[192.168.1.1]', 'bob@[192.168.1.2]', """
|
||||
From: alice@smtp1
|
||||
To: bob@smtp2
|
||||
Subject: Test
|
||||
|
||||
Hello World
|
||||
""")
|
||||
'';
|
||||
|
||||
checkMailLanded = pkgs.writeScriptBin "check-mail-landed" ''
|
||||
#!${pkgs.python3.interpreter}
|
||||
import imaplib
|
||||
|
||||
with imaplib.IMAP4('192.168.1.2', 143) as imap:
|
||||
imap.login('bob', 'foobar')
|
||||
imap.select()
|
||||
status, refs = imap.search(None, 'ALL')
|
||||
assert status == 'OK'
|
||||
assert len(refs) == 1
|
||||
status, msg = imap.fetch(refs[0], 'BODY[TEXT]')
|
||||
assert status == 'OK'
|
||||
content = msg[0][1]
|
||||
print("===> content:", content)
|
||||
split = content.split(b'\r\n')
|
||||
print("===> split:", split)
|
||||
lastline = split[-3]
|
||||
print("===> lastline:", lastline)
|
||||
assert lastline.strip() == b'Hello World'
|
||||
'';
|
||||
in [ sendTestMail checkMailLanded ];
|
||||
};
|
||||
};
|
||||
|
||||
testScript = ''
|
||||
startAll;
|
||||
|
||||
$client->waitForUnit("network.target");
|
||||
$smtp1->waitForUnit('opensmtpd');
|
||||
$smtp2->waitForUnit('opensmtpd');
|
||||
$smtp2->waitForUnit('dovecot2');
|
||||
|
||||
$client->succeed('send-a-test-mail');
|
||||
$smtp1->waitUntilFails('smtpctl show queue | egrep .');
|
||||
$smtp2->waitUntilFails('smtpctl show queue | egrep .');
|
||||
$client->succeed('check-mail-landed >&2');
|
||||
'';
|
||||
}
|
47
pkgs/applications/altcoins/clightning.nix
Normal file
47
pkgs/applications/altcoins/clightning.nix
Normal file
@ -0,0 +1,47 @@
|
||||
{ stdenv, fetchpatch, python3, pkgconfig, which, libtool, autoconf, automake,
|
||||
autogen, git, sqlite, gmp, zlib, fetchFromGitHub }:
|
||||
|
||||
with stdenv.lib;
|
||||
stdenv.mkDerivation rec {
|
||||
name = "clightning-${version}";
|
||||
version = "0.6";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
fetchSubmodules = true;
|
||||
owner = "ElementsProject";
|
||||
repo = "lightning";
|
||||
rev = "v${version}";
|
||||
sha256 = "1xbi8c7kn21wj255fxnb9s0sqnzbn3wsz4p96z084k8mw1nc71vn";
|
||||
};
|
||||
|
||||
enableParallelBuilding = true;
|
||||
|
||||
buildInputs = [ which sqlite gmp zlib autoconf libtool automake autogen python3 pkgconfig ];
|
||||
|
||||
makeFlags = [ "prefix=$(out)" ];
|
||||
|
||||
configurePhase = ''
|
||||
./configure --prefix=$out --disable-developer --disable-valgrind
|
||||
'';
|
||||
|
||||
postPatch = ''
|
||||
echo "" > tools/refresh-submodules.sh
|
||||
patchShebangs tools/generate-wire.py
|
||||
'';
|
||||
|
||||
doCheck = false;
|
||||
|
||||
meta = {
|
||||
description = "A Bitcoin Lightning Network implementation in C";
|
||||
longDescription= ''
|
||||
c-lightning is a standard compliant implementation of the Lightning
|
||||
Network protocol. The Lightning Network is a scalability solution for
|
||||
Bitcoin, enabling secure and instant transfer of funds between any two
|
||||
parties for any amount.
|
||||
'';
|
||||
homepage = https://github.com/ElementsProject/lightning;
|
||||
maintainers = with maintainers; [ jb55 ];
|
||||
license = licenses.mit;
|
||||
platforms = platforms.linux;
|
||||
};
|
||||
}
|
@ -6,6 +6,7 @@ rec {
|
||||
|
||||
bitcoin = libsForQt5.callPackage ./bitcoin.nix { miniupnpc = miniupnpc_2; withGui = true; };
|
||||
bitcoind = callPackage ./bitcoin.nix { miniupnpc = miniupnpc_2; withGui = false; };
|
||||
clightning = callPackage ./clightning.nix { };
|
||||
|
||||
bitcoin-abc = libsForQt5.callPackage ./bitcoin-abc.nix { boost = boost165; withGui = true; };
|
||||
bitcoind-abc = callPackage ./bitcoin-abc.nix { boost = boost165; withGui = false; };
|
||||
|
@ -5,7 +5,7 @@
|
||||
name = "mma-${version}";
|
||||
|
||||
src = fetchurl {
|
||||
url = "http://www.mellowood.ca/mma/mma-bin-${version}.tar.gz";
|
||||
url = "https://www.mellowood.ca/mma/mma-bin-${version}.tar.gz";
|
||||
sha256 = "1g4gvc0nr0qjc0fyqrnx037zpaasgymgmrm5s7cdxqnld9wqw8ww";
|
||||
};
|
||||
|
||||
|
@ -8,7 +8,7 @@ in
|
||||
stdenv.mkDerivation {
|
||||
name = "abcde-${version}";
|
||||
src = fetchurl {
|
||||
url = "http://abcde.einval.com/download/abcde-${version}.tar.gz";
|
||||
url = "https://abcde.einval.com/download/abcde-${version}.tar.gz";
|
||||
sha256 = "0f9bjs0phk23vry7gvh0cll9vl6kmc1y4fwwh762scfdvpbp3774";
|
||||
};
|
||||
|
||||
|
@ -7,7 +7,7 @@ stdenv.mkDerivation rec {
|
||||
version = "0.9.5";
|
||||
|
||||
src = fetchurl {
|
||||
url = "http://kokkinizita.linuxaudio.org/linuxaudio/downloads/${name}.tar.bz2";
|
||||
url = "https://kokkinizita.linuxaudio.org/linuxaudio/downloads/${name}.tar.bz2";
|
||||
sha256 = "0wfp8ihldyq2dhdyy7ld7z0zzfvnwam1dvbxnpd9d6xgc4k3j4nv";
|
||||
};
|
||||
|
||||
|
42
pkgs/applications/audio/amarok/default.nix
Normal file
42
pkgs/applications/audio/amarok/default.nix
Normal file
@ -0,0 +1,42 @@
|
||||
{ mkDerivation, fetchgit, lib
|
||||
, extra-cmake-modules, kdoctools
|
||||
, qca-qt5, qjson, qtquickcontrols2, qtscript, qtwebengine
|
||||
, karchive, kcmutils, kconfig, kdnssd, kguiaddons, kinit, kirigami2, knewstuff, knotifyconfig, ktexteditor, kwindowsystem
|
||||
, fftw, phonon, plasma-framework, threadweaver
|
||||
, curl, ffmpeg, gdk_pixbuf, libaio, libmtp, loudmouth, lzo, lz4, mysql57, pcre, snappy, taglib, taglib_extras
|
||||
}:
|
||||
|
||||
let
|
||||
pname = "amarok";
|
||||
version = "2.9.0-20180618";
|
||||
|
||||
in mkDerivation {
|
||||
name = "${pname}-${version}";
|
||||
|
||||
src = fetchgit {
|
||||
# master has the Qt5 version as of April 2018 but a formal release has not
|
||||
# yet been made so change this back to the proper upstream when such a
|
||||
# release is out
|
||||
url = git://anongit.kde.org/amarok.git;
|
||||
# url = "mirror://kde/stable/${pname}/${version}/src/${name}.tar.xz";
|
||||
rev = "5d43efa454b6a6c9c833a6f3d7f8ff3cae738c96";
|
||||
sha256 = "0fyrbgldg4wbb2darm4aav5fpzbacxzfjrdqwkhv9xr13j7zsvm3";
|
||||
};
|
||||
|
||||
nativeBuildInputs = [ extra-cmake-modules kdoctools ];
|
||||
|
||||
propagatedBuildInputs = [
|
||||
qca-qt5 qjson qtquickcontrols2 qtscript qtwebengine
|
||||
karchive kcmutils kconfig kdnssd kguiaddons kinit kirigami2 knewstuff knotifyconfig ktexteditor kwindowsystem
|
||||
phonon plasma-framework threadweaver
|
||||
curl fftw ffmpeg gdk_pixbuf libaio libmtp loudmouth lz4 lzo mysql57.server mysql57.server.static
|
||||
pcre snappy taglib taglib_extras
|
||||
];
|
||||
|
||||
enableParallelBuilding = true;
|
||||
|
||||
meta = with lib; {
|
||||
license = licenses.gpl2;
|
||||
maintainers = with maintainers; [ peterhoeg ];
|
||||
};
|
||||
}
|
@ -1,40 +0,0 @@
|
||||
{ mkDerivation, fetchgit, lib
|
||||
, extra-cmake-modules, kdoctools
|
||||
, qca-qt5, qjson, qtscript, qtwebkit
|
||||
, kcmutils, kconfig, kdelibs4support, kdnssd, kinit, knewstuff, knotifyconfig, ktexteditor
|
||||
, phonon, plasma-framework, threadweaver
|
||||
, curl, ffmpeg, gdk_pixbuf, libaio, libmtp, loudmouth, lzo, lz4, mysql57, pcre, snappy, taglib, taglib_extras
|
||||
}:
|
||||
|
||||
let
|
||||
pname = "amarok";
|
||||
version = "2.8.91-20170228";
|
||||
|
||||
in mkDerivation {
|
||||
name = "${pname}-${version}";
|
||||
|
||||
src = fetchgit {
|
||||
url = git://anongit.kde.org/amarok.git;
|
||||
# go back to the KDE mirror when kf5 is merged into master
|
||||
# url = "mirror://kde/stable/${pname}/${version}/src/${name}.tar.xz";
|
||||
rev = "323e2d5b43245c4c06e0b83385d37ef0d32920cb";
|
||||
sha256 = "05w7kl6qfmkjz0y1bhgkkbmsqdll30bkjd6npkzvivrvp7dplmbh";
|
||||
};
|
||||
|
||||
patches = [ ./qt5_11.patch ];
|
||||
|
||||
nativeBuildInputs = [ extra-cmake-modules kdoctools ];
|
||||
propagatedBuildInputs = [
|
||||
qca-qt5 qjson qtscript qtwebkit
|
||||
kcmutils kconfig kdelibs4support kdnssd kinit knewstuff knotifyconfig ktexteditor
|
||||
phonon plasma-framework threadweaver
|
||||
curl ffmpeg gdk_pixbuf libaio libmtp loudmouth lz4 lzo mysql57.server mysql57.server.static
|
||||
pcre snappy taglib taglib_extras
|
||||
];
|
||||
enableParallelBuilding = true;
|
||||
|
||||
meta = with lib; {
|
||||
license = licenses.gpl2;
|
||||
maintainers = with maintainers; [ peterhoeg ];
|
||||
};
|
||||
}
|
@ -1,11 +0,0 @@
|
||||
--- a/src/aboutdialog/ExtendedAboutDialog.cpp
|
||||
+++ b/src/aboutdialog/ExtendedAboutDialog.cpp
|
||||
@@ -30,6 +30,7 @@
|
||||
#include <QLayout>
|
||||
#include <QPushButton>
|
||||
#include <QScrollBar>
|
||||
+#include <QStyle>
|
||||
#include <QTabWidget>
|
||||
|
||||
#include <qapplication.h>
|
||||
|
@ -11,7 +11,7 @@ stdenv.mkDerivation rec {
|
||||
version = "3.9";
|
||||
|
||||
src = fetchurl {
|
||||
url = "http://distfiles.audacious-media-player.org/audacious-${version}-gtk3.tar.bz2";
|
||||
url = "https://distfiles.audacious-media-player.org/audacious-${version}-gtk3.tar.bz2";
|
||||
sha256 = "0dc7fg0v2l2j4h9cz1baz7rf4n0a5jgk09qvsj806sh6jp7w6ipm";
|
||||
};
|
||||
|
||||
|
@ -9,7 +9,7 @@ stdenv.mkDerivation rec {
|
||||
version = "2.6.2";
|
||||
|
||||
src = fetchurl {
|
||||
url = "http://ftp.gnome.org/pub/GNOME/sources/banshee/2.6/banshee-${version}.tar.xz";
|
||||
url = "https://ftp.gnome.org/pub/GNOME/sources/banshee/2.6/banshee-${version}.tar.xz";
|
||||
sha256 = "1y30p8wxx5li39i5gpq2wib0ympy8llz0gyi6ri9bp730ndhhz7p";
|
||||
};
|
||||
|
||||
|
@ -5,7 +5,7 @@ stdenv.mkDerivation rec {
|
||||
name = "beast-0.7.1";
|
||||
|
||||
src = fetchurl {
|
||||
url = "http://ftp.gtk.org/pub/beast/v0.7/${name}.tar.bz2";
|
||||
url = "https://ftp.gtk.org/pub/beast/v0.7/${name}.tar.bz2";
|
||||
sha256 = "0jyl1i1918rsn4296w07fsf6wx3clvad522m3bzgf8ms7gxivg5l";
|
||||
};
|
||||
|
||||
|
@ -5,7 +5,7 @@ stdenv.mkDerivation rec {
|
||||
version = "1.2";
|
||||
|
||||
src = fetchurl {
|
||||
url = "http://devel.tlrmx.org/audio/source/${name}.tar.gz";
|
||||
url = "https://devel.tlrmx.org/audio/source/${name}.tar.gz";
|
||||
sha256 = "09ck2gxqky701dc1p0ip61rrn16v0pdc7ih2hc2sd63zcw53g2a7";
|
||||
};
|
||||
|
||||
|
@ -6,7 +6,7 @@ stdenv.mkDerivation rec {
|
||||
version = "0.90.0";
|
||||
|
||||
src = fetchurl {
|
||||
url = "http://calf-studio-gear.org/files/${name}.tar.gz";
|
||||
url = "https://calf-studio-gear.org/files/${name}.tar.gz";
|
||||
sha256 = "0dijv2j7vlp76l10s4v8gbav26ibaqk8s24ci74vrc398xy00cib";
|
||||
};
|
||||
|
||||
|
@ -35,7 +35,7 @@ stdenv.mkDerivation rec {
|
||||
'';
|
||||
|
||||
meta = {
|
||||
homepage = http://xiph.org/paranoia;
|
||||
homepage = https://xiph.org/paranoia;
|
||||
description = "A tool and library for reading digital audio from CDs";
|
||||
platforms = stdenv.lib.platforms.unix;
|
||||
};
|
||||
|
@ -2,11 +2,11 @@
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
name = "deadbeef-mpris2-plugin-${version}";
|
||||
version = "1.10";
|
||||
version = "1.11";
|
||||
|
||||
src = fetchurl {
|
||||
url = "https://github.com/Serranya/deadbeef-mpris2-plugin/releases/download/v${version}/${name}.tar.xz";
|
||||
sha256 = "083fbvi06y85khr8hdm4rl5alxdanjbbyphizyr4hi93d7a0jg75";
|
||||
sha256 = "1j631z34rwxf6wdjpsf8c2f1saq6qas1qmkgsg63m6zzpwqyizw0";
|
||||
};
|
||||
|
||||
nativeBuildInputs = [ pkgconfig ];
|
||||
|
@ -9,7 +9,7 @@ stdenv.mkDerivation rec {
|
||||
version = "2.2.0";
|
||||
|
||||
src = fetchurl {
|
||||
url = "http://ftp.gnu.org/gnu/denemo/denemo-${version}.tar.gz";
|
||||
url = "https://ftp.gnu.org/gnu/denemo/denemo-${version}.tar.gz";
|
||||
sha256 = "18zcs4xmfj4vpzi15dj7k5bjzzzlr3sjf9xhrrgy4samrrdpqzfh";
|
||||
};
|
||||
|
||||
|
@ -7,7 +7,7 @@ stdenv.mkDerivation rec {
|
||||
name = "drumgizmo-${version}";
|
||||
|
||||
src = fetchurl {
|
||||
url = "http://www.drumgizmo.org/releases/${name}/${name}.tar.gz";
|
||||
url = "https://www.drumgizmo.org/releases/${name}/${name}.tar.gz";
|
||||
sha256 = "1q2jghjz0ygaja8dgvxp914if8yyzpa204amdcwb9yyinpxsahz4";
|
||||
};
|
||||
|
||||
|
@ -18,7 +18,7 @@ stdenv.mkDerivation rec {
|
||||
version = "2.9.1";
|
||||
|
||||
src = fetchurl {
|
||||
url = "http://ecasound.seul.org/download/ecasound-${version}.tar.gz";
|
||||
url = "https://ecasound.seul.org/download/ecasound-${version}.tar.gz";
|
||||
sha256 = "1wyws3xc4f9pglrrqv6k9137sarv4asizqrxz8h0dn44rnzfiz1r";
|
||||
};
|
||||
|
||||
|
@ -5,7 +5,7 @@ stdenv.mkDerivation rec {
|
||||
version = "1.0.0";
|
||||
|
||||
src = fetchurl {
|
||||
url = "http://download.drobilla.net/${name}.tar.bz2";
|
||||
url = "https://download.drobilla.net/${name}.tar.bz2";
|
||||
sha256 = "1hh2xhknanqn3iwp12ihl6bf8p7bqxryms9qk7mh21lixl42b8k5";
|
||||
};
|
||||
|
||||
|
@ -7,7 +7,7 @@ stdenv.mkDerivation rec {
|
||||
version = "1.1.0";
|
||||
|
||||
src = fetchurl {
|
||||
url = "http://download.linuxsampler.org/packages/${name}.tar.bz2";
|
||||
url = "https://download.linuxsampler.org/packages/${name}.tar.bz2";
|
||||
sha256 = "087pc919q28r1vw31c7w4m14bqnp4md1i2wbmk8w0vmwv2cbx2ni";
|
||||
};
|
||||
|
||||
|
@ -12,11 +12,11 @@ in
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
name = "guitarix-${version}";
|
||||
version = "0.37.0";
|
||||
version = "0.37.1";
|
||||
|
||||
src = fetchurl {
|
||||
url = "mirror://sourceforge/guitarix/guitarix2-${version}.tar.xz";
|
||||
sha256 = "17dsd32yd92l7xq1x0b8jsws5yif2pk4zbfjbc560hgarym6r8x6";
|
||||
sha256 = "064k0jzxqgx9gwf8za6jziansabzrwzjaim3qx1743ify5g3gaai";
|
||||
};
|
||||
|
||||
nativeBuildInputs = [ gettext intltool wrapGAppsHook pkgconfig python2 ];
|
||||
|
@ -5,7 +5,7 @@ stdenv.mkDerivation rec {
|
||||
version = "0.8.4";
|
||||
|
||||
src = fetchurl {
|
||||
url = "http://kokkinizita.linuxaudio.org/linuxaudio/downloads/${name}.tar.bz2";
|
||||
url = "https://kokkinizita.linuxaudio.org/linuxaudio/downloads/${name}.tar.bz2";
|
||||
sha256 = "0jyll4rkb6vja2widc340ww078rr24c6nmxbxdqvbxw409nccd01";
|
||||
};
|
||||
|
||||
|
@ -5,7 +5,7 @@ stdenv.mkDerivation rec {
|
||||
version = "0.9.73";
|
||||
|
||||
src = fetchurl {
|
||||
url = "http://archive.notam02.no/arkiv/src/${name}.tar.gz";
|
||||
url = "https://archive.notam02.no/arkiv/src/${name}.tar.gz";
|
||||
sha256 = "1pji0zdwm3kxjrkbzj7fnxhr8ncrc8pyqnwyrh47fhypgqjv1br1";
|
||||
};
|
||||
|
||||
|
@ -6,7 +6,7 @@ stdenv.mkDerivation rec {
|
||||
version = "1.6.0";
|
||||
|
||||
src = fetchurl {
|
||||
url = "http://download.drobilla.net/${name}.tar.bz2";
|
||||
url = "https://download.drobilla.net/${name}.tar.bz2";
|
||||
sha256 = "1x2wpzzx2cgvz3dgdcgsj8dr0w3zsasy62mvl199bsdj5fbjaili";
|
||||
};
|
||||
|
||||
|
@ -5,7 +5,7 @@ stdenv.mkDerivation rec {
|
||||
name = "japa-${version}";
|
||||
|
||||
src = fetchurl {
|
||||
url = "http://kokkinizita.linuxaudio.org/linuxaudio/downloads/${name}.tar.bz2";
|
||||
url = "https://kokkinizita.linuxaudio.org/linuxaudio/downloads/${name}.tar.bz2";
|
||||
sha256 = "1jhj7s4vqk5c4lchdall0kslvj5sh91902hhfjvs6r3a5nrhwcp0";
|
||||
};
|
||||
|
||||
|
@ -3,7 +3,7 @@ stdenv.mkDerivation rec {
|
||||
name = "ladspa-sdk-${version}";
|
||||
version = "1.13";
|
||||
src = fetchurl {
|
||||
url = "http://www.ladspa.org/download/ladspa_sdk_${version}.tgz";
|
||||
url = "https://www.ladspa.org/download/ladspa_sdk_${version}.tgz";
|
||||
sha256 = "0srh5n2l63354bc0srcrv58rzjkn4gv8qjqzg8dnq3rs4m7kzvdm";
|
||||
};
|
||||
|
||||
|
@ -3,7 +3,7 @@ stdenv.mkDerivation rec {
|
||||
name = "ladspa.h-${version}";
|
||||
version = "1.13";
|
||||
src = fetchurl {
|
||||
url = "http://www.ladspa.org/download/ladspa_sdk_${version}.tgz";
|
||||
url = "https://www.ladspa.org/download/ladspa_sdk_${version}.tgz";
|
||||
sha256 = "0srh5n2l63354bc0srcrv58rzjkn4gv8qjqzg8dnq3rs4m7kzvdm";
|
||||
};
|
||||
|
||||
|
@ -6,7 +6,7 @@ stdenv.mkDerivation rec {
|
||||
version = "2.1.0";
|
||||
|
||||
src = fetchurl {
|
||||
url = "http://download.linuxsampler.org/packages/${name}.tar.bz2";
|
||||
url = "https://download.linuxsampler.org/packages/${name}.tar.bz2";
|
||||
sha256 = "0fdxpw7jjfi058l95131d6d8538h05z7n94l60i6mhp9xbplj2jf";
|
||||
};
|
||||
|
||||
|
@ -3,18 +3,20 @@
|
||||
, python36Packages, gnome3, glib, gst_all_1 }:
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
version = "0.9.514";
|
||||
version = "0.9.516";
|
||||
name = "lollypop-${version}";
|
||||
|
||||
src = fetchgit {
|
||||
url = "https://gitlab.gnome.org/World/lollypop";
|
||||
rev = "refs/tags/${version}";
|
||||
fetchSubmodules = true;
|
||||
sha256 = "0ny8c5apldhhrcjl3wz01pbyjvf60b7xy39mpvbshvdpnqlnqsca";
|
||||
sha256 = "0ln77cmcl5wi4xis9kmzg0knbykzwsd1n78rr7ff5y35m9p2zgrf";
|
||||
};
|
||||
|
||||
nativeBuildInputs = with python36Packages; [
|
||||
appstream-glib
|
||||
desktop-file-utils
|
||||
gobjectIntrospection
|
||||
meson
|
||||
ninja
|
||||
pkgconfig
|
||||
@ -22,9 +24,7 @@ stdenv.mkDerivation rec {
|
||||
wrapPython
|
||||
];
|
||||
|
||||
buildInputs = [
|
||||
appstream-glib glib gobjectIntrospection
|
||||
] ++ (with gnome3; [
|
||||
buildInputs = [ glib ] ++ (with gnome3; [
|
||||
easytag gsettings_desktop_schemas gtk3 libsecret libsoup totem-pl-parser
|
||||
]) ++ (with gst_all_1; [
|
||||
gst-libav gst-plugins-bad gst-plugins-base gst-plugins-good gst-plugins-ugly
|
||||
|
@ -5,7 +5,7 @@ stdenv.mkDerivation rec {
|
||||
version = "1.2.2";
|
||||
|
||||
src = fetchurl {
|
||||
url = "http://download.drobilla.net/${name}.tar.bz2";
|
||||
url = "https://download.drobilla.net/${name}.tar.bz2";
|
||||
sha256 = "0hh40c5d2m0k5gb3vw031l6lqn59dg804an3mkmhkc7qv4gc6xm4";
|
||||
};
|
||||
|
||||
|
@ -9,7 +9,7 @@ stdenv.mkDerivation rec {
|
||||
version = "2.0.0";
|
||||
|
||||
src = fetchurl {
|
||||
url = "http://downloads.mixxx.org/${name}/${name}-src.tar.gz";
|
||||
url = "https://downloads.mixxx.org/${name}/${name}-src.tar.gz";
|
||||
sha256 = "0vb71w1yq0xwwsclrn2jj9bk8w4n14rfv5c0aw46c11mp8xz7f71";
|
||||
};
|
||||
|
||||
|
@ -8,7 +8,7 @@ stdenv.mkDerivation rec {
|
||||
patches = [ ./buildfix.diff ];
|
||||
|
||||
src = fetchurl {
|
||||
url = "http://deb-multimedia.org/pool/main/m/${pname}/${pname}_${version}.orig.tar.gz";
|
||||
url = "https://deb-multimedia.org/pool/main/m/${pname}/${pname}_${version}.orig.tar.gz";
|
||||
sha256 = "0kjfwzfxfx7f958b2b1kf8yj655lp0ppmn0sh57gbkjvj8lml7nz";
|
||||
};
|
||||
|
||||
|
@ -2,11 +2,11 @@
|
||||
|
||||
pythonPackages.buildPythonApplication rec {
|
||||
pname = "Mopidy-Iris";
|
||||
version = "3.21.1";
|
||||
version = "3.21.3";
|
||||
|
||||
src = pythonPackages.fetchPypi {
|
||||
inherit pname version;
|
||||
sha256 = "10d97rkqk5qbrninrahn0gr90yd47ivw2zafb24sp7a2g0mm07md";
|
||||
sha256 = "0gp51zz5qr93w0h14m1blmjnlgmilyb15lw2m75varslw1ar7vlg";
|
||||
};
|
||||
|
||||
propagatedBuildInputs = [
|
||||
|
@ -5,7 +5,7 @@ stdenv.mkDerivation rec {
|
||||
name = "nova-filters-${version}";
|
||||
|
||||
src = fetchurl {
|
||||
url = http://klingt.org/~tim/nova-filters/nova-filters_0.2-2.tar.gz;
|
||||
url = https://klingt.org/~tim/nova-filters/nova-filters_0.2-2.tar.gz;
|
||||
sha256 = "16064vvl2w5lz4xi3lyjk4xx7fphwsxc14ajykvndiz170q32s6i";
|
||||
};
|
||||
|
||||
|
@ -5,7 +5,7 @@ stdenv.mkDerivation rec {
|
||||
name = "paprefs-0.9.10";
|
||||
|
||||
src = fetchurl {
|
||||
url = "http://freedesktop.org/software/pulseaudio/paprefs/${name}.tar.xz";
|
||||
url = "https://freedesktop.org/software/pulseaudio/paprefs/${name}.tar.xz";
|
||||
sha256 = "1c5b3sb881szavly220q31g7rvpn94wr7ywlk00hqb9zaikml716";
|
||||
};
|
||||
|
||||
|
@ -5,7 +5,7 @@ stdenv.mkDerivation rec {
|
||||
name = "pavucontrol-3.0";
|
||||
|
||||
src = fetchurl {
|
||||
url = "http://freedesktop.org/software/pulseaudio/pavucontrol/${name}.tar.xz";
|
||||
url = "https://freedesktop.org/software/pulseaudio/pavucontrol/${name}.tar.xz";
|
||||
sha256 = "14486c6lmmirkhscbfygz114f6yzf97h35n3h3pdr27w4mdfmlmk";
|
||||
};
|
||||
|
||||
|
@ -4,7 +4,7 @@ stdenv.mkDerivation rec {
|
||||
name = "helmholtz";
|
||||
|
||||
src = fetchurl {
|
||||
url = "http://www.katjaas.nl/helmholtz/helmholtz~.zip";
|
||||
url = "https://www.katjaas.nl/helmholtz/helmholtz~.zip";
|
||||
name = "helmholtz.zip";
|
||||
curlOpts = "--user-agent ''";
|
||||
sha256 = "0h1fj7lmvq9j6rmw33rb8k0byxb898bi2xhcwkqalb84avhywgvs";
|
||||
|
@ -5,7 +5,7 @@ stdenv.mkDerivation rec {
|
||||
version = "20160130";
|
||||
|
||||
src = fetchurl {
|
||||
url = "http://www.chnry.net/data/puremapping-${version}-generic.zip";
|
||||
url = "https://www.chnry.net/data/puremapping-${version}-generic.zip";
|
||||
name = "puremapping";
|
||||
sha256 = "1h7qgqd8srrxw2y1rkdw5js4k6f5vc8x6nlm2mq9mq9vjck7n1j7";
|
||||
};
|
||||
|
@ -5,7 +5,7 @@ stdenv.mkDerivation rec {
|
||||
version = "2.2.4";
|
||||
|
||||
src = fetchurl {
|
||||
url = "http://puredata.info/downloads/zexy/releases/${version}/${name}.tar.gz";
|
||||
url = "https://puredata.info/downloads/zexy/releases/${version}/${name}.tar.gz";
|
||||
sha256 = "1xpgl82c2lc6zfswjsa7z10yhv5jb7a4znzh3nc7ffrzm1z8vylp";
|
||||
};
|
||||
|
||||
|
@ -27,17 +27,6 @@ python2Packages.buildPythonApplication rec {
|
||||
doCheck = false; # there are no tests
|
||||
dontStrip = true; # we are not generating any binaries
|
||||
|
||||
installPhase = ''
|
||||
runHook preInstall
|
||||
|
||||
siteDir=$(toPythonPath $out)
|
||||
mkdir -p $siteDir
|
||||
PYTHONPATH=$PYTHONPATH:$siteDir
|
||||
${python2Packages.python.interpreter} setup.py install --prefix $out
|
||||
|
||||
runHook postInstall
|
||||
'';
|
||||
|
||||
meta = with stdenv.lib; {
|
||||
homepage = https://puddletag.net;
|
||||
description = "An audio tag editor similar to the Windows program, Mp3tag";
|
||||
|
@ -20,7 +20,7 @@ stdenv.mkDerivation rec {
|
||||
if stdenv.system == "x86_64-linux" then
|
||||
if builtins.isNull releasePath then
|
||||
fetchurl {
|
||||
url = "http://files.renoise.com/demo/Renoise_${urlVersion version}_Demo_x86_64.tar.bz2";
|
||||
url = "https://files.renoise.com/demo/Renoise_${urlVersion version}_Demo_x86_64.tar.bz2";
|
||||
sha256 = "0pan68fr22xbj7a930y29527vpry3f07q3i9ya4fp6g7aawffsga";
|
||||
}
|
||||
else
|
||||
|
@ -34,7 +34,7 @@ stdenv.mkDerivation (rec {
|
||||
enableParallelBuilding = true;
|
||||
|
||||
meta = with stdenv.lib; {
|
||||
homepage = http://www.rosegardenmusic.com/;
|
||||
homepage = https://www.rosegardenmusic.com/;
|
||||
description = "Music composition and editing environment";
|
||||
longDescription = ''
|
||||
Rosegarden is a music composition and editing environment based around
|
||||
|
@ -11,7 +11,7 @@ stdenv.mkDerivation rec {
|
||||
version = "2.4.1";
|
||||
|
||||
src = fetchurl {
|
||||
url = "http://code.soundsoftware.ac.uk/attachments/download/1185/${name}.tar.gz";
|
||||
url = "https://code.soundsoftware.ac.uk/attachments/download/1185/${name}.tar.gz";
|
||||
sha256 = "06nlha70kgrby16nyhngrv5q846xagnxdinv608v7ga7vpywwmyb";
|
||||
};
|
||||
|
||||
|
@ -8,7 +8,7 @@ stdenv.mkDerivation rec {
|
||||
version = "0.8.2";
|
||||
|
||||
src = fetchurl {
|
||||
url = "http://kokkinizita.linuxaudio.org/linuxaudio/downloads/${name}.tar.bz2";
|
||||
url = "https://kokkinizita.linuxaudio.org/linuxaudio/downloads/${name}.tar.bz2";
|
||||
sha256 = "17y3vbm5f6h5cmh3yfxjgqz4xhfwpkla3lqfspnbm4ndlzmfpykv";
|
||||
};
|
||||
|
||||
|
@ -51,5 +51,6 @@ stdenv.mkDerivation rec {
|
||||
homepage = http://tomahawk-player.org/;
|
||||
license = licenses.gpl3Plus;
|
||||
platforms = platforms.all;
|
||||
broken = true; # 2018-06-25
|
||||
};
|
||||
}
|
||||
|
@ -29,7 +29,7 @@ stdenv.mkDerivation {
|
||||
A set of command-line tools to manipulate Ogg Vorbis audio
|
||||
files, notably the `ogg123' player and the `oggenc' encoder.
|
||||
'';
|
||||
homepage = http://xiph.org/vorbis/;
|
||||
homepage = https://xiph.org/vorbis/;
|
||||
license = licenses.gpl2;
|
||||
platforms = platforms.all;
|
||||
};
|
||||
|
@ -7,7 +7,7 @@ stdenv.mkDerivation rec {
|
||||
name = "x42-plugins-${version}";
|
||||
|
||||
src = fetchurl {
|
||||
url = "http://gareus.org/misc/x42-plugins/${name}.tar.xz";
|
||||
url = "https://gareus.org/misc/x42-plugins/${name}.tar.xz";
|
||||
sha256 = "167ly9nxqq3g0j35i9jv9rvd8qp4i9ncfcjxmg972cp6q8ak8mdl";
|
||||
};
|
||||
|
||||
|
@ -15,7 +15,7 @@ stdenv.mkDerivation rec {
|
||||
buildInputs = [ cmake mpd_clientlib openssl ];
|
||||
|
||||
meta = {
|
||||
homepage = http://www.ympd.org;
|
||||
homepage = https://www.ympd.org;
|
||||
description = "Standalone MPD Web GUI written in C, utilizing Websockets and Bootstrap/JS";
|
||||
maintainers = [ stdenv.lib.maintainers.siddharthist ];
|
||||
platforms = stdenv.lib.platforms.unix;
|
||||
|
@ -13,9 +13,9 @@ let
|
||||
sha256Hash = "196yaswbxh2nd83gimjxr8ggr5xkdxq7n3xlh6ax73v59pj4hryq";
|
||||
};
|
||||
latestVersion = {
|
||||
version = "3.2.0.18"; # "Android Studio 3.2 Beta 1"
|
||||
build = "181.4847800";
|
||||
sha256Hash = "1ipdvrx3qxwygq72jlf0dl4haxviscl41q18kclg519r1zbzd4cw";
|
||||
version = "3.3.0.0"; # "Android Studio 3.3 Canary 1"
|
||||
build = "181.4861037";
|
||||
sha256Hash = "1abilixr386x65qzgp6pwdn41y1xi9h8yihgxhc1c97n90f5gab8";
|
||||
};
|
||||
in rec {
|
||||
# Old alias
|
||||
@ -43,6 +43,9 @@ in rec {
|
||||
beta = mkStudio (latestVersion // {
|
||||
pname = "android-studio-preview";
|
||||
#pname = "android-studio-beta"; # TODO: Rename and provide symlink
|
||||
version = "3.2.0.19"; # "Android Studio 3.2 Beta 2"
|
||||
build = "181.4860949";
|
||||
sha256Hash = "1v1h42xp2fxj8366q9l9b0shk0y1vz9kny0rf7y48kyr5h9glnwr";
|
||||
|
||||
meta = stable.meta // {
|
||||
description = "The Official IDE for Android (beta channel)";
|
||||
|
@ -36,7 +36,7 @@ let
|
||||
--set-rpath "${atomEnv.libPath}" \
|
||||
$share/resources/app/apm/bin/node
|
||||
patchelf --set-interpreter "$(cat $NIX_CC/nix-support/dynamic-linker)" \
|
||||
$out/share/atom/resources/app.asar.unpacked/node_modules/symbols-view/vendor/ctags-linux
|
||||
$share/resources/app.asar.unpacked/node_modules/symbols-view/vendor/ctags-linux
|
||||
|
||||
dugite=$share/resources/app.asar.unpacked/node_modules/dugite
|
||||
rm -f $dugite/git/bin/git
|
||||
|
@ -96,7 +96,7 @@ rec {
|
||||
|
||||
### Eclipse Platform
|
||||
|
||||
eclipse-platform = eclipse-platform-47; # always point to latest
|
||||
eclipse-platform = eclipse-platform-48; # always point to latest
|
||||
|
||||
eclipse-platform-46 = buildEclipse {
|
||||
name = "eclipse-platform-4.6.2";
|
||||
@ -128,6 +128,21 @@ rec {
|
||||
};
|
||||
};
|
||||
|
||||
eclipse-platform-48 = buildEclipse {
|
||||
name = "eclipse-platform-4.8";
|
||||
description = "Eclipse Platform Photon";
|
||||
sources = {
|
||||
"x86_64-linux" = fetchurl {
|
||||
url = https://www.eclipse.org/downloads/download.php?r=1&nf=1&file=/eclipse/downloads/drops4/R-4.8-201806110500/eclipse-platform-4.8-linux-gtk-x86_64.tar.gz;
|
||||
sha512 = "ccce2b954938479e42ef3f9b78f74b24ae4cae7499546fa4f9a55ec1849e1acfd06315d4529b11474a8b3d1142c9409c581edfa571baaf1342ab062f02467af2";
|
||||
};
|
||||
"i686-linux" = fetchurl {
|
||||
url = https://www.eclipse.org/downloads/download.php?r=1&nf=1&file=/eclipse/downloads/drops4/R-4.8-201806110500/eclipse-platform-4.8-linux-gtk.tar.gz;
|
||||
sha512 = "f5f407727e22b848931cf38f71b1a0c30a9778aa227c3df137dcceec2fba2ecc309cbfa8b4a660b814d2edb60f65110381497b4325781cab4d6402784139e32b";
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
### Eclipse Scala SDK
|
||||
|
||||
eclipse-scala-sdk = eclipse-scala-sdk-441; # always point to latest
|
||||
@ -150,7 +165,7 @@ rec {
|
||||
|
||||
### Eclipse SDK
|
||||
|
||||
eclipse-sdk = eclipse-sdk-47; # always point to latest
|
||||
eclipse-sdk = eclipse-sdk-48; # always point to latest
|
||||
|
||||
eclipse-sdk-46 = buildEclipse {
|
||||
name = "eclipse-sdk-4.6.2";
|
||||
@ -182,6 +197,21 @@ rec {
|
||||
};
|
||||
};
|
||||
|
||||
eclipse-sdk-48 = buildEclipse {
|
||||
name = "eclipse-sdk-4.8";
|
||||
description = "Eclipse Photon Classic";
|
||||
sources = {
|
||||
"x86_64-linux" = fetchurl {
|
||||
url = https://www.eclipse.org/downloads/download.php?r=1&nf=1&file=/eclipse/downloads/drops4/R-4.8-201806110500/eclipse-SDK-4.8-linux-gtk-x86_64.tar.gz;
|
||||
sha512 = "357ea9e7f426c68ced693f1c7b76eae23f9e3c7893de1f12d17994ec17b447896b5daa7292d5fbf6d9c4e5b7fd637ca5b2a6ba8ce40a2a7c2fe06f2124d31b75";
|
||||
};
|
||||
"i686-linux" = fetchurl {
|
||||
url = https://www.eclipse.org/downloads/download.php?r=1&nf=1&file=/eclipse/downloads/drops4/R-4.8-201806110500/eclipse-SDK-4.8-linux-gtk.tar.gz;
|
||||
sha512 = "c7cae7baa3978d48477090bb9941e85b4c7484021ece9c5c77a7e859e57e5c1f13556262f92b561cfb11f828b934bad7a6018be7b8fd9454e3991e8d5cae9917";
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
eclipse-sdk-37 = buildEclipse {
|
||||
name = "eclipse-sdk-3.7";
|
||||
description = "Eclipse Classic";
|
||||
|
@ -470,12 +470,12 @@ rec {
|
||||
|
||||
jdt = buildEclipseUpdateSite rec {
|
||||
name = "jdt-${version}";
|
||||
version = "4.7.3a";
|
||||
version = "4.8";
|
||||
|
||||
src = fetchzip {
|
||||
stripRoot = false;
|
||||
url = https://www.eclipse.org/downloads/download.php?r=1&nf=1&file=/eclipse/downloads/drops4/R-4.7.3a-201803300640/org.eclipse.jdt-4.7.3a.zip;
|
||||
sha256 = "10dndhqz894xf79zz07dlmkn7k33mn42nbmycr78xz6d2jy8cscx";
|
||||
url = https://www.eclipse.org/downloads/download.php?r=1&nf=1&file=/eclipse/downloads/drops4/R-4.8-201806110500/org.eclipse.jdt-4.8.zip;
|
||||
sha256 = "1my0d1114mx5gzxmwqlx0rcny39ly97ixlwx53ljk6qcryhdnr88";
|
||||
};
|
||||
|
||||
meta = with stdenv.lib; {
|
||||
|
@ -20,7 +20,7 @@ stdenv.mkDerivation rec {
|
||||
meta = {
|
||||
description = "An Emacs mode for editing Scala code";
|
||||
|
||||
homepage = http://www.scala-lang.org/node/354;
|
||||
homepage = https://www.scala-lang.org/node/354;
|
||||
|
||||
# non-copyleft, BSD-style
|
||||
license = "permissive";
|
||||
|
@ -10,7 +10,7 @@ stdenv.mkDerivation rec {
|
||||
name = "geany-${version}";
|
||||
|
||||
src = fetchurl {
|
||||
url = "http://download.geany.org/${name}.tar.bz2";
|
||||
url = "https://download.geany.org/${name}.tar.bz2";
|
||||
sha256 = "66baaff43f12caebcf0efec9a5533044dc52837f799c73a1fd7312caa86099c2";
|
||||
};
|
||||
|
||||
|
47
pkgs/applications/editors/gnome-latex/default.nix
Normal file
47
pkgs/applications/editors/gnome-latex/default.nix
Normal file
@ -0,0 +1,47 @@
|
||||
{ stdenv, fetchurl, wrapGAppsHook
|
||||
, tepl, amtk, gnome3, glib, pkgconfig, intltool, itstool, libxml2 }:
|
||||
let
|
||||
version = "3.28.1";
|
||||
pname = "gnome-latex";
|
||||
in stdenv.mkDerivation {
|
||||
name = "${pname}-${version}";
|
||||
|
||||
src = fetchurl {
|
||||
url = "mirror://gnome/sources/${pname}/${stdenv.lib.versions.majorMinor version}/${pname}-${version}.tar.xz";
|
||||
sha256 = "1z481izrx057wraphnr82kxnpmmi8nvl7jswyylzm22kfs0mw402";
|
||||
};
|
||||
|
||||
NIX_CFLAGS_COMPILE = "-I${glib.dev}/include/gio-unix-2.0";
|
||||
configureFlags = ["--disable-dconf-migration"];
|
||||
|
||||
nativeBuildInputs = [
|
||||
pkgconfig
|
||||
wrapGAppsHook
|
||||
itstool
|
||||
intltool
|
||||
];
|
||||
|
||||
buildInputs = with gnome3; [
|
||||
amtk
|
||||
defaultIconTheme
|
||||
glib
|
||||
gsettings-desktop-schemas
|
||||
gspell
|
||||
gtksourceview4
|
||||
libgee
|
||||
libxml2
|
||||
tepl
|
||||
];
|
||||
|
||||
doCheck = true;
|
||||
|
||||
passthru.updateScript = gnome3.updateScript { packageName = pname; };
|
||||
|
||||
meta = with stdenv.lib; {
|
||||
homepage = https://wiki.gnome.org/Apps/GNOME-LaTeX;
|
||||
description = "A LaTeX editor for the GNOME desktop";
|
||||
maintainers = [ maintainers.manveru ];
|
||||
license = licenses.gpl3Plus;
|
||||
platforms = platforms.linux;
|
||||
};
|
||||
}
|
@ -11,7 +11,7 @@ stdenv.mkDerivation rec {
|
||||
src = fetchurl {
|
||||
urls = [
|
||||
"https://www.mirbsd.org/MirOS/dist/jupp/${srcName}.tgz"
|
||||
"http://pub.allbsd.org/MirOS/dist/jupp/${srcName}.tgz" ];
|
||||
"https://pub.allbsd.org/MirOS/dist/jupp/${srcName}.tgz" ];
|
||||
sha256 = "1fnf9jsd6p4jyybkhjjs328qx38ywy8w029ngc7j7kqp0ixn0l0s";
|
||||
};
|
||||
|
||||
|
@ -10,7 +10,7 @@ stdenv.mkDerivation rec {
|
||||
name = "monodevelop-${version}";
|
||||
|
||||
src = fetchurl {
|
||||
url = "http://download.mono-project.com/sources/monodevelop/${name}.tar.bz2";
|
||||
url = "https://download.mono-project.com/sources/monodevelop/${name}.tar.bz2";
|
||||
sha256 = "0bim4bfv3zwijafl9g0cx3159zq43dlcv74mnyrda41j4p52w5ji";
|
||||
};
|
||||
|
||||
|
@ -20,11 +20,11 @@ let
|
||||
|
||||
in stdenv.mkDerivation rec {
|
||||
name = "nano-${version}";
|
||||
version = "2.9.7";
|
||||
version = "2.9.8";
|
||||
|
||||
src = fetchurl {
|
||||
url = "mirror://gnu/nano/${name}.tar.xz";
|
||||
sha256 = "1ga4sdk3ikx1ilggc6c77vyfpbmq3nrhg6svgglpf5sv60bv0jmn";
|
||||
sha256 = "122lm0z97wk3mgnbn8m4d769d4j9rxyc9z7s89xd4gsdp8qsrpn2";
|
||||
};
|
||||
|
||||
nativeBuildInputs = [ texinfo ] ++ optional enableNls gettext;
|
||||
|
@ -15,7 +15,7 @@ in
|
||||
stdenv.mkDerivation {
|
||||
name = "netbeans-8.2";
|
||||
src = fetchurl {
|
||||
url = http://download.netbeans.org/netbeans/8.2/final/zip/netbeans-8.2-201609300101.zip;
|
||||
url = https://download.netbeans.org/netbeans/8.2/final/zip/netbeans-8.2-201609300101.zip;
|
||||
sha256 = "0j092qw7aqfc9vpnvr3ix1ii94p4ik6frcnw708iyv4s9crqi65d";
|
||||
};
|
||||
|
||||
|
@ -5,7 +5,7 @@ stdenv.mkDerivation rec {
|
||||
version = "4.0.5";
|
||||
|
||||
src = fetchurl {
|
||||
url = http://www.scintilla.org/scite405.tgz;
|
||||
url = https://www.scintilla.org/scite405.tgz;
|
||||
sha256 = "0h16wk2986nkkhhdv5g4lxlcn02qwyja24x1r6vf02r1hf46b9q2";
|
||||
};
|
||||
|
||||
@ -24,7 +24,7 @@ stdenv.mkDerivation rec {
|
||||
'';
|
||||
|
||||
meta = with stdenv.lib; {
|
||||
homepage = http://www.scintilla.org/SciTE.html;
|
||||
homepage = https://www.scintilla.org/SciTE.html;
|
||||
description = "SCIntilla based Text Editor";
|
||||
license = licenses.mit;
|
||||
platforms = platforms.linux;
|
||||
|
@ -5,7 +5,7 @@ stdenv.mkDerivation rec {
|
||||
version = "3.02";
|
||||
|
||||
src = fetchurl {
|
||||
url = "http://www.chiark.greenend.org.uk/~sgtatham/tweak/${name}.tar.gz";
|
||||
url = "https://www.chiark.greenend.org.uk/~sgtatham/tweak/${name}.tar.gz";
|
||||
sha256 = "06js54pr5hwpwyxj77zs5s40n5aqvaw48dkj7rid2d47pyqijk2v";
|
||||
};
|
||||
|
||||
|
@ -3,18 +3,18 @@
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
name = "typora-${version}";
|
||||
version = "0.9.48";
|
||||
version = "0.9.53";
|
||||
|
||||
src =
|
||||
if stdenv.system == "x86_64-linux" then
|
||||
fetchurl {
|
||||
url = "https://www.typora.io/linux/typora_${version}_amd64.deb";
|
||||
sha256 = "36a7c5f855306bcbe3364d12aca94c2f6d013a013e59b46f89df81496ec11800";
|
||||
sha256 = "02k6x30l4mbjragqbq5rn663xbw3h4bxzgppfxqf5lwydswldklb";
|
||||
}
|
||||
else
|
||||
fetchurl {
|
||||
url = "https://www.typora.io/linux/typora_${version}_i386.deb";
|
||||
sha256 = "7197c526918a791b15b701846f9f2f1747a5b8ceac77c4cba691ee6d74d07d1d";
|
||||
sha256 = "1wyq1ri0wwdy7slbd9dwyrdynsaa644x44c815jl787sg4nhas6y";
|
||||
}
|
||||
;
|
||||
|
||||
@ -80,7 +80,6 @@ stdenv.mkDerivation rec {
|
||||
wrapProgram $out/bin/typora \
|
||||
"''${gappsWrapperArgs[@]}" \
|
||||
--suffix XDG_DATA_DIRS : "${gtk3}/share/gsettings-schemas/${gtk3.name}/" \
|
||||
--set XDG_RUNTIME_DIR "XDG-RUNTIME-DIR" \
|
||||
--prefix XDG_DATA_DIRS : "${gnome3.defaultIconTheme}/share"
|
||||
|
||||
# Fix the desktop link
|
||||
|
@ -6,7 +6,7 @@
|
||||
stdenv.mkDerivation {
|
||||
name = "grass-7.2.2";
|
||||
src = fetchurl {
|
||||
url = http://grass.osgeo.org/grass72/source/grass-7.2.2.tar.gz;
|
||||
url = https://grass.osgeo.org/grass72/source/grass-7.2.2.tar.gz;
|
||||
sha256 = "0yzljbrxlqp4wbw08n1dvmm4vmwkg8glf1ff4xyh589r5ryb7gxv";
|
||||
};
|
||||
|
||||
|
@ -33,7 +33,7 @@ stdenv.mkDerivation rec {
|
||||
'';
|
||||
|
||||
src = fetchurl {
|
||||
url = "http://qgis.org/downloads/${name}.tar.bz2";
|
||||
url = "https://qgis.org/downloads/${name}.tar.bz2";
|
||||
sha256 = "0bm9sv268lc3v48zjypsjjs62xnyb7zabzrms4jsy020waz6sk9g";
|
||||
};
|
||||
|
||||
|
@ -3,6 +3,7 @@
|
||||
, ilmbase, gtk3, intltool, lcms2, lensfun, libX11, libexif, libgphoto2, libjpeg
|
||||
, libpng, librsvg, libtiff, openexr, osm-gps-map, pkgconfig, sqlite, libxslt
|
||||
, openjpeg, lua, pugixml, colord, colord-gtk, libwebp, libsecret, gnome3
|
||||
, ocl-icd
|
||||
}:
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
@ -21,9 +22,9 @@ stdenv.mkDerivation rec {
|
||||
libgphoto2 libjpeg libpng librsvg libtiff openexr sqlite libxslt
|
||||
libsoup graphicsmagick json-glib openjpeg lua pugixml
|
||||
colord colord-gtk libwebp libsecret gnome3.adwaita-icon-theme
|
||||
osm-gps-map
|
||||
osm-gps-map ocl-icd
|
||||
];
|
||||
|
||||
|
||||
cmakeFlags = [
|
||||
"-DBUILD_USERMANUAL=False"
|
||||
];
|
||||
@ -34,7 +35,7 @@ stdenv.mkDerivation rec {
|
||||
# the wrappers:
|
||||
preFixup = ''
|
||||
gappsWrapperArgs+=(
|
||||
--prefix LD_LIBRARY_PATH ":" "$out/lib/darktable"
|
||||
--prefix LD_LIBRARY_PATH ":" "$out/lib/darktable:${ocl-icd}/lib"
|
||||
)
|
||||
'';
|
||||
|
||||
|
@ -6,11 +6,11 @@ with stdenv.lib;
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
name = "feh-${version}";
|
||||
version = "2.26.3";
|
||||
version = "2.26.4";
|
||||
|
||||
src = fetchurl {
|
||||
url = "https://feh.finalrewind.org/${name}.tar.bz2";
|
||||
sha256 = "08aagymgajcvciagwy2zdxhicvdfnjmd2xyx9bqjy7l1n16ydwrz";
|
||||
sha256 = "15a7hjg7xwj1hsw3c5k18psvvmbqgn4g79qq03bsvibzl4kqakq7";
|
||||
};
|
||||
|
||||
outputs = [ "out" "man" "doc" ];
|
||||
|
@ -8,7 +8,7 @@ stdenv.mkDerivation rec {
|
||||
version = "3.4.0";
|
||||
|
||||
src = fetchurl {
|
||||
url = "http://ftp.gnome.org/pub/GNOME/sources/glabels/3.4/glabels-3.4.0.tar.xz";
|
||||
url = "https://ftp.gnome.org/pub/GNOME/sources/glabels/3.4/glabels-3.4.0.tar.xz";
|
||||
sha256 = "04345crf5yrhq6rlrymz630rxnm8yw41vx04hb6xn2nkjn9hf3nl";
|
||||
};
|
||||
|
||||
|
@ -4,7 +4,7 @@ stdenv.mkDerivation rec {
|
||||
name = "gocr-0.51";
|
||||
|
||||
src = fetchurl {
|
||||
url = "http://www-e.uni-magdeburg.de/jschulen/ocr/${name}.tar.gz";
|
||||
url = "https://www-e.uni-magdeburg.de/jschulen/ocr/${name}.tar.gz";
|
||||
sha256 = "14i6zi6q11h6d0qds2cpvgvhbxk5xaa027h8cd0wy1zblh7sxckf";
|
||||
};
|
||||
|
||||
|
@ -12,7 +12,7 @@ let
|
||||
version = "150";
|
||||
|
||||
src = fetchurl {
|
||||
url = "http://wsr.imagej.net/distros/cross-platform/ij150.zip";
|
||||
url = "https://wsr.imagej.net/distros/cross-platform/ij150.zip";
|
||||
sha256 = "97aba6fc5eb908f5160243aebcdc4965726693cb1353d9c0d71b8f5dd832cb7b";
|
||||
};
|
||||
buildInputs = [ unzip makeWrapper ];
|
||||
|
@ -4,7 +4,7 @@ stdenv.mkDerivation rec {
|
||||
name = "imlibsetroot-${version}";
|
||||
version = "1.2";
|
||||
src = fetchurl {
|
||||
url = "http://robotmonkeys.net/wp-content/uploads/2010/03/imlibsetroot-12.tar.gz";
|
||||
url = "https://robotmonkeys.net/wp-content/uploads/2010/03/imlibsetroot-12.tar.gz";
|
||||
sha256 = "8c1b3b7c861e4d865883ec13a96b8e4ab22464a87d4e6c67255b17a88e3cfd1c";
|
||||
};
|
||||
|
||||
|
@ -5,7 +5,7 @@ stdenv.mkDerivation rec {
|
||||
name = "jpegoptim-${version}";
|
||||
|
||||
src = fetchurl {
|
||||
url = "http://www.kokkonen.net/tjko/src/${name}.tar.gz";
|
||||
url = "https://www.kokkonen.net/tjko/src/${name}.tar.gz";
|
||||
sha256 = "1dss7907fclfl8zsw0bl4qcw0hhz6fqgi3867w0jyfm3q9jfpcc8";
|
||||
};
|
||||
|
||||
|
40
pkgs/applications/graphics/krop/default.nix
Normal file
40
pkgs/applications/graphics/krop/default.nix
Normal file
@ -0,0 +1,40 @@
|
||||
{ stdenv, fetchFromGitHub, python3Packages, libsForQt5, ghostscript }:
|
||||
|
||||
python3Packages.buildPythonApplication rec {
|
||||
pname = "krop";
|
||||
version = "0.5.0";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "arminstraub";
|
||||
repo = pname;
|
||||
rev = "v${version}";
|
||||
sha256 = "0y8z9xr10wbzmi1dg1zpcsf3ihnxrnvlaf72821x3390s3qsnydf";
|
||||
};
|
||||
|
||||
propagatedBuildInputs = with python3Packages; [
|
||||
pyqt5
|
||||
pypdf2
|
||||
poppler-qt5
|
||||
libsForQt5.poppler
|
||||
ghostscript
|
||||
];
|
||||
|
||||
# Disable checks because of interference with older Qt versions // xcb
|
||||
doCheck = false;
|
||||
|
||||
meta = {
|
||||
homepage = http://arminstraub.com/software/krop;
|
||||
description = "Graphical tool to crop the pages of PDF files";
|
||||
longDescription = ''
|
||||
Krop is a tool that allows you to optimise your PDF files, and remove
|
||||
sections of the page you do not want. A unique feature of krop, at least to my
|
||||
knowledge, is its ability to automatically split pages into subpages to fit the
|
||||
limited screensize of devices such as eReaders. This is particularly useful, if
|
||||
your eReader does not support convenient scrolling. Krop also has a command line
|
||||
interface.
|
||||
'';
|
||||
license = stdenv.lib.licenses.gpl3Plus;
|
||||
maintainers = with stdenv.lib.maintainers; [ leenaars ];
|
||||
platforms = stdenv.lib.platforms.linux;
|
||||
};
|
||||
}
|
@ -5,7 +5,7 @@ stdenv.mkDerivation (rec {
|
||||
name = "qiv-${version}";
|
||||
|
||||
src = fetchurl {
|
||||
url = "http://spiegl.de/qiv/download/${name}.tgz";
|
||||
url = "https://spiegl.de/qiv/download/${name}.tgz";
|
||||
sha256 = "1rlf5h67vhj7n1y7jqkm9k115nfnzpwngj3kzqsi2lg676srclv7";
|
||||
};
|
||||
|
||||
|
@ -19,7 +19,7 @@ in stdenv.mkDerivation rec {
|
||||
}
|
||||
else if stdenv.system == "x86_64-linux" then
|
||||
fetchurl {
|
||||
url = "http://download.brother.com/welcome/dlf006645/${name}.amd64.deb";
|
||||
url = "https://download.brother.com/welcome/dlf006645/${name}.amd64.deb";
|
||||
sha256 = "0xy5px96y1saq9l80vwvfn6anr2q42qlxdhm6ci2a0diwib5q9fd";
|
||||
}
|
||||
else throw "${name} is not supported on ${stdenv.system} (only i686-linux and x86_64 linux are supported)";
|
||||
|
@ -6,7 +6,7 @@ assert (stdenv ? glibc);
|
||||
stdenv.mkDerivation {
|
||||
name = "seg3d-1.12_20090930";
|
||||
src = fetchurl {
|
||||
url = http://www.sci.utah.edu/releases/seg3d_v1.12/Seg3D_1.12_20090930_source.tgz;
|
||||
url = https://www.sci.utah.edu/releases/seg3d_v1.12/Seg3D_1.12_20090930_source.tgz;
|
||||
sha256 = "1wr6rc6v5qjjkmws8yrc03z35h3iydxk1z28p06v1wdnca0y71z8";
|
||||
};
|
||||
|
||||
|
@ -4,7 +4,7 @@ stdenv.mkDerivation rec {
|
||||
name = "zgv-${version}";
|
||||
version = "5.9";
|
||||
src = fetchurl {
|
||||
url = "http://www.svgalib.org/rus/zgv/${name}.tar.gz";
|
||||
url = "https://www.svgalib.org/rus/zgv/${name}.tar.gz";
|
||||
sha256 = "1fk4i9x0cpnpn3llam0zy2pkmhlr2hy3iaxhxg07v9sizd4dircj";
|
||||
};
|
||||
|
||||
|
@ -1,4 +1,4 @@
|
||||
{ stdenv, fetchzip, makeWrapper }:
|
||||
{ stdenv, fetchzip }:
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
name = "1password-${version}";
|
||||
@ -6,25 +6,24 @@ stdenv.mkDerivation rec {
|
||||
src =
|
||||
if stdenv.system == "i686-linux" then
|
||||
fetchzip {
|
||||
url = "https://cache.agilebits.com/dist/1P/op/pkg/v0.4.1/op_linux_386_v${version}.zip";
|
||||
sha256 = "0mv2m6rm6bdpca8vhyx213bg4kh06jl2sx8q7mnrp22c3f0yzh7f";
|
||||
url = "https://cache.agilebits.com/dist/1P/op/pkg/v${version}/op_linux_386_v${version}.zip";
|
||||
sha256 = "1yzzh1f6hx7vwdgzp0znsjarjiw4xqmmrkc5xwywgjpg81qqpl8c";
|
||||
stripRoot = false;
|
||||
}
|
||||
else if stdenv.system == "x86_64-linux" then
|
||||
fetchzip {
|
||||
url = "https://cache.agilebits.com/dist/1P/op/pkg/v0.4.1/op_linux_amd64_v${version}.zip";
|
||||
sha256 = "016h5jcy6jic8j3mvlnpcig9jxs22vj71gh6rrap2q950bzi6fi1";
|
||||
url = "https://cache.agilebits.com/dist/1P/op/pkg/v${version}/op_linux_amd64_v${version}.zip";
|
||||
sha256 = "0dgj1zqmpdbnsz2v2j7nqm232cdgyp9wagc089dxi4hbzkmfcvzx";
|
||||
stripRoot = false;
|
||||
}
|
||||
else if stdenv.system == "x86_64-darwin" then
|
||||
fetchzip {
|
||||
url = "https://cache.agilebits.com/dist/1P/op/pkg/v0.4.1/op_darwin_amd64_v${version}.zip";
|
||||
sha256 = "1l0bi0f6gd4q19wn3v409gj64wp51mr0xpb09da1fl33rl5fpszb";
|
||||
url = "https://cache.agilebits.com/dist/1P/op/pkg/v${version}/op_darwin_amd64_v${version}.zip";
|
||||
sha256 = "116bvyfg38npdhlzaxan5y47cbw7jvj94q5w6v71kxsjzxk9l44a";
|
||||
stripRoot = false;
|
||||
}
|
||||
else throw "Architecture not supported";
|
||||
|
||||
nativeBuildInputs = [ makeWrapper ];
|
||||
installPhase = ''
|
||||
install -D op $out/bin/op
|
||||
'';
|
||||
|
Some files were not shown because too many files have changed in this diff Show More
Loading…
Reference in New Issue
Block a user