Merge branch 'master' into staging
This commit is contained in:
commit
40003aa2ed
@ -22,3 +22,7 @@ indent_size = 2
|
||||
[*.{sh,py,pl}]
|
||||
indent_style = space
|
||||
indent_size = 4
|
||||
|
||||
# Match diffs, avoid to trim trailing whitespace
|
||||
[*.{diff,patch}]
|
||||
trim_trailing_whitespace = false
|
||||
|
@ -17,66 +17,6 @@
|
||||
derivations or even the whole package set.
|
||||
</para>
|
||||
|
||||
<section xml:id="sec-pkgs-overridePackages">
|
||||
<title>pkgs.overridePackages</title>
|
||||
|
||||
<para>
|
||||
This function inside the nixpkgs expression (<varname>pkgs</varname>)
|
||||
can be used to override the set of packages itself.
|
||||
</para>
|
||||
<para>
|
||||
Warning: this function is expensive and must not be used from within
|
||||
the nixpkgs repository.
|
||||
</para>
|
||||
<para>
|
||||
Example usage:
|
||||
|
||||
<programlisting>let
|
||||
pkgs = import <nixpkgs> {};
|
||||
newpkgs = pkgs.overridePackages (self: super: {
|
||||
foo = super.foo.override { ... };
|
||||
};
|
||||
in ...</programlisting>
|
||||
</para>
|
||||
|
||||
<para>
|
||||
The resulting <varname>newpkgs</varname> will have the new <varname>foo</varname>
|
||||
expression, and all other expressions depending on <varname>foo</varname> will also
|
||||
use the new <varname>foo</varname> expression.
|
||||
</para>
|
||||
|
||||
<para>
|
||||
The behavior of this function is similar to <link
|
||||
linkend="sec-modify-via-packageOverrides">config.packageOverrides</link>.
|
||||
</para>
|
||||
|
||||
<para>
|
||||
The <varname>self</varname> parameter refers to the final package set with the
|
||||
applied overrides. Using this parameter may lead to infinite recursion if not
|
||||
used consciously.
|
||||
</para>
|
||||
|
||||
<para>
|
||||
The <varname>super</varname> parameter refers to the old package set.
|
||||
It's equivalent to <varname>pkgs</varname> in the above example.
|
||||
</para>
|
||||
|
||||
<para>
|
||||
Note that in previous versions of nixpkgs, this method replaced any changes from <link
|
||||
linkend="sec-modify-via-packageOverrides">config.packageOverrides</link>,
|
||||
along with that from previous calls if this function was called repeatedly.
|
||||
Now those previous changes will be preserved so this function can be "chained" meaningfully.
|
||||
To recover the old behavior, make sure <varname>config.packageOverrides</varname> is unset,
|
||||
and call this only once off a "freshly" imported nixpkgs:
|
||||
|
||||
<programlisting>let
|
||||
pkgs = import <nixpkgs> { config: {}; };
|
||||
newpkgs = pkgs.overridePackages ...;
|
||||
in ...</programlisting>
|
||||
</para>
|
||||
|
||||
</section>
|
||||
|
||||
<section xml:id="sec-pkg-override">
|
||||
<title><pkg>.override</title>
|
||||
|
||||
@ -91,12 +31,12 @@
|
||||
Example usages:
|
||||
|
||||
<programlisting>pkgs.foo.override { arg1 = val1; arg2 = val2; ... }</programlisting>
|
||||
<programlisting>pkgs.overridePackages (self: super: {
|
||||
<programlisting>import pkgs.path { overlays = [ (self: super: {
|
||||
foo = super.foo.override { barSupport = true ; };
|
||||
})</programlisting>
|
||||
})]};</programlisting>
|
||||
<programlisting>mypkg = pkgs.callPackage ./mypkg.nix {
|
||||
mydep = pkgs.mydep.override { ... };
|
||||
})</programlisting>
|
||||
}</programlisting>
|
||||
</para>
|
||||
|
||||
<para>
|
||||
|
@ -737,18 +737,18 @@ in (pkgs.python35.override {inherit packageOverrides;}).withPackages (ps: [ps.bl
|
||||
```
|
||||
The requested package `blaze` depends on `pandas` which itself depends on `scipy`.
|
||||
|
||||
If you want the whole of Nixpkgs to use your modifications, then you can use `pkgs.overridePackages`
|
||||
If you want the whole of Nixpkgs to use your modifications, then you can use `overlays`
|
||||
as explained in this manual. In the following example we build a `inkscape` using a different version of `numpy`.
|
||||
```
|
||||
let
|
||||
pkgs = import <nixpkgs> {};
|
||||
newpkgs = pkgs.overridePackages ( pkgsself: pkgssuper: {
|
||||
newpkgs = import pkgs.path { overlays = [ (pkgsself: pkgssuper: {
|
||||
python27 = let
|
||||
packageOverrides = self: super: {
|
||||
numpy = super.numpy_1_10;
|
||||
};
|
||||
in pkgssuper.python27.override {inherit packageOverrides;};
|
||||
} );
|
||||
} ) ]; };
|
||||
in newpkgs.inkscape
|
||||
```
|
||||
|
||||
@ -804,6 +804,55 @@ If you want to create a Python environment for development, then the recommended
|
||||
method is to use `nix-shell`, either with or without the `python.buildEnv`
|
||||
function.
|
||||
|
||||
### How to consume python modules using pip in a virtualenv like I am used to on other Operating Systems ?
|
||||
|
||||
This is an example of a `default.nix` for a `nix-shell`, which allows to consume a `virtualenv` environment,
|
||||
and install python modules through `pip` the traditional way.
|
||||
|
||||
Create this `default.nix` file, together with a `requirements.txt` and simply execute `nix-shell`.
|
||||
|
||||
```
|
||||
with import <nixpkgs> {};
|
||||
with pkgs.python27Packages;
|
||||
|
||||
stdenv.mkDerivation {
|
||||
name = "impurePythonEnv";
|
||||
buildInputs = [
|
||||
# these packages are required for virtualenv and pip to work:
|
||||
#
|
||||
python27Full
|
||||
python27Packages.virtualenv
|
||||
python27Packages.pip
|
||||
# the following packages are related to the dependencies of your python
|
||||
# project.
|
||||
# In this particular example the python modules listed in the
|
||||
# requirements.tx require the following packages to be installed locally
|
||||
# in order to compile any binary extensions they may require.
|
||||
#
|
||||
taglib
|
||||
openssl
|
||||
git
|
||||
libxml2
|
||||
libxslt
|
||||
libzip
|
||||
stdenv
|
||||
zlib ];
|
||||
src = null;
|
||||
shellHook = ''
|
||||
# set SOURCE_DATE_EPOCH so that we can use python wheels
|
||||
SOURCE_DATE_EPOCH=$(date +%s)
|
||||
virtualenv --no-setuptools venv
|
||||
export PATH=$PWD/venv/bin:$PATH
|
||||
pip install -r requirements.txt
|
||||
'';
|
||||
}
|
||||
```
|
||||
|
||||
Note that the `pip install` is an imperative action. So every time `nix-shell`
|
||||
is executed it will attempt to download the python modules listed in
|
||||
requirements.txt. However these will be cached locally within the `virtualenv`
|
||||
folder and not downloaded again.
|
||||
|
||||
|
||||
## Contributing
|
||||
|
||||
|
@ -18,6 +18,7 @@
|
||||
<xi:include href="meta.xml" />
|
||||
<xi:include href="languages-frameworks/index.xml" />
|
||||
<xi:include href="package-notes.xml" />
|
||||
<xi:include href="overlays.xml" />
|
||||
<xi:include href="coding-conventions.xml" />
|
||||
<xi:include href="submitting-changes.xml" />
|
||||
<xi:include href="reviewing-contributions.xml" />
|
||||
|
99
doc/overlays.xml
Normal file
99
doc/overlays.xml
Normal file
@ -0,0 +1,99 @@
|
||||
<chapter xmlns="http://docbook.org/ns/docbook"
|
||||
xmlns:xlink="http://www.w3.org/1999/xlink"
|
||||
xml:id="chap-overlays">
|
||||
|
||||
<title>Overlays</title>
|
||||
|
||||
<para>This chapter describes how to extend and change Nixpkgs packages using
|
||||
overlays. Overlays are used to add layers in the fix-point used by Nixpkgs
|
||||
to compose the set of all packages.</para>
|
||||
|
||||
<!--============================================================-->
|
||||
|
||||
<section xml:id="sec-overlays-install">
|
||||
<title>Installing Overlays</title>
|
||||
|
||||
<para>The set of overlays is looked for in the following places. The
|
||||
first one present is considered, and all the rest are ignored:
|
||||
|
||||
<orderedlist>
|
||||
|
||||
<listitem>
|
||||
|
||||
<para>As an argument of the imported attribute set. When importing Nixpkgs,
|
||||
the <varname>overlays</varname> attribute argument can be set to a list of
|
||||
functions, which is described in <xref linkend="sec-overlays-layout"/>.</para>
|
||||
|
||||
</listitem>
|
||||
|
||||
<listitem>
|
||||
|
||||
<para>In the directory pointed by the environment variable
|
||||
<varname>NIXPKGS_OVERLAYS</varname>.</para>
|
||||
</listitem>
|
||||
|
||||
<listitem>
|
||||
|
||||
<para>In the directory <filename>~/.nixpkgs/overlays/</filename>.</para>
|
||||
</listitem>
|
||||
|
||||
</orderedlist>
|
||||
</para>
|
||||
|
||||
<para>For the second and third options, the directory should contain Nix expressions defining the
|
||||
overlays. Each overlay can be a file, a directory containing a
|
||||
<filename>default.nix</filename>, or a symlink to one of those. The expressions should follow
|
||||
the syntax described in <xref linkend="sec-overlays-layout"/>.</para>
|
||||
|
||||
<para>The order of the overlay layers can influence the recipe of packages if multiple layers override
|
||||
the same recipe. In the case where overlays are loaded from a directory, they are loaded in
|
||||
alphabetical order.</para>
|
||||
|
||||
<para>To install an overlay using the last option, you can clone the overlay's repository and add
|
||||
a symbolic link to it in <filename>~/.nixpkgs/overlays/</filename> directory.</para>
|
||||
|
||||
</section>
|
||||
|
||||
<!--============================================================-->
|
||||
|
||||
<section xml:id="sec-overlays-layout">
|
||||
<title>Overlays Layout</title>
|
||||
|
||||
<para>Overlays are expressed as Nix functions which accept 2 arguments and return a set of
|
||||
packages.</para>
|
||||
|
||||
<programlisting>
|
||||
self: super:
|
||||
|
||||
{
|
||||
boost = super.boost.override {
|
||||
python = self.python3;
|
||||
};
|
||||
rr = super.callPackage ./pkgs/rr {
|
||||
stdenv = self.stdenv_32bit;
|
||||
};
|
||||
}
|
||||
</programlisting>
|
||||
|
||||
<para>The first argument, usually named <varname>self</varname>, corresponds to the final package
|
||||
set. You should use this set for the dependencies of all packages specified in your
|
||||
overlay. For example, all the dependencies of <varname>rr</varname> in the example above come
|
||||
from <varname>self</varname>, as well as the overriden dependencies used in the
|
||||
<varname>boost</varname> override.</para>
|
||||
|
||||
<para>The second argument, usually named <varname>super</varname>,
|
||||
corresponds to the result of the evaluation of the previous stages of
|
||||
Nixpkgs. It does not contain any of the packages added by the current
|
||||
overlay nor any of the following overlays. This set should be used either
|
||||
to refer to packages you wish to override, or to access functions defined
|
||||
in Nixpkgs. For example, the original recipe of <varname>boost</varname>
|
||||
in the above example, comes from <varname>super</varname>, as well as the
|
||||
<varname>callPackage</varname> function.</para>
|
||||
|
||||
<para>The value returned by this function should be a set similar to
|
||||
<filename>pkgs/top-level/all-packages.nix</filename>, which contains
|
||||
overridden and/or new packages.</para>
|
||||
|
||||
</section>
|
||||
|
||||
</chapter>
|
@ -221,6 +221,7 @@
|
||||
joamaki = "Jussi Maki <joamaki@gmail.com>";
|
||||
joelmo = "Joel Moberg <joel.moberg@gmail.com>";
|
||||
joelteon = "Joel Taylor <me@joelt.io>";
|
||||
johbo = "Johannes Bornhold <johannes@bornhold.name>";
|
||||
joko = "Ioannis Koutras <ioannis.koutras@gmail.com>";
|
||||
jonafato = "Jon Banafato <jon@jonafato.com>";
|
||||
jpbernardy = "Jean-Philippe Bernardy <jeanphilippe.bernardy@gmail.com>";
|
||||
@ -247,6 +248,7 @@
|
||||
ldesgoui = "Lucas Desgouilles <ldesgoui@gmail.com>";
|
||||
league = "Christopher League <league@contrapunctus.net>";
|
||||
lebastr = "Alexander Lebedev <lebastr@gmail.com>";
|
||||
leemachin = "Lee Machin <me@mrl.ee>";
|
||||
leenaars = "Michiel Leenaars <ml.software@leenaa.rs>";
|
||||
leonardoce = "Leonardo Cecchi <leonardo.cecchi@gmail.com>";
|
||||
lethalman = "Luca Bruno <lucabru@src.gnome.org>";
|
||||
|
@ -11,7 +11,9 @@ has the following highlights: </para>
|
||||
|
||||
<itemizedlist>
|
||||
<listitem>
|
||||
<para></para>
|
||||
<para>Nixpkgs is now extensible through overlays. See the <link
|
||||
xlink:href="https://nixos.org/nixpkgs/manual/#sec-overlays-install">Nixpkgs
|
||||
manual</link> for more information.</para>
|
||||
</listitem>
|
||||
</itemizedlist>
|
||||
|
||||
@ -28,6 +30,14 @@ has the following highlights: </para>
|
||||
following incompatible changes:</para>
|
||||
|
||||
<itemizedlist>
|
||||
<listitem>
|
||||
<para>
|
||||
<literal>stdenv.overrides</literal> is now expected to take <literal>self</literal>
|
||||
and <literal>super</literal> arguments. See <literal>lib.trivial.extends</literal>
|
||||
for what those parameters represent.
|
||||
</para>
|
||||
</listitem>
|
||||
|
||||
<listitem>
|
||||
<para>
|
||||
<literal>gnome</literal> alias has been removed along with
|
||||
@ -88,6 +98,32 @@ following incompatible changes:</para>
|
||||
<literal>networking.timeServers</literal>.
|
||||
</para>
|
||||
</listitem>
|
||||
|
||||
<listitem>
|
||||
|
||||
<para><literal>overridePackages</literal> function no longer exists.
|
||||
It is replaced by <link
|
||||
xlink:href="https://nixos.org/nixpkgs/manual/#sec-overlays-install">
|
||||
overlays</link>. For example, the following code:
|
||||
|
||||
<programlisting>
|
||||
let
|
||||
pkgs = import <nixpkgs> {};
|
||||
in
|
||||
pkgs.overridePackages (self: super: ...)
|
||||
</programlisting>
|
||||
|
||||
should be replaced by:
|
||||
|
||||
<programlisting>
|
||||
let
|
||||
pkgs = import <nixpkgs> {};
|
||||
in
|
||||
import pkgs.path { overlays = [(self: super: ...)] }
|
||||
</programlisting>
|
||||
|
||||
</para>
|
||||
</listitem>
|
||||
</itemizedlist>
|
||||
|
||||
|
||||
|
@ -19,7 +19,7 @@ rm -f ec2-amis.nix
|
||||
|
||||
types="hvm pv"
|
||||
stores="ebs s3"
|
||||
regions="eu-west-1 eu-central-1 us-east-1 us-east-2 us-west-1 us-west-2 ap-southeast-1 ap-southeast-2 ap-northeast-1 ap-northeast-2 sa-east-1 ap-south-1"
|
||||
regions="eu-west-1 eu-west-2 eu-central-1 us-east-1 us-east-2 us-west-1 us-west-2 ap-southeast-1 ap-southeast-2 ap-northeast-1 ap-northeast-2 sa-east-1 ap-south-1"
|
||||
|
||||
for type in $types; do
|
||||
link=$stateDir/$type
|
||||
|
@ -160,6 +160,13 @@ in {
|
||||
if activated.
|
||||
'';
|
||||
};
|
||||
|
||||
config = mkOption {
|
||||
type = types.attrsOf types.unspecified;
|
||||
default = {};
|
||||
description = ''Config of the pulse daemon. See <literal>man pulse-daemon.conf</literal>.'';
|
||||
example = literalExample ''{ flat-volumes = "no"; }'';
|
||||
};
|
||||
};
|
||||
|
||||
zeroconf = {
|
||||
@ -204,10 +211,13 @@ in {
|
||||
(mkIf cfg.enable {
|
||||
environment.systemPackages = [ overriddenPackage ];
|
||||
|
||||
environment.etc = singleton {
|
||||
target = "asound.conf";
|
||||
source = alsaConf;
|
||||
};
|
||||
environment.etc = [
|
||||
{ target = "asound.conf";
|
||||
source = alsaConf; }
|
||||
|
||||
{ target = "pulse/daemon.conf";
|
||||
source = writeText "daemon.conf" (lib.generators.toKeyValue {} cfg.daemon.config); }
|
||||
];
|
||||
|
||||
# Allow PulseAudio to get realtime priority using rtkit.
|
||||
security.rtkit.enable = true;
|
||||
|
40
nixos/modules/hardware/ckb.nix
Normal file
40
nixos/modules/hardware/ckb.nix
Normal file
@ -0,0 +1,40 @@
|
||||
{ config, lib, pkgs, ... }:
|
||||
|
||||
with lib;
|
||||
|
||||
let
|
||||
cfg = config.hardware.ckb;
|
||||
|
||||
in
|
||||
{
|
||||
options.hardware.ckb = {
|
||||
enable = mkEnableOption "the Corsair keyboard/mouse driver";
|
||||
|
||||
package = mkOption {
|
||||
type = types.package;
|
||||
default = pkgs.ckb;
|
||||
defaultText = "pkgs.ckb";
|
||||
description = ''
|
||||
The package implementing the Corsair keyboard/mouse driver.
|
||||
'';
|
||||
};
|
||||
};
|
||||
|
||||
config = mkIf cfg.enable {
|
||||
environment.systemPackages = [ cfg.package ];
|
||||
|
||||
systemd.services.ckb = {
|
||||
description = "Corsair Keyboard Daemon";
|
||||
wantedBy = ["multi-user.target"];
|
||||
script = "${cfg.package}/bin/ckb-daemon";
|
||||
serviceConfig = {
|
||||
Restart = "always";
|
||||
StandardOutput = "syslog";
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
meta = {
|
||||
maintainers = with lib.maintainers; [ kierdavis ];
|
||||
};
|
||||
}
|
@ -1,5 +1,5 @@
|
||||
{
|
||||
x86_64-linux = "/nix/store/m8z91vpfxyszhjpq4wl8m1zwlqik4fkn-nix-1.11.5";
|
||||
i686-linux = "/nix/store/vk71likl32igqg6apqsj52ln3vhkq1pa-nix-1.11.5";
|
||||
x86_64-darwin = "/nix/store/qfwm0b5qkr8v8gsv9dh2z3arky9p1myg-nix-1.11.5";
|
||||
x86_64-linux = "/nix/store/qdkzm17csr24snk247a1s0c47ikq5sl6-nix-1.11.6";
|
||||
i686-linux = "/nix/store/hiwp53747lxlniqy5wpbql5izjrs8z0z-nix-1.11.6";
|
||||
x86_64-darwin = "/nix/store/hca2hqcvwncf23hiqyqgwbsdy8vvl9xv-nix-1.11.6";
|
||||
}
|
||||
|
@ -282,6 +282,7 @@
|
||||
infinoted = 264;
|
||||
keystone = 265;
|
||||
glance = 266;
|
||||
couchpotato = 267;
|
||||
|
||||
# When adding a uid, make sure it doesn't match an existing gid. And don't use uids above 399!
|
||||
|
||||
@ -534,6 +535,7 @@
|
||||
infinoted = 264;
|
||||
keystone = 265;
|
||||
glance = 266;
|
||||
couchpotato = 267;
|
||||
|
||||
# When adding a gid, make sure it doesn't match an existing
|
||||
# uid. Users and groups with the same name should have equal
|
||||
|
@ -29,11 +29,19 @@ let
|
||||
};
|
||||
|
||||
configType = mkOptionType {
|
||||
name = "nixpkgs config";
|
||||
name = "nixpkgs-config";
|
||||
description = "nixpkgs config";
|
||||
check = traceValIfNot isConfig;
|
||||
merge = args: fold (def: mergeConfig def.value) {};
|
||||
};
|
||||
|
||||
overlayType = mkOptionType {
|
||||
name = "nixpkgs-overlay";
|
||||
description = "nixpkgs overlay";
|
||||
check = builtins.isFunction;
|
||||
merge = lib.mergeOneOption;
|
||||
};
|
||||
|
||||
in
|
||||
|
||||
{
|
||||
@ -43,23 +51,37 @@ in
|
||||
default = {};
|
||||
example = literalExample
|
||||
''
|
||||
{ firefox.enableGeckoMediaPlayer = true;
|
||||
packageOverrides = pkgs: {
|
||||
firefox60Pkgs = pkgs.firefox60Pkgs.override {
|
||||
enableOfficialBranding = true;
|
||||
};
|
||||
};
|
||||
}
|
||||
{ firefox.enableGeckoMediaPlayer = true; }
|
||||
'';
|
||||
type = configType;
|
||||
description = ''
|
||||
The configuration of the Nix Packages collection. (For
|
||||
details, see the Nixpkgs documentation.) It allows you to set
|
||||
package configuration options, and to override packages
|
||||
globally through the <varname>packageOverrides</varname>
|
||||
option. The latter is a function that takes as an argument
|
||||
the <emphasis>original</emphasis> Nixpkgs, and must evaluate
|
||||
to a set of new or overridden packages.
|
||||
package configuration options.
|
||||
'';
|
||||
};
|
||||
|
||||
nixpkgs.overlays = mkOption {
|
||||
default = [];
|
||||
example = literalExample
|
||||
''
|
||||
[ (self: super: {
|
||||
openssh = super.openssh.override {
|
||||
hpnSupport = true;
|
||||
withKerberos = true;
|
||||
kerberos = self.libkrb5;
|
||||
};
|
||||
};
|
||||
) ]
|
||||
'';
|
||||
type = types.listOf overlayType;
|
||||
description = ''
|
||||
List of overlays to use with the Nix Packages collection.
|
||||
(For details, see the Nixpkgs documentation.) It allows
|
||||
you to override packages globally. This is a function that
|
||||
takes as an argument the <emphasis>original</emphasis> Nixpkgs.
|
||||
The first argument should be used for finding dependencies, and
|
||||
the second should be used for overriding recipes.
|
||||
'';
|
||||
};
|
||||
|
||||
|
@ -26,6 +26,7 @@
|
||||
./config/vpnc.nix
|
||||
./config/zram.nix
|
||||
./hardware/all-firmware.nix
|
||||
./hardware/ckb.nix
|
||||
./hardware/cpu/amd-microcode.nix
|
||||
./hardware/cpu/intel-microcode.nix
|
||||
./hardware/ksm.nix
|
||||
@ -66,6 +67,7 @@
|
||||
./programs/bash/bash.nix
|
||||
./programs/blcr.nix
|
||||
./programs/cdemu.nix
|
||||
./programs/chromium.nix
|
||||
./programs/command-not-found/command-not-found.nix
|
||||
./programs/dconf.nix
|
||||
./programs/environment.nix
|
||||
@ -241,6 +243,7 @@
|
||||
./services/misc/cpuminer-cryptonight.nix
|
||||
./services/misc/cgminer.nix
|
||||
./services/misc/confd.nix
|
||||
./services/misc/couchpotato.nix
|
||||
./services/misc/devmon.nix
|
||||
./services/misc/dictd.nix
|
||||
./services/misc/dysnomia.nix
|
||||
@ -294,6 +297,7 @@
|
||||
./services/misc/uhub.nix
|
||||
./services/misc/zookeeper.nix
|
||||
./services/monitoring/apcupsd.nix
|
||||
./services/monitoring/arbtt.nix
|
||||
./services/monitoring/bosun.nix
|
||||
./services/monitoring/cadvisor.nix
|
||||
./services/monitoring/collectd.nix
|
||||
|
85
nixos/modules/programs/chromium.nix
Normal file
85
nixos/modules/programs/chromium.nix
Normal file
@ -0,0 +1,85 @@
|
||||
{ config, lib, ... }:
|
||||
|
||||
with lib;
|
||||
|
||||
let
|
||||
cfg = config.programs.chromium;
|
||||
|
||||
defaultProfile = filterAttrs (k: v: v != null) {
|
||||
HomepageLocation = cfg.homepageLocation;
|
||||
DefaultSearchProviderSearchURL = cfg.defaultSearchProviderSearchURL;
|
||||
DefaultSearchProviderSuggestURL = cfg.defaultSearchProviderSuggestURL;
|
||||
ExtensionInstallForcelist = map (extension:
|
||||
"${extension};https://clients2.google.com/service/update2/crx"
|
||||
) cfg.extensions;
|
||||
};
|
||||
in
|
||||
|
||||
{
|
||||
###### interface
|
||||
|
||||
options = {
|
||||
programs.chromium = {
|
||||
enable = mkEnableOption "<command>chromium</command> policies";
|
||||
|
||||
extensions = mkOption {
|
||||
type = types.listOf types.str;
|
||||
description = ''
|
||||
List of chromium extensions to install.
|
||||
For list of plugins ids see id in url of extensions on
|
||||
<link xlink:href="https://chrome.google.com/webstore/category/extensions">chrome web store</link>
|
||||
page.
|
||||
'';
|
||||
default = [];
|
||||
example = literalExample ''
|
||||
[
|
||||
"chlffgpmiacpedhhbkiomidkjlcfhogd" # pushbullet
|
||||
"mbniclmhobmnbdlbpiphghaielnnpgdp" # lightshot
|
||||
"gcbommkclmclpchllfjekcdonpmejbdp" # https everywhere
|
||||
]
|
||||
'';
|
||||
};
|
||||
|
||||
homepageLocation = mkOption {
|
||||
type = types.nullOr types.str;
|
||||
description = "Chromium default homepage";
|
||||
default = null;
|
||||
example = "https://nixos.org";
|
||||
};
|
||||
|
||||
defaultSearchProviderSearchURL = mkOption {
|
||||
type = types.nullOr types.str;
|
||||
description = "Chromium default search provider url.";
|
||||
default = null;
|
||||
example =
|
||||
"https://encrypted.google.com/search?q={searchTerms}&{google:RLZ}{google:originalQueryForSuggestion}{google:assistedQueryStats}{google:searchFieldtrialParameter}{google:
|
||||
↪searchClient}{google:sourceId}{google:instantExtendedEnabledParameter}ie={inputEncoding}";
|
||||
};
|
||||
|
||||
defaultSearchProviderSuggestURL = mkOption {
|
||||
type = types.nullOr types.str;
|
||||
description = "Chromium default search provider url for suggestions.";
|
||||
default = null;
|
||||
example =
|
||||
"https://encrypted.google.com/complete/search?output=chrome&q={searchTerms}";
|
||||
};
|
||||
|
||||
extraOpts = mkOption {
|
||||
type = types.attrs;
|
||||
description = ''
|
||||
Extra chromium policy options, see
|
||||
<link xlink:href="https://www.chromium.org/administrators/policy-list-3">https://www.chromium.org/administrators/policy-list-3</link>
|
||||
for a list of avalible options
|
||||
'';
|
||||
default = {};
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
###### implementation
|
||||
|
||||
config = lib.mkIf cfg.enable {
|
||||
environment.etc."chromium/policies/managed/default.json".text = builtins.toJSON defaultProfile;
|
||||
environment.etc."chromium/policies/managed/extra.json".text = builtins.toJSON cfg.extraOpts;
|
||||
};
|
||||
}
|
@ -1,4 +1,4 @@
|
||||
{ config, lib, ... }:
|
||||
{ config, lib, pkgs, ... }:
|
||||
|
||||
let
|
||||
cfg = config.programs.nano;
|
||||
@ -20,16 +20,22 @@ in
|
||||
example = ''
|
||||
set nowrap
|
||||
set tabstospaces
|
||||
set tabsize 4
|
||||
set tabsize 2
|
||||
'';
|
||||
};
|
||||
syntaxHighlight = lib.mkOption {
|
||||
type = lib.types.bool;
|
||||
default = true;
|
||||
description = "Whether to enable syntax highlight for various languages.";
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
###### implementation
|
||||
|
||||
config = lib.mkIf (cfg.nanorc != "") {
|
||||
environment.etc."nanorc".text = cfg.nanorc;
|
||||
environment.etc."nanorc".text = lib.concatStrings [ cfg.nanorc
|
||||
(lib.optionalString cfg.syntaxHighlight ''include "${pkgs.nano}/share/nano/*.nanorc"'') ];
|
||||
};
|
||||
|
||||
}
|
||||
|
@ -91,6 +91,13 @@ in
|
||||
'';
|
||||
type = types.bool;
|
||||
};
|
||||
|
||||
enableAutosuggestions = mkOption {
|
||||
default = false;
|
||||
description = ''
|
||||
Enable zsh-autosuggestions
|
||||
'';
|
||||
};
|
||||
|
||||
};
|
||||
|
||||
@ -116,11 +123,6 @@ in
|
||||
|
||||
setopt HIST_IGNORE_DUPS SHARE_HISTORY HIST_FCNTL_LOCK
|
||||
|
||||
${cfge.interactiveShellInit}
|
||||
|
||||
${cfg.promptInit}
|
||||
${zshAliases}
|
||||
|
||||
# Tell zsh how to find installed completions
|
||||
for p in ''${(z)NIX_PROFILES}; do
|
||||
fpath+=($p/share/zsh/site-functions $p/share/zsh/$ZSH_VERSION/functions)
|
||||
@ -132,6 +134,16 @@ in
|
||||
"source ${pkgs.zsh-syntax-highlighting}/share/zsh-syntax-highlighting/zsh-syntax-highlighting.zsh"
|
||||
}
|
||||
|
||||
${optionalString (cfg.enableAutosuggestions)
|
||||
"source ${pkgs.zsh-autosuggestions}/share/zsh-autosuggestions/zsh-autosuggestions.zsh"
|
||||
}
|
||||
|
||||
${zshAliases}
|
||||
${cfg.promptInit}
|
||||
|
||||
${cfge.interactiveShellInit}
|
||||
|
||||
|
||||
HELPDIR="${pkgs.zsh}/share/zsh/$ZSH_VERSION/help"
|
||||
'';
|
||||
|
||||
|
@ -164,6 +164,9 @@ with lib;
|
||||
else { addr = value inetAddr; port = value inetPort; }
|
||||
))
|
||||
|
||||
# dhcpd
|
||||
(mkRenamedOptionModule [ "services" "dhcpd" ] [ "services" "dhcpd4" ])
|
||||
|
||||
# Options that are obsolete and have no replacement.
|
||||
(mkRemovedOptionModule [ "boot" "initrd" "luks" "enable" ] "")
|
||||
(mkRemovedOptionModule [ "programs" "bash" "enable" ] "")
|
||||
|
@ -18,22 +18,30 @@ in
|
||||
default = [];
|
||||
description = "List of files containing AppArmor profiles.";
|
||||
};
|
||||
packages = mkOption {
|
||||
type = types.listOf types.package;
|
||||
default = [];
|
||||
description = "List of packages to be added to apparmor's include path";
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
config = mkIf cfg.enable {
|
||||
environment.systemPackages = [ pkgs.apparmor-utils ];
|
||||
|
||||
systemd.services.apparmor = {
|
||||
systemd.services.apparmor = let
|
||||
paths = concatMapStrings (s: " -I ${s}/etc/apparmor.d")
|
||||
([ pkgs.apparmor-profiles ] ++ cfg.packages);
|
||||
in {
|
||||
wantedBy = [ "local-fs.target" ];
|
||||
serviceConfig = {
|
||||
Type = "oneshot";
|
||||
RemainAfterExit = "yes";
|
||||
ExecStart = concatMapStrings (p:
|
||||
''${pkgs.apparmor-parser}/bin/apparmor_parser -rKv -I ${pkgs.apparmor-profiles}/etc/apparmor.d "${p}" ; ''
|
||||
ExecStart = map (p:
|
||||
''${pkgs.apparmor-parser}/bin/apparmor_parser -rKv ${paths} "${p}"''
|
||||
) cfg.profiles;
|
||||
ExecStop = concatMapStrings (p:
|
||||
''${pkgs.apparmor-parser}/bin/apparmor_parser -Rv "${p}" ; ''
|
||||
ExecStop = map (p:
|
||||
''${pkgs.apparmor-parser}/bin/apparmor_parser -Rv "${p}"''
|
||||
) cfg.profiles;
|
||||
};
|
||||
};
|
||||
|
@ -737,6 +737,8 @@ in {
|
||||
wantedBy = [ "multi-user.target" ];
|
||||
after = [ "kube-apiserver.service" ];
|
||||
serviceConfig = {
|
||||
RestartSec = "30s";
|
||||
Restart = "on-failure";
|
||||
ExecStart = ''${cfg.package}/bin/kube-controller-manager \
|
||||
--address=${cfg.controllerManager.address} \
|
||||
--port=${toString cfg.controllerManager.port} \
|
||||
|
@ -143,7 +143,10 @@ let
|
||||
done
|
||||
|
||||
echo "Generating hwdb database..."
|
||||
${udev}/bin/udevadm hwdb --update --root=$(pwd)
|
||||
# hwdb --update doesn't return error code even on errors!
|
||||
res="$(${udev}/bin/udevadm hwdb --update --root=$(pwd) 2>&1)"
|
||||
echo "$res"
|
||||
[ -z "$(echo "$res" | egrep '^Error')" ]
|
||||
mv etc/udev/hwdb.bin $out
|
||||
'';
|
||||
|
||||
|
@ -241,6 +241,9 @@ in
|
||||
RuntimeDirectory = [ "dovecot2" ];
|
||||
};
|
||||
|
||||
# When copying sieve scripts preserve the original time stamp
|
||||
# (should be 0) so that the compiled sieve script is newer than
|
||||
# the source file and Dovecot won't try to compile it.
|
||||
preStart = ''
|
||||
rm -rf ${stateDir}/sieve
|
||||
'' + optionalString (cfg.sieveScripts != {}) ''
|
||||
@ -248,11 +251,11 @@ in
|
||||
${concatStringsSep "\n" (mapAttrsToList (to: from: ''
|
||||
if [ -d '${from}' ]; then
|
||||
mkdir '${stateDir}/sieve/${to}'
|
||||
cp "${from}/"*.sieve '${stateDir}/sieve/${to}'
|
||||
cp -p "${from}/"*.sieve '${stateDir}/sieve/${to}'
|
||||
else
|
||||
cp '${from}' '${stateDir}/sieve/${to}'
|
||||
cp -p '${from}' '${stateDir}/sieve/${to}'
|
||||
fi
|
||||
${pkgs.dovecot_pigeonhole}/bin/sievec '${stateDir}/sieve/${to}'
|
||||
${pkgs.dovecot_pigeonhole}/bin/sievec '${stateDir}/sieve/${to}'
|
||||
'') cfg.sieveScripts)}
|
||||
chown -R '${cfg.mailUser}:${cfg.mailGroup}' '${stateDir}/sieve'
|
||||
'';
|
||||
|
50
nixos/modules/services/misc/couchpotato.nix
Normal file
50
nixos/modules/services/misc/couchpotato.nix
Normal file
@ -0,0 +1,50 @@
|
||||
{ config, pkgs, lib, ... }:
|
||||
|
||||
with lib;
|
||||
|
||||
let
|
||||
cfg = config.services.couchpotato;
|
||||
|
||||
in
|
||||
{
|
||||
options = {
|
||||
services.couchpotato = {
|
||||
enable = mkEnableOption "CouchPotato Server";
|
||||
};
|
||||
};
|
||||
|
||||
config = mkIf cfg.enable {
|
||||
systemd.services.couchpotato = {
|
||||
description = "CouchPotato Server";
|
||||
after = [ "network.target" ];
|
||||
wantedBy = [ "multi-user.target" ];
|
||||
|
||||
preStart = ''
|
||||
mkdir -p /var/lib/couchpotato
|
||||
chown -R couchpotato:couchpotato /var/lib/couchpotato
|
||||
'';
|
||||
|
||||
serviceConfig = {
|
||||
Type = "simple";
|
||||
User = "couchpotato";
|
||||
Group = "couchpotato";
|
||||
PermissionsStartOnly = "true";
|
||||
ExecStart = "${pkgs.couchpotato}/bin/couchpotato";
|
||||
Restart = "on-failure";
|
||||
};
|
||||
};
|
||||
|
||||
users.extraUsers = singleton
|
||||
{ name = "couchpotato";
|
||||
group = "couchpotato";
|
||||
home = "/var/lib/couchpotato/";
|
||||
description = "CouchPotato daemon user";
|
||||
uid = config.ids.uids.couchpotato;
|
||||
};
|
||||
|
||||
users.extraGroups = singleton
|
||||
{ name = "couchpotato";
|
||||
gid = config.ids.gids.couchpotato;
|
||||
};
|
||||
};
|
||||
}
|
63
nixos/modules/services/monitoring/arbtt.nix
Normal file
63
nixos/modules/services/monitoring/arbtt.nix
Normal file
@ -0,0 +1,63 @@
|
||||
{ config, lib, pkgs, ... }:
|
||||
|
||||
with lib;
|
||||
|
||||
let
|
||||
cfg = config.services.arbtt;
|
||||
in {
|
||||
options = {
|
||||
services.arbtt = {
|
||||
enable = mkOption {
|
||||
type = types.bool;
|
||||
default = false;
|
||||
example = true;
|
||||
description = ''
|
||||
Enable the arbtt statistics capture service.
|
||||
'';
|
||||
};
|
||||
|
||||
package = mkOption {
|
||||
type = types.package;
|
||||
default = pkgs.haskellPackages.arbtt;
|
||||
defaultText = "pkgs.haskellPackages.arbtt";
|
||||
example = literalExample "pkgs.haskellPackages.arbtt";
|
||||
description = ''
|
||||
The package to use for the arbtt binaries.
|
||||
'';
|
||||
};
|
||||
|
||||
logFile = mkOption {
|
||||
type = types.str;
|
||||
default = "%h/.arbtt/capture.log";
|
||||
example = "/home/username/.arbtt-capture.log";
|
||||
description = ''
|
||||
The log file for captured samples.
|
||||
'';
|
||||
};
|
||||
|
||||
sampleRate = mkOption {
|
||||
type = types.int;
|
||||
default = 60;
|
||||
example = 120;
|
||||
description = ''
|
||||
The sampling interval in seconds.
|
||||
'';
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
config = mkIf cfg.enable {
|
||||
systemd.user.services.arbtt = {
|
||||
description = "arbtt statistics capture service";
|
||||
wantedBy = [ "multi-user.target" ];
|
||||
|
||||
serviceConfig = {
|
||||
Type = "simple";
|
||||
ExecStart = "${cfg.package}/bin/arbtt-capture --logfile=${cfg.logFile} --sample-rate=${toString cfg.sampleRate}";
|
||||
Restart = "always";
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
meta.maintainers = [ maintainers.michaelpj ];
|
||||
}
|
@ -5,6 +5,10 @@ with lib;
|
||||
let
|
||||
cfg = config.services.prometheus.alertmanager;
|
||||
mkConfigFile = pkgs.writeText "alertmanager.yml" (builtins.toJSON cfg.configuration);
|
||||
alertmanagerYml =
|
||||
if cfg.configText != null then
|
||||
pkgs.writeText "alertmanager.yml" cfg.configText
|
||||
else mkConfigFile;
|
||||
in {
|
||||
options = {
|
||||
services.prometheus.alertmanager = {
|
||||
@ -34,6 +38,17 @@ in {
|
||||
'';
|
||||
};
|
||||
|
||||
configText = mkOption {
|
||||
type = types.nullOr types.lines;
|
||||
default = null;
|
||||
description = ''
|
||||
Alertmanager configuration as YAML text. If non-null, this option
|
||||
defines the text that is written to alertmanager.yml. If null, the
|
||||
contents of alertmanager.yml is generated from the structured config
|
||||
options.
|
||||
'';
|
||||
};
|
||||
|
||||
logFormat = mkOption {
|
||||
type = types.nullOr types.str;
|
||||
default = null;
|
||||
@ -96,7 +111,7 @@ in {
|
||||
after = [ "network.target" ];
|
||||
script = ''
|
||||
${pkgs.prometheus-alertmanager.bin}/bin/alertmanager \
|
||||
-config.file ${mkConfigFile} \
|
||||
-config.file ${alertmanagerYml} \
|
||||
-web.listen-address ${cfg.listenAddress}:${toString cfg.port} \
|
||||
-log.level ${cfg.logLevel} \
|
||||
${optionalString (cfg.webExternalUrl != null) ''-web.external-url ${cfg.webExternalUrl} \''}
|
||||
|
@ -67,6 +67,14 @@ in
|
||||
'';
|
||||
};
|
||||
|
||||
emptyRepo = mkOption {
|
||||
type = types.bool;
|
||||
default = false;
|
||||
description = ''
|
||||
If set to true, the repo won't be initialized with help files
|
||||
'';
|
||||
};
|
||||
|
||||
extraFlags = mkOption {
|
||||
type = types.listOf types.str;
|
||||
description = "Extra flags passed to the IPFS daemon";
|
||||
@ -103,16 +111,17 @@ in
|
||||
after = [ "network.target" "local-fs.target" ];
|
||||
path = [ pkgs.ipfs pkgs.su pkgs.bash ];
|
||||
|
||||
preStart =
|
||||
''
|
||||
install -m 0755 -o ${cfg.user} -g ${cfg.group} -d ${cfg.dataDir}
|
||||
if [[ ! -d ${cfg.dataDir}/.ipfs ]]; then
|
||||
cd ${cfg.dataDir}
|
||||
${pkgs.su}/bin/su -s ${pkgs.bash}/bin/sh ${cfg.user} -c "${ipfs}/bin/ipfs init"
|
||||
fi
|
||||
${pkgs.su}/bin/su -s ${pkgs.bash}/bin/sh ${cfg.user} -c "${ipfs}/bin/ipfs config Addresses.API ${cfg.apiAddress}"
|
||||
${pkgs.su}/bin/su -s ${pkgs.bash}/bin/sh ${cfg.user} -c "${ipfs}/bin/ipfs config Addresses.Gateway ${cfg.gatewayAddress}"
|
||||
'';
|
||||
preStart = ''
|
||||
install -m 0755 -o ${cfg.user} -g ${cfg.group} -d ${cfg.dataDir}
|
||||
if [[ ! -d ${cfg.dataDir}/.ipfs ]]; then
|
||||
cd ${cfg.dataDir}
|
||||
${pkgs.su}/bin/su -s ${pkgs.bash}/bin/sh ${cfg.user} -c \
|
||||
"${ipfs}/bin/ipfs init ${if cfg.emptyRepo then "-e" else ""}"
|
||||
fi
|
||||
${pkgs.su}/bin/su -s ${pkgs.bash}/bin/sh ${cfg.user} -c \
|
||||
"${ipfs}/bin/ipfs --local config Addresses.API ${cfg.apiAddress} && \
|
||||
${ipfs}/bin/ipfs --local config Addresses.Gateway ${cfg.gatewayAddress}"
|
||||
'';
|
||||
|
||||
serviceConfig = {
|
||||
ExecStart = "${ipfs}/bin/ipfs daemon ${ipfsFlags}";
|
||||
|
@ -132,7 +132,8 @@ in
|
||||
login=${config.services.ddclient.username}
|
||||
password=${config.services.ddclient.password}
|
||||
protocol=${config.services.ddclient.protocol}
|
||||
server=${config.services.ddclient.server}
|
||||
${let server = config.services.ddclient.server; in
|
||||
lib.optionalString (server != "") "server=${server}"}
|
||||
ssl=${if config.services.ddclient.ssl then "yes" else "no"}
|
||||
wildcard=YES
|
||||
${config.services.ddclient.domain}
|
||||
|
@ -4,11 +4,10 @@ with lib;
|
||||
|
||||
let
|
||||
|
||||
cfg = config.services.dhcpd;
|
||||
cfg4 = config.services.dhcpd4;
|
||||
cfg6 = config.services.dhcpd6;
|
||||
|
||||
stateDir = "/var/lib/dhcp"; # Don't use /var/state/dhcp; not FHS-compliant.
|
||||
|
||||
configFile = if cfg.configFile != null then cfg.configFile else pkgs.writeText "dhcpd.conf"
|
||||
writeConfig = cfg: pkgs.writeText "dhcpd.conf"
|
||||
''
|
||||
default-lease-time 600;
|
||||
max-lease-time 7200;
|
||||
@ -29,6 +28,154 @@ let
|
||||
}
|
||||
'';
|
||||
|
||||
dhcpdService = postfix: cfg: optionalAttrs cfg.enable {
|
||||
"dhcpd${postfix}" = {
|
||||
description = "DHCPv${postfix} server";
|
||||
wantedBy = [ "multi-user.target" ];
|
||||
after = [ "network.target" ];
|
||||
|
||||
preStart = ''
|
||||
mkdir -m 755 -p ${cfg.stateDir}
|
||||
touch ${cfg.stateDir}/dhcpd.leases
|
||||
'';
|
||||
|
||||
serviceConfig =
|
||||
let
|
||||
configFile = if cfg.configFile != null then cfg.configFile else writeConfig cfg;
|
||||
args = [ "@${pkgs.dhcp}/sbin/dhcpd" "dhcpd${postfix}" "-${postfix}"
|
||||
"-pf" "/run/dhcpd${postfix}/dhcpd.pid"
|
||||
"-cf" "${configFile}"
|
||||
"-lf" "${cfg.stateDir}/dhcpd.leases"
|
||||
"-user" "dhcpd" "-group" "nogroup"
|
||||
] ++ cfg.extraFlags
|
||||
++ cfg.interfaces;
|
||||
|
||||
in {
|
||||
ExecStart = concatMapStringsSep " " escapeShellArg args;
|
||||
Type = "forking";
|
||||
Restart = "always";
|
||||
RuntimeDirectory = [ "dhcpd${postfix}" ];
|
||||
PIDFile = "/run/dhcpd${postfix}/dhcpd.pid";
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
machineOpts = {...}: {
|
||||
config = {
|
||||
|
||||
hostName = mkOption {
|
||||
type = types.str;
|
||||
example = "foo";
|
||||
description = ''
|
||||
Hostname which is assigned statically to the machine.
|
||||
'';
|
||||
};
|
||||
|
||||
ethernetAddress = mkOption {
|
||||
type = types.str;
|
||||
example = "00:16:76:9a:32:1d";
|
||||
description = ''
|
||||
MAC address of the machine.
|
||||
'';
|
||||
};
|
||||
|
||||
ipAddress = mkOption {
|
||||
type = types.str;
|
||||
example = "192.168.1.10";
|
||||
description = ''
|
||||
IP address of the machine.
|
||||
'';
|
||||
};
|
||||
|
||||
};
|
||||
};
|
||||
|
||||
dhcpConfig = postfix: {
|
||||
|
||||
enable = mkOption {
|
||||
type = types.bool;
|
||||
default = false;
|
||||
description = ''
|
||||
Whether to enable the DHCPv${postfix} server.
|
||||
'';
|
||||
};
|
||||
|
||||
stateDir = mkOption {
|
||||
type = types.path;
|
||||
# We use /var/lib/dhcp for DHCPv4 to save backwards compatibility.
|
||||
default = "/var/lib/dhcp${if postfix == "4" then "" else postfix}";
|
||||
description = ''
|
||||
State directory for the DHCP server.
|
||||
'';
|
||||
};
|
||||
|
||||
extraConfig = mkOption {
|
||||
type = types.lines;
|
||||
default = "";
|
||||
example = ''
|
||||
option subnet-mask 255.255.255.0;
|
||||
option broadcast-address 192.168.1.255;
|
||||
option routers 192.168.1.5;
|
||||
option domain-name-servers 130.161.158.4, 130.161.33.17, 130.161.180.1;
|
||||
option domain-name "example.org";
|
||||
subnet 192.168.1.0 netmask 255.255.255.0 {
|
||||
range 192.168.1.100 192.168.1.200;
|
||||
}
|
||||
'';
|
||||
description = ''
|
||||
Extra text to be appended to the DHCP server configuration
|
||||
file. Currently, you almost certainly need to specify something
|
||||
there, such as the options specifying the subnet mask, DNS servers,
|
||||
etc.
|
||||
'';
|
||||
};
|
||||
|
||||
extraFlags = mkOption {
|
||||
type = types.listOf types.str;
|
||||
default = [];
|
||||
description = ''
|
||||
Additional command line flags to be passed to the dhcpd daemon.
|
||||
'';
|
||||
};
|
||||
|
||||
configFile = mkOption {
|
||||
type = types.nullOr types.path;
|
||||
default = null;
|
||||
description = ''
|
||||
The path of the DHCP server configuration file. If no file
|
||||
is specified, a file is generated using the other options.
|
||||
'';
|
||||
};
|
||||
|
||||
interfaces = mkOption {
|
||||
type = types.listOf types.str;
|
||||
default = ["eth0"];
|
||||
description = ''
|
||||
The interfaces on which the DHCP server should listen.
|
||||
'';
|
||||
};
|
||||
|
||||
machines = mkOption {
|
||||
type = types.listOf (types.submodule machineOpts);
|
||||
default = [];
|
||||
example = [
|
||||
{ hostName = "foo";
|
||||
ethernetAddress = "00:16:76:9a:32:1d";
|
||||
ipAddress = "192.168.1.10";
|
||||
}
|
||||
{ hostName = "bar";
|
||||
ethernetAddress = "00:19:d1:1d:c4:9a";
|
||||
ipAddress = "192.168.1.11";
|
||||
}
|
||||
];
|
||||
description = ''
|
||||
A list mapping Ethernet addresses to IPv${postfix} addresses for the
|
||||
DHCP server.
|
||||
'';
|
||||
};
|
||||
|
||||
};
|
||||
|
||||
in
|
||||
|
||||
{
|
||||
@ -37,85 +184,15 @@ in
|
||||
|
||||
options = {
|
||||
|
||||
services.dhcpd = {
|
||||
|
||||
enable = mkOption {
|
||||
default = false;
|
||||
description = "
|
||||
Whether to enable the DHCP server.
|
||||
";
|
||||
};
|
||||
|
||||
extraConfig = mkOption {
|
||||
type = types.lines;
|
||||
default = "";
|
||||
example = ''
|
||||
option subnet-mask 255.255.255.0;
|
||||
option broadcast-address 192.168.1.255;
|
||||
option routers 192.168.1.5;
|
||||
option domain-name-servers 130.161.158.4, 130.161.33.17, 130.161.180.1;
|
||||
option domain-name "example.org";
|
||||
subnet 192.168.1.0 netmask 255.255.255.0 {
|
||||
range 192.168.1.100 192.168.1.200;
|
||||
}
|
||||
'';
|
||||
description = "
|
||||
Extra text to be appended to the DHCP server configuration
|
||||
file. Currently, you almost certainly need to specify
|
||||
something here, such as the options specifying the subnet
|
||||
mask, DNS servers, etc.
|
||||
";
|
||||
};
|
||||
|
||||
extraFlags = mkOption {
|
||||
default = "";
|
||||
example = "-6";
|
||||
description = "
|
||||
Additional command line flags to be passed to the dhcpd daemon.
|
||||
";
|
||||
};
|
||||
|
||||
configFile = mkOption {
|
||||
default = null;
|
||||
description = "
|
||||
The path of the DHCP server configuration file. If no file
|
||||
is specified, a file is generated using the other options.
|
||||
";
|
||||
};
|
||||
|
||||
interfaces = mkOption {
|
||||
default = ["eth0"];
|
||||
description = "
|
||||
The interfaces on which the DHCP server should listen.
|
||||
";
|
||||
};
|
||||
|
||||
machines = mkOption {
|
||||
default = [];
|
||||
example = [
|
||||
{ hostName = "foo";
|
||||
ethernetAddress = "00:16:76:9a:32:1d";
|
||||
ipAddress = "192.168.1.10";
|
||||
}
|
||||
{ hostName = "bar";
|
||||
ethernetAddress = "00:19:d1:1d:c4:9a";
|
||||
ipAddress = "192.168.1.11";
|
||||
}
|
||||
];
|
||||
description = "
|
||||
A list mapping ethernet addresses to IP addresses for the
|
||||
DHCP server.
|
||||
";
|
||||
};
|
||||
|
||||
};
|
||||
services.dhcpd4 = dhcpConfig "4";
|
||||
services.dhcpd6 = dhcpConfig "6";
|
||||
|
||||
};
|
||||
|
||||
|
||||
###### implementation
|
||||
|
||||
config = mkIf config.services.dhcpd.enable {
|
||||
config = mkIf (cfg4.enable || cfg6.enable) {
|
||||
|
||||
users = {
|
||||
extraUsers.dhcpd = {
|
||||
@ -124,36 +201,7 @@ in
|
||||
};
|
||||
};
|
||||
|
||||
systemd.services.dhcpd =
|
||||
{ description = "DHCP server";
|
||||
|
||||
wantedBy = [ "multi-user.target" ];
|
||||
|
||||
after = [ "network.target" ];
|
||||
|
||||
path = [ pkgs.dhcp ];
|
||||
|
||||
preStart =
|
||||
''
|
||||
mkdir -m 755 -p ${stateDir}
|
||||
|
||||
touch ${stateDir}/dhcpd.leases
|
||||
|
||||
mkdir -m 755 -p /run/dhcpd
|
||||
chown dhcpd /run/dhcpd
|
||||
'';
|
||||
|
||||
serviceConfig =
|
||||
{ ExecStart = "@${pkgs.dhcp}/sbin/dhcpd dhcpd"
|
||||
+ " -pf /run/dhcpd/dhcpd.pid -cf ${configFile}"
|
||||
+ " -lf ${stateDir}/dhcpd.leases -user dhcpd -group nogroup"
|
||||
+ " ${cfg.extraFlags}"
|
||||
+ " ${toString cfg.interfaces}";
|
||||
Restart = "always";
|
||||
Type = "forking";
|
||||
PIDFile = "/run/dhcpd/dhcpd.pid";
|
||||
};
|
||||
};
|
||||
systemd.services = dhcpdService "4" cfg4 // dhcpdService "6" cfg6;
|
||||
|
||||
};
|
||||
|
||||
|
@ -172,13 +172,16 @@ let
|
||||
}-j nixos-fw-accept
|
||||
''}
|
||||
|
||||
# Accept all ICMPv6 messages except redirects and node
|
||||
# information queries (type 139). See RFC 4890, section
|
||||
# 4.4.
|
||||
${optionalString config.networking.enableIPv6 ''
|
||||
# Accept all ICMPv6 messages except redirects and node
|
||||
# information queries (type 139). See RFC 4890, section
|
||||
# 4.4.
|
||||
ip6tables -A nixos-fw -p icmpv6 --icmpv6-type redirect -j DROP
|
||||
ip6tables -A nixos-fw -p icmpv6 --icmpv6-type 139 -j DROP
|
||||
ip6tables -A nixos-fw -p icmpv6 -j nixos-fw-accept
|
||||
|
||||
# Allow this host to act as a DHCPv6 client
|
||||
ip6tables -A nixos-fw -d fe80::/64 -p udp --dport 546 -j nixos-fw-accept
|
||||
''}
|
||||
|
||||
${cfg.extraCommands}
|
||||
|
@ -82,7 +82,6 @@ in
|
||||
serviceConfig = {
|
||||
Restart = "always";
|
||||
RestartSec = "5s";
|
||||
ExecStartPre = "${cfg.package}/bin/miredo-checkconf -f ${miredoConf}";
|
||||
ExecStart = "${cfg.package}/bin/miredo -c ${miredoConf} -p ${pidFile} -f";
|
||||
ExecReload = "${pkgs.coreutils}/bin/kill -HUP $MAINPID";
|
||||
};
|
||||
|
@ -81,6 +81,7 @@ in
|
||||
users.extraUsers = singleton {
|
||||
name = clamavUser;
|
||||
uid = config.ids.uids.clamav;
|
||||
group = clamavGroup;
|
||||
description = "ClamAV daemon user";
|
||||
home = stateDir;
|
||||
};
|
||||
|
@ -39,6 +39,13 @@ in
|
||||
type = types.path;
|
||||
description = "The data directory, for storing certificates.";
|
||||
};
|
||||
|
||||
package = mkOption {
|
||||
default = pkgs.caddy;
|
||||
defaultText = "pkgs.caddy";
|
||||
type = types.package;
|
||||
description = "Caddy package to use.";
|
||||
};
|
||||
};
|
||||
|
||||
config = mkIf cfg.enable {
|
||||
@ -47,7 +54,7 @@ in
|
||||
after = [ "network.target" ];
|
||||
wantedBy = [ "multi-user.target" ];
|
||||
serviceConfig = {
|
||||
ExecStart = ''${pkgs.caddy.bin}/bin/caddy -conf=${configFile} \
|
||||
ExecStart = ''${cfg.package.bin}/bin/caddy -conf=${configFile} \
|
||||
-ca=${cfg.ca} -email=${cfg.email} ${optionalString cfg.agree "-agree"}
|
||||
'';
|
||||
Type = "simple";
|
||||
|
@ -41,7 +41,7 @@ with lib;
|
||||
{ description = "Terminal Server";
|
||||
|
||||
path =
|
||||
[ pkgs.xorgserver.out pkgs.gawk pkgs.which pkgs.openssl pkgs.xorg.xauth
|
||||
[ pkgs.xorg.xorgserver.out pkgs.gawk pkgs.which pkgs.openssl pkgs.xorg.xauth
|
||||
pkgs.nettools pkgs.shadow pkgs.procps pkgs.utillinux pkgs.bash
|
||||
];
|
||||
|
||||
|
@ -34,24 +34,20 @@ if [ -z "$container" ]; then
|
||||
fi
|
||||
|
||||
|
||||
# Likewise, stage 1 mounts /proc, /dev, /sys and /run, so if we don't have a
|
||||
# Likewise, stage 1 mounts /proc, /dev and /sys, so if we don't have a
|
||||
# stage 1, we need to do that here.
|
||||
# We check for each mountpoint separately to avoid esoteric failure modes
|
||||
# if only a subset was mounted by whatever called us.
|
||||
specialMount() {
|
||||
local device="$1"
|
||||
local mountPoint="$2"
|
||||
local options="$3"
|
||||
local fsType="$4"
|
||||
if [ ! -e /proc/1 ]; then
|
||||
specialMount() {
|
||||
local device="$1"
|
||||
local mountPoint="$2"
|
||||
local options="$3"
|
||||
local fsType="$4"
|
||||
|
||||
if mountpoint -q "$mountpoint"; then
|
||||
return 0
|
||||
fi
|
||||
|
||||
mkdir -m 0755 -p "$mountPoint"
|
||||
mount -n -t "$fsType" -o "$options" "$device" "$mountPoint"
|
||||
}
|
||||
source @earlyMountScript@
|
||||
mkdir -m 0755 -p "$mountPoint"
|
||||
mount -n -t "$fsType" -o "$options" "$device" "$mountPoint"
|
||||
}
|
||||
source @earlyMountScript@
|
||||
fi
|
||||
|
||||
|
||||
echo "booting system configuration $systemConfig" > /dev/kmsg
|
||||
|
@ -135,51 +135,59 @@ let self = {
|
||||
"16.03".us-west-2.pv-ebs = "ami-5e61a23e";
|
||||
"16.03".us-west-2.pv-s3 = "ami-734c8f13";
|
||||
|
||||
# 16.09.666.3738950
|
||||
"16.09".ap-northeast-1.hvm-ebs = "ami-35578954";
|
||||
"16.09".ap-northeast-1.hvm-s3 = "ami-d6528cb7";
|
||||
"16.09".ap-northeast-1.pv-ebs = "ami-07548a66";
|
||||
"16.09".ap-northeast-1.pv-s3 = "ami-f1548a90";
|
||||
"16.09".ap-northeast-2.hvm-ebs = "ami-d48753ba";
|
||||
"16.09".ap-northeast-2.hvm-s3 = "ami-4c865222";
|
||||
"16.09".ap-northeast-2.pv-ebs = "ami-ca8551a4";
|
||||
"16.09".ap-northeast-2.pv-s3 = "ami-9c8551f2";
|
||||
"16.09".ap-south-1.hvm-ebs = "ami-922450fd";
|
||||
"16.09".ap-south-1.hvm-s3 = "ami-6d3a4e02";
|
||||
"16.09".ap-south-1.pv-ebs = "ami-4d394d22";
|
||||
"16.09".ap-south-1.pv-s3 = "ami-17384c78";
|
||||
"16.09".ap-southeast-1.hvm-ebs = "ami-f824809b";
|
||||
"16.09".ap-southeast-1.hvm-s3 = "ami-f924809a";
|
||||
"16.09".ap-southeast-1.pv-ebs = "ami-af2480cc";
|
||||
"16.09".ap-southeast-1.pv-s3 = "ami-5826823b";
|
||||
"16.09".ap-southeast-2.hvm-ebs = "ami-40fecd23";
|
||||
"16.09".ap-southeast-2.hvm-s3 = "ami-48fecd2b";
|
||||
"16.09".ap-southeast-2.pv-ebs = "ami-dffecdbc";
|
||||
"16.09".ap-southeast-2.pv-s3 = "ami-e0fccf83";
|
||||
"16.09".eu-central-1.hvm-ebs = "ami-1d8b7472";
|
||||
"16.09".eu-central-1.hvm-s3 = "ami-1c8b7473";
|
||||
"16.09".eu-central-1.pv-ebs = "ami-8c8d72e3";
|
||||
"16.09".eu-central-1.pv-s3 = "ami-3488775b";
|
||||
"16.09".eu-west-1.hvm-ebs = "ami-15662766";
|
||||
"16.09".eu-west-1.hvm-s3 = "ami-476b2a34";
|
||||
"16.09".eu-west-1.pv-ebs = "ami-876928f4";
|
||||
"16.09".eu-west-1.pv-s3 = "ami-70682903";
|
||||
"16.09".sa-east-1.hvm-ebs = "ami-27bc2e4b";
|
||||
"16.09".sa-east-1.hvm-s3 = "ami-e4b92b88";
|
||||
"16.09".sa-east-1.pv-ebs = "ami-4dbe2c21";
|
||||
"16.09".sa-east-1.pv-s3 = "ami-77fc6e1b";
|
||||
"16.09".us-east-1.hvm-ebs = "ami-93347684";
|
||||
"16.09".us-east-1.hvm-s3 = "ami-5e347649";
|
||||
"16.09".us-east-1.pv-ebs = "ami-b0387aa7";
|
||||
"16.09".us-east-1.pv-s3 = "ami-51357746";
|
||||
"16.09".us-west-1.hvm-ebs = "ami-06337a66";
|
||||
"16.09".us-west-1.hvm-s3 = "ami-76307916";
|
||||
"16.09".us-west-1.pv-ebs = "ami-fd327b9d";
|
||||
"16.09".us-west-1.pv-s3 = "ami-cc347dac";
|
||||
"16.09".us-west-2.hvm-ebs = "ami-49fe2729";
|
||||
"16.09".us-west-2.hvm-s3 = "ami-93fc25f3";
|
||||
"16.09".us-west-2.pv-ebs = "ami-14fe2774";
|
||||
"16.09".us-west-2.pv-s3 = "ami-74f12814";
|
||||
# 16.09.1508.3909827
|
||||
"16.09".ap-northeast-1.hvm-ebs = "ami-68453b0f";
|
||||
"16.09".ap-northeast-1.hvm-s3 = "ami-f9bec09e";
|
||||
"16.09".ap-northeast-1.pv-ebs = "ami-254a3442";
|
||||
"16.09".ap-northeast-1.pv-s3 = "ami-ef473988";
|
||||
"16.09".ap-northeast-2.hvm-ebs = "ami-18ae7f76";
|
||||
"16.09".ap-northeast-2.hvm-s3 = "ami-9eac7df0";
|
||||
"16.09".ap-northeast-2.pv-ebs = "ami-57aa7b39";
|
||||
"16.09".ap-northeast-2.pv-s3 = "ami-5cae7f32";
|
||||
"16.09".ap-south-1.hvm-ebs = "ami-b3f98fdc";
|
||||
"16.09".ap-south-1.hvm-s3 = "ami-98e690f7";
|
||||
"16.09".ap-south-1.pv-ebs = "ami-aef98fc1";
|
||||
"16.09".ap-south-1.pv-s3 = "ami-caf88ea5";
|
||||
"16.09".ap-southeast-1.hvm-ebs = "ami-80fb51e3";
|
||||
"16.09".ap-southeast-1.hvm-s3 = "ami-2df3594e";
|
||||
"16.09".ap-southeast-1.pv-ebs = "ami-37f05a54";
|
||||
"16.09".ap-southeast-1.pv-s3 = "ami-27f35944";
|
||||
"16.09".ap-southeast-2.hvm-ebs = "ami-57ece834";
|
||||
"16.09".ap-southeast-2.hvm-s3 = "ami-87f4f0e4";
|
||||
"16.09".ap-southeast-2.pv-ebs = "ami-d8ede9bb";
|
||||
"16.09".ap-southeast-2.pv-s3 = "ami-a6ebefc5";
|
||||
"16.09".eu-central-1.hvm-ebs = "ami-1b884774";
|
||||
"16.09".eu-central-1.hvm-s3 = "ami-b08c43df";
|
||||
"16.09".eu-central-1.pv-ebs = "ami-888946e7";
|
||||
"16.09".eu-central-1.pv-s3 = "ami-06874869";
|
||||
"16.09".eu-west-1.hvm-ebs = "ami-1ed3e76d";
|
||||
"16.09".eu-west-1.hvm-s3 = "ami-73d1e500";
|
||||
"16.09".eu-west-1.pv-ebs = "ami-44c0f437";
|
||||
"16.09".eu-west-1.pv-s3 = "ami-f3d8ec80";
|
||||
"16.09".eu-west-2.hvm-ebs = "ami-2c9c9648";
|
||||
"16.09".eu-west-2.hvm-s3 = "ami-6b9e940f";
|
||||
"16.09".eu-west-2.pv-ebs = "ami-f1999395";
|
||||
"16.09".eu-west-2.pv-s3 = "ami-bb9f95df";
|
||||
"16.09".sa-east-1.hvm-ebs = "ami-a11882cd";
|
||||
"16.09".sa-east-1.hvm-s3 = "ami-7726bc1b";
|
||||
"16.09".sa-east-1.pv-ebs = "ami-9725bffb";
|
||||
"16.09".sa-east-1.pv-s3 = "ami-b027bddc";
|
||||
"16.09".us-east-1.hvm-ebs = "ami-854ca593";
|
||||
"16.09".us-east-1.hvm-s3 = "ami-2241a834";
|
||||
"16.09".us-east-1.pv-ebs = "ami-a441a8b2";
|
||||
"16.09".us-east-1.pv-s3 = "ami-e841a8fe";
|
||||
"16.09".us-east-2.hvm-ebs = "ami-3f41645a";
|
||||
"16.09".us-east-2.hvm-s3 = "ami-804065e5";
|
||||
"16.09".us-east-2.pv-ebs = "ami-f1466394";
|
||||
"16.09".us-east-2.pv-s3 = "ami-05426760";
|
||||
"16.09".us-west-1.hvm-ebs = "ami-c2efbca2";
|
||||
"16.09".us-west-1.hvm-s3 = "ami-d71042b7";
|
||||
"16.09".us-west-1.pv-ebs = "ami-04e8bb64";
|
||||
"16.09".us-west-1.pv-s3 = "ami-31e9ba51";
|
||||
"16.09".us-west-2.hvm-ebs = "ami-6449f504";
|
||||
"16.09".us-west-2.hvm-s3 = "ami-344af654";
|
||||
"16.09".us-west-2.pv-ebs = "ami-6d4af60d";
|
||||
"16.09".us-west-2.pv-s3 = "ami-de48f4be";
|
||||
|
||||
latest = self."16.09";
|
||||
}; in self
|
||||
|
@ -62,19 +62,17 @@ in
|
||||
</citerefentry>.
|
||||
'';
|
||||
};
|
||||
|
||||
};
|
||||
|
||||
###### implementation
|
||||
|
||||
config = mkIf cfg.enable {
|
||||
|
||||
environment.systemPackages = [ pkgs.lxc ];
|
||||
|
||||
environment.etc."lxc/lxc.conf".text = cfg.systemConfig;
|
||||
environment.etc."lxc/lxc-usernet".text = cfg.usernetConfig;
|
||||
environment.etc."lxc/default.conf".text = cfg.defaultConfig;
|
||||
|
||||
security.apparmor.packages = [ pkgs.lxc ];
|
||||
security.apparmor.profiles = [ "${pkgs.lxc}/etc/apparmor.d/lxc-containers" ];
|
||||
};
|
||||
|
||||
}
|
||||
|
@ -59,6 +59,7 @@ in {
|
||||
virtualisation.diskSize = 2048;
|
||||
|
||||
programs.bash.enableCompletion = true;
|
||||
environment.systemPackages = with pkgs; [ netcat bind ];
|
||||
|
||||
services.kubernetes.roles = ["master" "node"];
|
||||
virtualisation.docker.extraOptions = "--iptables=false --ip-masq=false -b cbr0";
|
||||
|
@ -10,29 +10,61 @@ let
|
||||
vlanIfs = range 1 (length config.virtualisation.vlans);
|
||||
in {
|
||||
virtualisation.vlans = [ 1 2 3 ];
|
||||
boot.kernel.sysctl."net.ipv6.conf.all.forwarding" = true;
|
||||
networking = {
|
||||
useDHCP = false;
|
||||
useNetworkd = networkd;
|
||||
firewall.allowPing = true;
|
||||
firewall.checkReversePath = true;
|
||||
firewall.allowedUDPPorts = [ 547 ];
|
||||
interfaces = mkOverride 0 (listToAttrs (flip map vlanIfs (n:
|
||||
nameValuePair "eth${toString n}" {
|
||||
ipAddress = "192.168.${toString n}.1";
|
||||
prefixLength = 24;
|
||||
ipv6Address = "fd00:1234:5678:${toString n}::1";
|
||||
ipv6PrefixLength = 64;
|
||||
})));
|
||||
};
|
||||
services.dhcpd = {
|
||||
services.dhcpd4 = {
|
||||
enable = true;
|
||||
interfaces = map (n: "eth${toString n}") vlanIfs;
|
||||
extraConfig = ''
|
||||
option subnet-mask 255.255.255.0;
|
||||
authoritative;
|
||||
'' + flip concatMapStrings vlanIfs (n: ''
|
||||
subnet 192.168.${toString n}.0 netmask 255.255.255.0 {
|
||||
option broadcast-address 192.168.${toString n}.255;
|
||||
option routers 192.168.${toString n}.1;
|
||||
# XXX: technically it's _not guaranteed_ that IP addresses will be
|
||||
# issued from the first item in range onwards! We assume that in
|
||||
# our tests however.
|
||||
range 192.168.${toString n}.2 192.168.${toString n}.254;
|
||||
}
|
||||
'');
|
||||
};
|
||||
services.radvd = {
|
||||
enable = true;
|
||||
config = flip concatMapStrings vlanIfs (n: ''
|
||||
interface eth${toString n} {
|
||||
AdvSendAdvert on;
|
||||
AdvManagedFlag on;
|
||||
AdvOtherConfigFlag on;
|
||||
|
||||
prefix fd00:1234:5678:${toString n}::/64 {
|
||||
AdvAutonomous off;
|
||||
};
|
||||
};
|
||||
'');
|
||||
};
|
||||
services.dhcpd6 = {
|
||||
enable = true;
|
||||
interfaces = map (n: "eth${toString n}") vlanIfs;
|
||||
extraConfig = ''
|
||||
authoritative;
|
||||
'' + flip concatMapStrings vlanIfs (n: ''
|
||||
subnet6 fd00:1234:5678:${toString n}::/64 {
|
||||
range6 fd00:1234:5678:${toString n}::2 fd00:1234:5678:${toString n}::2;
|
||||
}
|
||||
'');
|
||||
};
|
||||
};
|
||||
|
||||
testCases = {
|
||||
@ -108,8 +140,14 @@ let
|
||||
useNetworkd = networkd;
|
||||
firewall.allowPing = true;
|
||||
useDHCP = true;
|
||||
interfaces.eth1.ip4 = mkOverride 0 [ ];
|
||||
interfaces.eth2.ip4 = mkOverride 0 [ ];
|
||||
interfaces.eth1 = {
|
||||
ip4 = mkOverride 0 [ ];
|
||||
ip6 = mkOverride 0 [ ];
|
||||
};
|
||||
interfaces.eth2 = {
|
||||
ip4 = mkOverride 0 [ ];
|
||||
ip6 = mkOverride 0 [ ];
|
||||
};
|
||||
};
|
||||
};
|
||||
testScript = { nodes, ... }:
|
||||
@ -121,21 +159,31 @@ let
|
||||
|
||||
# Wait until we have an ip address on each interface
|
||||
$client->waitUntilSucceeds("ip addr show dev eth1 | grep -q '192.168.1'");
|
||||
$client->waitUntilSucceeds("ip addr show dev eth1 | grep -q 'fd00:1234:5678:1:'");
|
||||
$client->waitUntilSucceeds("ip addr show dev eth2 | grep -q '192.168.2'");
|
||||
$client->waitUntilSucceeds("ip addr show dev eth2 | grep -q 'fd00:1234:5678:2:'");
|
||||
|
||||
# Test vlan 1
|
||||
$client->waitUntilSucceeds("ping -c 1 192.168.1.1");
|
||||
$client->waitUntilSucceeds("ping -c 1 192.168.1.2");
|
||||
$client->waitUntilSucceeds("ping6 -c 1 fd00:1234:5678:1::1");
|
||||
$client->waitUntilSucceeds("ping6 -c 1 fd00:1234:5678:1::2");
|
||||
|
||||
$router->waitUntilSucceeds("ping -c 1 192.168.1.1");
|
||||
$router->waitUntilSucceeds("ping -c 1 192.168.1.2");
|
||||
$router->waitUntilSucceeds("ping6 -c 1 fd00:1234:5678:1::1");
|
||||
$router->waitUntilSucceeds("ping6 -c 1 fd00:1234:5678:1::2");
|
||||
|
||||
# Test vlan 2
|
||||
$client->waitUntilSucceeds("ping -c 1 192.168.2.1");
|
||||
$client->waitUntilSucceeds("ping -c 1 192.168.2.2");
|
||||
$client->waitUntilSucceeds("ping6 -c 1 fd00:1234:5678:2::1");
|
||||
$client->waitUntilSucceeds("ping6 -c 1 fd00:1234:5678:2::2");
|
||||
|
||||
$router->waitUntilSucceeds("ping -c 1 192.168.2.1");
|
||||
$router->waitUntilSucceeds("ping -c 1 192.168.2.2");
|
||||
$router->waitUntilSucceeds("ping6 -c 1 fd00:1234:5678:2::1");
|
||||
$router->waitUntilSucceeds("ping6 -c 1 fd00:1234:5678:2::2");
|
||||
'';
|
||||
};
|
||||
dhcpOneIf = {
|
||||
|
@ -39,7 +39,7 @@ in stdenv.mkDerivation {
|
||||
store historical records of the ledger and participate in consensus.
|
||||
'';
|
||||
homepage = https://www.stellar.org/;
|
||||
platforms = platforms.linux;
|
||||
platforms = [ "x86_64-linux" ];
|
||||
maintainers = with maintainers; [ chris-martin ];
|
||||
license = licenses.asl20;
|
||||
};
|
||||
|
@ -2,8 +2,8 @@
|
||||
, fftwSinglePrec, flac, glibc, glibmm, graphviz, gtkmm2, libjack2
|
||||
, libgnomecanvas, libgnomecanvasmm, liblo, libmad, libogg, librdf
|
||||
, librdf_raptor, librdf_rasqal, libsamplerate, libsigcxx, libsndfile
|
||||
, libusb, libuuid, libxml2, libxslt, lilv-svn, lv2, makeWrapper, pango
|
||||
, perl, pkgconfig, python2, rubberband, serd, sord-svn, sratom, suil, taglib, vampSDK }:
|
||||
, libusb, libuuid, libxml2, libxslt, lilv, lv2, makeWrapper, pango
|
||||
, perl, pkgconfig, python2, rubberband, serd, sord, sratom, suil, taglib, vampSDK }:
|
||||
|
||||
let
|
||||
|
||||
@ -38,12 +38,12 @@ stdenv.mkDerivation rec {
|
||||
sha256 = "0pnnx22asizin5rvf352nfv6003zarw3jd64magp10310wrfiwbq";
|
||||
};
|
||||
|
||||
buildInputs =
|
||||
buildInputs =
|
||||
[ alsaLib aubio boost cairomm curl doxygen dbus fftw fftwSinglePrec flac glibc
|
||||
glibmm graphviz gtkmm2 libjack2 libgnomecanvas libgnomecanvasmm liblo
|
||||
libmad libogg librdf librdf_raptor librdf_rasqal libsamplerate
|
||||
libsigcxx libsndfile libusb libuuid libxml2 libxslt lilv-svn lv2
|
||||
makeWrapper pango perl pkgconfig python2 rubberband serd sord-svn sratom suil taglib vampSDK
|
||||
libsigcxx libsndfile libusb libuuid libxml2 libxslt lilv lv2
|
||||
makeWrapper pango perl pkgconfig python2 rubberband serd sord sratom suil taglib vampSDK
|
||||
];
|
||||
|
||||
patchPhase = ''
|
||||
|
@ -2,8 +2,8 @@
|
||||
, fftwSinglePrec, flac, glibc, glibmm, graphviz, gtkmm2, libjack2
|
||||
, libgnomecanvas, libgnomecanvasmm, liblo, libmad, libogg, librdf
|
||||
, librdf_raptor, librdf_rasqal, libsamplerate, libsigcxx, libsndfile
|
||||
, libusb, libuuid, libxml2, libxslt, lilv-svn, lv2, makeWrapper, pango
|
||||
, perl, pkgconfig, python2, rubberband, serd, sord-svn, sratom, suil, taglib, vampSDK }:
|
||||
, libusb, libuuid, libxml2, libxslt, lilv, lv2, makeWrapper, pango
|
||||
, perl, pkgconfig, python2, rubberband, serd, sord, sratom, suil, taglib, vampSDK }:
|
||||
|
||||
let
|
||||
|
||||
@ -33,8 +33,8 @@ stdenv.mkDerivation rec {
|
||||
[ alsaLib aubio boost cairomm curl doxygen dbus fftw fftwSinglePrec flac glibc
|
||||
glibmm graphviz gtkmm2 libjack2 libgnomecanvas libgnomecanvasmm liblo
|
||||
libmad libogg librdf librdf_raptor librdf_rasqal libsamplerate
|
||||
libsigcxx libsndfile libusb libuuid libxml2 libxslt lilv-svn lv2
|
||||
makeWrapper pango perl pkgconfig python2 rubberband serd sord-svn sratom suil taglib vampSDK
|
||||
libsigcxx libsndfile libusb libuuid libxml2 libxslt lilv lv2
|
||||
makeWrapper pango perl pkgconfig python2 rubberband serd sord sratom suil taglib vampSDK
|
||||
];
|
||||
|
||||
# ardour's wscript has a "tarball" target but that required the git revision
|
||||
|
@ -2,8 +2,8 @@
|
||||
, fftwSinglePrec, flac, glibc, glibmm, graphviz, gtkmm2, libjack2
|
||||
, libgnomecanvas, libgnomecanvasmm, liblo, libmad, libogg, librdf
|
||||
, librdf_raptor, librdf_rasqal, libsamplerate, libsigcxx, libsndfile
|
||||
, libusb, libuuid, libxml2, libxslt, lilv-svn, lv2, makeWrapper
|
||||
, perl, pkgconfig, python2, rubberband, serd, sord-svn, sratom
|
||||
, libusb, libuuid, libxml2, libxslt, lilv, lv2, makeWrapper
|
||||
, perl, pkgconfig, python2, rubberband, serd, sord, sratom
|
||||
, taglib, vampSDK, dbus, fftw, pango, suil, libarchive }:
|
||||
|
||||
let
|
||||
@ -33,8 +33,8 @@ stdenv.mkDerivation rec {
|
||||
[ alsaLib aubio boost cairomm curl doxygen dbus fftw fftwSinglePrec flac glibc
|
||||
glibmm graphviz gtkmm2 libjack2 libgnomecanvas libgnomecanvasmm liblo
|
||||
libmad libogg librdf librdf_raptor librdf_rasqal libsamplerate
|
||||
libsigcxx libsndfile libusb libuuid libxml2 libxslt lilv-svn lv2
|
||||
makeWrapper pango perl pkgconfig python2 rubberband serd sord-svn
|
||||
libsigcxx libsndfile libusb libuuid libxml2 libxslt lilv lv2
|
||||
makeWrapper pango perl pkgconfig python2 rubberband serd sord
|
||||
sratom suil taglib vampSDK libarchive
|
||||
];
|
||||
|
||||
|
@ -2,7 +2,7 @@
|
||||
utillinux, pythonPackages, libnotify }:
|
||||
|
||||
stdenv.mkDerivation {
|
||||
name = "clerk-unstable-2016-10-14";
|
||||
name = "clerk-2016-10-14";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "carnager";
|
||||
|
@ -1,5 +1,5 @@
|
||||
{ stdenv, fetchgit, boost, ganv, glibmm, gtk2, gtkmm2, libjack2, lilv
|
||||
, lv2Unstable, makeWrapper, pkgconfig, python, raul, rdflib, serd, sord, sratom
|
||||
{ stdenv, fetchgit, boost, ganv, glibmm, gtkmm2, libjack2, lilv
|
||||
, lv2, makeWrapper, pkgconfig, python, raul, rdflib, serd, sord, sratom
|
||||
, suil
|
||||
}:
|
||||
|
||||
@ -14,21 +14,21 @@ stdenv.mkDerivation rec {
|
||||
};
|
||||
|
||||
buildInputs = [
|
||||
boost ganv glibmm gtk2 gtkmm2 libjack2 lilv lv2Unstable makeWrapper pkgconfig
|
||||
boost ganv glibmm gtkmm2 libjack2 lilv lv2 makeWrapper pkgconfig
|
||||
python raul serd sord sratom suil
|
||||
];
|
||||
|
||||
configurePhase = ''
|
||||
sed -e "s@{PYTHONDIR}/'@out/'@" -i wscript
|
||||
python waf configure --prefix=$out
|
||||
${python.interpreter} waf configure --prefix=$out
|
||||
'';
|
||||
|
||||
propagatedBuildInputs = [ rdflib ];
|
||||
|
||||
buildPhase = "python waf";
|
||||
buildPhase = "${python.interpreter} waf";
|
||||
|
||||
installPhase = ''
|
||||
python waf install
|
||||
${python.interpreter} waf install
|
||||
for program in ingenams ingenish
|
||||
do
|
||||
wrapProgram $out/bin/$program \
|
||||
|
@ -5,13 +5,13 @@
|
||||
pythonPackages.buildPythonApplication rec {
|
||||
name = "mopidy-${version}";
|
||||
|
||||
version = "2.0.1";
|
||||
version = "2.1.0";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "mopidy";
|
||||
repo = "mopidy";
|
||||
rev = "v${version}";
|
||||
sha256 = "15i17rj2bh2kda6d6rwcjhs2m3nfsrcyq3lj9vbgmacg0cdb22pp";
|
||||
sha256 = "0krq5fbscqxayyc4vxai7iwxm2kdbgs5jicrdb013v04phw2za06";
|
||||
};
|
||||
|
||||
nativeBuildInputs = [ wrapGAppsHook ];
|
||||
|
@ -6,7 +6,7 @@ assert stdenv.system == "x86_64-linux";
|
||||
|
||||
let
|
||||
# Please update the stable branch!
|
||||
version = "1.0.45.186.g3b5036d6-95";
|
||||
version = "1.0.47.13.gd8e05b1f-47";
|
||||
|
||||
deps = [
|
||||
alsaLib
|
||||
@ -51,7 +51,7 @@ stdenv.mkDerivation {
|
||||
src =
|
||||
fetchurl {
|
||||
url = "http://repository-origin.spotify.com/pool/non-free/s/spotify-client/spotify-client_${version}_amd64.deb";
|
||||
sha256 = "0fpvz1mzyva1sypg4gjmrv0clckb0c3xwjfcxnb8gvkxx9vm56p1";
|
||||
sha256 = "0079vq2nw07795jyqrjv68sc0vqjy6abjh6jjd5cg3hqlxdf4ckz";
|
||||
};
|
||||
|
||||
buildInputs = [ dpkg makeWrapper ];
|
||||
|
@ -9,7 +9,6 @@
|
||||
, gnugrep
|
||||
, gnutar
|
||||
, gzip
|
||||
, jdk
|
||||
, fontconfig
|
||||
, freetype
|
||||
, libpulseaudio
|
||||
@ -29,6 +28,7 @@
|
||||
, writeTextFile
|
||||
, xkeyboard_config
|
||||
, zlib
|
||||
, fontsConf
|
||||
}:
|
||||
|
||||
let
|
||||
@ -44,50 +44,57 @@ let
|
||||
];
|
||||
installPhase = ''
|
||||
cp -r . $out
|
||||
wrapProgram $out/bin/studio.sh --set PATH "${stdenv.lib.makeBinPath [
|
||||
wrapProgram $out/bin/studio.sh \
|
||||
--set PATH "${stdenv.lib.makeBinPath [
|
||||
|
||||
# Checked in studio.sh
|
||||
coreutils
|
||||
findutils
|
||||
gnugrep
|
||||
jdk
|
||||
which
|
||||
# Checked in studio.sh
|
||||
coreutils
|
||||
findutils
|
||||
gnugrep
|
||||
which
|
||||
|
||||
# For Android emulator
|
||||
file
|
||||
glxinfo
|
||||
pciutils
|
||||
setxkbmap
|
||||
# For Android emulator
|
||||
file
|
||||
glxinfo
|
||||
pciutils
|
||||
setxkbmap
|
||||
|
||||
# Used during setup wizard
|
||||
gnutar
|
||||
gzip
|
||||
# Used during setup wizard
|
||||
gnutar
|
||||
gzip
|
||||
|
||||
# Runtime stuff
|
||||
git
|
||||
# Runtime stuff
|
||||
git
|
||||
|
||||
]}" --prefix LD_LIBRARY_PATH : "${stdenv.lib.makeLibraryPath [
|
||||
# Gradle wants libstdc++.so.6
|
||||
stdenv.cc.cc.lib
|
||||
# mksdcard wants 32 bit libstdc++.so.6
|
||||
pkgsi686Linux.stdenv.cc.cc.lib
|
||||
]}" \
|
||||
--prefix LD_LIBRARY_PATH : "${stdenv.lib.makeLibraryPath [
|
||||
|
||||
# aapt wants libz.so.1
|
||||
zlib
|
||||
pkgsi686Linux.zlib
|
||||
# Support multiple monitors
|
||||
libXrandr
|
||||
# Crash at startup without these
|
||||
fontconfig
|
||||
freetype
|
||||
libXext
|
||||
libXi
|
||||
libXrender
|
||||
libXtst
|
||||
|
||||
# For Android emulator
|
||||
libpulseaudio
|
||||
libX11
|
||||
libXext
|
||||
libXrender
|
||||
libXtst
|
||||
libXi
|
||||
freetype
|
||||
fontconfig
|
||||
]}" --set QT_XKB_CONFIG_ROOT "${xkeyboard_config}/share/X11/xkb"
|
||||
# Gradle wants libstdc++.so.6
|
||||
stdenv.cc.cc.lib
|
||||
# mksdcard wants 32 bit libstdc++.so.6
|
||||
pkgsi686Linux.stdenv.cc.cc.lib
|
||||
|
||||
# aapt wants libz.so.1
|
||||
zlib
|
||||
pkgsi686Linux.zlib
|
||||
# Support multiple monitors
|
||||
libXrandr
|
||||
|
||||
# For Android emulator
|
||||
libpulseaudio
|
||||
libX11
|
||||
|
||||
]}" \
|
||||
--set QT_XKB_CONFIG_ROOT "${xkeyboard_config}/share/X11/xkb" \
|
||||
--set FONTCONFIG_FILE ${fontsConf}
|
||||
'';
|
||||
src = fetchurl {
|
||||
url = "https://dl.google.com/dl/android/studio/ide-zips/${version}/android-studio-ide-${build}-linux.zip";
|
||||
|
@ -2,11 +2,11 @@
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
name = "atom-${version}";
|
||||
version = "1.12.9";
|
||||
version = "1.13.0";
|
||||
|
||||
src = fetchurl {
|
||||
url = "https://github.com/atom/atom/releases/download/v${version}/atom-amd64.deb";
|
||||
sha256 = "1yp4wwv0vxsad7jqkn2rj4n7k2ccgqscs89p3j6z8vpm6as0i6sg";
|
||||
sha256 = "17k4v5hibaq4zi86y1sjx09hqng4sm3lr024v2mjnhj65m2nhjb8";
|
||||
name = "${name}.deb";
|
||||
};
|
||||
|
||||
|
@ -1,16 +1,17 @@
|
||||
{ stdenv, fetchurl, intltool, pkgconfig , gtk, libxml2
|
||||
, enchant, gucharmap, python
|
||||
{ stdenv, fetchurl, intltool, wrapGAppsHook, pkgconfig , gtk, libxml2
|
||||
, enchant, gucharmap, python, gnome3
|
||||
}:
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
name = "bluefish-2.2.7";
|
||||
name = "bluefish-2.2.9";
|
||||
|
||||
src = fetchurl {
|
||||
url = "mirror://sourceforge/bluefish/${name}.tar.bz2";
|
||||
sha256 = "1psqx3ljz13ylqs4zkaxv9lv1hgzld6904kdp0alwx99p5rlnlr3";
|
||||
sha256 = "1l7pg6h485yj84i34jr09y8qzc1yr4ih6w5jdhmnrg156db7nwav";
|
||||
};
|
||||
|
||||
buildInputs = [ intltool pkgconfig gtk libxml2
|
||||
nativeBuildInputs = [ intltool pkgconfig wrapGAppsHook ];
|
||||
buildInputs = [ gnome3.defaultIconTheme gtk libxml2
|
||||
enchant gucharmap python ];
|
||||
|
||||
meta = with stdenv.lib; {
|
||||
|
@ -175,10 +175,10 @@
|
||||
}) {};
|
||||
auctex = callPackage ({ elpaBuild, fetchurl, lib }: elpaBuild {
|
||||
pname = "auctex";
|
||||
version = "11.89.8";
|
||||
version = "11.90.0";
|
||||
src = fetchurl {
|
||||
url = "https://elpa.gnu.org/packages/auctex-11.89.8.tar";
|
||||
sha256 = "0rilldzb7sm7k22vfifdsnxz1an94jnn1bn8gfmqkac4g9cskl46";
|
||||
url = "https://elpa.gnu.org/packages/auctex-11.90.0.tar";
|
||||
sha256 = "04nsndwcf0dimgc2p1yzzrymc36amzdnjg0158nxplmjkzdp28gy";
|
||||
};
|
||||
packageRequires = [];
|
||||
meta = {
|
||||
@ -295,10 +295,10 @@
|
||||
}) {};
|
||||
cl-lib = callPackage ({ elpaBuild, fetchurl, lib }: elpaBuild {
|
||||
pname = "cl-lib";
|
||||
version = "0.5";
|
||||
version = "0.6.1";
|
||||
src = fetchurl {
|
||||
url = "https://elpa.gnu.org/packages/cl-lib-0.5.el";
|
||||
sha256 = "1z4ffcx7b95bxz52586lhvdrdm5vp473g3afky9h5my3jp5cd994";
|
||||
url = "https://elpa.gnu.org/packages/cl-lib-0.6.1.el";
|
||||
sha256 = "00w7bw6wkig13pngijh7ns45s1jn5kkbbjaqznsdh6jk5x089j9y";
|
||||
};
|
||||
packageRequires = [];
|
||||
meta = {
|
||||
@ -306,6 +306,19 @@
|
||||
license = lib.licenses.free;
|
||||
};
|
||||
}) {};
|
||||
cobol-mode = callPackage ({ elpaBuild, fetchurl, lib }: elpaBuild {
|
||||
pname = "cobol-mode";
|
||||
version = "1.0.0";
|
||||
src = fetchurl {
|
||||
url = "https://elpa.gnu.org/packages/cobol-mode-1.0.0.el";
|
||||
sha256 = "1zmcfpl7v787yacc7gxm8mkp53fmrznp5mnad628phf3vj4kwnxi";
|
||||
};
|
||||
packageRequires = [];
|
||||
meta = {
|
||||
homepage = "https://elpa.gnu.org/packages/cobol-mode.html";
|
||||
license = lib.licenses.free;
|
||||
};
|
||||
}) {};
|
||||
coffee-mode = callPackage ({ elpaBuild, fetchurl, lib }: elpaBuild {
|
||||
pname = "coffee-mode";
|
||||
version = "0.4.1.1";
|
||||
@ -809,10 +822,10 @@
|
||||
gnugo = callPackage ({ ascii-art-to-unicode, cl-lib ? null, elpaBuild, fetchurl, lib, xpm }:
|
||||
elpaBuild {
|
||||
pname = "gnugo";
|
||||
version = "3.0.0";
|
||||
version = "3.0.1";
|
||||
src = fetchurl {
|
||||
url = "https://elpa.gnu.org/packages/gnugo-3.0.0.tar";
|
||||
sha256 = "0b94kbqxir023wkmqn9kpjjj2v0gcz856mqipz30gxjbjj42w27x";
|
||||
url = "https://elpa.gnu.org/packages/gnugo-3.0.1.tar";
|
||||
sha256 = "08z2hg9mvsxdznq027cmwhkb5i7n7s9r2kvd4jha9xskrcnzj3pp";
|
||||
};
|
||||
packageRequires = [ ascii-art-to-unicode cl-lib xpm ];
|
||||
meta = {
|
||||
@ -956,10 +969,10 @@
|
||||
js2-mode = callPackage ({ cl-lib ? null, elpaBuild, emacs, fetchurl, lib }:
|
||||
elpaBuild {
|
||||
pname = "js2-mode";
|
||||
version = "20160623";
|
||||
version = "20170116";
|
||||
src = fetchurl {
|
||||
url = "https://elpa.gnu.org/packages/js2-mode-20160623.tar";
|
||||
sha256 = "057djy6amda8kyprkb3v733d21nlmq5fgfazi65fywlfwyq1adxs";
|
||||
url = "https://elpa.gnu.org/packages/js2-mode-20170116.tar";
|
||||
sha256 = "1z4k7710yz1fbm2w8m17q81yyp8sxllld0zmgfnc336iqrc07hmk";
|
||||
};
|
||||
packageRequires = [ cl-lib emacs ];
|
||||
meta = {
|
||||
@ -2103,10 +2116,10 @@
|
||||
ztree = callPackage ({ cl-lib ? null, elpaBuild, fetchurl, lib }:
|
||||
elpaBuild {
|
||||
pname = "ztree";
|
||||
version = "1.0.4";
|
||||
version = "1.0.5";
|
||||
src = fetchurl {
|
||||
url = "https://elpa.gnu.org/packages/ztree-1.0.4.tar";
|
||||
sha256 = "0xiiaa660s8z7901siwvmqkqz30agfzsy3zcyry2r017m3ghqjph";
|
||||
url = "https://elpa.gnu.org/packages/ztree-1.0.5.tar";
|
||||
sha256 = "14pbbsyav1dzz8m8waqdcmcx9bhw5g8m2kh1ahpxc3i2lfhdan1x";
|
||||
};
|
||||
packageRequires = [ cl-lib ];
|
||||
meta = {
|
||||
|
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
@ -172,12 +172,12 @@ in
|
||||
|
||||
idea-community = buildIdea rec {
|
||||
name = "idea-community-${version}";
|
||||
version = "2016.3";
|
||||
version = "2016.3.2";
|
||||
description = "Integrated Development Environment (IDE) by Jetbrains, community edition";
|
||||
license = stdenv.lib.licenses.asl20;
|
||||
src = fetchurl {
|
||||
url = "https://download.jetbrains.com/idea/ideaIC-${version}.tar.gz";
|
||||
sha256 = "1bp2a1x8nl5flklf160n7ka5clnb0xx9gwv5zd9li2bsf04zlzf3";
|
||||
sha256 = "0ngign34gq7i121ss2s9wfziy3vkv1jb79pw8nf1qp7rb15xn4vc";
|
||||
};
|
||||
wmClass = "jetbrains-idea-ce";
|
||||
};
|
||||
@ -340,12 +340,12 @@ in
|
||||
|
||||
datagrip = buildDataGrip rec {
|
||||
name = "datagrip-${version}";
|
||||
version = "2016.3";
|
||||
version = "2016.3.2";
|
||||
description = "Your Swiss Army Knife for Databases and SQL";
|
||||
license = stdenv.lib.licenses.unfree;
|
||||
src = fetchurl {
|
||||
url = "https://download.jetbrains.com/datagrip/${name}.tar.gz";
|
||||
sha256 = "10nah7v330qrrczzz5jldnr0k7w2xzljiny32gm9pqmjbl0i70il";
|
||||
sha256 = "19njb6i7nl6szql7cy99jmig59b304c6im3988p1dd8dj2j6csv3";
|
||||
};
|
||||
wmClass = "jetbrains-datagrip";
|
||||
};
|
||||
|
@ -1,4 +1,4 @@
|
||||
{ stdenv, fetchurl
|
||||
{ stdenv, fetchurl, fetchFromGitHub
|
||||
, ncurses
|
||||
, texinfo
|
||||
, gettext ? null
|
||||
@ -10,7 +10,14 @@ assert enableNls -> (gettext != null);
|
||||
|
||||
with stdenv.lib;
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
let
|
||||
nixSyntaxHighlight = fetchFromGitHub {
|
||||
owner = "seitz";
|
||||
repo = "nanonix";
|
||||
rev = "17e0de65e1cbba3d6baa82deaefa853b41f5c161";
|
||||
sha256 = "1g51h65i31andfs2fbp1v3vih9405iknqn11fzywjxji00kjqv5s";
|
||||
};
|
||||
in stdenv.mkDerivation rec {
|
||||
name = "nano-${version}";
|
||||
version = "2.7.3";
|
||||
src = fetchurl {
|
||||
@ -30,6 +37,10 @@ stdenv.mkDerivation rec {
|
||||
substituteInPlace src/text.c --replace "__time_t" "time_t"
|
||||
'';
|
||||
|
||||
postInstall = ''
|
||||
cp ${nixSyntaxHighlight}/nix.nanorc $out/share/nano/
|
||||
'';
|
||||
|
||||
meta = {
|
||||
homepage = http://www.nano-editor.org/;
|
||||
description = "A small, user-friendly console text editor";
|
||||
|
@ -19,7 +19,8 @@ stdenv.mkDerivation rec {
|
||||
patchPhase = ''
|
||||
sed -i build/configure \
|
||||
-e s@vi_cv_path_preserve=no@vi_cv_path_preserve=/tmp/vi.recover@ \
|
||||
-e s@/var/tmp@@
|
||||
-e s@/var/tmp@@ \
|
||||
-e s@-lcurses@-lncurses@
|
||||
'';
|
||||
|
||||
configurePhase = ''
|
||||
|
@ -2,22 +2,23 @@
|
||||
makeWrapper, libXScrnSaver }:
|
||||
|
||||
let
|
||||
version = "1.8.0";
|
||||
rev = "38746938a4ab94f2f57d9e1309c51fd6fb37553d";
|
||||
version = "1.8.1";
|
||||
rev = "ee428b0eead68bf0fb99ab5fdc4439be227b6281";
|
||||
channel = "stable";
|
||||
|
||||
sha256 = if stdenv.system == "i686-linux" then "0p7r1i71v2ab4dzlwh43hqih958a31cqskf64ds4vgc35x2mfjcq"
|
||||
else if stdenv.system == "x86_64-linux" then "1k15701jskk7w5kwzlzfri96vvw7fcinyfqqafls8nms8h5csv76"
|
||||
else if stdenv.system == "x86_64-darwin" then "12fqz62gs2wcg2wwx1k6gv2gqil9c54yq254vk3rqdf82q9zyapk"
|
||||
sha256 = if stdenv.system == "i686-linux" then "f48c2eb302de0742612f6c5e4ec4842fa474a85c1bcf421456526c9472d4641f"
|
||||
else if stdenv.system == "x86_64-linux" then "99bd463707f3a21bc949eec3e857c80aafef8f66e06a295148c1c23875244760"
|
||||
else if stdenv.system == "x86_64-darwin" then "9202c85669853b07d1cbac9e6bcb01e7c08e13fd2a2b759dd53994e0fa51e7a1"
|
||||
else throw "Unsupported system: ${stdenv.system}";
|
||||
|
||||
urlBase = "https://az764295.vo.msecnd.net/stable/${rev}/";
|
||||
urlBase = "https://az764295.vo.msecnd.net/${channel}/${rev}/";
|
||||
|
||||
urlStr = if stdenv.system == "i686-linux" then
|
||||
urlBase + "code-stable-code_${version}-1481650382_i386.tar.gz"
|
||||
urlBase + "code-${channel}-code_${version}-1482159060_i386.tar.gz"
|
||||
else if stdenv.system == "x86_64-linux" then
|
||||
urlBase + "code-stable-code_${version}-1481651903_amd64.tar.gz"
|
||||
urlBase + "code-${channel}-code_${version}-1482158209_amd64.tar.gz"
|
||||
else if stdenv.system == "x86_64-darwin" then
|
||||
urlBase + "VSCode-darwin-stable.zip"
|
||||
urlBase + "VSCode-darwin-${channel}.zip"
|
||||
else throw "Unsupported system: ${stdenv.system}";
|
||||
in
|
||||
stdenv.mkDerivation rec {
|
||||
@ -33,10 +34,7 @@ in
|
||||
name = "code";
|
||||
exec = "code";
|
||||
icon = "code";
|
||||
comment = ''
|
||||
Code editor redefined and optimized for building and debugging modern
|
||||
web and cloud applications
|
||||
'';
|
||||
comment = "Code editor redefined and optimized for building and debugging modern web and cloud applications";
|
||||
desktopName = "Visual Studio Code";
|
||||
genericName = "Text Editor";
|
||||
categories = "GNOME;GTK;Utility;TextEditor;Development;";
|
||||
|
@ -59,7 +59,7 @@ stdenv.mkDerivation {
|
||||
postInstall = ''
|
||||
wrapProgram $out/bin/grass70 \
|
||||
--set PYTHONPATH $PYTHONPATH \
|
||||
--set GRASS_PYTHON ${python2Packages.python}/bin/${python2Packages.python.executable}
|
||||
--set GRASS_PYTHON ${python2Packages.python}/bin/${python2Packages.python.executable} \
|
||||
--suffix LD_LIBRARY_PATH ':' '${gdal}/lib'
|
||||
ln -s $out/grass-*/lib $out/lib
|
||||
'';
|
||||
|
@ -1,6 +1,7 @@
|
||||
{ lib, stdenv, fetchurl, fetchpatch, pkgconfig, libtool
|
||||
, bzip2, zlib, libX11, libXext, libXt, fontconfig, freetype, ghostscript, libjpeg
|
||||
, lcms2, openexr, libpng, librsvg, libtiff, libxml2, openjpeg, libwebp
|
||||
, ApplicationServices
|
||||
}:
|
||||
|
||||
let
|
||||
@ -58,7 +59,7 @@ stdenv.mkDerivation rec {
|
||||
]
|
||||
++ lib.optionals (stdenv.cross.libc or null != "msvcrt")
|
||||
[ openexr librsvg openjpeg ]
|
||||
;
|
||||
++ lib.optional stdenv.isDarwin ApplicationServices;
|
||||
|
||||
propagatedBuildInputs =
|
||||
[ bzip2 freetype libjpeg lcms2 ]
|
||||
|
@ -1,6 +1,7 @@
|
||||
{ lib, stdenv, fetchurl, fetchpatch, pkgconfig, libtool
|
||||
, bzip2, zlib, libX11, libXext, libXt, fontconfig, freetype, ghostscript, libjpeg
|
||||
, lcms2, openexr, libpng, librsvg, libtiff, libxml2, openjpeg, libwebp
|
||||
, ApplicationServices
|
||||
}:
|
||||
|
||||
let
|
||||
@ -70,7 +71,7 @@ stdenv.mkDerivation rec {
|
||||
]
|
||||
++ lib.optionals (stdenv.cross.libc or null != "msvcrt")
|
||||
[ openexr librsvg openjpeg ]
|
||||
;
|
||||
++ lib.optional stdenv.isDarwin ApplicationServices;
|
||||
|
||||
propagatedBuildInputs =
|
||||
[ bzip2 freetype libjpeg lcms2 ]
|
||||
|
@ -1,7 +1,8 @@
|
||||
{ stdenv, fetchurl, pkgconfig, intltool, babl, gegl, gtk2, glib, gdk_pixbuf
|
||||
, pango, cairo, freetype, fontconfig, lcms, libpng, libjpeg, poppler, libtiff
|
||||
, webkit, libmng, librsvg, libwmf, zlib, libzip, ghostscript, aalib, jasper
|
||||
, python2Packages, libart_lgpl, libexif, gettext, xorg }:
|
||||
, python2Packages, libart_lgpl, libexif, gettext, xorg
|
||||
, AppKit, Cocoa, gtk-mac-integration }:
|
||||
|
||||
let
|
||||
inherit (python2Packages) pygtk wrapPython python;
|
||||
@ -26,7 +27,8 @@ in stdenv.mkDerivation rec {
|
||||
libmng librsvg libwmf zlib libzip ghostscript aalib jasper
|
||||
python pygtk libart_lgpl libexif gettext xorg.libXpm
|
||||
wrapPython
|
||||
];
|
||||
]
|
||||
++ stdenv.lib.optionals stdenv.isDarwin [ AppKit Cocoa gtk-mac-integration ];
|
||||
|
||||
pythonPath = [ pygtk ];
|
||||
|
||||
@ -51,6 +53,6 @@ in stdenv.mkDerivation rec {
|
||||
description = "The GNU Image Manipulation Program";
|
||||
homepage = http://www.gimp.org/;
|
||||
license = stdenv.lib.licenses.gpl3Plus;
|
||||
platforms = stdenv.lib.platforms.linux;
|
||||
platforms = stdenv.lib.platforms.unix;
|
||||
};
|
||||
}
|
||||
|
@ -16,7 +16,6 @@
|
||||
|
||||
let
|
||||
version = "1.0";
|
||||
pkgversion = "1";
|
||||
|
||||
arch = if stdenv.system == "x86_64-linux" then
|
||||
"x64"
|
||||
@ -26,8 +25,8 @@ let
|
||||
abort "Unsupported platform";
|
||||
|
||||
in
|
||||
stdenv.mkDerivation {
|
||||
name = "unigine-valley-${version}-${pkgversion}";
|
||||
stdenv.mkDerivation rec {
|
||||
name = "unigine-valley-${version}";
|
||||
|
||||
src = fetchurl {
|
||||
url = "http://assets.unigine.com/d/Unigine_Valley-${version}.run";
|
||||
@ -35,6 +34,7 @@ in
|
||||
};
|
||||
|
||||
sourceRoot = "Unigine_Valley-${version}";
|
||||
instPath = "lib/unigine/valley";
|
||||
|
||||
buildInputs = [file makeWrapper];
|
||||
|
||||
@ -56,22 +56,16 @@ in
|
||||
./extractor.run --target $sourceRoot
|
||||
'';
|
||||
|
||||
# The executable loads libGPUMonitor_${arch}.so "manually" (i.e. not through the ELF interpreter).
|
||||
# However, it still uses the RPATH to look for it.
|
||||
patchPhase = ''
|
||||
# Patch ELF files.
|
||||
elfs=$(find bin -type f | xargs file | grep ELF | cut -d ':' -f 1)
|
||||
for elf in $elfs; do
|
||||
echo "Patching $elf"
|
||||
patchelf --set-interpreter ${stdenv.cc.libc}/lib/ld-linux-x86-64.so.2 $elf || true
|
||||
done
|
||||
'';
|
||||
|
||||
configurePhase = "";
|
||||
buildPhase = "";
|
||||
|
||||
installPhase = ''
|
||||
instdir=$out/opt/unigine/valley
|
||||
instdir=$out/${instPath}
|
||||
|
||||
# Install executables and libraries
|
||||
mkdir -p $instdir/bin
|
||||
@ -94,10 +88,12 @@ in
|
||||
--prefix LD_LIBRARY_PATH : /run/opengl-driver/lib:$instdir/bin:$libPath
|
||||
'';
|
||||
|
||||
stripDebugList = ["${instPath}/bin"];
|
||||
|
||||
meta = {
|
||||
description = "The Unigine Valley GPU benchmarking tool";
|
||||
homepage = "http://unigine.com/products/benchmarks/valley/";
|
||||
license = stdenv.lib.licenses.unfree; # see also: /nix/store/*-unigine-valley-1.0/opt/unigine/valley/documentation/License.pdf
|
||||
license = stdenv.lib.licenses.unfree; # see also: $out/$instPath/documentation/License.pdf
|
||||
maintainers = [ stdenv.lib.maintainers.kierdavis ];
|
||||
platforms = ["x86_64-linux" "i686-linux"];
|
||||
};
|
||||
|
30
pkgs/applications/graphics/xfractint/default.nix
Normal file
30
pkgs/applications/graphics/xfractint/default.nix
Normal file
@ -0,0 +1,30 @@
|
||||
{stdenv, fetchurl, libX11, libXft}:
|
||||
stdenv.mkDerivation rec {
|
||||
name = "${pname}-${version}";
|
||||
pname = "xfractint";
|
||||
version = "20.04p14";
|
||||
# or fetchFromGitHub(owner,repo,rev) or fetchgit(rev)
|
||||
src = fetchurl {
|
||||
url = "https://www.fractint.net/ftp/current/linux/xfractint-${version}.tar.gz";
|
||||
sha256 = "0jdqr639z862qrswwk5srmv4fj5d7rl8kcscpn6mlkx4jvjmca0f";
|
||||
};
|
||||
|
||||
buildInputs = [libX11 libXft];
|
||||
|
||||
configurePhase = ''
|
||||
sed -e 's@/usr/bin/@@' -i Makefile
|
||||
'';
|
||||
|
||||
makeFlags = ["PREFIX=$(out)"];
|
||||
|
||||
meta = {
|
||||
inherit version;
|
||||
description = "";
|
||||
# Code cannot be used in commercial programs
|
||||
# Looks like the definition hinges on the price, not license
|
||||
license = stdenv.lib.licenses.unfree;
|
||||
maintainers = [stdenv.lib.maintainers.raskin];
|
||||
platforms = stdenv.lib.platforms.linux;
|
||||
homepage = "https://www.fractint.net/";
|
||||
};
|
||||
}
|
@ -3,6 +3,11 @@
|
||||
, libgnomecanvas, libgnomeprint, libgnomeprintui
|
||||
, pango, libX11, xproto, zlib, poppler
|
||||
, autoconf, automake, libtool, pkgconfig}:
|
||||
|
||||
let
|
||||
isGdkQuartzBackend = (gtk2.gdktarget == "quartz");
|
||||
in
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
version = "0.4.8";
|
||||
name = "xournal-" + version;
|
||||
@ -21,7 +26,12 @@ stdenv.mkDerivation rec {
|
||||
|
||||
nativeBuildInputs = [ autoconf automake libtool pkgconfig ];
|
||||
|
||||
NIX_LDFLAGS = [ "-lX11" "-lz" ];
|
||||
patches = stdenv.lib.optionals isGdkQuartzBackend [
|
||||
./gdk-quartz-backend.patch
|
||||
];
|
||||
|
||||
NIX_LDFLAGS = [ "-lz" ]
|
||||
++ stdenv.lib.optionals (!isGdkQuartzBackend) [ "-lX11" ];
|
||||
|
||||
desktopItem = makeDesktopItem {
|
||||
name = name;
|
||||
|
90
pkgs/applications/graphics/xournal/gdk-quartz-backend.patch
Normal file
90
pkgs/applications/graphics/xournal/gdk-quartz-backend.patch
Normal file
@ -0,0 +1,90 @@
|
||||
diff -rup xournal-0.4.8-orig/src/Makefile.am xournal-0.4.8/src/Makefile.am
|
||||
--- xournal-0.4.8-orig/src/Makefile.am 2012-07-04 23:12:47.000000000 +0200
|
||||
+++ xournal-0.4.8/src/Makefile.am 2016-12-25 03:04:00.000000000 +0100
|
||||
@@ -31,6 +31,5 @@ if WIN32
|
||||
xournal_LDFLAGS = -mwindows
|
||||
xournal_LDADD = win32/xournal.res ttsubset/libttsubset.a @PACKAGE_LIBS@ $(INTLLIBS) -lz
|
||||
else
|
||||
- xournal_LDADD = ttsubset/libttsubset.a @PACKAGE_LIBS@ $(INTLLIBS) -lX11 -lz -lm
|
||||
+ xournal_LDADD = ttsubset/libttsubset.a @PACKAGE_LIBS@ $(INTLLIBS) -lz -lm
|
||||
endif
|
||||
-
|
||||
diff -rup xournal-0.4.8-orig/src/xo-file.c xournal-0.4.8/src/xo-file.c
|
||||
--- xournal-0.4.8-orig/src/xo-file.c 2014-06-28 21:52:25.000000000 +0200
|
||||
+++ xournal-0.4.8/src/xo-file.c 2016-12-25 03:07:19.000000000 +0100
|
||||
@@ -31,11 +31,6 @@
|
||||
#include <glib/gstdio.h>
|
||||
#include <poppler/glib/poppler.h>
|
||||
|
||||
-#ifndef WIN32
|
||||
- #include <gdk/gdkx.h>
|
||||
- #include <X11/Xlib.h>
|
||||
-#endif
|
||||
-
|
||||
#include "xournal.h"
|
||||
#include "xo-interface.h"
|
||||
#include "xo-support.h"
|
||||
@@ -1275,50 +1270,8 @@ GList *attempt_load_gv_bg(char *filename
|
||||
|
||||
struct Background *attempt_screenshot_bg(void)
|
||||
{
|
||||
-#ifndef WIN32
|
||||
- struct Background *bg;
|
||||
- GdkPixbuf *pix;
|
||||
- XEvent x_event;
|
||||
- GdkWindow *window;
|
||||
- GdkColormap *cmap;
|
||||
- int x,y,w,h;
|
||||
- Window x_root, x_win;
|
||||
-
|
||||
- x_root = gdk_x11_get_default_root_xwindow();
|
||||
-
|
||||
- if (!XGrabButton(GDK_DISPLAY(), AnyButton, AnyModifier, x_root,
|
||||
- False, ButtonReleaseMask, GrabModeAsync, GrabModeSync, None, None))
|
||||
- return NULL;
|
||||
-
|
||||
- XWindowEvent (GDK_DISPLAY(), x_root, ButtonReleaseMask, &x_event);
|
||||
- XUngrabButton(GDK_DISPLAY(), AnyButton, AnyModifier, x_root);
|
||||
-
|
||||
- x_win = x_event.xbutton.subwindow;
|
||||
- if (x_win == None) x_win = x_root;
|
||||
-
|
||||
- window = gdk_window_foreign_new_for_display(gdk_display_get_default(), x_win);
|
||||
-
|
||||
- gdk_window_get_geometry(window, &x, &y, &w, &h, NULL);
|
||||
- cmap = gdk_drawable_get_colormap(window);
|
||||
- if (cmap == NULL) cmap = gdk_colormap_get_system();
|
||||
-
|
||||
- pix = gdk_pixbuf_get_from_drawable(NULL, window,
|
||||
- cmap, 0, 0, 0, 0, w, h);
|
||||
-
|
||||
- if (pix == NULL) return NULL;
|
||||
-
|
||||
- bg = g_new(struct Background, 1);
|
||||
- bg->type = BG_PIXMAP;
|
||||
- bg->canvas_item = NULL;
|
||||
- bg->pixbuf = pix;
|
||||
- bg->pixbuf_scale = DEFAULT_ZOOM;
|
||||
- bg->filename = new_refstring(NULL);
|
||||
- bg->file_domain = DOMAIN_ATTACH;
|
||||
- return bg;
|
||||
-#else
|
||||
// not implemented under WIN32
|
||||
return FALSE;
|
||||
-#endif
|
||||
}
|
||||
|
||||
/************** pdf annotation ***************/
|
||||
diff -rup xournal-0.4.8-orig/src/xo-misc.c xournal-0.4.8/src/xo-misc.c
|
||||
--- xournal-0.4.8-orig/src/xo-misc.c 2014-06-28 15:17:44.000000000 +0200
|
||||
+++ xournal-0.4.8/src/xo-misc.c 2016-12-25 03:05:50.000000000 +0100
|
||||
@@ -2288,9 +2288,7 @@ void hide_unimplemented(void)
|
||||
}
|
||||
|
||||
/* screenshot feature doesn't work yet in Win32 */
|
||||
-#ifdef WIN32
|
||||
gtk_widget_hide(GET_COMPONENT("journalScreenshot"));
|
||||
-#endif
|
||||
}
|
||||
|
||||
// toggle fullscreen mode
|
@ -10,11 +10,11 @@ let
|
||||
};
|
||||
in
|
||||
stdenv.mkDerivation rec {
|
||||
name = "ding-1.8";
|
||||
name = "ding-1.8.1";
|
||||
|
||||
src = fetchurl {
|
||||
url = "http://ftp.tu-chemnitz.de/pub/Local/urz/ding/${name}.tar.gz";
|
||||
sha256 = "00z97ndwmzsgig9q6y98y8nbxy76pyi9qyj5qfpbbck24gakpz5l";
|
||||
sha256 = "0chjqs3z9zs1w3l7b5lsaj682rgnkf9kibcbzhggqqcn1pbvl5sq";
|
||||
};
|
||||
|
||||
buildInputs = [ aspellEnv fortune gnugrep makeWrapper tk tre ];
|
||||
@ -36,11 +36,11 @@ stdenv.mkDerivation rec {
|
||||
|
||||
sed -i "s@/usr/bin/ding@$out/bin/ding@g" ding.desktop
|
||||
|
||||
cp ding $out/bin/
|
||||
cp de-en.txt $out/share/dict/
|
||||
cp ding.1 $out/share/man/man1/
|
||||
cp ding.png $out/share/pixmaps/
|
||||
cp ding.desktop $out/share/applications/
|
||||
cp -v ding $out/bin/
|
||||
cp -v de-en.txt $out/share/dict/
|
||||
cp -v ding.1 $out/share/man/man1/
|
||||
cp -v ding.png $out/share/pixmaps/
|
||||
cp -v ding.desktop $out/share/applications/
|
||||
|
||||
wrapProgram $out/bin/ding --prefix PATH : ${stdenv.lib.makeBinPath [ gnugrep aspellEnv tk fortune ]} --prefix ASPELL_CONF : "\"prefix ${aspellEnv};\""
|
||||
'';
|
||||
|
@ -1,16 +1,16 @@
|
||||
{ stdenv, fetchFromGitHub, cmake, boost, miniupnpc, pkgconfig, unbound }:
|
||||
|
||||
let
|
||||
version = "0.9.4";
|
||||
version = "0.10.1";
|
||||
in
|
||||
stdenv.mkDerivation {
|
||||
name = "monero-${version}";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "monero-project";
|
||||
repo = "bitmonero";
|
||||
repo = "monero";
|
||||
rev = "v${version}";
|
||||
sha256 = "1qzpy1mxz0ky6hfk1gf67ybbr9xy6p6irh6zwri35h1gb97sbc3c";
|
||||
sha256 = "1zngskpgxz3vqq348h0mab2kv95z6g9ckvqkr77mx15m5z3qi6aw";
|
||||
};
|
||||
|
||||
nativeBuildInputs = [ cmake pkgconfig ];
|
||||
@ -27,19 +27,17 @@ stdenv.mkDerivation {
|
||||
|
||||
installPhase = ''
|
||||
install -Dt "$out/bin/" \
|
||||
bin/bitmonerod \
|
||||
bin/blockchain_converter \
|
||||
bin/blockchain_dump \
|
||||
bin/blockchain_export \
|
||||
bin/blockchain_import \
|
||||
bin/cn_deserialize \
|
||||
bin/simpleminer \
|
||||
bin/simplewallet
|
||||
bin/monerod \
|
||||
bin/monero-blockchain-export \
|
||||
bin/monero-blockchain-import \
|
||||
bin/monero-utils-deserialize \
|
||||
bin/monero-wallet-cli \
|
||||
bin/monero-wallet-rpc
|
||||
'';
|
||||
|
||||
meta = with stdenv.lib; {
|
||||
description = "Private, secure, untraceable currency";
|
||||
homepage = http://monero.cc/;
|
||||
homepage = https://getmonero.org/;
|
||||
license = licenses.bsd3;
|
||||
maintainers = [ maintainers.ehmry ];
|
||||
platforms = [ "x86_64-linux" ];
|
||||
|
@ -3,12 +3,12 @@
|
||||
}:
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
version = "1.3.0";
|
||||
version = "1.3.1";
|
||||
name = "rofi-${version}";
|
||||
|
||||
src = fetchurl {
|
||||
url = "https://github.com/DaveDavenport/rofi/releases/download/${version}/${name}.tar.xz";
|
||||
sha256 = "1a65ai93ygras5bi7wc0s5i3zqslzqlnw3klq3sdnp2p0d6hjjqn";
|
||||
url = "https://github.com/DaveDavenport/rofi/releases/download/${version}/${name}.tar.gz";
|
||||
sha256 = "09i3vd8k6zqphrm382fglsmxc4q6dg00xddzl96kakszgvdd4qfs";
|
||||
};
|
||||
|
||||
preConfigure = ''
|
||||
|
@ -3,13 +3,13 @@
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
name = "styx-${version}";
|
||||
version = "0.4.0";
|
||||
version = "0.5.0";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "styx-static";
|
||||
repo = "styx";
|
||||
rev = "v${version}";
|
||||
sha256 = "1s4465absxqwlwhn5rf51h0s1rw25ls581yjg0fy9kbyhy979qvs";
|
||||
sha256 = "0v36i40cwrajsd02xjfdldih5g493m28lhzgjg1gd3pwk2yd6rm1";
|
||||
};
|
||||
|
||||
setSourceRoot = "cd styx-*/src; export sourceRoot=`pwd`";
|
||||
@ -26,20 +26,27 @@ stdenv.mkDerivation rec {
|
||||
multimarkdown
|
||||
];
|
||||
|
||||
outputs = [ "out" "lib" ];
|
||||
|
||||
installPhase = ''
|
||||
mkdir $out
|
||||
install -D -m 777 styx.sh $out/bin/styx
|
||||
|
||||
mkdir -p $out/share/styx
|
||||
cp -r lib $out/share/styx
|
||||
cp -r scaffold $out/share/styx
|
||||
cp builder.nix $out/share/styx
|
||||
|
||||
mkdir -p $out/share/doc/styx
|
||||
asciidoctor doc/manual.adoc -o $out/share/doc/styx/index.html
|
||||
asciidoctor doc/index.adoc -o $out/share/doc/styx/index.html
|
||||
asciidoctor doc/styx-themes.adoc -o $out/share/doc/styx/styx-themes.html
|
||||
cp -r doc/imgs $out/share/doc/styx/
|
||||
|
||||
substituteAllInPlace $out/bin/styx
|
||||
substituteAllInPlace $out/share/doc/styx/index.html
|
||||
substituteAllInPlace $out/share/doc/styx/styx-themes.html
|
||||
|
||||
mkdir $lib
|
||||
cp -r lib/* $lib
|
||||
'';
|
||||
|
||||
meta = with stdenv.lib; {
|
||||
|
@ -7,7 +7,7 @@ let
|
||||
|
||||
src = fetchFromGitHub ({
|
||||
owner = "styx-static";
|
||||
repo = "styx-theme-${args.themeName}";
|
||||
repo = "styx-theme-${args.themeName}";
|
||||
} // args.src);
|
||||
|
||||
installPhase = ''
|
||||
@ -28,10 +28,10 @@ in
|
||||
{
|
||||
agency = mkThemeDrv {
|
||||
themeName = "agency";
|
||||
version = "2016-12-03";
|
||||
version = "20167-01-17";
|
||||
src = {
|
||||
rev = "3604239cc5d940eee9c14ad2540d68a53cfebd7e";
|
||||
sha256 = "1kk8d5a3lb7fx1avivjd49gv0ffq7ppiswmwqlcsq87h2dbrqf61";
|
||||
rev = "3201f65841c9e7f97cc0ab0264cafb01b1620ed7";
|
||||
sha256 = "1b3547lzmhs1lmr9gln1yvh5xrsg92m8ngrjwf0ny91y81x04da6";
|
||||
};
|
||||
meta = {
|
||||
license = stdenv.lib.licenses.asl20;
|
||||
@ -44,28 +44,40 @@ in
|
||||
};
|
||||
};
|
||||
|
||||
generic-templates = mkThemeDrv {
|
||||
themeName = "generic-templates";
|
||||
version = "2017-01-18";
|
||||
src = {
|
||||
rev = "af7cd527584322d8731a306a137a1794b18ad71a";
|
||||
sha256 = "18zk4qihi8iw5dxkm9sf6cjai1mf22l6q1ykkrgaxjd5709is0li";
|
||||
};
|
||||
meta = {
|
||||
license = stdenv.lib.licenses.mit;
|
||||
};
|
||||
};
|
||||
|
||||
hyde = mkThemeDrv {
|
||||
themeName = "hyde";
|
||||
version = "2016-12-03";
|
||||
version = "2017-01-17";
|
||||
src = {
|
||||
rev = "b6b9b77839959fbf3c9ca3a4488617fa1831cd28";
|
||||
sha256 = "0d1k03mjn08s3rpc5rdivb8ahr345kblhqyihxnfgd1501ih9pg6";
|
||||
rev = "22caf4edc738f399bb1013d8e968d111c7fa2a59";
|
||||
sha256 = "1a2j3m941vc2pyb1dz341ww5l3xblg527szfrfqh588lmsrkdqb6";
|
||||
};
|
||||
meta = {
|
||||
license = stdenv.lib.licenses.mit;
|
||||
longDescription = ''
|
||||
Hyde is a brazen two-column Jekyll theme that pairs a prominent sidebar
|
||||
with uncomplicated content.
|
||||
Port of the Jekyll Hyde theme to styx; Hyde is a brazen two-column
|
||||
Styx theme that pairs a prominent sidebar with uncomplicated content.
|
||||
'';
|
||||
};
|
||||
};
|
||||
|
||||
orbit = mkThemeDrv {
|
||||
themeName = "orbit";
|
||||
version = "2016-12-03";
|
||||
version = "2017-01-17";
|
||||
src = {
|
||||
rev = "1d41745c689c4336d4e2bfbb2483b80e67ec96e4";
|
||||
sha256 = "19pp9dykqxmrixn3cvqpdpcqy547y9n5izqhz0c4a11mmm0v3v64";
|
||||
rev = "b5896e25561f05e026b34d04ad95a647ddfc3d03";
|
||||
sha256 = "11p11f2d0swgjil5hfx153yw13p7pcp6fwx1bnvxrlfmmx9x2yj5";
|
||||
};
|
||||
meta = {
|
||||
license = stdenv.lib.licenses.cc-by-30;
|
||||
@ -77,10 +89,10 @@ in
|
||||
|
||||
showcase = mkThemeDrv {
|
||||
themeName = "showcase";
|
||||
version = "2016-12-04";
|
||||
version = "2017-01-17";
|
||||
src = {
|
||||
rev = "33feb0a09183e88d3580e9444ea36a255dffef60";
|
||||
sha256 = "01ighlnrja442ip5fhllydl77bfdz8yig80spmizivdfxdrdiyyf";
|
||||
rev = "1b4b9d4af29c05aaadfd58233f0e3f61fac726af";
|
||||
sha256 = "0mwd1ycwvlv15y431336wwlv8mdv0ikz1aymh3yxhjyxqllc2snk";
|
||||
};
|
||||
meta = {
|
||||
license = stdenv.lib.licenses.mit;
|
||||
|
@ -94,12 +94,12 @@ let
|
||||
|
||||
flash = stdenv.mkDerivation rec {
|
||||
name = "flashplayer-ppapi-${version}";
|
||||
version = "24.0.0.186";
|
||||
version = "24.0.0.194";
|
||||
|
||||
src = fetchzip {
|
||||
url = "https://fpdownload.adobe.com/pub/flashplayer/pdc/"
|
||||
+ "${version}/flash_player_ppapi_linux.x86_64.tar.gz";
|
||||
sha256 = "1pwayhnfjvb6gal5msw0k8rv4h6jvl0mpfsi0jqlka00cnyfjqpd";
|
||||
sha256 = "1l9gz81mwb4p1yj9n8s7hrkxdyw0amcpcc3295dq7zhsr35dm76z";
|
||||
stripRoot = false;
|
||||
};
|
||||
|
||||
|
@ -51,18 +51,18 @@ stdenv.mkDerivation rec {
|
||||
# You can get the upstream version and SHA-1 hash from the following URLs:
|
||||
# curl -s http://dl.google.com/linux/talkplugin/deb/dists/stable/main/binary-amd64/Packages | grep -E 'Version|SHA1'
|
||||
# curl -s http://dl.google.com/linux/talkplugin/deb/dists/stable/main/binary-i386/Packages | grep -E 'Version|SHA1'
|
||||
version = "5.41.0.0";
|
||||
version = "5.41.3.0";
|
||||
|
||||
src =
|
||||
if stdenv.system == "x86_64-linux" then
|
||||
fetchurl {
|
||||
url = "${baseURL}/google-talkplugin_${version}-1_amd64.deb";
|
||||
sha1 = "1c3cc0411444587b56178de4868eb5d0ff742ec0";
|
||||
sha1 = "0bbc3d6997ba22ce712d93e5bc336c894b54fc81";
|
||||
}
|
||||
else if stdenv.system == "i686-linux" then
|
||||
fetchurl {
|
||||
url = "${baseURL}/google-talkplugin_${version}-1_i386.deb";
|
||||
sha1 = "0d31d726c5e9a49917e2749e73386b1c0fdcb376";
|
||||
sha1 = "6eae0544858f85c68b0cc46d7786e990bd94f139";
|
||||
}
|
||||
else throw "Google Talk does not support your platform.";
|
||||
|
||||
|
@ -4,12 +4,12 @@ let
|
||||
then "linux-amd64"
|
||||
else "darwin-amd64";
|
||||
checksum = if stdenv.isLinux
|
||||
then "1797ab74720f122432eace591fb415e5e5f5db97f4b6608ca8dbe59bae988374"
|
||||
else "2b522dcfe27e987138f7826c79fb26a187075dd9be5c5a4c76fd6846bf109014";
|
||||
then "8bb6f9d336ca7913556e463c5b65eb8d69778c518df2fab0d20be943fbf0efc1"
|
||||
else "94c9f2d511aec3d4b7dcc5f0ce6f846506169b4eb7235e1dc137d08edf408098";
|
||||
in
|
||||
stdenv.mkDerivation rec {
|
||||
pname = "helm";
|
||||
version = "2.1.2";
|
||||
version = "2.1.3";
|
||||
name = "${pname}-${version}";
|
||||
|
||||
src = fetchurl {
|
||||
|
@ -17,13 +17,13 @@ with lib;
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
name = "kubernetes-${version}";
|
||||
version = "1.4.6";
|
||||
version = "1.5.2";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "kubernetes";
|
||||
repo = "kubernetes";
|
||||
rev = "v${version}";
|
||||
sha256 = "1n5ppzr9hnn7ljfdgx40rnkn6n6a9ya0qyrhjhpnbfwz5mdp8ws3";
|
||||
sha256 = "1ps9bn5gqknyjv0b9jvp7xg3cyd4anq11j785p22347al0b8w81v";
|
||||
};
|
||||
|
||||
buildInputs = [ makeWrapper which go rsync go-bindata ];
|
||||
@ -33,8 +33,9 @@ stdenv.mkDerivation rec {
|
||||
postPatch = ''
|
||||
substituteInPlace "hack/lib/golang.sh" --replace "_cgo" ""
|
||||
substituteInPlace "hack/generate-docs.sh" --replace "make" "make SHELL=${stdenv.shell}"
|
||||
substituteInPlace "hack/update-munge-docs.sh" --replace "make" "make SHELL=${stdenv.shell}"
|
||||
substituteInPlace "hack/update-munge-docs.sh" --replace "kube::util::git_upstream_remote_name" "echo origin"
|
||||
# hack/update-munge-docs.sh only performs some tests on the documentation.
|
||||
# They broke building k8s; disabled for now.
|
||||
echo "true" > "hack/update-munge-docs.sh"
|
||||
|
||||
patchShebangs ./hack
|
||||
'';
|
||||
|
@ -4,12 +4,12 @@ let
|
||||
then "linux-amd64"
|
||||
else "darwin-amd64";
|
||||
checksum = if stdenv.isLinux
|
||||
then "17r8w4lvj7fhh7qppi9z5i2fpqqry4s61zjr9zmsbybc5flnsw2j"
|
||||
else "0jf0kd1mm35qcf0ydr5yyzfq6qi8ifxchvpjsydb1gm1kikp5g3p";
|
||||
then "1g6k3va84nm2h9z2ywbbkc8jabgkarqlf8wv1sp2p6s6hw7hi5h3"
|
||||
else "0jpwyvgpl34n07chcyd7ldvk3jq3rx72cp8yf0bh7gnzr5lcnxnc";
|
||||
in
|
||||
stdenv.mkDerivation rec {
|
||||
pname = "minikube";
|
||||
version = "0.13.1";
|
||||
version = "0.15.0";
|
||||
name = "${pname}-${version}";
|
||||
|
||||
src = fetchurl {
|
||||
@ -30,9 +30,6 @@ stdenv.mkDerivation rec {
|
||||
installPhase = ''
|
||||
cp $src $out/bin/${pname}
|
||||
chmod +x $out/bin/${pname}
|
||||
|
||||
mkdir -p $out/share/bash-completion/completions/
|
||||
HOME=$(pwd) $out/bin/minikube completion bash > $out/share/bash-completion/completions/minikube
|
||||
'';
|
||||
|
||||
meta = with stdenv.lib; {
|
||||
|
@ -2,7 +2,7 @@
|
||||
|
||||
buildGoPackage rec {
|
||||
name = "terraform-${version}";
|
||||
version = "0.8.2";
|
||||
version = "0.8.4";
|
||||
rev = "v${version}";
|
||||
|
||||
goPackagePath = "github.com/hashicorp/terraform";
|
||||
@ -11,7 +11,7 @@ buildGoPackage rec {
|
||||
inherit rev;
|
||||
owner = "hashicorp";
|
||||
repo = "terraform";
|
||||
sha256 = "1645la750lqx2m57sbl6xg1cnqgwrfk5dhcw08wm4z7zxdnqys7b";
|
||||
sha256 = "0wjz7plzi7bgrbw22kgqpbai1j3rmqayrmjcp9dq6a361l9a0msw";
|
||||
};
|
||||
|
||||
postInstall = ''
|
||||
|
@ -2,16 +2,15 @@
|
||||
|
||||
buildGoPackage rec {
|
||||
name = "terragrunt-${version}";
|
||||
version = "0.8.0";
|
||||
rev = "v${version}";
|
||||
version = "0.9.1";
|
||||
|
||||
goPackagePath = "github.com/gruntwork-io/terragrunt";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
inherit rev;
|
||||
rev = "v${version}";
|
||||
owner = "gruntwork-io";
|
||||
repo = "terragrunt";
|
||||
sha256 = "1d035p2r6d8c1crxvpi5ayb9jx6f2pdgzw2197zhllavyi8n8dw1";
|
||||
sha256 = "19im4sazw09854lnzalljwx22qswly8ffyys3yrjkd2l9vfxfly3";
|
||||
};
|
||||
|
||||
goDeps = ./deps.nix;
|
||||
@ -20,7 +19,7 @@ buildGoPackage rec {
|
||||
|
||||
postInstall = ''
|
||||
wrapProgram $bin/bin/terragrunt \
|
||||
--suffix PATH : ${lib.makeBinPath [ terraform ]}
|
||||
--set TERRAGRUNT_TFPATH ${lib.getBin terraform}/bin/terraform
|
||||
'';
|
||||
|
||||
meta = with stdenv.lib; {
|
||||
|
@ -5,8 +5,8 @@
|
||||
fetch = {
|
||||
type = "git";
|
||||
url = "https://github.com/aws/aws-sdk-go";
|
||||
rev = "8649d278323ebf6bd20c9cd56ecb152b1c617375";
|
||||
sha256 = "0m2nxdlvi90vw68ds9qby291skc5d0dgqi3pkalr8ma3kd9r9khv";
|
||||
rev = "5e1afe1c0a077fb2da9b5f74232b790d99397ce8";
|
||||
sha256 = "073yx5acqybw0h2zshg209wmldm0g5h5x9bhbn6h08ak0r4i80al";
|
||||
};
|
||||
}
|
||||
{
|
||||
@ -32,8 +32,8 @@
|
||||
fetch = {
|
||||
type = "git";
|
||||
url = "https://github.com/mattn/go-zglob";
|
||||
rev = "0b24567ec079616e9897f635f542e3bf56abb3d0";
|
||||
sha256 = "0380dqsy0qdjranl5qfmmcr6a4g7sw4z26g1bld9y1s66madl03l";
|
||||
rev = "1783ae1a9f7ff3a79240e8c249d8b575d70a6528";
|
||||
sha256 = "0g4ih6swqpq0bqwsv5mv8ymicgr92xh9i6sm1793lqwb63x8ga1x";
|
||||
};
|
||||
}
|
||||
{
|
||||
|
@ -23,11 +23,11 @@
|
||||
let
|
||||
# NOTE: When updating, please also update in current stable,
|
||||
# as older versions stop working
|
||||
version = "16.4.30";
|
||||
version = "17.4.33";
|
||||
sha256 =
|
||||
{
|
||||
"x86_64-linux" = "0inwc12d14i6gyfllxbhizb434a7vy0l5nvc07kz0bca7c4665wb";
|
||||
"i686-linux" = "0pdn8558ll317k3jrrjir90pn6abwbm99y9wzdq39wxj4dmrlh6w";
|
||||
"x86_64-linux" = "0q3afwzd48mdv4mj4zbm6bvafj4hv18ianzhwjxz5dj6njv7s47y";
|
||||
"i686-linux" = "0wgq94if8wx08kqzsj6n20aia29h1qfn448ww63yn8dvkp6nlpya";
|
||||
}."${stdenv.system}" or (throw "system ${stdenv.system} not supported");
|
||||
|
||||
arch =
|
||||
|
@ -2,15 +2,16 @@
|
||||
|
||||
with stdenv.lib;
|
||||
stdenv.mkDerivation rec {
|
||||
name = "bitlbee-3.4.2";
|
||||
name = "bitlbee-3.5";
|
||||
|
||||
src = fetchurl {
|
||||
url = "mirror://bitlbee/src/${name}.tar.gz";
|
||||
sha256 = "0mza8lnfwibmklz8hdzg4f7p83hblf4h6fbf7d732kzpvra5bj39";
|
||||
sha256 = "06c371bjly38yrkvfwdh5rjfx9xfl7bszyhrlbldy0xk38c057al";
|
||||
};
|
||||
|
||||
buildInputs = [ gnutls glib pkgconfig libotr python ]
|
||||
++ optional doCheck check;
|
||||
nativeBuildInputs = [ pkgconfig ] ++ optional doCheck check;
|
||||
|
||||
buildInputs = [ gnutls glib libotr python ];
|
||||
|
||||
configureFlags = [
|
||||
"--gcov=1"
|
||||
|
@ -7,7 +7,7 @@
|
||||
, enableRST ? true
|
||||
, enableSpelling ? true, gtkspell2 ? null
|
||||
, enableNotifications ? false
|
||||
, enableOmemoPluginDependencies ? false
|
||||
, enableOmemoPluginDependencies ? true
|
||||
, extraPythonPackages ? pkgs: []
|
||||
}:
|
||||
|
||||
|
@ -3,7 +3,7 @@
|
||||
, breakpad, ffmpeg, openalSoft, openssl, zlib, libexif, lzma, libopus
|
||||
, gtk2, glib, cairo, pango, gdk_pixbuf, atk, libappindicator-gtk2
|
||||
, libwebp, libunity, dee, libdbusmenu-glib, libva-full, wayland
|
||||
, xcbutilrenderutil, icu, libSM, libICE, libproxy
|
||||
, xcbutilrenderutil, icu, libSM, libICE, libproxy, libvdpau
|
||||
|
||||
, libxcb, xcbutilwm, xcbutilimage, xcbutilkeysyms, libxkbcommon
|
||||
, libpng, libjpeg, freetype, harfbuzz, pcre16, xproto, libX11
|
||||
@ -19,20 +19,20 @@ let
|
||||
|
||||
in stdenv.mkDerivation rec {
|
||||
name = "telegram-desktop-${version}";
|
||||
version = "0.10.19";
|
||||
version = "1.0.0";
|
||||
qtVersion = lib.replaceStrings ["."] ["_"] packagedQt;
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "telegramdesktop";
|
||||
repo = "tdesktop";
|
||||
rev = "v${version}";
|
||||
sha256 = "1p07kxfmcd90sx9bq046x03h1h807vs0pn64lfghr6m6ln8z44s3";
|
||||
sha256 = "1qxzi82cgd8klk6rn83rzrmik0s76alarfaknknww5iw5px7gi8b";
|
||||
};
|
||||
|
||||
tgaur = fetchgit {
|
||||
url = "https://aur.archlinux.org/telegram-desktop.git";
|
||||
rev = "99bb0519f14e23fafb6884fe296d34b6f8bed5c3";
|
||||
sha256 = "0z5m3binbl06kk34plmfblhqz6hlnkbnjb93sam0c6c995k3sz82";
|
||||
rev = "957a76f9fb691486341bcf4781ad0ef3d16f6b69";
|
||||
sha256 = "01nrvvq0mrdyvamjgqr4z5aahyd1wrf28jyddpfsnixp2w5kxqj8";
|
||||
};
|
||||
|
||||
buildInputs = [
|
||||
@ -43,7 +43,7 @@ in stdenv.mkDerivation rec {
|
||||
# Qt dependencies
|
||||
libxcb xcbutilwm xcbutilimage xcbutilkeysyms libxkbcommon
|
||||
libpng libjpeg freetype harfbuzz pcre16 xproto libX11
|
||||
inputproto sqlite dbus libwebp wayland
|
||||
inputproto sqlite dbus libwebp wayland libvdpau
|
||||
];
|
||||
|
||||
nativeBuildInputs = [ pkgconfig gyp cmake ];
|
||||
|
@ -1,6 +1,9 @@
|
||||
{ stdenv, fetchurl, pkgconfig, intltool, file, makeWrapper
|
||||
, openssl, curl, libevent, inotify-tools, systemd, zlib
|
||||
, enableGTK3 ? false, gtk3
|
||||
, enableSystemd ? stdenv.isLinux
|
||||
, enableDaemon ? true
|
||||
, enableCli ? true
|
||||
}:
|
||||
|
||||
let
|
||||
@ -17,18 +20,24 @@ stdenv.mkDerivation rec {
|
||||
sha256 = "0pykmhi7pdmzq47glbj8i2im6iarp4wnj4l1pyvsrnba61f0939s";
|
||||
};
|
||||
|
||||
buildInputs = [ pkgconfig intltool file openssl curl libevent inotify-tools zlib ]
|
||||
buildInputs = [ pkgconfig intltool file openssl curl libevent zlib ]
|
||||
++ optionals enableGTK3 [ gtk3 makeWrapper ]
|
||||
++ optional stdenv.isLinux systemd;
|
||||
++ optionals enableSystemd [ systemd ]
|
||||
++ optionals stdenv.isLinux [ inotify-tools ];
|
||||
|
||||
postPatch = ''
|
||||
substituteInPlace ./configure \
|
||||
--replace "libsystemd-daemon" "libsystemd" \
|
||||
--replace "/usr/bin/file" "${file}/bin/file"
|
||||
--replace "/usr/bin/file" "${file}/bin/file" \
|
||||
--replace "test ! -d /Developer/SDKs/MacOSX10.5.sdk" "false"
|
||||
'';
|
||||
|
||||
configureFlags = [ "--with-systemd-daemon" ]
|
||||
++ [ "--enable-cli" ]
|
||||
configureFlags = [
|
||||
("--enable-cli=" + (if enableCli then "yes" else "no"))
|
||||
("--enable-daemon=" + (if enableDaemon then "yes" else "no"))
|
||||
"--disable-mac" # requires xcodebuild
|
||||
]
|
||||
++ optional enableSystemd "--with-systemd-daemon"
|
||||
++ optional enableGTK3 "--with-gtk";
|
||||
|
||||
preFixup = optionalString enableGTK3 /* gsettings schemas for file dialogues */ ''
|
||||
@ -37,6 +46,8 @@ stdenv.mkDerivation rec {
|
||||
--prefix XDG_DATA_DIRS : "$GSETTINGS_SCHEMAS_PATH"
|
||||
'';
|
||||
|
||||
NIX_LDFLAGS = optionalString stdenv.isDarwin "-framework CoreFoundation";
|
||||
|
||||
meta = with stdenv.lib; {
|
||||
description = "A fast, easy and free BitTorrent client";
|
||||
longDescription = ''
|
||||
@ -53,7 +64,7 @@ stdenv.mkDerivation rec {
|
||||
homepage = http://www.transmissionbt.com/;
|
||||
license = licenses.gpl2; # parts are under MIT
|
||||
maintainers = with maintainers; [ astsmtl vcunat wizeman ];
|
||||
platforms = platforms.linux;
|
||||
platforms = platforms.unix;
|
||||
};
|
||||
}
|
||||
|
||||
|
@ -1,14 +1,20 @@
|
||||
{ stdenv, lib, fetchFromGitHub, go, pkgs }:
|
||||
let
|
||||
removeExpr = ref: ''
|
||||
sed -i "s,${ref},$(echo "${ref}" | sed "s,$NIX_STORE/[^-]*,$NIX_STORE/eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee,"),g" \
|
||||
'';
|
||||
|
||||
in
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
version = "0.14.18";
|
||||
version = "0.14.19";
|
||||
name = "syncthing-${version}";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "syncthing";
|
||||
repo = "syncthing";
|
||||
rev = "v${version}";
|
||||
sha256 = "099r1n9awznv17ac1fm4ff6az40bvk6xxwaw8x8fx7ikqi1wv8vp";
|
||||
sha256 = "16wpw9ndx3x37mfnymp2fx9n2az9ibyr61zgq3mh2mszzzl7bkcg";
|
||||
};
|
||||
|
||||
buildInputs = [ go ];
|
||||
@ -42,6 +48,10 @@ stdenv.mkDerivation rec {
|
||||
--replace /usr/bin/syncthing $out/bin/syncthing
|
||||
'';
|
||||
|
||||
preFixup = ''
|
||||
find $out/bin -type f -exec ${removeExpr go} '{}' '+'
|
||||
'';
|
||||
|
||||
meta = with stdenv.lib; {
|
||||
homepage = https://www.syncthing.net/;
|
||||
description = "Open Source Continuous File Synchronization";
|
||||
|
35
pkgs/applications/office/tryton/default.nix
Normal file
35
pkgs/applications/office/tryton/default.nix
Normal file
@ -0,0 +1,35 @@
|
||||
{ stdenv, fetchurl, python2Packages, librsvg }:
|
||||
|
||||
with stdenv.lib;
|
||||
|
||||
python2Packages.buildPythonApplication rec {
|
||||
name = "tryton-${version}";
|
||||
version = "4.2.1";
|
||||
src = fetchurl {
|
||||
url = "mirror://pypi/t/tryton/${name}.tar.gz";
|
||||
sha256 = "1ry3kvbk769m8rwqa90pplfvmmgsv4jj9w1aqhv892smia8f0ybm";
|
||||
};
|
||||
propagatedBuildInputs = with python2Packages; [
|
||||
chardet
|
||||
dateutil
|
||||
pygtk
|
||||
librsvg
|
||||
];
|
||||
makeWrapperArgs = [
|
||||
''--set GDK_PIXBUF_MODULE_FILE "$GDK_PIXBUF_MODULE_FILE"''
|
||||
];
|
||||
meta = {
|
||||
description = "The client of the Tryton application platform";
|
||||
longDescription = ''
|
||||
The client for Tryton, a three-tier high-level general purpose
|
||||
application platform under the license GPL-3 written in Python and using
|
||||
PostgreSQL as database engine.
|
||||
|
||||
It is the core base of a complete business solution providing
|
||||
modularity, scalability and security.
|
||||
'';
|
||||
homepage = http://www.tryton.org/;
|
||||
license = licenses.gpl3Plus;
|
||||
maintainers = [ maintainers.johbo ];
|
||||
};
|
||||
}
|
@ -1,26 +1,25 @@
|
||||
{ stdenv, fetchurl, perl, nettools, java, polyml }:
|
||||
{ stdenv, fetchurl, perl, nettools, java, polyml, z3 }:
|
||||
# nettools needed for hostname
|
||||
|
||||
let
|
||||
dirname = "Isabelle2016";
|
||||
theories = ["HOL" "FOL" "ZF"];
|
||||
dirname = "Isabelle2016-1";
|
||||
in
|
||||
|
||||
stdenv.mkDerivation {
|
||||
name = "isabelle-2016";
|
||||
inherit dirname theories;
|
||||
name = "isabelle-2016-1";
|
||||
inherit dirname;
|
||||
|
||||
src = if stdenv.isDarwin
|
||||
then fetchurl {
|
||||
url = "http://isabelle.in.tum.de/website-${dirname}/dist/${dirname}.dmg";
|
||||
sha256 = "0wawf0cjc52h8hif1867p33qhlh6qz0fy5i2kr1gbf7psickd6iw";
|
||||
sha256 = "0553l7m2z32ajmiv6sgg11rh16n490w8i4q9hr7vx4zzggr9nrlr";
|
||||
}
|
||||
else fetchurl {
|
||||
url = "http://isabelle.in.tum.de/website-${dirname}/dist/${dirname}_linux.tar.gz";
|
||||
sha256 = "0jh1qrsyib13fycymwvw7dq7xfy4iyplwq0s65ash842cdzkbxb4";
|
||||
sha256 = "1w1cgfmmi1sr43z6hczyc29lxlnlz7dd8fa88ai44wkc13y05b5r";
|
||||
};
|
||||
|
||||
buildInputs = [ perl polyml ]
|
||||
buildInputs = [ perl polyml z3 ]
|
||||
++ stdenv.lib.optionals (!stdenv.isDarwin) [ nettools java ];
|
||||
|
||||
sourceRoot = dirname;
|
||||
@ -42,7 +41,14 @@ stdenv.mkDerivation {
|
||||
--replace '$POLYML_HOME/$PLATFORM/polyml' ${polyml}/bin/poly
|
||||
substituteInPlace lib/scripts/run-polyml* lib/scripts/polyml-version \
|
||||
--replace '$ML_HOME/poly' ${polyml}/bin/poly
|
||||
'';
|
||||
substituteInPlace contrib/z3*/etc/settings \
|
||||
--replace '$Z3_HOME/z3' '${z3}/bin/z3'
|
||||
'' + (if ! stdenv.isLinux then "" else ''
|
||||
arch=${if stdenv.system == "x86_64-linux" then "x86_64-linux" else "x86-linux"}
|
||||
for f in contrib/*/$arch/{bash_process,epclextract,eprover,nunchaku,SPASS}; do
|
||||
patchelf --set-interpreter $(cat ${stdenv.cc}/nix-support/dynamic-linker) "$f"
|
||||
done
|
||||
'');
|
||||
|
||||
installPhase = ''
|
||||
mkdir -p $out/bin
|
||||
|
@ -2,13 +2,13 @@
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
name = "lean-${version}";
|
||||
version = "2017-01-06";
|
||||
version = "2017-01-14";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "leanprover";
|
||||
repo = "lean";
|
||||
rev = "6f8ccb5873b6f72d735e700e25044e99c6ebb7b6";
|
||||
sha256 = "1nxbqdc6faxivbrifb7b9j5zl5kml9w5pa63afh93z2ng7mn0jyg";
|
||||
rev = "6e9a6d15dbfba3e8a1560d2cfcdbc7d81314d7bb";
|
||||
sha256 = "0wi1jssj1bi45rji4prlnvzs8nr48mqnj9yg5vnhah4rsjwl20km";
|
||||
};
|
||||
|
||||
buildInputs = [ gmp mpfr cmake gperftools ];
|
||||
|
21
pkgs/applications/version-management/git-crecord/default.nix
Normal file
21
pkgs/applications/version-management/git-crecord/default.nix
Normal file
@ -0,0 +1,21 @@
|
||||
{ stdenv, fetchFromGitHub, pythonPackages }:
|
||||
|
||||
pythonPackages.buildPythonApplication rec {
|
||||
name = "git-crecord-${version}";
|
||||
version = "20161216.0";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "andrewshadura";
|
||||
repo = "git-crecord";
|
||||
rev = version;
|
||||
sha256 = "0v3y90zi43myyi4k7q3892dcrbyi9dn2q6xgk12nw9db9zil269i";
|
||||
};
|
||||
|
||||
propagatedBuildInputs = with pythonPackages; [ docutils ];
|
||||
|
||||
meta = {
|
||||
homepage = https://github.com/andrewshadura/git-crecord;
|
||||
description = "Git subcommand to interactively select changes to commit or stage";
|
||||
license = stdenv.lib.licenses.gpl2Plus;
|
||||
};
|
||||
}
|
@ -1,14 +1,14 @@
|
||||
{ stdenv, ruby, bundler, fetchFromGitLab }:
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
version = "3.6.6";
|
||||
version = "4.1.1";
|
||||
name = "gitlab-shell-${version}";
|
||||
|
||||
srcs = fetchFromGitLab {
|
||||
owner = "gitlab-org";
|
||||
repo = "gitlab-shell";
|
||||
rev = "v${version}";
|
||||
sha256 = "1dg9ldsyly2r3amkl0d96m084az360b7nz9rhhf61x06d4z09xif";
|
||||
sha256 = "1i7dqs0csqcjwkvg8csz5f1zxy1inrzxzz3g9j618aldqxzjfgnr";
|
||||
};
|
||||
|
||||
buildInputs = [
|
||||
|
@ -1,14 +1,14 @@
|
||||
{ stdenv, fetchFromGitLab, git, go }:
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
version = "0.8.5";
|
||||
version = "1.2.1";
|
||||
name = "gitlab-workhorse-${version}";
|
||||
|
||||
srcs = fetchFromGitLab {
|
||||
owner = "gitlab-org";
|
||||
repo = "gitlab-workhorse";
|
||||
rev = "v${version}";
|
||||
sha256 = "0q6kd59sb5wm63r8zdvbkn4j6fk2n743pjhkbmg4rzngvjivxqzr";
|
||||
sha256 = "1z4iyymld3pssf1dwar0hy6c5hii79gk4k59mqj0mgy2k73405y0";
|
||||
};
|
||||
|
||||
buildInputs = [ git go ];
|
||||
|
@ -22,17 +22,17 @@ gem 'doorkeeper', '~> 4.2.0'
|
||||
gem 'omniauth', '~> 1.3.1'
|
||||
gem 'omniauth-auth0', '~> 1.4.1'
|
||||
gem 'omniauth-azure-oauth2', '~> 0.0.6'
|
||||
gem 'omniauth-bitbucket', '~> 0.0.2'
|
||||
gem 'omniauth-cas3', '~> 1.1.2'
|
||||
gem 'omniauth-facebook', '~> 4.0.0'
|
||||
gem 'omniauth-github', '~> 1.1.1'
|
||||
gem 'omniauth-gitlab', '~> 1.0.0'
|
||||
gem 'omniauth-gitlab', '~> 1.0.2'
|
||||
gem 'omniauth-google-oauth2', '~> 0.4.1'
|
||||
gem 'omniauth-kerberos', '~> 0.3.0', group: :kerberos
|
||||
gem 'omniauth-saml', '~> 1.7.0'
|
||||
gem 'omniauth-shibboleth', '~> 1.2.0'
|
||||
gem 'omniauth-twitter', '~> 1.2.0'
|
||||
gem 'omniauth_crowd', '~> 2.2.0'
|
||||
gem 'omniauth-authentiq', '~> 0.2.0'
|
||||
gem 'rack-oauth2', '~> 1.2.1'
|
||||
gem 'jwt'
|
||||
|
||||
@ -67,8 +67,8 @@ gem 'gollum-rugged_adapter', '~> 0.4.2', require: false
|
||||
gem 'github-linguist', '~> 4.7.0', require: 'linguist'
|
||||
|
||||
# API
|
||||
gem 'grape', '~> 0.15.0'
|
||||
gem 'grape-entity', '~> 0.4.2'
|
||||
gem 'grape', '~> 0.18.0'
|
||||
gem 'grape-entity', '~> 0.6.0'
|
||||
gem 'rack-cors', '~> 0.4.0', require: 'rack/cors'
|
||||
|
||||
# Pagination
|
||||
@ -85,13 +85,15 @@ gem 'dropzonejs-rails', '~> 0.7.1'
|
||||
|
||||
# for backups
|
||||
gem 'fog-aws', '~> 0.9'
|
||||
gem 'fog-azure', '~> 0.0'
|
||||
gem 'fog-core', '~> 1.40'
|
||||
gem 'fog-google', '~> 0.5'
|
||||
gem 'fog-local', '~> 0.3'
|
||||
gem 'fog-google', '~> 0.3'
|
||||
gem 'fog-openstack', '~> 0.1'
|
||||
gem 'fog-rackspace', '~> 0.1.1'
|
||||
|
||||
# for Google storage
|
||||
gem 'google-api-client', '~> 0.8.6'
|
||||
|
||||
# for aws storage
|
||||
gem 'unf', '~> 0.1.4'
|
||||
|
||||
@ -100,11 +102,11 @@ gem 'seed-fu', '~> 2.3.5'
|
||||
|
||||
# Markdown and HTML processing
|
||||
gem 'html-pipeline', '~> 1.11.0'
|
||||
gem 'deckar01-task_list', '1.0.5', require: 'task_list/railtie'
|
||||
gem 'gitlab-markup', '~> 1.5.0'
|
||||
gem 'deckar01-task_list', '1.0.6', require: 'task_list/railtie'
|
||||
gem 'gitlab-markup', '~> 1.5.1'
|
||||
gem 'redcarpet', '~> 3.3.3'
|
||||
gem 'RedCloth', '~> 4.3.2'
|
||||
gem 'rdoc', '~>3.6'
|
||||
gem 'rdoc', '~> 4.2'
|
||||
gem 'org-ruby', '~> 0.9.12'
|
||||
gem 'creole', '~> 0.5.0'
|
||||
gem 'wikicloth', '0.8.1'
|
||||
@ -117,7 +119,7 @@ gem 'truncato', '~> 0.7.8'
|
||||
gem 'nokogiri', '~> 1.6.7', '>= 1.6.7.2', '< 1.6.8'
|
||||
|
||||
# Diffs
|
||||
gem 'diffy', '~> 3.0.3'
|
||||
gem 'diffy', '~> 3.1.0'
|
||||
|
||||
# Application server
|
||||
group :unicorn do
|
||||
@ -134,9 +136,10 @@ gem 'after_commit_queue', '~> 1.3.0'
|
||||
gem 'acts-as-taggable-on', '~> 4.0'
|
||||
|
||||
# Background jobs
|
||||
gem 'sidekiq', '~> 4.2'
|
||||
gem 'sidekiq-cron', '~> 0.4.0'
|
||||
gem 'sidekiq', '~> 4.2.7'
|
||||
gem 'sidekiq-cron', '~> 0.4.4'
|
||||
gem 'redis-namespace', '~> 1.5.2'
|
||||
gem 'sidekiq-limit_fetch', '~> 3.4'
|
||||
|
||||
# HTTP requests
|
||||
gem 'httparty', '~> 0.13.3'
|
||||
@ -152,7 +155,7 @@ gem 'settingslogic', '~> 2.0.9'
|
||||
gem 'version_sorter', '~> 2.1.0'
|
||||
|
||||
# Cache
|
||||
gem 'redis-rails', '~> 4.0.0'
|
||||
gem 'redis-rails', '~> 5.0.1'
|
||||
|
||||
# Redis
|
||||
gem 'redis', '~> 3.2'
|
||||
@ -161,6 +164,9 @@ gem 'connection_pool', '~> 2.0'
|
||||
# HipChat integration
|
||||
gem 'hipchat', '~> 1.5.0'
|
||||
|
||||
# JIRA integration
|
||||
gem 'jira-ruby', '~> 1.1.2'
|
||||
|
||||
# Flowdock integration
|
||||
gem 'gitlab-flowdock-git-hook', '~> 1.0.1'
|
||||
|
||||
@ -168,7 +174,7 @@ gem 'gitlab-flowdock-git-hook', '~> 1.0.1'
|
||||
gem 'gemnasium-gitlab-service', '~> 0.2'
|
||||
|
||||
# Slack integration
|
||||
gem 'slack-notifier', '~> 1.2.0'
|
||||
gem 'slack-notifier', '~> 1.5.1'
|
||||
|
||||
# Asana integration
|
||||
gem 'asana', '~> 0.4.0'
|
||||
@ -176,6 +182,9 @@ gem 'asana', '~> 0.4.0'
|
||||
# FogBugz integration
|
||||
gem 'ruby-fogbugz', '~> 0.2.1'
|
||||
|
||||
# Kubernetes integration
|
||||
gem 'kubeclient', '~> 2.2.0'
|
||||
|
||||
# d3
|
||||
gem 'd3_rails', '~> 3.5.0'
|
||||
|
||||
@ -193,7 +202,7 @@ gem 'loofah', '~> 2.0.3'
|
||||
gem 'licensee', '~> 8.0.0'
|
||||
|
||||
# Protect against bruteforcing
|
||||
gem 'rack-attack', '~> 4.3.1'
|
||||
gem 'rack-attack', '~> 4.4.1'
|
||||
|
||||
# Ace editor
|
||||
gem 'ace-rails-ap', '~> 4.1.0'
|
||||
@ -214,8 +223,7 @@ gem 'chronic_duration', '~> 0.10.6'
|
||||
gem 'sass-rails', '~> 5.0.6'
|
||||
gem 'coffee-rails', '~> 4.1.0'
|
||||
gem 'uglifier', '~> 2.7.2'
|
||||
gem 'turbolinks', '~> 2.5.0'
|
||||
gem 'jquery-turbolinks', '~> 2.1.0'
|
||||
gem 'gitlab-turbolinks-classic', '~> 2.5', '>= 2.5.6'
|
||||
|
||||
gem 'addressable', '~> 2.3.8'
|
||||
gem 'bootstrap-sass', '~> 3.3.0'
|
||||
@ -257,22 +265,19 @@ group :development do
|
||||
gem 'better_errors', '~> 1.0.1'
|
||||
gem 'binding_of_caller', '~> 0.7.2'
|
||||
|
||||
# Docs generator
|
||||
gem 'sdoc', '~> 0.3.20'
|
||||
|
||||
# thin instead webrick
|
||||
gem 'thin', '~> 1.7.0'
|
||||
end
|
||||
|
||||
group :development, :test do
|
||||
gem 'byebug', '~> 8.2.1', platform: :mri
|
||||
gem 'pry-byebug', '~> 3.4.1', platform: :mri
|
||||
gem 'pry-rails', '~> 0.3.4'
|
||||
|
||||
gem 'awesome_print', '~> 1.2.0', require: false
|
||||
gem 'fuubar', '~> 2.0.0'
|
||||
|
||||
gem 'database_cleaner', '~> 1.5.0'
|
||||
gem 'factory_girl_rails', '~> 4.6.0'
|
||||
gem 'factory_girl_rails', '~> 4.7.0'
|
||||
gem 'rspec-rails', '~> 3.5.0'
|
||||
gem 'rspec-retry', '~> 0.4.5'
|
||||
gem 'spinach-rails', '~> 0.2.1'
|
||||
@ -310,6 +315,8 @@ group :development, :test do
|
||||
gem 'knapsack', '~> 1.11.0'
|
||||
|
||||
gem 'activerecord_sane_schema_dumper', '0.2'
|
||||
|
||||
gem 'stackprof', '~> 0.2.10'
|
||||
end
|
||||
|
||||
group :test do
|
||||
@ -326,21 +333,18 @@ gem 'newrelic_rpm', '~> 3.16'
|
||||
|
||||
gem 'octokit', '~> 4.3.0'
|
||||
|
||||
gem 'mail_room', '~> 0.8.1'
|
||||
gem 'mail_room', '~> 0.9.0'
|
||||
|
||||
gem 'email_reply_parser', '~> 0.5.8'
|
||||
gem 'html2text'
|
||||
|
||||
gem 'ruby-prof', '~> 0.16.2'
|
||||
|
||||
## CI
|
||||
gem 'activerecord-session_store', '~> 1.0.0'
|
||||
gem 'nested_form', '~> 0.3.2'
|
||||
|
||||
# OAuth
|
||||
gem 'oauth2', '~> 1.2.0'
|
||||
|
||||
# Soft deletion
|
||||
gem 'paranoia', '~> 2.0'
|
||||
gem 'paranoia', '~> 2.2'
|
||||
|
||||
# Health check
|
||||
gem 'health_check', '~> 2.2.0'
|
||||
|
@ -34,12 +34,6 @@ GEM
|
||||
arel (~> 6.0)
|
||||
activerecord-nulldb-adapter (0.3.3)
|
||||
activerecord (>= 2.0.0)
|
||||
activerecord-session_store (1.0.0)
|
||||
actionpack (>= 4.0, < 5.1)
|
||||
activerecord (>= 4.0, < 5.1)
|
||||
multi_json (~> 1.11, >= 1.11.2)
|
||||
rack (>= 1.5.2, < 3)
|
||||
railties (>= 4.0, < 5.1)
|
||||
activerecord_sane_schema_dumper (0.2)
|
||||
rails (>= 4, < 5)
|
||||
activesupport (4.2.7.1)
|
||||
@ -66,6 +60,10 @@ GEM
|
||||
attr_encrypted (3.0.3)
|
||||
encryptor (~> 3.0.0)
|
||||
attr_required (1.0.0)
|
||||
autoparse (0.3.3)
|
||||
addressable (>= 2.3.1)
|
||||
extlib (>= 0.9.15)
|
||||
multi_json (>= 1.0.0)
|
||||
autoprefixer-rails (6.2.3)
|
||||
execjs
|
||||
json
|
||||
@ -74,21 +72,6 @@ GEM
|
||||
descendants_tracker (~> 0.0.4)
|
||||
ice_nine (~> 0.11.0)
|
||||
thread_safe (~> 0.3, >= 0.3.1)
|
||||
azure (0.7.5)
|
||||
addressable (~> 2.3)
|
||||
azure-core (~> 0.1)
|
||||
faraday (~> 0.9)
|
||||
faraday_middleware (~> 0.10)
|
||||
json (~> 1.8)
|
||||
mime-types (>= 1, < 3.0)
|
||||
nokogiri (~> 1.6)
|
||||
systemu (~> 2.6)
|
||||
thor (~> 0.19)
|
||||
uuid (~> 2.0)
|
||||
azure-core (0.1.2)
|
||||
faraday (~> 0.9)
|
||||
faraday_middleware (~> 0.10)
|
||||
nokogiri (~> 1.6)
|
||||
babel-source (5.8.35)
|
||||
babel-transpiler (0.7.0)
|
||||
babel-source (>= 4.0, < 6)
|
||||
@ -114,7 +97,7 @@ GEM
|
||||
bundler-audit (0.5.0)
|
||||
bundler (~> 1.2)
|
||||
thor (~> 0.18)
|
||||
byebug (8.2.1)
|
||||
byebug (9.0.6)
|
||||
capybara (2.6.2)
|
||||
addressable
|
||||
mime-types (>= 1.16)
|
||||
@ -149,7 +132,7 @@ GEM
|
||||
coffee-script-source (1.10.0)
|
||||
colorize (0.7.7)
|
||||
concurrent-ruby (1.0.2)
|
||||
connection_pool (2.2.0)
|
||||
connection_pool (2.2.1)
|
||||
crack (0.4.3)
|
||||
safe_yaml (~> 1.0.0)
|
||||
creole (0.5.0)
|
||||
@ -161,7 +144,7 @@ GEM
|
||||
database_cleaner (1.5.3)
|
||||
debug_inspector (0.0.2)
|
||||
debugger-ruby_core_source (1.3.8)
|
||||
deckar01-task_list (1.0.5)
|
||||
deckar01-task_list (1.0.6)
|
||||
activesupport (~> 4.0)
|
||||
html-pipeline
|
||||
rack (~> 1.0)
|
||||
@ -182,8 +165,10 @@ GEM
|
||||
railties
|
||||
rotp (~> 2.0)
|
||||
diff-lcs (1.2.5)
|
||||
diffy (3.0.7)
|
||||
diffy (3.1.0)
|
||||
docile (1.1.5)
|
||||
domain_name (0.5.20161021)
|
||||
unf (>= 0.0.5, < 1.0.0)
|
||||
doorkeeper (4.2.0)
|
||||
railties (>= 4.2)
|
||||
dropzonejs-rails (0.7.2)
|
||||
@ -200,10 +185,11 @@ GEM
|
||||
excon (0.52.0)
|
||||
execjs (2.6.0)
|
||||
expression_parser (0.9.0)
|
||||
factory_girl (4.5.0)
|
||||
extlib (0.9.16)
|
||||
factory_girl (4.7.0)
|
||||
activesupport (>= 3.0.0)
|
||||
factory_girl_rails (4.6.0)
|
||||
factory_girl (~> 4.5.0)
|
||||
factory_girl_rails (4.7.0)
|
||||
factory_girl (~> 4.7.0)
|
||||
railties (>= 3.0.0)
|
||||
faraday (0.9.2)
|
||||
multipart-post (>= 1.2, < 3)
|
||||
@ -225,16 +211,11 @@ GEM
|
||||
fog-json (~> 1.0)
|
||||
fog-xml (~> 0.1)
|
||||
ipaddress (~> 0.8)
|
||||
fog-azure (0.0.2)
|
||||
azure (~> 0.6)
|
||||
fog-core (~> 1.27)
|
||||
fog-json (~> 1.0)
|
||||
fog-xml (~> 0.1)
|
||||
fog-core (1.42.0)
|
||||
builder
|
||||
excon (~> 0.49)
|
||||
formatador (~> 0.2)
|
||||
fog-google (0.3.2)
|
||||
fog-google (0.5.0)
|
||||
fog-core
|
||||
fog-json
|
||||
fog-xml
|
||||
@ -284,7 +265,9 @@ GEM
|
||||
diff-lcs (~> 1.1)
|
||||
mime-types (>= 1.16, < 3)
|
||||
posix-spawn (~> 0.3)
|
||||
gitlab-markup (1.5.0)
|
||||
gitlab-markup (1.5.1)
|
||||
gitlab-turbolinks-classic (2.5.6)
|
||||
coffee-rails
|
||||
gitlab_git (10.7.0)
|
||||
activesupport (~> 4.0)
|
||||
charlock_holmes (~> 0.7.3)
|
||||
@ -314,17 +297,36 @@ GEM
|
||||
json
|
||||
multi_json
|
||||
request_store (>= 1.0)
|
||||
grape (0.15.0)
|
||||
google-api-client (0.8.7)
|
||||
activesupport (>= 3.2, < 5.0)
|
||||
addressable (~> 2.3)
|
||||
autoparse (~> 0.3)
|
||||
extlib (~> 0.9)
|
||||
faraday (~> 0.9)
|
||||
googleauth (~> 0.3)
|
||||
launchy (~> 2.4)
|
||||
multi_json (~> 1.10)
|
||||
retriable (~> 1.4)
|
||||
signet (~> 0.6)
|
||||
googleauth (0.5.1)
|
||||
faraday (~> 0.9)
|
||||
jwt (~> 1.4)
|
||||
logging (~> 2.0)
|
||||
memoist (~> 0.12)
|
||||
multi_json (~> 1.11)
|
||||
os (~> 0.9)
|
||||
signet (~> 0.7)
|
||||
grape (0.18.0)
|
||||
activesupport
|
||||
builder
|
||||
hashie (>= 2.1.0)
|
||||
multi_json (>= 1.3.2)
|
||||
multi_xml (>= 0.5.2)
|
||||
mustermann-grape (~> 0.4.0)
|
||||
rack (>= 1.3.0)
|
||||
rack-accept
|
||||
rack-mount
|
||||
virtus (>= 1.0.0)
|
||||
grape-entity (0.4.8)
|
||||
grape-entity (0.6.0)
|
||||
activesupport
|
||||
multi_json (>= 1.3.2)
|
||||
haml (4.0.7)
|
||||
@ -347,7 +349,18 @@ GEM
|
||||
html-pipeline (1.11.0)
|
||||
activesupport (>= 2)
|
||||
nokogiri (~> 1.4)
|
||||
html2text (0.2.0)
|
||||
nokogiri (~> 1.6)
|
||||
htmlentities (4.3.4)
|
||||
http (0.9.8)
|
||||
addressable (~> 2.3)
|
||||
http-cookie (~> 1.0)
|
||||
http-form_data (~> 1.0.1)
|
||||
http_parser.rb (~> 0.6.0)
|
||||
http-cookie (1.0.3)
|
||||
domain_name (~> 0.5)
|
||||
http-form_data (1.0.1)
|
||||
http_parser.rb (0.6.0)
|
||||
httparty (0.13.7)
|
||||
json (~> 1.8)
|
||||
multi_xml (>= 0.5.2)
|
||||
@ -358,14 +371,14 @@ GEM
|
||||
cause
|
||||
json
|
||||
ipaddress (0.8.3)
|
||||
jira-ruby (1.1.2)
|
||||
activesupport
|
||||
oauth (~> 0.5, >= 0.5.0)
|
||||
jquery-atwho-rails (1.3.2)
|
||||
jquery-rails (4.1.1)
|
||||
rails-dom-testing (>= 1, < 3)
|
||||
railties (>= 4.2.0)
|
||||
thor (>= 0.14, < 2.0)
|
||||
jquery-turbolinks (2.1.0)
|
||||
railties (>= 3.1.0)
|
||||
turbolinks
|
||||
jquery-ui-rails (5.0.5)
|
||||
railties (>= 3.2.16)
|
||||
json (1.8.3)
|
||||
@ -379,6 +392,10 @@ GEM
|
||||
knapsack (1.11.0)
|
||||
rake
|
||||
timecop (>= 0.1.0)
|
||||
kubeclient (2.2.0)
|
||||
http (= 0.9.8)
|
||||
recursive-open-struct (= 1.0.0)
|
||||
rest-client
|
||||
launchy (2.4.3)
|
||||
addressable (~> 2.3)
|
||||
letter_opener (1.4.1)
|
||||
@ -398,13 +415,16 @@ GEM
|
||||
listen (3.0.5)
|
||||
rb-fsevent (>= 0.9.3)
|
||||
rb-inotify (>= 0.9)
|
||||
little-plugger (1.1.4)
|
||||
logging (2.1.0)
|
||||
little-plugger (~> 1.1)
|
||||
multi_json (~> 1.10)
|
||||
loofah (2.0.3)
|
||||
nokogiri (>= 1.5.9)
|
||||
macaddr (1.7.1)
|
||||
systemu (~> 2.6.2)
|
||||
mail (2.6.4)
|
||||
mime-types (>= 1.16, < 4)
|
||||
mail_room (0.8.1)
|
||||
mail_room (0.9.0)
|
||||
memoist (0.15.0)
|
||||
method_source (0.8.2)
|
||||
mime-types (2.99.3)
|
||||
mimemagic (0.3.0)
|
||||
@ -414,16 +434,20 @@ GEM
|
||||
multi_json (1.12.1)
|
||||
multi_xml (0.5.5)
|
||||
multipart-post (2.0.0)
|
||||
mustermann (0.4.0)
|
||||
tool (~> 0.2)
|
||||
mustermann-grape (0.4.0)
|
||||
mustermann (= 0.4.0)
|
||||
mysql2 (0.3.20)
|
||||
nested_form (0.3.2)
|
||||
net-ldap (0.12.1)
|
||||
net-ssh (3.0.1)
|
||||
netrc (0.11.0)
|
||||
newrelic_rpm (3.16.0.318)
|
||||
nokogiri (1.6.7.2)
|
||||
mini_portile2 (~> 2.1.0)
|
||||
pkg-config (~> 1.1.7)
|
||||
numerizer (0.1.1)
|
||||
oauth (0.4.7)
|
||||
oauth (0.5.1)
|
||||
oauth2 (1.2.0)
|
||||
faraday (>= 0.8, < 0.10)
|
||||
jwt (~> 1.0)
|
||||
@ -438,14 +462,12 @@ GEM
|
||||
rack (>= 1.0, < 3)
|
||||
omniauth-auth0 (1.4.1)
|
||||
omniauth-oauth2 (~> 1.1)
|
||||
omniauth-authentiq (0.2.2)
|
||||
omniauth-oauth2 (~> 1.3, >= 1.3.1)
|
||||
omniauth-azure-oauth2 (0.0.6)
|
||||
jwt (~> 1.0)
|
||||
omniauth (~> 1.0)
|
||||
omniauth-oauth2 (~> 1.1)
|
||||
omniauth-bitbucket (0.0.2)
|
||||
multi_json (~> 1.7)
|
||||
omniauth (~> 1.1)
|
||||
omniauth-oauth (~> 1.0)
|
||||
omniauth-cas3 (1.1.3)
|
||||
addressable (~> 2.3)
|
||||
nokogiri (~> 1.6.6)
|
||||
@ -455,7 +477,7 @@ GEM
|
||||
omniauth-github (1.1.2)
|
||||
omniauth (~> 1.0)
|
||||
omniauth-oauth2 (~> 1.1)
|
||||
omniauth-gitlab (1.0.1)
|
||||
omniauth-gitlab (1.0.2)
|
||||
omniauth (~> 1.0)
|
||||
omniauth-oauth2 (~> 1.0)
|
||||
omniauth-google-oauth2 (0.4.1)
|
||||
@ -490,8 +512,9 @@ GEM
|
||||
org-ruby (0.9.12)
|
||||
rubypants (~> 0.2)
|
||||
orm_adapter (0.5.0)
|
||||
paranoia (2.1.4)
|
||||
activerecord (~> 4.0)
|
||||
os (0.9.6)
|
||||
paranoia (2.2.0)
|
||||
activerecord (>= 4.0, < 5.1)
|
||||
parser (2.3.1.4)
|
||||
ast (~> 2.2)
|
||||
pg (0.18.4)
|
||||
@ -513,17 +536,18 @@ GEM
|
||||
coderay (~> 1.1.0)
|
||||
method_source (~> 0.8.1)
|
||||
slop (~> 3.4)
|
||||
pry-byebug (3.4.1)
|
||||
byebug (~> 9.0)
|
||||
pry (~> 0.10)
|
||||
pry-rails (0.3.4)
|
||||
pry (>= 0.9.10)
|
||||
pyu-ruby-sasl (0.0.3.3)
|
||||
rack (1.6.4)
|
||||
rack (1.6.5)
|
||||
rack-accept (0.4.5)
|
||||
rack (>= 0.4)
|
||||
rack-attack (4.3.1)
|
||||
rack-attack (4.4.1)
|
||||
rack
|
||||
rack-cors (0.4.0)
|
||||
rack-mount (0.8.3)
|
||||
rack (>= 1.0.0)
|
||||
rack-oauth2 (1.2.3)
|
||||
activesupport (>= 2.3)
|
||||
attr_required (>= 0.0.5)
|
||||
@ -566,38 +590,44 @@ GEM
|
||||
ffi (>= 0.5.0)
|
||||
rblineprof (0.3.6)
|
||||
debugger-ruby_core_source (~> 1.3)
|
||||
rdoc (3.12.2)
|
||||
rdoc (4.2.2)
|
||||
json (~> 1.4)
|
||||
recaptcha (3.0.0)
|
||||
json
|
||||
recursive-open-struct (1.0.0)
|
||||
redcarpet (3.3.3)
|
||||
redis (3.2.2)
|
||||
redis-actionpack (4.0.1)
|
||||
actionpack (~> 4)
|
||||
redis-rack (~> 1.5.0)
|
||||
redis-store (~> 1.1.0)
|
||||
redis-activesupport (4.1.5)
|
||||
activesupport (>= 3, < 5)
|
||||
redis-store (~> 1.1.0)
|
||||
redis-actionpack (5.0.1)
|
||||
actionpack (>= 4.0, < 6)
|
||||
redis-rack (>= 1, < 3)
|
||||
redis-store (>= 1.1.0, < 1.4.0)
|
||||
redis-activesupport (5.0.1)
|
||||
activesupport (>= 3, < 6)
|
||||
redis-store (~> 1.2.0)
|
||||
redis-namespace (1.5.2)
|
||||
redis (~> 3.0, >= 3.0.4)
|
||||
redis-rack (1.5.0)
|
||||
redis-rack (1.6.0)
|
||||
rack (~> 1.5)
|
||||
redis-store (~> 1.1.0)
|
||||
redis-rails (4.0.0)
|
||||
redis-actionpack (~> 4)
|
||||
redis-activesupport (~> 4)
|
||||
redis-store (~> 1.1.0)
|
||||
redis-store (1.1.7)
|
||||
redis-store (~> 1.2.0)
|
||||
redis-rails (5.0.1)
|
||||
redis-actionpack (~> 5.0.0)
|
||||
redis-activesupport (~> 5.0.0)
|
||||
redis-store (~> 1.2.0)
|
||||
redis-store (1.2.0)
|
||||
redis (>= 2.2)
|
||||
request_store (1.3.1)
|
||||
rerun (0.11.0)
|
||||
listen (~> 3.0)
|
||||
responders (2.3.0)
|
||||
railties (>= 4.2.0, < 5.1)
|
||||
rest-client (2.0.0)
|
||||
http-cookie (>= 1.0.2, < 2.0)
|
||||
mime-types (>= 1.16, < 4.0)
|
||||
netrc (~> 0.8)
|
||||
retriable (1.4.1)
|
||||
rinku (2.0.0)
|
||||
rotp (2.1.2)
|
||||
rouge (2.0.6)
|
||||
rouge (2.0.7)
|
||||
rqrcode (0.7.0)
|
||||
chunky_png
|
||||
rqrcode-rails3 (0.1.7)
|
||||
@ -662,9 +692,6 @@ GEM
|
||||
scss_lint (0.47.1)
|
||||
rake (>= 0.9, < 11)
|
||||
sass (~> 3.4.15)
|
||||
sdoc (0.3.20)
|
||||
json (>= 1.1.3)
|
||||
rdoc (~> 3.10)
|
||||
seed-fu (2.3.6)
|
||||
activerecord (>= 3.1)
|
||||
activesupport (>= 3.1)
|
||||
@ -678,21 +705,28 @@ GEM
|
||||
rack
|
||||
shoulda-matchers (2.8.0)
|
||||
activesupport (>= 3.0.0)
|
||||
sidekiq (4.2.1)
|
||||
sidekiq (4.2.7)
|
||||
concurrent-ruby (~> 1.0)
|
||||
connection_pool (~> 2.2, >= 2.2.0)
|
||||
rack-protection (~> 1.5)
|
||||
rack-protection (>= 1.5.0)
|
||||
redis (~> 3.2, >= 3.2.1)
|
||||
sidekiq-cron (0.4.0)
|
||||
sidekiq-cron (0.4.4)
|
||||
redis-namespace (>= 1.5.2)
|
||||
rufus-scheduler (>= 2.0.24)
|
||||
sidekiq (>= 4.0.0)
|
||||
sidekiq (>= 4.2.1)
|
||||
sidekiq-limit_fetch (3.4.0)
|
||||
sidekiq (>= 4)
|
||||
signet (0.7.3)
|
||||
addressable (~> 2.3)
|
||||
faraday (~> 0.9)
|
||||
jwt (~> 1.5)
|
||||
multi_json (~> 1.10)
|
||||
simplecov (0.12.0)
|
||||
docile (~> 1.1.0)
|
||||
json (>= 1.8, < 3)
|
||||
simplecov-html (~> 0.10.0)
|
||||
simplecov-html (0.10.0)
|
||||
slack-notifier (1.2.1)
|
||||
slack-notifier (1.5.1)
|
||||
slop (3.6.0)
|
||||
spinach (0.8.10)
|
||||
colorize
|
||||
@ -722,6 +756,7 @@ GEM
|
||||
actionpack (>= 4.0)
|
||||
activesupport (>= 4.0)
|
||||
sprockets (>= 3.0.0)
|
||||
stackprof (0.2.10)
|
||||
state_machines (0.4.0)
|
||||
state_machines-activemodel (0.4.0)
|
||||
activemodel (>= 4.1, < 5.1)
|
||||
@ -733,7 +768,6 @@ GEM
|
||||
sys-filesystem (1.1.6)
|
||||
ffi
|
||||
sysexits (1.2.0)
|
||||
systemu (2.6.5)
|
||||
teaspoon (1.1.5)
|
||||
railties (>= 3.2.5, < 6)
|
||||
teaspoon-jasmine (2.2.0)
|
||||
@ -750,11 +784,10 @@ GEM
|
||||
tilt (2.0.5)
|
||||
timecop (0.8.1)
|
||||
timfel-krb5-auth (0.8.3)
|
||||
tool (0.2.3)
|
||||
truncato (0.7.8)
|
||||
htmlentities (~> 4.3.1)
|
||||
nokogiri (~> 1.6.1)
|
||||
turbolinks (2.5.3)
|
||||
coffee-rails
|
||||
tzinfo (1.2.2)
|
||||
thread_safe (~> 0.1)
|
||||
u2f (0.2.1)
|
||||
@ -773,8 +806,6 @@ GEM
|
||||
get_process_mem (~> 0)
|
||||
unicorn (>= 4, < 6)
|
||||
uniform_notifier (1.10.0)
|
||||
uuid (2.3.8)
|
||||
macaddr (~> 1.0)
|
||||
version_sorter (2.1.0)
|
||||
virtus (1.0.5)
|
||||
axiom-types (~> 0.1)
|
||||
@ -810,7 +841,6 @@ DEPENDENCIES
|
||||
RedCloth (~> 4.3.2)
|
||||
ace-rails-ap (~> 4.1.0)
|
||||
activerecord-nulldb-adapter
|
||||
activerecord-session_store (~> 1.0.0)
|
||||
activerecord_sane_schema_dumper (= 0.2)
|
||||
acts-as-taggable-on (~> 4.0)
|
||||
addressable (~> 2.3.8)
|
||||
@ -831,7 +861,6 @@ DEPENDENCIES
|
||||
browser (~> 2.2)
|
||||
bullet (~> 5.2.0)
|
||||
bundler-audit (~> 0.5.0)
|
||||
byebug (~> 8.2.1)
|
||||
capybara (~> 2.6.2)
|
||||
capybara-screenshot (~> 1.0.0)
|
||||
carrierwave (~> 0.10.0)
|
||||
@ -843,22 +872,21 @@ DEPENDENCIES
|
||||
creole (~> 0.5.0)
|
||||
d3_rails (~> 3.5.0)
|
||||
database_cleaner (~> 1.5.0)
|
||||
deckar01-task_list (= 1.0.5)
|
||||
deckar01-task_list (= 1.0.6)
|
||||
default_value_for (~> 3.0.0)
|
||||
devise (~> 4.2)
|
||||
devise-two-factor (~> 3.0.0)
|
||||
diffy (~> 3.0.3)
|
||||
diffy (~> 3.1.0)
|
||||
doorkeeper (~> 4.2.0)
|
||||
dropzonejs-rails (~> 0.7.1)
|
||||
email_reply_parser (~> 0.5.8)
|
||||
email_spec (~> 1.6.0)
|
||||
factory_girl_rails (~> 4.6.0)
|
||||
factory_girl_rails (~> 4.7.0)
|
||||
ffaker (~> 2.0.0)
|
||||
flay (~> 2.6.1)
|
||||
fog-aws (~> 0.9)
|
||||
fog-azure (~> 0.0)
|
||||
fog-core (~> 1.40)
|
||||
fog-google (~> 0.3)
|
||||
fog-google (~> 0.5)
|
||||
fog-local (~> 0.3)
|
||||
fog-openstack (~> 0.1)
|
||||
fog-rackspace (~> 0.1.1)
|
||||
@ -869,39 +897,42 @@ DEPENDENCIES
|
||||
gemojione (~> 3.0)
|
||||
github-linguist (~> 4.7.0)
|
||||
gitlab-flowdock-git-hook (~> 1.0.1)
|
||||
gitlab-markup (~> 1.5.0)
|
||||
gitlab-markup (~> 1.5.1)
|
||||
gitlab-turbolinks-classic (~> 2.5, >= 2.5.6)
|
||||
gitlab_git (~> 10.7.0)
|
||||
gitlab_omniauth-ldap (~> 1.2.1)
|
||||
gollum-lib (~> 4.2)
|
||||
gollum-rugged_adapter (~> 0.4.2)
|
||||
gon (~> 6.1.0)
|
||||
grape (~> 0.15.0)
|
||||
grape-entity (~> 0.4.2)
|
||||
google-api-client (~> 0.8.6)
|
||||
grape (~> 0.18.0)
|
||||
grape-entity (~> 0.6.0)
|
||||
haml_lint (~> 0.18.2)
|
||||
hamlit (~> 2.6.1)
|
||||
health_check (~> 2.2.0)
|
||||
hipchat (~> 1.5.0)
|
||||
html-pipeline (~> 1.11.0)
|
||||
html2text
|
||||
httparty (~> 0.13.3)
|
||||
influxdb (~> 0.2)
|
||||
jira-ruby (~> 1.1.2)
|
||||
jquery-atwho-rails (~> 1.3.2)
|
||||
jquery-rails (~> 4.1.0)
|
||||
jquery-turbolinks (~> 2.1.0)
|
||||
jquery-ui-rails (~> 5.0.0)
|
||||
json-schema (~> 2.6.2)
|
||||
jwt
|
||||
kaminari (~> 0.17.0)
|
||||
knapsack (~> 1.11.0)
|
||||
kubeclient (~> 2.2.0)
|
||||
letter_opener_web (~> 1.3.0)
|
||||
license_finder (~> 2.1.0)
|
||||
licensee (~> 8.0.0)
|
||||
loofah (~> 2.0.3)
|
||||
mail_room (~> 0.8.1)
|
||||
mail_room (~> 0.9.0)
|
||||
method_source (~> 0.8)
|
||||
minitest (~> 5.7.0)
|
||||
mousetrap-rails (~> 1.4.6)
|
||||
mysql2 (~> 0.3.16)
|
||||
nested_form (~> 0.3.2)
|
||||
net-ssh (~> 3.0.1)
|
||||
newrelic_rpm (~> 3.16)
|
||||
nokogiri (~> 1.6.7, >= 1.6.7.2)
|
||||
@ -910,12 +941,12 @@ DEPENDENCIES
|
||||
oj (~> 2.17.4)
|
||||
omniauth (~> 1.3.1)
|
||||
omniauth-auth0 (~> 1.4.1)
|
||||
omniauth-authentiq (~> 0.2.0)
|
||||
omniauth-azure-oauth2 (~> 0.0.6)
|
||||
omniauth-bitbucket (~> 0.0.2)
|
||||
omniauth-cas3 (~> 1.1.2)
|
||||
omniauth-facebook (~> 4.0.0)
|
||||
omniauth-github (~> 1.1.1)
|
||||
omniauth-gitlab (~> 1.0.0)
|
||||
omniauth-gitlab (~> 1.0.2)
|
||||
omniauth-google-oauth2 (~> 0.4.1)
|
||||
omniauth-kerberos (~> 0.3.0)
|
||||
omniauth-saml (~> 1.7.0)
|
||||
@ -923,24 +954,25 @@ DEPENDENCIES
|
||||
omniauth-twitter (~> 1.2.0)
|
||||
omniauth_crowd (~> 2.2.0)
|
||||
org-ruby (~> 0.9.12)
|
||||
paranoia (~> 2.0)
|
||||
paranoia (~> 2.2)
|
||||
pg (~> 0.18.2)
|
||||
poltergeist (~> 1.9.0)
|
||||
premailer-rails (~> 1.9.0)
|
||||
pry-byebug (~> 3.4.1)
|
||||
pry-rails (~> 0.3.4)
|
||||
rack-attack (~> 4.3.1)
|
||||
rack-attack (~> 4.4.1)
|
||||
rack-cors (~> 0.4.0)
|
||||
rack-oauth2 (~> 1.2.1)
|
||||
rails (= 4.2.7.1)
|
||||
rails-deprecated_sanitizer (~> 1.0.3)
|
||||
rainbow (~> 2.1.0)
|
||||
rblineprof (~> 0.3.6)
|
||||
rdoc (~> 3.6)
|
||||
rdoc (~> 4.2)
|
||||
recaptcha (~> 3.0)
|
||||
redcarpet (~> 3.3.3)
|
||||
redis (~> 3.2)
|
||||
redis-namespace (~> 1.5.2)
|
||||
redis-rails (~> 4.0.0)
|
||||
redis-rails (~> 5.0.1)
|
||||
request_store (~> 1.3)
|
||||
rerun (~> 0.11.0)
|
||||
responders (~> 2.0)
|
||||
@ -955,17 +987,17 @@ DEPENDENCIES
|
||||
sanitize (~> 2.0)
|
||||
sass-rails (~> 5.0.6)
|
||||
scss_lint (~> 0.47.0)
|
||||
sdoc (~> 0.3.20)
|
||||
seed-fu (~> 2.3.5)
|
||||
select2-rails (~> 3.5.9)
|
||||
sentry-raven (~> 2.0.0)
|
||||
settingslogic (~> 2.0.9)
|
||||
sham_rack (~> 1.3.6)
|
||||
shoulda-matchers (~> 2.8.0)
|
||||
sidekiq (~> 4.2)
|
||||
sidekiq-cron (~> 0.4.0)
|
||||
sidekiq (~> 4.2.7)
|
||||
sidekiq-cron (~> 0.4.4)
|
||||
sidekiq-limit_fetch (~> 3.4)
|
||||
simplecov (= 0.12.0)
|
||||
slack-notifier (~> 1.2.0)
|
||||
slack-notifier (~> 1.5.1)
|
||||
spinach-rails (~> 0.2.1)
|
||||
spinach-rerun-reporter (~> 0.0.2)
|
||||
spring (~> 1.7.0)
|
||||
@ -974,6 +1006,7 @@ DEPENDENCIES
|
||||
spring-commands-teaspoon (~> 0.0.2)
|
||||
sprockets (~> 3.7.0)
|
||||
sprockets-es6 (~> 0.9.2)
|
||||
stackprof (~> 0.2.10)
|
||||
state_machines-activerecord (~> 0.4.0)
|
||||
sys-filesystem (~> 1.1.6)
|
||||
teaspoon (~> 1.1.0)
|
||||
@ -982,7 +1015,6 @@ DEPENDENCIES
|
||||
thin (~> 1.7.0)
|
||||
timecop (~> 0.8.0)
|
||||
truncato (~> 0.7.8)
|
||||
turbolinks (~> 2.5.0)
|
||||
u2f (~> 0.2.1)
|
||||
uglifier (~> 2.7.2)
|
||||
underscore-rails (~> 1.8.0)
|
||||
@ -997,4 +1029,4 @@ DEPENDENCIES
|
||||
wikicloth (= 0.8.1)
|
||||
|
||||
BUNDLED WITH
|
||||
1.13.5
|
||||
1.13.7
|
||||
|
@ -24,7 +24,7 @@ in
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
name = "gitlab-${version}";
|
||||
version = "8.13.5";
|
||||
version = "8.15.4";
|
||||
|
||||
buildInputs = [ env ruby bundler tzdata git nodejs procps ];
|
||||
|
||||
@ -32,7 +32,7 @@ stdenv.mkDerivation rec {
|
||||
owner = "gitlabhq";
|
||||
repo = "gitlabhq";
|
||||
rev = "v${version}";
|
||||
sha256 = "1ir52fdg81jawkfk03xj6c2j4lmw8sy4mwc25p024l0zpsg2gpz3";
|
||||
sha256 = "1cd6dl8niy1xxifxdrm1kwm8qhy4x4zyvwdsb722kr136rwnxm84";
|
||||
};
|
||||
|
||||
patches = [
|
||||
|
@ -63,14 +63,6 @@
|
||||
};
|
||||
version = "0.3.3";
|
||||
};
|
||||
activerecord-session_store = {
|
||||
source = {
|
||||
remotes = ["https://rubygems.org"];
|
||||
sha256 = "1b8q5p7wl0xpmlcjig2im1yryzj4aipvw7zq3z1ig8fdg4m2m943";
|
||||
type = "gem";
|
||||
};
|
||||
version = "1.0.0";
|
||||
};
|
||||
activerecord_sane_schema_dumper = {
|
||||
source = {
|
||||
remotes = ["https://rubygems.org"];
|
||||
@ -175,6 +167,14 @@
|
||||
};
|
||||
version = "1.0.0";
|
||||
};
|
||||
autoparse = {
|
||||
source = {
|
||||
remotes = ["https://rubygems.org"];
|
||||
sha256 = "1q5wkd8gc2ckmgry9fba4b8vxb5kr8k8gqq2wycbirgq06mbllb6";
|
||||
type = "gem";
|
||||
};
|
||||
version = "0.3.3";
|
||||
};
|
||||
autoprefixer-rails = {
|
||||
source = {
|
||||
remotes = ["https://rubygems.org"];
|
||||
@ -199,22 +199,6 @@
|
||||
};
|
||||
version = "0.1.1";
|
||||
};
|
||||
azure = {
|
||||
source = {
|
||||
remotes = ["https://rubygems.org"];
|
||||
sha256 = "1vfnx47ihizg1d6szdyf48xfdghjfk66k4r39z6b0gl5i40vcm8v";
|
||||
type = "gem";
|
||||
};
|
||||
version = "0.7.5";
|
||||
};
|
||||
azure-core = {
|
||||
source = {
|
||||
remotes = ["https://rubygems.org"];
|
||||
sha256 = "016krlc7wfg27zgg5i6j0pys32ra8jszgls8wz4dz64h2zf1kd7a";
|
||||
type = "gem";
|
||||
};
|
||||
version = "0.1.2";
|
||||
};
|
||||
babel-source = {
|
||||
source = {
|
||||
remotes = ["https://rubygems.org"];
|
||||
@ -330,10 +314,10 @@
|
||||
byebug = {
|
||||
source = {
|
||||
remotes = ["https://rubygems.org"];
|
||||
sha256 = "1yx89b7vh5mbvxyi8n7zl25ia1bqdj71995m4daj6d41rnkmrpnc";
|
||||
sha256 = "1kbfcn65rgdhi72n8x9l393b89rvi5z542459k7d1ggchpb0idb0";
|
||||
type = "gem";
|
||||
};
|
||||
version = "8.2.1";
|
||||
version = "9.0.6";
|
||||
};
|
||||
capybara = {
|
||||
source = {
|
||||
@ -466,10 +450,10 @@
|
||||
connection_pool = {
|
||||
source = {
|
||||
remotes = ["https://rubygems.org"];
|
||||
sha256 = "1b2bb3k39ni5mzcnqlv9y4yjkbin20s7dkwzp0jw2jf1rmzcgrmy";
|
||||
sha256 = "17vpaj6kyf2i8bimaxz7rg1kyadf4d10642ja67qiqlhwgczl2w7";
|
||||
type = "gem";
|
||||
};
|
||||
version = "2.2.0";
|
||||
version = "2.2.1";
|
||||
};
|
||||
crack = {
|
||||
source = {
|
||||
@ -538,10 +522,10 @@
|
||||
deckar01-task_list = {
|
||||
source = {
|
||||
remotes = ["https://rubygems.org"];
|
||||
sha256 = "1x2va9b7p2x82ind3cbk9dr4pk97c4g7vqccwzb20xdwdq0q4j91";
|
||||
sha256 = "0nfbja4br77ad79snq2a7wg38vvvf5brchv12vfk9vpbzzyfdnrq";
|
||||
type = "gem";
|
||||
};
|
||||
version = "1.0.5";
|
||||
version = "1.0.6";
|
||||
};
|
||||
default_value_for = {
|
||||
source = {
|
||||
@ -586,10 +570,10 @@
|
||||
diffy = {
|
||||
source = {
|
||||
remotes = ["https://rubygems.org"];
|
||||
sha256 = "0il0ri511g9rm88qbvncbzgwc6wk6265hmnf7grcczmrs1z49vl0";
|
||||
sha256 = "1azibizfv91sjbzhjqj1pg2xcv8z9b8a7z6kb3wpl4hpj5hil5kj";
|
||||
type = "gem";
|
||||
};
|
||||
version = "3.0.7";
|
||||
version = "3.1.0";
|
||||
};
|
||||
docile = {
|
||||
source = {
|
||||
@ -599,6 +583,14 @@
|
||||
};
|
||||
version = "1.1.5";
|
||||
};
|
||||
domain_name = {
|
||||
source = {
|
||||
remotes = ["https://rubygems.org"];
|
||||
sha256 = "1y5c96gzyh6z4nrnkisljqngfvljdba36dww657ka0x7khzvx7jl";
|
||||
type = "gem";
|
||||
};
|
||||
version = "0.5.20161021";
|
||||
};
|
||||
doorkeeper = {
|
||||
source = {
|
||||
remotes = ["https://rubygems.org"];
|
||||
@ -695,21 +687,29 @@
|
||||
};
|
||||
version = "0.9.0";
|
||||
};
|
||||
extlib = {
|
||||
source = {
|
||||
remotes = ["https://rubygems.org"];
|
||||
sha256 = "1cbw3vgb189z3vfc1arijmsd604m3w5y5xvdfkrblc9qh7sbk2rh";
|
||||
type = "gem";
|
||||
};
|
||||
version = "0.9.16";
|
||||
};
|
||||
factory_girl = {
|
||||
source = {
|
||||
remotes = ["https://rubygems.org"];
|
||||
sha256 = "0qn34ba1midnzms1854yzx0g16sgy7bd9wcsvs66rxd65idsay20";
|
||||
sha256 = "1xzl4z9z390fsnyxp10c9if2n46zan3n6zwwpfnwc33crv4s410i";
|
||||
type = "gem";
|
||||
};
|
||||
version = "4.5.0";
|
||||
version = "4.7.0";
|
||||
};
|
||||
factory_girl_rails = {
|
||||
source = {
|
||||
remotes = ["https://rubygems.org"];
|
||||
sha256 = "00vngc59bww75hqkr1hbnvnqm5763w0jlv3lsq3js1r1wxdzix2r";
|
||||
sha256 = "0hzpirb33xdqaz44i1mbcfv0icjrghhgaz747llcfsflljd4pa4r";
|
||||
type = "gem";
|
||||
};
|
||||
version = "4.6.0";
|
||||
version = "4.7.0";
|
||||
};
|
||||
faraday = {
|
||||
source = {
|
||||
@ -775,14 +775,6 @@
|
||||
};
|
||||
version = "0.11.0";
|
||||
};
|
||||
fog-azure = {
|
||||
source = {
|
||||
remotes = ["https://rubygems.org"];
|
||||
sha256 = "1bdgzn1a1z79drfvashs6gzpg98dijvxm168cq0czzkx3wvbrfcl";
|
||||
type = "gem";
|
||||
};
|
||||
version = "0.0.2";
|
||||
};
|
||||
fog-core = {
|
||||
source = {
|
||||
remotes = ["https://rubygems.org"];
|
||||
@ -794,10 +786,10 @@
|
||||
fog-google = {
|
||||
source = {
|
||||
remotes = ["https://rubygems.org"];
|
||||
sha256 = "0vzwid3s4c39fqixg1zb0dr5g3q6lafm9pan6bk3csys62v6fnm9";
|
||||
sha256 = "06irf9gcg5v8iwaa5qilhwir6gl82rrp7jyyw87ad15v8p3xa59f";
|
||||
type = "gem";
|
||||
};
|
||||
version = "0.3.2";
|
||||
version = "0.5.0";
|
||||
};
|
||||
fog-json = {
|
||||
source = {
|
||||
@ -939,10 +931,18 @@
|
||||
gitlab-markup = {
|
||||
source = {
|
||||
remotes = ["https://rubygems.org"];
|
||||
sha256 = "0yxwp4q0dwiykxv24x2yhvnn59wmw1jv0vz3d8hjw44nn9jxn25a";
|
||||
sha256 = "1aam7zvvbai5nv7vf0c0640pvik6s71f276lip4yb4slbg0pfpn2";
|
||||
type = "gem";
|
||||
};
|
||||
version = "1.5.0";
|
||||
version = "1.5.1";
|
||||
};
|
||||
gitlab-turbolinks-classic = {
|
||||
source = {
|
||||
remotes = ["https://rubygems.org"];
|
||||
sha256 = "1zfqwa1pahhcz1yxvwigg94bck2zsqk2jsrc0wdcybhr0iwi5jra";
|
||||
type = "gem";
|
||||
};
|
||||
version = "2.5.6";
|
||||
};
|
||||
gitlab_git = {
|
||||
source = {
|
||||
@ -1000,21 +1000,37 @@
|
||||
};
|
||||
version = "6.1.0";
|
||||
};
|
||||
google-api-client = {
|
||||
source = {
|
||||
remotes = ["https://rubygems.org"];
|
||||
sha256 = "11wr57j9fp6x6fym4k1a7jqp72qgc8l24mfwb4y55bbvdmkv1b2d";
|
||||
type = "gem";
|
||||
};
|
||||
version = "0.8.7";
|
||||
};
|
||||
googleauth = {
|
||||
source = {
|
||||
remotes = ["https://rubygems.org"];
|
||||
sha256 = "1nzkg63s161c6jsia92c1jfwpayzbpwn588smd286idn07y0az2m";
|
||||
type = "gem";
|
||||
};
|
||||
version = "0.5.1";
|
||||
};
|
||||
grape = {
|
||||
source = {
|
||||
remotes = ["https://rubygems.org"];
|
||||
sha256 = "13rbm0whhirpzn2n58kjyvqn9989vvipynlxsj1ihmwp8xsmcj1i";
|
||||
sha256 = "17spanyj7kpvqm4ap82vq4s1hlrad5mcv8rj4q1mva40zg1f8cgj";
|
||||
type = "gem";
|
||||
};
|
||||
version = "0.15.0";
|
||||
version = "0.18.0";
|
||||
};
|
||||
grape-entity = {
|
||||
source = {
|
||||
remotes = ["https://rubygems.org"];
|
||||
sha256 = "0hxghs2p9ncvdwhp6dwr1a74g552c49dd0jzy0szp4pg2xjbgjk8";
|
||||
sha256 = "18jhjn1164z68xrjz23wf3qha3x9az086dr7p6405jv6rszyxihq";
|
||||
type = "gem";
|
||||
};
|
||||
version = "0.4.8";
|
||||
version = "0.6.0";
|
||||
};
|
||||
haml = {
|
||||
source = {
|
||||
@ -1072,6 +1088,14 @@
|
||||
};
|
||||
version = "1.11.0";
|
||||
};
|
||||
html2text = {
|
||||
source = {
|
||||
remotes = ["https://rubygems.org"];
|
||||
sha256 = "0kxdj8pf9pss9xgs8aac0alj5g1fi225yzdhh33lzampkazg1hii";
|
||||
type = "gem";
|
||||
};
|
||||
version = "0.2.0";
|
||||
};
|
||||
htmlentities = {
|
||||
source = {
|
||||
remotes = ["https://rubygems.org"];
|
||||
@ -1080,6 +1104,38 @@
|
||||
};
|
||||
version = "4.3.4";
|
||||
};
|
||||
http = {
|
||||
source = {
|
||||
remotes = ["https://rubygems.org"];
|
||||
sha256 = "1ll9x8qjp97l8gj0jx23nj7xvm0rsxj5pb3d19f7bhmdb70r0xsi";
|
||||
type = "gem";
|
||||
};
|
||||
version = "0.9.8";
|
||||
};
|
||||
http-cookie = {
|
||||
source = {
|
||||
remotes = ["https://rubygems.org"];
|
||||
sha256 = "004cgs4xg5n6byjs7qld0xhsjq3n6ydfh897myr2mibvh6fjc49g";
|
||||
type = "gem";
|
||||
};
|
||||
version = "1.0.3";
|
||||
};
|
||||
http-form_data = {
|
||||
source = {
|
||||
remotes = ["https://rubygems.org"];
|
||||
sha256 = "10r6hy8wcf8n4nbdmdz9hrm8mg45lncfc7anaycpzrhfp3949xh9";
|
||||
type = "gem";
|
||||
};
|
||||
version = "1.0.1";
|
||||
};
|
||||
"http_parser.rb" = {
|
||||
source = {
|
||||
remotes = ["https://rubygems.org"];
|
||||
sha256 = "15nidriy0v5yqfjsgsra51wmknxci2n2grliz78sf9pga3n0l7gi";
|
||||
type = "gem";
|
||||
};
|
||||
version = "0.6.0";
|
||||
};
|
||||
httparty = {
|
||||
source = {
|
||||
remotes = ["https://rubygems.org"];
|
||||
@ -1128,6 +1184,14 @@
|
||||
};
|
||||
version = "0.8.3";
|
||||
};
|
||||
jira-ruby = {
|
||||
source = {
|
||||
remotes = ["https://rubygems.org"];
|
||||
sha256 = "03n76a8m2d352q29j3yna1f9g3xg9dc9p3fvvx77w67h19ks7zrf";
|
||||
type = "gem";
|
||||
};
|
||||
version = "1.1.2";
|
||||
};
|
||||
jquery-atwho-rails = {
|
||||
source = {
|
||||
remotes = ["https://rubygems.org"];
|
||||
@ -1144,14 +1208,6 @@
|
||||
};
|
||||
version = "4.1.1";
|
||||
};
|
||||
jquery-turbolinks = {
|
||||
source = {
|
||||
remotes = ["https://rubygems.org"];
|
||||
sha256 = "1d23mnl3lgamk9ziw4yyv2ixck6d8s8xp4f9pmwimk0by0jq7xhc";
|
||||
type = "gem";
|
||||
};
|
||||
version = "2.1.0";
|
||||
};
|
||||
jquery-ui-rails = {
|
||||
source = {
|
||||
remotes = ["https://rubygems.org"];
|
||||
@ -1208,6 +1264,14 @@
|
||||
};
|
||||
version = "1.11.0";
|
||||
};
|
||||
kubeclient = {
|
||||
source = {
|
||||
remotes = ["https://rubygems.org"];
|
||||
sha256 = "09hr5cb6rzf9876wa0c8pv3kxjj4s8hcjpf7jjdg2n9prb7hhmgi";
|
||||
type = "gem";
|
||||
};
|
||||
version = "2.2.0";
|
||||
};
|
||||
launchy = {
|
||||
source = {
|
||||
remotes = ["https://rubygems.org"];
|
||||
@ -1256,6 +1320,22 @@
|
||||
};
|
||||
version = "3.0.5";
|
||||
};
|
||||
little-plugger = {
|
||||
source = {
|
||||
remotes = ["https://rubygems.org"];
|
||||
sha256 = "1frilv82dyxnlg8k1jhrvyd73l6k17mxc5vwxx080r4x1p04gwym";
|
||||
type = "gem";
|
||||
};
|
||||
version = "1.1.4";
|
||||
};
|
||||
logging = {
|
||||
source = {
|
||||
remotes = ["https://rubygems.org"];
|
||||
sha256 = "1agk0dv5lxn0qpnxadi6dvg36pc0x5fsrmzhw4sc91x52mjc381l";
|
||||
type = "gem";
|
||||
};
|
||||
version = "2.1.0";
|
||||
};
|
||||
loofah = {
|
||||
source = {
|
||||
remotes = ["https://rubygems.org"];
|
||||
@ -1264,14 +1344,6 @@
|
||||
};
|
||||
version = "2.0.3";
|
||||
};
|
||||
macaddr = {
|
||||
source = {
|
||||
remotes = ["https://rubygems.org"];
|
||||
sha256 = "1clii8mvhmh5lmnm95ljnjygyiyhdpja85c5vy487rhxn52scn0b";
|
||||
type = "gem";
|
||||
};
|
||||
version = "1.7.1";
|
||||
};
|
||||
mail = {
|
||||
source = {
|
||||
remotes = ["https://rubygems.org"];
|
||||
@ -1283,10 +1355,18 @@
|
||||
mail_room = {
|
||||
source = {
|
||||
remotes = ["https://rubygems.org"];
|
||||
sha256 = "15zjqscdzm4rv8qpz8y8334nc5kvlqp0xk4wiics98hbjs8cd59i";
|
||||
sha256 = "17q8km4n9jzjb5vj3hhyv4bwr1gxdh84yghvcdrmq88jh5ki8p8k";
|
||||
type = "gem";
|
||||
};
|
||||
version = "0.8.1";
|
||||
version = "0.9.0";
|
||||
};
|
||||
memoist = {
|
||||
source = {
|
||||
remotes = ["https://rubygems.org"];
|
||||
sha256 = "0yd3rd7bnbhn9n47qlhcii5z89liabdjhy3is3h6gq77gyfk4f5q";
|
||||
type = "gem";
|
||||
};
|
||||
version = "0.15.0";
|
||||
};
|
||||
method_source = {
|
||||
source = {
|
||||
@ -1360,6 +1440,22 @@
|
||||
};
|
||||
version = "2.0.0";
|
||||
};
|
||||
mustermann = {
|
||||
source = {
|
||||
remotes = ["https://rubygems.org"];
|
||||
sha256 = "0km27zp3mnlmh157nmj3pyd2g7n2da4dh4mr0psq53a9r0d4gli8";
|
||||
type = "gem";
|
||||
};
|
||||
version = "0.4.0";
|
||||
};
|
||||
mustermann-grape = {
|
||||
source = {
|
||||
remotes = ["https://rubygems.org"];
|
||||
sha256 = "1g6kf753v0kf8zfz0z46kyb7cbpinpc3qqh02qm4s9n49s1v2fva";
|
||||
type = "gem";
|
||||
};
|
||||
version = "0.4.0";
|
||||
};
|
||||
mysql2 = {
|
||||
source = {
|
||||
remotes = ["https://rubygems.org"];
|
||||
@ -1368,14 +1464,6 @@
|
||||
};
|
||||
version = "0.3.20";
|
||||
};
|
||||
nested_form = {
|
||||
source = {
|
||||
remotes = ["https://rubygems.org"];
|
||||
sha256 = "0f053j4zfagxyym28msxj56hrpvmyv4lzxy2c5c270f7xbbnii5i";
|
||||
type = "gem";
|
||||
};
|
||||
version = "0.3.2";
|
||||
};
|
||||
net-ldap = {
|
||||
source = {
|
||||
remotes = ["https://rubygems.org"];
|
||||
@ -1392,6 +1480,14 @@
|
||||
};
|
||||
version = "3.0.1";
|
||||
};
|
||||
netrc = {
|
||||
source = {
|
||||
remotes = ["https://rubygems.org"];
|
||||
sha256 = "0gzfmcywp1da8nzfqsql2zqi648mfnx6qwkig3cv36n9m0yy676y";
|
||||
type = "gem";
|
||||
};
|
||||
version = "0.11.0";
|
||||
};
|
||||
newrelic_rpm = {
|
||||
source = {
|
||||
remotes = ["https://rubygems.org"];
|
||||
@ -1419,10 +1515,10 @@
|
||||
oauth = {
|
||||
source = {
|
||||
remotes = ["https://rubygems.org"];
|
||||
sha256 = "1k5j09p3al3clpjl6lax62qmhy43f3j3g7i6f9l4dbs6r5vpv95w";
|
||||
sha256 = "1awhy8ddhixch44y68lail3h1d214rnl3y1yzk0msq5g4z2l62ky";
|
||||
type = "gem";
|
||||
};
|
||||
version = "0.4.7";
|
||||
version = "0.5.1";
|
||||
};
|
||||
oauth2 = {
|
||||
source = {
|
||||
@ -1464,6 +1560,14 @@
|
||||
};
|
||||
version = "1.4.1";
|
||||
};
|
||||
omniauth-authentiq = {
|
||||
source = {
|
||||
remotes = ["https://rubygems.org"];
|
||||
sha256 = "01br0snvbxbx1zgs857alfs0ay3xhgdjgk4hc2vjzf3jn6bwizvk";
|
||||
type = "gem";
|
||||
};
|
||||
version = "0.2.2";
|
||||
};
|
||||
omniauth-azure-oauth2 = {
|
||||
source = {
|
||||
remotes = ["https://rubygems.org"];
|
||||
@ -1472,14 +1576,6 @@
|
||||
};
|
||||
version = "0.0.6";
|
||||
};
|
||||
omniauth-bitbucket = {
|
||||
source = {
|
||||
remotes = ["https://rubygems.org"];
|
||||
sha256 = "1lals2z1yixffrc97zh7zn1jpz9l6vpb3alcp13im42dq9q0g845";
|
||||
type = "gem";
|
||||
};
|
||||
version = "0.0.2";
|
||||
};
|
||||
omniauth-cas3 = {
|
||||
source = {
|
||||
remotes = ["https://rubygems.org"];
|
||||
@ -1507,10 +1603,10 @@
|
||||
omniauth-gitlab = {
|
||||
source = {
|
||||
remotes = ["https://rubygems.org"];
|
||||
sha256 = "083yyc8612kq8ygd8y7s8lxg2d51jcsakbs4pa19aww67gcm72iz";
|
||||
sha256 = "0hv672p372jq7p9p6dw8i7qyisbny3lq0si077yys1fy4bjw127x";
|
||||
type = "gem";
|
||||
};
|
||||
version = "1.0.1";
|
||||
version = "1.0.2";
|
||||
};
|
||||
omniauth-google-oauth2 = {
|
||||
source = {
|
||||
@ -1600,13 +1696,21 @@
|
||||
};
|
||||
version = "0.5.0";
|
||||
};
|
||||
os = {
|
||||
source = {
|
||||
remotes = ["https://rubygems.org"];
|
||||
sha256 = "1llv8w3g2jwggdxr5a5cjkrnbbfnvai3vxacxxc0fy84xmz3hymz";
|
||||
type = "gem";
|
||||
};
|
||||
version = "0.9.6";
|
||||
};
|
||||
paranoia = {
|
||||
source = {
|
||||
remotes = ["https://rubygems.org"];
|
||||
sha256 = "0z2smnnghjhcs4l5fkz9scs1kj0bvj2n8xmzcvw4rg9yprdnlxr0";
|
||||
sha256 = "1kfznq6lba1xb3nskvn8kdb08ljh4a0lvbm3lv91xvj6n9hm15k0";
|
||||
type = "gem";
|
||||
};
|
||||
version = "2.1.4";
|
||||
version = "2.2.0";
|
||||
};
|
||||
parser = {
|
||||
source = {
|
||||
@ -1680,6 +1784,14 @@
|
||||
};
|
||||
version = "0.10.3";
|
||||
};
|
||||
pry-byebug = {
|
||||
source = {
|
||||
remotes = ["https://rubygems.org"];
|
||||
sha256 = "147kiwnggdzz7jvlplfi0baffng808rb5lk263qxp648k8x03vgc";
|
||||
type = "gem";
|
||||
};
|
||||
version = "3.4.1";
|
||||
};
|
||||
pry-rails = {
|
||||
source = {
|
||||
remotes = ["https://rubygems.org"];
|
||||
@ -1699,10 +1811,10 @@
|
||||
rack = {
|
||||
source = {
|
||||
remotes = ["https://rubygems.org"];
|
||||
sha256 = "09bs295yq6csjnkzj7ncj50i6chfxrhmzg1pk6p0vd2lb9ac8pj5";
|
||||
sha256 = "1374xyh8nnqb8sy6g9gcvchw8gifckn5v3bhl6dzbwwsx34qz7gz";
|
||||
type = "gem";
|
||||
};
|
||||
version = "1.6.4";
|
||||
version = "1.6.5";
|
||||
};
|
||||
rack-accept = {
|
||||
source = {
|
||||
@ -1715,10 +1827,10 @@
|
||||
rack-attack = {
|
||||
source = {
|
||||
remotes = ["https://rubygems.org"];
|
||||
sha256 = "0ihic8ar2ddfv15p5gia8nqzsl3y7iayg5v4rmg72jlvikgsabls";
|
||||
sha256 = "1czx68p70x98y21dkdndsb64lrxf9qrv09wl1dbcxrypcjnpsdl1";
|
||||
type = "gem";
|
||||
};
|
||||
version = "4.3.1";
|
||||
version = "4.4.1";
|
||||
};
|
||||
rack-cors = {
|
||||
source = {
|
||||
@ -1728,14 +1840,6 @@
|
||||
};
|
||||
version = "0.4.0";
|
||||
};
|
||||
rack-mount = {
|
||||
source = {
|
||||
remotes = ["https://rubygems.org"];
|
||||
sha256 = "09a1qfaxxsll1kbgz7z0q0nr48sfmfm7akzaviis5bjpa5r00ld2";
|
||||
type = "gem";
|
||||
};
|
||||
version = "0.8.3";
|
||||
};
|
||||
rack-oauth2 = {
|
||||
source = {
|
||||
remotes = ["https://rubygems.org"];
|
||||
@ -1851,10 +1955,10 @@
|
||||
rdoc = {
|
||||
source = {
|
||||
remotes = ["https://rubygems.org"];
|
||||
sha256 = "1v9k4sp5yzj2bshngckdvivj6bszciskk1nd2r3wri2ygs7vgqm8";
|
||||
sha256 = "027dvwz1g1h4bm40v3kxqbim4p7ww4fcmxa2l1mvwiqm5cjiqd7k";
|
||||
type = "gem";
|
||||
};
|
||||
version = "3.12.2";
|
||||
version = "4.2.2";
|
||||
};
|
||||
recaptcha = {
|
||||
source = {
|
||||
@ -1864,6 +1968,14 @@
|
||||
};
|
||||
version = "3.0.0";
|
||||
};
|
||||
recursive-open-struct = {
|
||||
source = {
|
||||
remotes = ["https://rubygems.org"];
|
||||
sha256 = "102bgpfkjsaghpb1qs1ah5s89100dchpimzah2wxdy9rv9318rqw";
|
||||
type = "gem";
|
||||
};
|
||||
version = "1.0.0";
|
||||
};
|
||||
redcarpet = {
|
||||
source = {
|
||||
remotes = ["https://rubygems.org"];
|
||||
@ -1891,18 +2003,18 @@
|
||||
redis-actionpack = {
|
||||
source = {
|
||||
remotes = ["https://rubygems.org"];
|
||||
sha256 = "1jjl6dhhpdapdaywq5iqz7z36mwbw0cn0m30wcc5wcbv7xmiiygw";
|
||||
sha256 = "0gnkqi7cji2q5yfwm8b752k71pqrb3dqksv983yrf23virqnjfjr";
|
||||
type = "gem";
|
||||
};
|
||||
version = "4.0.1";
|
||||
version = "5.0.1";
|
||||
};
|
||||
redis-activesupport = {
|
||||
source = {
|
||||
remotes = ["https://rubygems.org"];
|
||||
sha256 = "10y3kybz21n2z11478sf0cp4xzclvxf0b428787brmgpc6i7p7zg";
|
||||
sha256 = "0i0r23rv32k25jqwbr4cb73alyaxwvz9crdaw3gv26h1zjrdjisd";
|
||||
type = "gem";
|
||||
};
|
||||
version = "4.1.5";
|
||||
version = "5.0.1";
|
||||
};
|
||||
redis-namespace = {
|
||||
source = {
|
||||
@ -1915,26 +2027,26 @@
|
||||
redis-rack = {
|
||||
source = {
|
||||
remotes = ["https://rubygems.org"];
|
||||
sha256 = "1y1mxx8gn0krdrpwllv7fqsbvki1qjnb2dz8b4q9gwc326829gk8";
|
||||
sha256 = "0fbxl5gv8krjf6n88gvn44xbzhfnsysnzawz7zili298ak98lsb3";
|
||||
type = "gem";
|
||||
};
|
||||
version = "1.5.0";
|
||||
version = "1.6.0";
|
||||
};
|
||||
redis-rails = {
|
||||
source = {
|
||||
remotes = ["https://rubygems.org"];
|
||||
sha256 = "0igww7hb58aq74mh50dli3zjg78b54y8nhd0h1h9vz4vgjd4q8m7";
|
||||
sha256 = "04l2y26k4v30p3dx0pqf9gz257q73qzgrfqf3qv6bxwyv8z9f5hm";
|
||||
type = "gem";
|
||||
};
|
||||
version = "4.0.0";
|
||||
version = "5.0.1";
|
||||
};
|
||||
redis-store = {
|
||||
source = {
|
||||
remotes = ["https://rubygems.org"];
|
||||
sha256 = "0gf462p0wx4hn7m1m8ghs701n6xx0ijzm5cff9xfagd2s6va145m";
|
||||
sha256 = "1da15wr3wc1d4hqy7h7smdc2k2jpfac3waa9d65si6f4dmqymkkq";
|
||||
type = "gem";
|
||||
};
|
||||
version = "1.1.7";
|
||||
version = "1.2.0";
|
||||
};
|
||||
request_store = {
|
||||
source = {
|
||||
@ -1960,6 +2072,22 @@
|
||||
};
|
||||
version = "2.3.0";
|
||||
};
|
||||
rest-client = {
|
||||
source = {
|
||||
remotes = ["https://rubygems.org"];
|
||||
sha256 = "1v2jp2ilpb2rm97yknxcnay9lfagcm4k82pfsmmcm9v290xm1ib7";
|
||||
type = "gem";
|
||||
};
|
||||
version = "2.0.0";
|
||||
};
|
||||
retriable = {
|
||||
source = {
|
||||
remotes = ["https://rubygems.org"];
|
||||
sha256 = "1cmhwgv5r4vn7iqy4bfbnbb73pzl8ik69zrwq9vdim45v8b13gsj";
|
||||
type = "gem";
|
||||
};
|
||||
version = "1.4.1";
|
||||
};
|
||||
rinku = {
|
||||
source = {
|
||||
remotes = ["https://rubygems.org"];
|
||||
@ -1979,10 +2107,10 @@
|
||||
rouge = {
|
||||
source = {
|
||||
remotes = ["https://rubygems.org"];
|
||||
sha256 = "182hp2fh6gd3p5c862i36k6jxkc02mhi08qd94gsyfj3v34ngza0";
|
||||
sha256 = "0sfikq1q8xyqqx690iiz7ybhzx87am4w50w8f2nq36l3asw4x89d";
|
||||
type = "gem";
|
||||
};
|
||||
version = "2.0.6";
|
||||
version = "2.0.7";
|
||||
};
|
||||
rqrcode = {
|
||||
source = {
|
||||
@ -2200,14 +2328,6 @@
|
||||
};
|
||||
version = "0.47.1";
|
||||
};
|
||||
sdoc = {
|
||||
source = {
|
||||
remotes = ["https://rubygems.org"];
|
||||
sha256 = "17l8qk0ld47z4h5avcnylvds8nc6dp25zc64w23z8li2hs341xf2";
|
||||
type = "gem";
|
||||
};
|
||||
version = "0.3.20";
|
||||
};
|
||||
seed-fu = {
|
||||
source = {
|
||||
remotes = ["https://rubygems.org"];
|
||||
@ -2267,18 +2387,34 @@
|
||||
sidekiq = {
|
||||
source = {
|
||||
remotes = ["https://rubygems.org"];
|
||||
sha256 = "1l9ji9lmgvgc9p45js3hrbpv6fj0kvrvx5lkrjd751g8r3h98z0l";
|
||||
sha256 = "0d711y4s5clh5xx9k12c8c3x84xxqk61qwykya2xw39fqcxgzx04";
|
||||
type = "gem";
|
||||
};
|
||||
version = "4.2.1";
|
||||
version = "4.2.7";
|
||||
};
|
||||
sidekiq-cron = {
|
||||
source = {
|
||||
remotes = ["https://rubygems.org"];
|
||||
sha256 = "0xnbvh8kjv6954vsiwfcpp7bn8sgpwvnyapnq7b94w8h7kj3ykqy";
|
||||
sha256 = "1bsi80hyfh0lgpcdphxn2aw7av3d8xd87bmx6jz6lj7lw49gzkda";
|
||||
type = "gem";
|
||||
};
|
||||
version = "0.4.0";
|
||||
version = "0.4.4";
|
||||
};
|
||||
sidekiq-limit_fetch = {
|
||||
source = {
|
||||
remotes = ["https://rubygems.org"];
|
||||
sha256 = "0ykpqw2nc9fs4v0slk5n4m42n3ihwwkk5mcyw3rz51blrdzj92kr";
|
||||
type = "gem";
|
||||
};
|
||||
version = "3.4.0";
|
||||
};
|
||||
signet = {
|
||||
source = {
|
||||
remotes = ["https://rubygems.org"];
|
||||
sha256 = "149668991xqibvm8kvl10kzy891yd6f994b4gwlx6c3vl24v5jq6";
|
||||
type = "gem";
|
||||
};
|
||||
version = "0.7.3";
|
||||
};
|
||||
simplecov = {
|
||||
source = {
|
||||
@ -2299,10 +2435,10 @@
|
||||
slack-notifier = {
|
||||
source = {
|
||||
remotes = ["https://rubygems.org"];
|
||||
sha256 = "08z6fv186yw1nrpl6zwp3lwqksin145aa1jv6jf00bnv3sicliiz";
|
||||
sha256 = "0xavibxh00gy62mm79l6id9l2fldjmdqifk8alqfqy5z38ffwah6";
|
||||
type = "gem";
|
||||
};
|
||||
version = "1.2.1";
|
||||
version = "1.5.1";
|
||||
};
|
||||
slop = {
|
||||
source = {
|
||||
@ -2392,6 +2528,14 @@
|
||||
};
|
||||
version = "3.1.1";
|
||||
};
|
||||
stackprof = {
|
||||
source = {
|
||||
remotes = ["https://rubygems.org"];
|
||||
sha256 = "1c88j2d6ipjw5s3hgdgfww37gysgrkicawagj33hv3knijjc9ski";
|
||||
type = "gem";
|
||||
};
|
||||
version = "0.2.10";
|
||||
};
|
||||
state_machines = {
|
||||
source = {
|
||||
remotes = ["https://rubygems.org"];
|
||||
@ -2440,14 +2584,6 @@
|
||||
};
|
||||
version = "1.2.0";
|
||||
};
|
||||
systemu = {
|
||||
source = {
|
||||
remotes = ["https://rubygems.org"];
|
||||
sha256 = "0gmkbakhfci5wnmbfx5i54f25j9zsvbw858yg3jjhfs5n4ad1xq1";
|
||||
type = "gem";
|
||||
};
|
||||
version = "2.6.5";
|
||||
};
|
||||
teaspoon = {
|
||||
source = {
|
||||
remotes = ["https://rubygems.org"];
|
||||
@ -2528,6 +2664,14 @@
|
||||
};
|
||||
version = "0.8.3";
|
||||
};
|
||||
tool = {
|
||||
source = {
|
||||
remotes = ["https://rubygems.org"];
|
||||
sha256 = "1iymkxi4lv2b2k905s9pl4d9k9k4455ksk3a98ssfn7y94h34np0";
|
||||
type = "gem";
|
||||
};
|
||||
version = "0.2.3";
|
||||
};
|
||||
truncato = {
|
||||
source = {
|
||||
remotes = ["https://rubygems.org"];
|
||||
@ -2536,14 +2680,6 @@
|
||||
};
|
||||
version = "0.7.8";
|
||||
};
|
||||
turbolinks = {
|
||||
source = {
|
||||
remotes = ["https://rubygems.org"];
|
||||
sha256 = "1ddrx25vvvqxlz4h59lrmjhc2bfwxf4bpicvyhgbpjd48ckj81jn";
|
||||
type = "gem";
|
||||
};
|
||||
version = "2.5.3";
|
||||
};
|
||||
tzinfo = {
|
||||
source = {
|
||||
remotes = ["https://rubygems.org"];
|
||||
@ -2624,14 +2760,6 @@
|
||||
};
|
||||
version = "1.10.0";
|
||||
};
|
||||
uuid = {
|
||||
source = {
|
||||
remotes = ["https://rubygems.org"];
|
||||
sha256 = "0gr2mxg27l380wpiy66mgv9wq02myj6m4gmp6c4g1vsbzkh0213v";
|
||||
type = "gem";
|
||||
};
|
||||
version = "2.3.8";
|
||||
};
|
||||
version_sorter = {
|
||||
source = {
|
||||
remotes = ["https://rubygems.org"];
|
||||
|
@ -27,9 +27,9 @@ index 5511d71..38d357e 100644
|
||||
arel (~> 6.0)
|
||||
+ activerecord-nulldb-adapter (0.3.3)
|
||||
+ activerecord (>= 2.0.0)
|
||||
activerecord-session_store (1.0.0)
|
||||
actionpack (>= 4.0, < 5.1)
|
||||
activerecord (>= 4.0, < 5.1)
|
||||
activerecord_sane_schema_dumper (0.2)
|
||||
rails (>= 4, < 5)
|
||||
activesupport (4.2.7.1)
|
||||
@@ -396,7 +398,7 @@ GEM
|
||||
method_source (0.8.2)
|
||||
mime-types (2.99.2)
|
||||
@ -55,6 +55,6 @@ index 5511d71..38d357e 100644
|
||||
RedCloth (~> 4.3.2)
|
||||
ace-rails-ap (~> 4.1.0)
|
||||
+ activerecord-nulldb-adapter
|
||||
activerecord-session_store (~> 1.0.0)
|
||||
acts-as-taggable-on (~> 3.4)
|
||||
activerecord_sane_schema_dumper (= 0.2)
|
||||
acts-as-taggable-on (~> 4.0)
|
||||
addressable (~> 2.3.8)
|
||||
|
@ -14,11 +14,11 @@
|
||||
}:
|
||||
|
||||
let
|
||||
version = "2.6.16";
|
||||
version = "2.6.18";
|
||||
|
||||
src = fetchurl {
|
||||
url = "mirror://sourceforge/avidemux/avidemux/${version}/avidemux_${version}.tar.gz";
|
||||
sha256 = "0jipvpvw871qhhkyykrrrqc9vfbw24v243vzmm8lqifj73h6qvgc";
|
||||
sha256 = "1zmacx8wdhbjc8hpf8hmdmbh2pbkdkcyb23cl3j1mx7vkw06c31l";
|
||||
};
|
||||
|
||||
common = {
|
||||
|
@ -4,17 +4,17 @@
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
name = "makemkv-${ver}";
|
||||
ver = "1.9.10";
|
||||
ver = "1.10.4";
|
||||
builder = ./builder.sh;
|
||||
|
||||
src_bin = fetchurl {
|
||||
url = "http://www.makemkv.com/download/makemkv-bin-${ver}.tar.gz";
|
||||
sha256 = "1i5nqk5gyin6rgvc0fy96pdzq0wsmfvsm6w9mfsibj0yrfqnhi6r";
|
||||
sha256 = "bc6f66897c09b0b756b352cc02a092c5b3a9547e4c129b3472ae4c605eff94aa";
|
||||
};
|
||||
|
||||
src_oss = fetchurl {
|
||||
url = "http://www.makemkv.com/download/makemkv-oss-${ver}.tar.gz";
|
||||
sha256 = "1ypc2hisx71kpmjwxnlq6zh4q6r2i1p32gapb0ampjflcjyvx5dk";
|
||||
sha256 = "bacbd6a27ebd67f2e6f6c4356cafb92918d54a8bb15872f694232043039f63c4";
|
||||
};
|
||||
|
||||
buildInputs = [openssl qt4 mesa zlib pkgconfig libav];
|
||||
|
@ -1,5 +1,5 @@
|
||||
{ stdenv, fetchurl, fetchFromGitHub, makeWrapper
|
||||
, docutils, perl, pkgconfig, python3, which, ffmpeg
|
||||
, docutils, perl, pkgconfig, python3, which, ffmpeg_3_2
|
||||
, freefont_ttf, freetype, libass, libpthreadstubs
|
||||
, lua, lua5_sockets, libuchardet, libiconv ? null, darwin
|
||||
|
||||
@ -79,13 +79,13 @@ let
|
||||
};
|
||||
in stdenv.mkDerivation rec {
|
||||
name = "mpv-${version}";
|
||||
version = "0.22.0";
|
||||
version = "0.23.0";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "mpv-player";
|
||||
repo = "mpv";
|
||||
rev = "v${version}";
|
||||
sha256 = "0mv8fs2zxp6pvpi5xdrpvvqcaa5f0c83jdfi0pfqnwbpkz1kb9s6";
|
||||
sha256 = "02k8p4z1mwxxlg9spwwrlcciia80kyrpp09hpl60g22h85jj1ng9";
|
||||
};
|
||||
|
||||
patchPhase = ''
|
||||
@ -112,7 +112,7 @@ in stdenv.mkDerivation rec {
|
||||
nativeBuildInputs = [ docutils makeWrapper perl pkgconfig python3 which ];
|
||||
|
||||
buildInputs = [
|
||||
ffmpeg freetype libass libpthreadstubs
|
||||
ffmpeg_3_2 freetype libass libpthreadstubs
|
||||
lua lua5_sockets libuchardet
|
||||
] ++ optional alsaSupport alsaLib
|
||||
++ optional xvSupport libXv
|
||||
|
@ -3,11 +3,11 @@
|
||||
let
|
||||
pythonEnv = python3.withPackages (ps: with ps; [ pyqt5 sip ]);
|
||||
in stdenv.mkDerivation {
|
||||
name = "qarte-3.2.0";
|
||||
name = "qarte-3.2.0+158";
|
||||
src = fetchbzr {
|
||||
url = http://bazaar.launchpad.net/~vincent-vandevyvre/qarte/qarte-3;
|
||||
rev = "146";
|
||||
sha256 = "0dvl38dknmnj2p4yr25p88kw3mh502c6qdp2bd43bhd2sqc3b0v0";
|
||||
rev = "158";
|
||||
sha256 = "0nj9yxylz1nz0hdjm0jzrq2l3dgfdqkafwxnzydp6qv6261w564n";
|
||||
};
|
||||
|
||||
buildInputs = [ makeWrapper pythonEnv ];
|
||||
|
@ -1,11 +0,0 @@
|
||||
--- a/src/basegui.cpp 2014-08-20 01:04:51.000000000 +0100
|
||||
+++ b/src/basegui.cpp 2014-10-11 10:25:57.561983556 +0100
|
||||
@@ -5235,7 +5235,7 @@
|
||||
#ifdef YOUTUBE_SUPPORT
|
||||
void BaseGui::showTubeBrowser() {
|
||||
qDebug("BaseGui::showTubeBrowser");
|
||||
- QString exec = Paths::appPath() + "/smtube";
|
||||
+ QString exec = "smtube";
|
||||
qDebug("BaseGui::showTubeBrowser: '%s'", exec.toUtf8().constData());
|
||||
if (!QProcess::startDetached(exec, QStringList())) {
|
||||
QMessageBox::warning(this, "SMPlayer",
|
@ -1,16 +1,15 @@
|
||||
{ stdenv, fetchurl, qmakeHook, qtscript }:
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
name = "smplayer-16.1.0";
|
||||
name = "smplayer-16.11.0";
|
||||
|
||||
src = fetchurl {
|
||||
url = "mirror://sourceforge/smplayer/${name}.tar.bz2";
|
||||
sha256 = "1jfqpmbbjrs9lna44dp10zblj7b0cras9sb0nczycpkcsdi9np6j";
|
||||
sha256 = "0nhbr33p21qb7n6wry0nkavl5nfjzl5yylrhnxz0pyv69n5msfp5";
|
||||
};
|
||||
|
||||
patches = [ ./basegui.cpp.patch ];
|
||||
|
||||
buildInputs = [ qmakeHook qtscript ];
|
||||
buildInputs = [ qtscript ];
|
||||
nativeBuildInputs = [ qmakeHook ];
|
||||
|
||||
dontUseQmakeConfigure = true;
|
||||
|
||||
|
Some files were not shown because too many files have changed in this diff Show More
Loading…
Reference in New Issue
Block a user