Merge staging-next into staging

This commit is contained in:
Frederik Rietdijk 2018-12-07 15:31:52 +01:00
commit 747aa4cc93
225 changed files with 5366 additions and 4074 deletions

View file

@ -49,12 +49,12 @@ texlive.combine {
</listitem>
<listitem>
<para>
You can list packages e.g. by <command>nix-repl</command>.
<programlisting>
$ nix-repl
nix-repl> :l &lt;nixpkgs>
nix-repl> texlive.collection-&lt;TAB>
</programlisting>
You can list packages e.g. by <command>nix repl</command>.
<programlisting><![CDATA[
$ nix repl
nix-repl> :l <nixpkgs>
nix-repl> texlive.collection-<TAB>
]]></programlisting>
</para>
</listitem>
<listitem>

View file

@ -2464,6 +2464,11 @@
github = "listx";
name = "Linus Arver";
};
lionello = {
email = "lio@lunesu.com";
github = "lionello";
name = "Lionello Lunesu";
};
lluchs = {
email = "lukas.werling@gmail.com";
github = "lluchs";
@ -3935,6 +3940,11 @@
github = "seppeljordan";
name = "Sebastian Jordan";
};
seqizz = {
email = "seqizz@gmail.com";
github = "seqizz";
name = "Gurkan Gur";
};
sfrijters = {
email = "sfrijters@gmail.com";
github = "sfrijters";

View file

@ -113,12 +113,10 @@ $ nixos-option <xref linkend="opt-boot.kernelModules"/>
[ "tun" "ipv6" "loop" <replaceable>...</replaceable> ]
</screen>
Interactive exploration of the configuration is possible using
<command
xlink:href="https://github.com/edolstra/nix-repl">nix-repl</command>,
a read-eval-print loop for Nix expressions. Its not installed by default;
run <literal>nix-env -i nix-repl</literal> to get it. A typical use:
<command>nix repl</command>, a read-eval-print loop for Nix expressions.
A typical use:
<screen>
$ nix-repl '&lt;nixpkgs/nixos>'
$ nix repl '&lt;nixpkgs/nixos>'
nix-repl> config.<xref linkend="opt-networking.hostName"/>
"mandark"

View file

@ -94,5 +94,24 @@ pkgs.stdenv.mkDerivation {
cat errorlog
return 1
fi
(
# Resizes **snugly** to its actual limits (or closer to)
free=$(dumpe2fs $out | grep '^Free blocks:')
blocksize=$(dumpe2fs $out | grep '^Block size:')
blocks=$(dumpe2fs $out | grep '^Block count:')
blocks=$((''${blocks##*:})) # format the number.
blocksize=$((''${blocksize##*:})) # format the number.
# System can't boot with 0 blocks free.
# Add 16MiB of free space
fudge=$(( 16 * 1024 * 1024 / blocksize ))
size=$(( blocks - ''${free##*:} + fudge ))
echo "Resizing from $blocks blocks to $size blocks. (~ $((size*blocksize/1024/1024))MiB)"
EXT2FS_NO_MTAB_OK=yes resize2fs $out -f $size
)
# And a final fsck, because of the previous truncating.
fsck.ext4 -n -f $out
'';
}

View file

@ -42,6 +42,18 @@ in {
type = types.str;
description = ''
User token in Jenkins used to reload config.
WARNING: This token will be world readable in the Nix store. To keep
it secret, use the <option>accessTokenFile</option> option instead.
'';
};
accessTokenFile = mkOption {
default = "";
type = types.str;
example = "/run/keys/jenkins-job-builder-access-token";
description = ''
File containing the API token for the <option>accessUser</option>
user.
'';
};
@ -103,6 +115,21 @@ in {
};
config = mkIf (jenkinsCfg.enable && cfg.enable) {
assertions = [
{ assertion =
if cfg.accessUser != ""
then (cfg.accessToken != "" && cfg.accessTokenFile == "") ||
(cfg.accessToken == "" && cfg.accessTokenFile != "")
else true;
message = ''
One of accessToken and accessTokenFile options must be non-empty
strings, but not both. Current values:
services.jenkins.jobBuilder.accessToken = "${cfg.accessToken}"
services.jenkins.jobBuilder.accessTokenFile = "${cfg.accessTokenFile}"
'';
}
];
systemd.services.jenkins-job-builder = {
description = "Jenkins Job Builder Service";
# JJB can run either before or after jenkins. We chose after, so we can
@ -128,8 +155,13 @@ in {
ownerStamp = ".config-xml-managed-by-nixos-jenkins-job-builder";
reloadScript = ''
echo "Asking Jenkins to reload config"
CRUMB=$(curl -s 'http://${cfg.accessUser}:${cfg.accessToken}@${jenkinsCfg.listenAddress}:${toString jenkinsCfg.port}${jenkinsCfg.prefix}/crumbIssuer/api/xml?xpath=concat(//crumbRequestField,":",//crumb)')
curl --silent -X POST -H "$CRUMB" http://${cfg.accessUser}:${cfg.accessToken}@${jenkinsCfg.listenAddress}:${toString jenkinsCfg.port}${jenkinsCfg.prefix}/reload
curl_opts="--silent --fail --show-error"
access_token=${if cfg.accessTokenFile != ""
then "$(cat '${cfg.accessTokenFile}')"
else cfg.accessToken}
jenkins_url="http://${cfg.accessUser}:$access_token@${jenkinsCfg.listenAddress}:${toString jenkinsCfg.port}${jenkinsCfg.prefix}"
crumb=$(curl $curl_opts "$jenkins_url"'/crumbIssuer/api/xml?xpath=concat(//crumbRequestField,":",//crumb)')
curl $curl_opts -X POST -H "$crumb" "$jenkins_url"/reload
'';
in
''

View file

@ -13,7 +13,7 @@ let
[ # Basic startup
"${crdb}/bin/cockroach start"
"--logtostderr"
"--store=${cfg.dataDir}"
"--store=/var/lib/cockroachdb"
(ifNotNull cfg.locality "--locality='${cfg.locality}'")
# WebUI settings
@ -41,7 +41,7 @@ let
};
port = mkOption {
type = types.int;
type = types.port;
default = defaultPort;
description = "Port to bind to for ${descr}";
};
@ -70,10 +70,12 @@ in
like datacenter. The tiers and order must be the same on all nodes.
Including more tiers is better than including fewer. For example:
<literal>
country=us,region=us-west,datacenter=us-west-1b,rack=12
country=ca,region=ca-east,datacenter=ca-east-2,rack=4
planet=earth,province=manitoba,colo=secondary,power=3
</literal>
'';
};
@ -83,12 +85,6 @@ in
description = "The addresses for connecting the node to a cluster.";
};
dataDir = mkOption {
type = types.path;
default = "/var/lib/cockroachdb";
description = "Location where CockroachDB stores its table files";
};
insecure = mkOption {
type = types.bool;
default = false;
@ -126,9 +122,12 @@ in
The total size for caches.
This can be a percentage, expressed with a fraction sign or as a
decimal-point number, or any bytes-based unit. For example, "25%",
"0.25" both represent 25% of the available system memory. The values
"1000000000" and "1GB" both represent 1 gigabyte of memory.
decimal-point number, or any bytes-based unit. For example,
<literal>"25%"</literal>, <literal>"0.25"</literal> both represent
25% of the available system memory. The values
<literal>"1000000000"</literal> and <literal>"1GB"</literal> both
represent 1 gigabyte of memory.
'';
};
@ -140,9 +139,11 @@ in
data for SQL queries.
This can be a percentage, expressed with a fraction sign or as a
decimal-point number, or any bytes-based unit. For example, "25%",
"0.25" both represent 25% of the available system memory. The values
"1000000000" and "1GB" both represent 1 gigabyte of memory.
decimal-point number, or any bytes-based unit. For example,
<literal>"25%"</literal>, <literal>"0.25"</literal> both represent
25% of the available system memory. The values
<literal>"1000000000"</literal> and <literal>"1GB"</literal> both
represent 1 gigabyte of memory.
'';
};
@ -193,27 +194,21 @@ in
requires = [ "time-sync.target" ];
wantedBy = [ "multi-user.target" ];
unitConfig.RequiresMountsFor = "${cfg.dataDir}";
preStart = ''
if ! test -e ${cfg.dataDir}; then
mkdir -m 0700 -p ${cfg.dataDir}
chown -R ${cfg.user} ${cfg.dataDir}
fi
'';
unitConfig.RequiresMountsFor = "/var/lib/cockroachdb";
serviceConfig =
{ ExecStart = startupCommand;
Type = "notify";
User = cfg.user;
PermissionsStartOnly = true;
StateDirectory = "cockroachdb";
StateDirectoryMode = "0700";
Restart = "always";
TimeoutStopSec="60";
RestartSec="10";
StandardOutput="syslog";
StandardError="syslog";
SyslogIdentifier="cockroach";
# A conservative-ish timeout is alright here, because for Type=notify
# cockroach will send systemd pings during startup to keep it alive
TimeoutStopSec = 60;
RestartSec = 10;
};
};
};

View file

@ -127,7 +127,7 @@ let
serviceConfig.Restart = mkDefault "always";
serviceConfig.PrivateTmp = mkDefault true;
serviceConfig.WorkingDirectory = mkDefault /tmp;
} serviceOpts ] ++ optional (serviceOpts.serviceConfig.DynamicUser or false) {
} serviceOpts ] ++ optional (!(serviceOpts.serviceConfig.DynamicUser or false)) {
serviceConfig.User = conf.user;
serviceConfig.Group = conf.group;
});

View file

@ -36,5 +36,10 @@ in
${concatStringsSep " \\\n " cfg.extraFlags}
'';
};
# CPython requires a process to either have $HOME defined or run as a UID
# defined in /etc/passwd. The latter is false with DynamicUser, so define a
# dummy $HOME. https://bugs.python.org/issue10496
environment = { HOME = "/var/empty"; };
};
}

View file

@ -202,7 +202,7 @@ let
};
script = ''
modprobe wireguard
${optionalString (!config.boot.isContainer) "modprobe wireguard"}
${values.preSetup}

View file

@ -83,11 +83,11 @@ let
# Unpack Mediawiki and put the config file in its root directory.
mediawikiRoot = pkgs.stdenv.mkDerivation rec {
name= "mediawiki-1.29.1";
name= "mediawiki-1.31.1";
src = pkgs.fetchurl {
url = "https://releases.wikimedia.org/mediawiki/1.29/${name}.tar.gz";
sha256 = "03mpazbxvb011s2nmlw5p6dc43yjgl5yrsilmj1imyykm57bwb3m";
url = "https://releases.wikimedia.org/mediawiki/1.31/${name}.tar.gz";
sha256 = "13x48clij21cmysjkpnx68vggchrdasqp7b290j87xlfgjhdhnnf";
};
skins = config.skins;
@ -111,7 +111,7 @@ let
sed -i \
-e 's|/bin/bash|${pkgs.bash}/bin/bash|g' \
-e 's|/usr/bin/timeout|${pkgs.coreutils}/bin/timeout|g' \
$out/includes/limit.sh \
$out/includes/shell/limit.sh \
$out/includes/GlobalFunctions.php
'';
};

View file

@ -36,7 +36,7 @@ let
#! ${pkgs.runtimeShell} -e
# Initialise the container side of the veth pair.
if [ "$PRIVATE_NETWORK" = 1 ]; then
if [ -n "$HOST_ADDRESS" ] || [ -n "$LOCAL_ADDRESS" ]; then
ip link set host0 name eth0
ip link set dev eth0 up
@ -85,6 +85,10 @@ let
cp --remove-destination /etc/resolv.conf "$root/etc/resolv.conf"
if [ "$PRIVATE_NETWORK" = 1 ]; then
extraFlags+=" --private-network"
fi
if [ -n "$HOST_ADDRESS" ] || [ -n "$LOCAL_ADDRESS" ]; then
extraFlags+=" --network-veth"
if [ -n "$HOST_BRIDGE" ]; then
extraFlags+=" --network-bridge=$HOST_BRIDGE"
@ -153,7 +157,7 @@ let
# Clean up existing machined registration and interfaces.
machinectl terminate "$INSTANCE" 2> /dev/null || true
if [ "$PRIVATE_NETWORK" = 1 ]; then
if [ -n "$HOST_ADDRESS" ] || [ -n "$LOCAL_ADDRESS" ]; then
ip link del dev "ve-$INSTANCE" 2> /dev/null || true
ip link del dev "vb-$INSTANCE" 2> /dev/null || true
fi
@ -200,7 +204,7 @@ let
'';
in
''
if [ "$PRIVATE_NETWORK" = 1 ]; then
if [ -n "$HOST_ADDRESS" ] || [ -n "$LOCAL_ADDRESS" ]; then
if [ -z "$HOST_BRIDGE" ]; then
ifaceHost=ve-$INSTANCE
ip link set dev $ifaceHost up
@ -352,7 +356,7 @@ let
List of forwarded ports from host to container. Each forwarded port
is specified by protocol, hostPort and containerPort. By default,
protocol is tcp and hostPort and containerPort are assumed to be
the same if containerPort is not explicitly given.
the same if containerPort is not explicitly given.
'';
};
@ -457,6 +461,16 @@ in
{ boot.isContainer = true;
networking.hostName = mkDefault name;
networking.useDHCP = false;
assertions = [
{
assertion = config.privateNetwork -> stringLength name < 12;
message = ''
Container name `${name}` is too long: When `privateNetwork` is enabled, container names can
not be longer than 11 characters, because the container's interface name is derived from it.
This might be fixed in the future. See https://github.com/NixOS/nixpkgs/issues/38509
'';
}
];
};
in [ extraConfig ] ++ (map (x: x.value) defs);
prefix = [ "containers" name ];
@ -699,7 +713,7 @@ in
# container so that container@.target can get the container
# configuration.
environment.etc =
let mkPortStr = p: p.protocol + ":" + (toString p.hostPort) + ":" + (if p.containerPort == null then toString p.hostPort else toString p.containerPort);
let mkPortStr = p: p.protocol + ":" + (toString p.hostPort) + ":" + (if p.containerPort == null then toString p.hostPort else toString p.containerPort);
in mapAttrs' (name: cfg: nameValuePair "containers/${name}.conf"
{ text =
''

View file

@ -62,5 +62,9 @@ import ./make-test.nix ({ pkgs, ... }: {
# Ensure Layered Docker images work
$docker->succeed("docker load --input='${pkgs.dockerTools.examples.layered-image}'");
$docker->succeed("docker run --rm ${pkgs.dockerTools.examples.layered-image.imageName}");
# Ensure building an image on top of a layered Docker images work
$docker->succeed("docker load --input='${pkgs.dockerTools.examples.layered-on-top}'");
$docker->succeed("docker run --rm ${pkgs.dockerTools.examples.layered-on-top.imageName}");
'';
})

View file

@ -8,7 +8,7 @@ import ./make-test.nix ({ pkgs, lib, ...} : with lib; {
nodes = {
gitlab = { ... }: {
virtualisation.memorySize = 4096;
virtualisation.memorySize = 2047;
systemd.services.gitlab.serviceConfig.Restart = mkForce "no";
systemd.services.gitlab-workhorse.serviceConfig.Restart = mkForce "no";
systemd.services.gitaly.serviceConfig.Restart = mkForce "no";

View file

@ -31,6 +31,9 @@ in {
latitude = "0.0";
longitude = "0.0";
elevation = 0;
auth_providers = [
{ type = "legacy_api_password"; }
];
};
frontend = { };
http.api_password = apiPassword;

View file

@ -40,7 +40,7 @@ let
networking.firewall.allowedTCPPorts = [ 9092 ];
# i686 tests: qemu-system-i386 can simulate max 2047MB RAM (not 2048)
virtualisation.memorySize = 2047;
virtualisation.memorySize = 2047;
};
};
@ -70,4 +70,6 @@ in with pkgs; {
kafka_0_11 = makeKafkaTest "kafka_0_11" apacheKafka_0_11;
kafka_1_0 = makeKafkaTest "kafka_1_0" apacheKafka_1_0;
kafka_1_1 = makeKafkaTest "kafka_1_1" apacheKafka_1_1;
kafka_2_0 = makeKafkaTest "kafka_2_0" apacheKafka_2_0;
kafka_2_1 = makeKafkaTest "kafka_2_1" apacheKafka_2_1;
}

View file

@ -10,11 +10,14 @@ let
drv = pkgs.hello;
machine = { ... }: { /* services.sshd.enable = true; */ };
};
in pkgs.runCommand "verify-output" { inherit output; } ''
if [ ! -e "$output/bin/hello" ]; then
echo "Derivation built using runInMachine produced incorrect output:" >&2
ls -laR "$output" >&2
exit 1
fi
"$output/bin/hello" > "$out"
''
test = pkgs.runCommand "verify-output" { inherit output; } ''
if [ ! -e "$output/bin/hello" ]; then
echo "Derivation built using runInMachine produced incorrect output:" >&2
ls -laR "$output" >&2
exit 1
fi
"$output/bin/hello" > "$out"
'';
in test // { inherit test; } # To emulate behaviour of makeTest

View file

@ -4,7 +4,7 @@
}:
let
version = "0.12.6.0";
version = "0.12.8.0";
in
stdenv.mkDerivation {
name = "aeon-${version}";
@ -14,7 +14,7 @@ stdenv.mkDerivation {
repo = "aeon";
rev = "v${version}-aeon";
fetchSubmodules = true;
sha256 = "19r1snqwixccl27jwv6i0s86qck036pdlhyhl891bbiyvi55h14n";
sha256 = "1qmlz820mjs0b60d7i90lxcwwxmsdy6swq67v6n8mbb79zmcx8ii";
};
nativeBuildInputs = [ cmake pkgconfig git doxygen graphviz ];

View file

@ -2,7 +2,7 @@
buildGoPackage rec {
name = "go-ethereum-${version}";
version = "1.8.17";
version = "1.8.19";
goPackagePath = "github.com/ethereum/go-ethereum";
# Fix for usb-related segmentation faults on darwin
@ -16,13 +16,13 @@ buildGoPackage rec {
owner = "ethereum";
repo = "go-ethereum";
rev = "v${version}";
sha256 = "0vm526gbyi8bygqwwki9hx7gf5g3xk2s1biyvwjidrydzj9i46zd";
sha256 = "0shp8ak44v52ynlyawfh53wczd3zch7ydf6bmbrhm5rpbribirwr";
};
meta = with stdenv.lib; {
homepage = https://ethereum.github.io/go-ethereum/;
description = "Official golang implementation of the Ethereum protocol";
license = with licenses; [ lgpl3 gpl3 ];
maintainers = [ maintainers.adisbladis ];
maintainers = [ maintainers.adisbladis maintainers.lionello ];
};
}

View file

@ -0,0 +1,16 @@
commit 4ec09e6f6e00e40622a5207ed24dc657da9a9090
Author: Pavol Rusnak <stick@gk2.sk>
Date: Tue Dec 4 12:06:22 2018 +0100
build: add install: true to executable in meson.build
diff --git a/meson.build b/meson.build
index 050e1b1..9224ed5 100644
--- a/meson.build
+++ b/meson.build
@@ -39,4 +39,5 @@ endforeach
# compile the main project
executable('luppp', luppp_src + [version_hxx],
+ install: true,
dependencies: deps)

View file

@ -0,0 +1,40 @@
{ stdenv, fetchFromGitHub
, meson
, ninja
, pkgconfig
, jack2
, cairo
, liblo
, libsndfile
, libsamplerate
, ntk
}:
stdenv.mkDerivation rec {
pname = "luppp";
version = "1.2.0";
patches = [ ./build-install.patch ];
src = fetchFromGitHub {
owner = "openAVproductions";
repo = "openAV-Luppp";
rev = "release-${version}";
sha256 = "194yq0lqc2psq9vyxmzif40ccawcvd9jndcn18mkz4f8h5w5rc1a";
};
nativeBuildInputs = [
meson ninja pkgconfig
];
buildInputs = [
jack2 cairo liblo libsndfile libsamplerate ntk
];
meta = with stdenv.lib; {
homepage = http://openavproductions.com/luppp/;
description = "A music creation tool, intended for live use";
license = licenses.gpl3Plus;
maintainers = with maintainers; [ prusnak ];
platforms = platforms.linux;
};
}

View file

@ -5,14 +5,14 @@
let
# TO UPDATE: just execute the ./update.sh script (won't do anything if there is no update)
# "rev" decides what is actually being downloaded
version = "1.0.93.242.gc2341a27-15";
version = "1.0.94.262.g3d5c231c-9";
# To get the latest stable revision:
# curl -H 'X-Ubuntu-Series: 16' 'https://api.snapcraft.io/api/v1/snaps/details/spotify?channel=stable' | jq '.download_url,.version,.last_updated'
# To get general information:
# curl -H 'Snap-Device-Series: 16' 'https://api.snapcraft.io/v2/snaps/info/spotify' | jq '.'
# More examples of api usage:
# https://github.com/canonical-websites/snapcraft.io/blob/master/webapp/publisher/snaps/views.py
rev = "24";
rev = "28";
deps = [
@ -65,7 +65,7 @@ stdenv.mkDerivation {
# https://community.spotify.com/t5/Desktop-Linux/Redistribute-Spotify-on-Linux-Distributions/td-p/1695334
src = fetchurl {
url = "https://api.snapcraft.io/api/v1/snaps/download/pOBIoZ2LrCB3rDohMxoYGnbN14EHOgD7_${rev}.snap";
sha512 = "920d55b3dcad4ac6acd9bc73c8ad8eb1668327a175da465ce3d8bba2430da47aaefa5218659315fab43b5182611eb03047d4e2679c1345c57380b7def7a1212d";
sha512 = "ca8e2eb45ea7ef6396382298822969994aca86cca8ba122ec1521c593e621161267943fe5515bb8747037ecbbfbd05cffbbca017f8f4b1c9fbd216e1d6a9e8cb";
};
buildInputs = [ squashfsTools makeWrapper ];

View file

@ -98,6 +98,6 @@ stdenv.mkDerivation rec {
license = licenses.unfree;
platforms = [ "x86_64-linux" ];
maintainers = with maintainers; [ xvapx ];
broken = true; # 2018-12-06
};
}

View file

@ -13,14 +13,14 @@ let
sha256Hash = "117skqjax1xz9plarhdnrw2rwprjpybdc7mx7wggxapyy920vv5r";
};
betaVersion = {
version = "3.3.0.17"; # "Android Studio 3.3 RC 1"
build = "182.5138683";
sha256Hash = "0apc566l4gwkwvfgj50d4qxm2gw26rxdlyr8kj3kfcra9a33c2b7";
version = "3.3.0.18"; # "Android Studio 3.3 RC 2"
build = "182.5160847";
sha256Hash = "05rjwvcph0wx0p0hai5z6n9lnyhk3i5yvbvhr51jc8s3k3b6jyi5";
};
latestVersion = { # canary & dev
version = "3.4.0.5"; # "Android Studio 3.4 Canary 6"
build = "183.5146016";
sha256Hash = "1z2asimpsw15iild7c4aqicph6v327qx3ffjgvl2n8vr5rspsns1";
version = "3.4.0.6"; # "Android Studio 3.4 Canary 7"
build = "183.5159543";
sha256Hash = "0r685qqx4w1hwbd8jgrh7ks8bw9m7823ffhd3x6pl7j4b9hpc858";
};
in rec {
# Old alias

View file

@ -44,8 +44,7 @@ let
buildCommand = ''
mkdir -p $out/usr/
ar p $src data.tar.xz | tar -C $out -xJ ./usr
substituteInPlace $out/usr/share/applications/${pname}.desktop \
--replace /usr/share/${pname} $out/bin
sed -i -e "s|Exec=.*$|Exec=$out/bin/${pname}|" $out/usr/share/applications/${pname}.desktop
mv $out/usr/* $out/
rm -r $out/share/lintian
rm -r $out/usr/

View file

@ -1,14 +1,14 @@
{buildVersion, x32sha256, x64sha256}:
{ fetchurl, stdenv, glib, xorg, cairo, gtk2, pango, makeWrapper, openssl, bzip2,
{ fetchurl, stdenv, glib, xorg, cairo, gtk2, gtk3, pango, makeWrapper, wrapGAppsHook, openssl, bzip2,
pkexecPath ? "/run/wrappers/bin/pkexec", libredirect,
gksuSupport ? false, gksu, unzip, zip, bash}:
assert gksuSupport -> gksu != null;
let
libPath = stdenv.lib.makeLibraryPath [glib xorg.libX11 gtk2 cairo pango];
legacy = stdenv.lib.versionOlder buildVersion "3181";
libPath = stdenv.lib.makeLibraryPath [ glib xorg.libX11 (if legacy then gtk2 else gtk3) cairo pango ];
redirects = [ "/usr/bin/pkexec=${pkexecPath}" ]
++ stdenv.lib.optional gksuSupport "/usr/bin/gksudo=${gksu}/bin/gksudo";
in let
@ -36,11 +36,14 @@ in let
dontStrip = true;
dontPatchELF = true;
buildInputs = [ makeWrapper zip unzip ];
buildInputs = stdenv.lib.optionals (!legacy) [ glib gtk3 ]; # for GSETTINGS_SCHEMAS_PATH
nativeBuildInputs = [ makeWrapper zip unzip ] ++ stdenv.lib.optional (!legacy) wrapGAppsHook;
# make exec.py in Default.sublime-package use own bash with
# an LD_PRELOAD instead of "/bin/bash"
patchPhase = ''
runHook prePatch
mkdir Default.sublime-package-fix
( cd Default.sublime-package-fix
unzip -q ../Packages/Default.sublime-package
@ -50,9 +53,13 @@ in let
zip -q ../Packages/Default.sublime-package **/*
)
rm -r Default.sublime-package-fix
runHook postPatch
'';
buildPhase = ''
runHook preBuild
for i in sublime_text plugin_host crash_reporter; do
patchelf \
--interpreter "$(cat $NIX_CC/nix-support/dynamic-linker)" \
@ -62,9 +69,13 @@ in let
# Rewrite pkexec|gksudo argument. Note that we can't delete bytes in binary.
sed -i -e 's,/bin/cp\x00,cp\x00\x00\x00\x00\x00\x00,g' sublime_text
runHook postBuild
'';
installPhase = ''
runHook preInstall
# Correct sublime_text.desktop to exec `sublime' instead of /opt/sublime_text
sed -e "s,/opt/sublime_text/sublime_text,$out/sublime_text," -i sublime_text.desktop
@ -74,12 +85,20 @@ in let
# We can't just call /usr/bin/env bash because a relocation error occurs
# when trying to run a build from within Sublime Text
ln -s ${bash}/bin/bash $out/sublime_bash
runHook postInstall
'';
dontWrapGApps = true; # non-standard location, need to wrap the executables manually
postFixup = ''
wrapProgram $out/sublime_bash \
--set LD_PRELOAD "${stdenv.cc.cc.lib}/lib${stdenv.lib.optionalString stdenv.is64bit "64"}/libgcc_s.so.1"
wrapProgram $out/sublime_text \
--set LD_PRELOAD "${libredirect}/lib/libredirect.so" \
--set NIX_REDIRECTS ${builtins.concatStringsSep ":" redirects}
--set NIX_REDIRECTS ${builtins.concatStringsSep ":" redirects} \
${stdenv.lib.optionalString (!legacy) ''"''${gappsWrapperArgs[@]}"''}
# Without this, plugin_host crashes, even though it has the rpath
wrapProgram $out/plugin_host --prefix LD_PRELOAD : ${stdenv.cc.cc.lib}/lib${stdenv.lib.optionalString stdenv.is64bit "64"}/libgcc_s.so.1:${openssl.out}/lib/libssl.so:${bzip2.out}/lib/libbz2.so

View file

@ -5,9 +5,9 @@ let
in
rec {
sublime3-dev = common {
buildVersion = "3176";
x32sha256 = "08asz13888d4ddsz81cfk7k3319dabzz1kgbnshw0756pvyrvr23";
x64sha256 = "0cppkh5jx2g8f6jyy1bs81fpb90l0kn5m7y3skackpjdxhd7rwbl";
buildVersion = "3183";
x32sha256 = "0rgah7iq9y3afbawcb723d2b7m56lz0ji5l8klxvkp59c9rphqxh";
x64sha256 = "1n3zarkhs22p2vi32fswb0fvcn9fzivmziw6zcvjy02c0rmxmdkz";
} {};
sublime3 = common {

View file

@ -1,9 +1,9 @@
{ stdenv, lib, fetchurl, unzip, atomEnv, makeDesktopItem,
gtk2, wrapGAppsHook, libXScrnSaver, libxkbfile, libsecret }:
gtk2, wrapGAppsHook, libXScrnSaver, libxkbfile, libsecret,
isInsiders ? false }:
let
version = "1.29.1";
channel = "stable";
executableName = "code" + lib.optionalString isInsiders "-insiders";
plat = {
"i686-linux" = "linux-ia32";
@ -31,19 +31,24 @@ let
in
stdenv.mkDerivation rec {
name = "vscode-${version}";
version = "1.29.1";
src = fetchurl {
name = "VSCode_${version}_${plat}.${archive_fmt}";
url = "https://vscode-update.azurewebsites.net/${version}/${plat}/${channel}";
url = "https://vscode-update.azurewebsites.net/${version}/${plat}/stable";
inherit sha256;
};
passthru = {
inherit executableName;
};
desktopItem = makeDesktopItem {
name = "code";
exec = "code";
icon = "code";
name = executableName;
exec = executableName;
icon = "@out@/share/pixmaps/code.png";
comment = "Code editor redefined and optimized for building and debugging modern web and cloud applications";
desktopName = "Visual Studio Code";
desktopName = "Visual Studio Code" + lib.optionalString isInsiders " Insiders";
genericName = "Text Editor";
categories = "GNOME;GTK;Utility;TextEditor;Development;";
};
@ -56,17 +61,18 @@ in
if stdenv.hostPlatform.system == "x86_64-darwin" then ''
mkdir -p $out/lib/vscode $out/bin
cp -r ./* $out/lib/vscode
ln -s $out/lib/vscode/Contents/Resources/app/bin/code $out/bin
ln -s $out/lib/vscode/Contents/Resources/app/bin/${executableName} $out/bin
'' else ''
mkdir -p $out/lib/vscode $out/bin
cp -r ./* $out/lib/vscode
substituteInPlace $out/lib/vscode/bin/code --replace '"$CLI" "$@"' '"$CLI" "--skip-getting-started" "$@"'
substituteInPlace $out/lib/vscode/bin/${executableName} --replace '"$CLI" "$@"' '"$CLI" "--skip-getting-started" "$@"'
ln -s $out/lib/vscode/bin/code $out/bin
ln -s $out/lib/vscode/bin/${executableName} $out/bin
mkdir -p $out/share/applications
cp $desktopItem/share/applications/* $out/share/applications
substitute $desktopItem/share/applications/${executableName}.desktop $out/share/applications/${executableName}.desktop \
--subst-var out
mkdir -p $out/share/pixmaps
cp $out/lib/vscode/resources/app/resources/linux/code.png $out/share/pixmaps/code.png
@ -76,7 +82,7 @@ in
patchelf \
--set-interpreter "$(cat $NIX_CC/nix-support/dynamic-linker)" \
--set-rpath "${rpath}" \
$out/lib/vscode/code
$out/lib/vscode/${executableName}
patchelf \
--set-rpath "${rpath}" \

View file

@ -1,4 +1,4 @@
{ stdenv, lib, runCommand, buildEnv, vscode, which, writeScript
{ stdenv, lib, runCommand, buildEnv, vscode, makeWrapper
, vscodeExtensions ? [] }:
/*
@ -43,6 +43,7 @@
let
inherit (vscode) executableName;
wrappedPkgVersion = lib.getVersion vscode;
wrappedPkgName = lib.removeSuffix "-${wrappedPkgVersion}" vscode.name;
@ -51,22 +52,12 @@ let
paths = vscodeExtensions;
};
wrappedExeName = "code";
exeName = wrappedExeName;
wrapperExeFile = writeScript "${exeName}" ''
#!${stdenv.shell}
exec ${vscode}/bin/${wrappedExeName} \
--extensions-dir "${combinedExtensionsDrv}/share/${wrappedPkgName}/extensions" \
"$@"
'';
in
# When no extensions are requested, we simply redirect to the original
# non-wrapped vscode executable.
runCommand "${wrappedPkgName}-with-extensions-${wrappedPkgVersion}" {
buildInputs = [ vscode which ];
buildInputs = [ vscode makeWrapper ];
dontPatchELF = true;
dontStrip = true;
meta = vscode.meta;
@ -75,13 +66,9 @@ runCommand "${wrappedPkgName}-with-extensions-${wrappedPkgVersion}" {
mkdir -p "$out/share/applications"
mkdir -p "$out/share/pixmaps"
ln -sT "${vscode}/share/applications/code.desktop" "$out/share/applications/code.desktop"
ln -sT "${vscode}/share/pixmaps/code.png" "$out/share/pixmaps/code.png"
${if [] == vscodeExtensions
then ''
ln -sT "${vscode}/bin/${wrappedExeName}" "$out/bin/${exeName}"
''
else ''
ln -sT "${wrapperExeFile}" "$out/bin/${exeName}"
''}
ln -sT "${vscode}/share/applications/${executableName}.desktop" "$out/share/applications/${executableName}.desktop"
makeWrapper "${vscode}/bin/${executableName}" "$out/bin/${executableName}" \
--add-flags \
"--extensions-dir ${combinedExtensionsDrv}/share/${wrappedPkgName}/extensions"
''

View file

@ -3,7 +3,7 @@
, libmng, librsvg, libwmf, zlib, libzip, ghostscript, aalib, shared-mime-info
, python2Packages, libexif, gettext, xorg, glib-networking, libmypaint, gexiv2
, harfbuzz, mypaint-brushes, libwebp, libheif, libgudev, openexr
, AppKit, Cocoa, gtk-mac-integration }:
, AppKit, Cocoa, gtk-mac-integration-gtk2, cf-private }:
let
inherit (python2Packages) pygtk wrapPython python;
@ -23,8 +23,11 @@ in stdenv.mkDerivation rec {
freetype fontconfig lcms libpng libjpeg poppler poppler_data libtiff openexr
libmng librsvg libwmf zlib libzip ghostscript aalib shared-mime-info libwebp libheif
python pygtk libexif xorg.libXpm glib-networking libmypaint mypaint-brushes
] ++ stdenv.lib.optionals stdenv.isDarwin [ AppKit Cocoa gtk-mac-integration ]
++ stdenv.lib.optionals stdenv.isLinux [ libgudev ];
] ++ stdenv.lib.optionals stdenv.isDarwin [
# cf-private is needed to get some things not in swift-corefoundation.
# For instance _OBJC_CLASS_$_NSArray is missing.
AppKit Cocoa gtk-mac-integration-gtk2 cf-private
] ++ stdenv.lib.optionals stdenv.isLinux [ libgudev ];
pythonPath = [ pygtk ];
@ -69,7 +72,9 @@ in stdenv.mkDerivation rec {
"--with-icc-directory=/var/run/current-system/sw/share/color/icc"
];
doCheck = true;
# on Darwin,
# test-eevl.c:64:36: error: initializer element is not a compile-time constant
doCheck = !stdenv.isDarwin;
enableParallelBuilding = true;

View file

@ -0,0 +1,21 @@
{ stdenv, fetchurl, libjpeg }:
stdenv.mkDerivation rec {
name = "jpeginfo-${version}";
version = "1.6.1";
src = fetchurl {
url = "https://www.kokkonen.net/tjko/src/${name}.tar.gz";
sha256 = "0lvn3pnylyj56158d3ix9w1gas1s29klribw9bz1xym03p7k37k2";
};
buildInputs = [ libjpeg ];
meta = with stdenv.lib; {
description = "Prints information and tests integrity of JPEG/JFIF files";
homepage = "https://www.kokkonen.net/tjko/projects.html";
license = licenses.gpl2Plus;
maintainers = [ maintainers.bjornfor ];
platforms = platforms.all;
};
}

View file

@ -1,16 +1,15 @@
{ stdenv, requireFile, makeWrapper, unzip, jre }:
{ stdenv, fetchzip, makeWrapper, unzip, jre }:
stdenv.mkDerivation rec {
name = "yEd-${version}";
version = "3.18.1.1";
version = "3.18.2";
src = requireFile {
name = "${name}.zip";
url = "https://www.yworks.com/en/products/yfiles/yed/";
sha256 = "0jl0c18jkmy21ka5xgki8dqq2v8cy63qvmx3x01wrhiplmczn97y";
src = fetchzip {
url = "https://www.yworks.com/resources/yed/demo/${name}.zip";
sha256 = "1csj19j9mfx4jfc949sz672h8lnfj217nn32d54cxj8llks82ycy";
};
nativeBuildInputs = [ unzip makeWrapper ];
nativeBuildInputs = [ makeWrapper unzip ];
installPhase = ''
mkdir -p $out/yed

View file

@ -3,13 +3,13 @@
stdenv.mkDerivation rec {
name = "dmrconfig-${version}";
version = "2018-11-07";
version = "1.0";
src = fetchFromGitHub {
owner = "sergev";
repo = "dmrconfig";
rev = "b58985d3c848b927e91699d97f96d9de014c3fc7";
sha256 = "083f21hz6vqjpndkn27nsjnhnc5a4bw0cr26ryfqcvz275rj4k18";
rev = version;
sha256 = "1bb3hahfdb5phxyzp1m5ibqwz3mcqplzaibb1aq7w273xcfrd9l9";
};
buildInputs = [
@ -17,7 +17,10 @@ stdenv.mkDerivation rec {
];
preConfigure = ''
substituteInPlace Makefile --replace /usr/local/bin/dmrconfig $out/bin/dmrconfig
substituteInPlace Makefile \
--replace /usr/local/bin/dmrconfig $out/bin/dmrconfig \
--replace "\$(shell git describe --tags --abbrev=0)" ${version} \
--replace "\$(shell git rev-list HEAD --count)" 0
'';
installPhase = ''

View file

@ -0,0 +1,21 @@
{ stdenv, buildGoPackage, fetchFromGitHub }:
buildGoPackage rec {
name = "hivemind-${version}";
version = "1.0.4";
goPackagePath = "github.com/DarthSim/hivemind";
src = fetchFromGitHub {
owner = "DarthSim";
repo = "hivemind";
rev = "v${version}";
sha256 = "1z2izvyf0j3gi0cas5v22kkmkls03sg67182k8v3p6kwhzn0jw67";
};
meta = with stdenv.lib; {
homepage = https://github.com/DarthSim/;
description = "Process manager for Procfile-based applications";
license = with licenses; [ mit ];
maintainers = [ maintainers.sveitser ];
};
}

View file

@ -1,91 +1,62 @@
{ stdenv, fetchFromGitHub, python2 }:
{ stdenv, lib, fetchFromGitHub, python2 }:
let
pythonPackages = python2.pkgs.override {
overrides = self: super: with self; {
backports_ssl_match_hostname = super.backports_ssl_match_hostname.overridePythonAttrs (oldAttrs: rec {
version = "3.4.0.2";
mkOverride = attrname: version: sha256:
self: super: {
${attrname} = super.${attrname}.overridePythonAttrs (oldAttrs: {
inherit version;
src = oldAttrs.src.override {
inherit version;
sha256 = "07410e7fb09aab7bdaf5e618de66c3dac84e2e3d628352814dc4c37de321d6ae";
};
});
flask = super.flask.overridePythonAttrs (oldAttrs: rec {
version = "0.12.4";
src = oldAttrs.src.override {
inherit version;
sha256 = "2ea22336f6d388b4b242bc3abf8a01244a8aa3e236e7407469ef78c16ba355dd";
};
});
tornado = buildPythonPackage rec {
pname = "tornado";
version = "4.0.2";
propagatedBuildInputs = [ backports_ssl_match_hostname certifi ];
src = fetchPypi {
inherit pname version;
sha256 = "1yhvn8i05lp3b1953majg48i8pqsyj45h34aiv59hrfvxcj5234h";
};
};
flask_login = buildPythonPackage rec {
pname = "Flask-Login";
version = "0.2.2";
src = fetchPypi {
inherit pname version;
sha256 = "09ygn0r3i3jz065a5psng6bhlsqm78msnly4z6x39bs48r5ww17p";
};
propagatedBuildInputs = [ flask ];
checkInputs = [ nose ];
# No tests included
doCheck = false;
};
jinja2 = buildPythonPackage rec {
pname = "Jinja2";
version = "2.8.1";
src = fetchPypi {
inherit pname version;
sha256 = "14aqmhkc9rw5w0v311jhixdm6ym8vsm29dhyxyrjfqxljwx1yd1m";
};
propagatedBuildInputs = [ markupsafe ];
# No tests included
doCheck = false;
};
pylru = super.pylru.overridePythonAttrs (oldAttrs: rec {
version = "1.0.9";
src = oldAttrs.src.override {
inherit version;
sha256 = "71376192671f0ad1690b2a7427d39a29b1df994c8469a9b46b03ed7e28c0172c";
inherit version sha256;
};
});
};
py = python2.override {
packageOverrides = lib.foldr lib.composeExtensions (self: super: { }) ([
(mkOverride "flask" "0.10.1" "0wrkavjdjndknhp8ya8j850jq7a1cli4g5a93mg8nh1xz2gq50sc")
(mkOverride "flask_login" "0.2.11" "1rg3rsjs1gwi2pw6vr9jmhaqm9b3vc9c4hfcsvp4y8agbh7g3mc3")
(mkOverride "jinja2" "2.8.1" "14aqmhkc9rw5w0v311jhixdm6ym8vsm29dhyxyrjfqxljwx1yd1m")
(mkOverride "pylru" "1.0.9" "0b0pq0l7xv83dfsajsc49jcxzc99kb9jfx1a1dlx22hzcy962dvi")
(mkOverride "sarge" "0.1.4" "08s8896973bz1gg0pkr592w6g4p6v47bkfvws5i91p9xf8b35yar")
(mkOverride "tornado" "4.5.3" "02jzd23l4r6fswmwxaica9ldlyc2p6q8dk6dyff7j58fmdzf853d")
]);
};
in pythonPackages.buildPythonApplication rec {
ignoreVersionConstraints = [
"Click"
"Flask-Assets"
"Flask-Babel"
"Flask-Principal"
"PyYAML"
"emoji"
"flask"
"future"
"futures"
"pkginfo"
"psutil"
"pyserial"
"python-dateutil"
"requests"
"rsa"
"scandir"
"semantic_version"
"websocket-client"
"werkzeug"
"wrapt"
];
in py.pkgs.buildPythonApplication rec {
pname = "OctoPrint";
version = "1.3.8";
version = "1.3.9";
src = fetchFromGitHub {
owner = "foosel";
repo = "OctoPrint";
rev = version;
sha256 = "00zd5yrlihwfd3ly0mxibr77ffa8r8vkm6jhml2ml43dqb99caa3";
owner = "foosel";
repo = "OctoPrint";
rev = version;
sha256 = "1yqbsfmkx4wiykjrh66a05lhn15qhpc9ay67l37kv8bhdqf2xkj4";
};
# We need old Tornado
propagatedBuildInputs = with pythonPackages; [
propagatedBuildInputs = with py.pkgs; [
awesome-slugify flask_assets rsa requests pkginfo watchdog
semantic-version flask_principal werkzeug flaskbabel tornado
psutil pyserial flask_login netaddr markdown sockjs-tornado
@ -94,31 +65,13 @@ in pythonPackages.buildPythonApplication rec {
frozendict
];
checkInputs = with pythonPackages; [ nose mock ddt ];
checkInputs = with py.pkgs; [ nose mock ddt ];
# Jailbreak dependencies.
postPatch = ''
sed -i \
-e 's,pkginfo>=[^"]*,pkginfo,g' \
-e 's,Flask-Principal>=[^"]*,Flask-Principal,g' \
-e 's,websocket-client>=[^"]*,websocket-client,g' \
-e 's,Click>=[^"]*,Click,g' \
-e 's,rsa>=[^"]*,rsa,g' \
-e 's,flask>=[^"]*,flask,g' \
-e 's,Flask-Babel>=[^"]*,Flask-Babel,g' \
-e 's,Flask-Assets>=[^"]*,Flask-Assets,g' \
-e 's,PyYAML>=[^"]*,PyYAML,g' \
-e 's,scandir>=[^"]*,scandir,g' \
-e 's,werkzeug>=[^"]*,werkzeug,g' \
-e 's,psutil==[^"]*,psutil,g' \
-e 's,requests>=[^"]*,requests,g' \
-e 's,future>=[^"]*,future,g' \
-e 's,pyserial>=[^"]*,pyserial,g' \
-e 's,semantic_version>=[^"]*,semantic_version,g' \
-e 's,wrapt>=[^"]*,wrapt,g' \
-e 's,python-dateutil>=[^"]*,python-dateutil,g' \
-e 's,emoji>=[^"]*,emoji,g' \
-e 's,futures>=[^"]*,futures,g' \
sed -r -i \
${lib.concatStringsSep "\n" (map (e:
''-e 's@${e}[<>=]+.*@${e}",@g' \''
) ignoreVersionConstraints)}
setup.py
'';

View file

@ -1,8 +1,10 @@
{ stdenv, fetchFromGitHub, octoprint, pythonPackages }:
{ stdenv, fetchFromGitHub, octoprint, python2Packages }:
let
buildPlugin = args: pythonPackages.buildPythonApplication (args // {
buildInputs = (args.buildInputs or []) ++ [ octoprint ];
buildPlugin = args: python2Packages.buildPythonPackage (args // {
propagatedBuildInputs = (args.propagatedBuildInputs or []) ++ [ octoprint ];
# none of the following have tests
doCheck = false;
});
self = {
@ -42,6 +44,28 @@ let
};
};
mqtt = buildPlugin rec {
name = "OctoPrint-MQTT-${version}";
version = "0.8.0";
src = fetchFromGitHub {
owner = "OctoPrint";
repo = "OctoPrint-MQTT";
rev = version;
sha256 = "1318pgwy39gkdqgll3q5lwm7avslgdwyiwb5v8m23cgyh5w8cjq7";
};
propagatedBuildInputs = with python2Packages; [ paho-mqtt ];
meta = with stdenv.lib; {
homepage = https://github.com/OctoPrint/OctoPrint-MQTT;
description = "Publish printer status MQTT";
platforms = platforms.all;
license = licenses.agpl3;
maintainers = with maintainers; [ peterhoeg ];
};
};
titlestatus = buildPlugin rec {
name = "OctoPrint-TitleStatus-${version}";
version = "0.0.4";

View file

@ -10,12 +10,12 @@
stdenv.mkDerivation rec {
name = "polar-bookshelf-${version}";
version = "1.0.13";
version = "1.1.0";
# fetching a .deb because there's no easy way to package this Electron app
src = fetchurl {
url = "https://github.com/burtonator/polar-bookshelf/releases/download/v${version}/polar-bookshelf-${version}-amd64.deb";
sha256 = "0dh7pw8ncm8kr9anb6jqw7rr4lxgmq8a40c9zlrhzyswdpvnp1g7";
sha256 = "13h6c9sqbc7c5p1rc1wm7wza249sh0j04aq67n6gnqg5p22a7pmw";
};
buildInputs = [

View file

@ -25,7 +25,7 @@ mkDerivation rec {
patchShebangs .
sed -i -e '/unix:!macx:INSTALLROOT += \/usr/d' \
-e "s@\$\$LIBSDIR/qt4/plugins@''${qtPluginPrefix}@" \
-e "s@/etc/udev/rules.d@''${out}/lib/udev@" \
-e "s@/etc/udev/rules.d@''${out}/lib/udev/rules.d@" \
variables.pri
'';

View file

@ -0,0 +1,30 @@
{ stdenv, fetchFromGitHub, cmake, pkgconfig
, rtl-sdr, soapysdr
} :
let
version = "0.2.5";
in stdenv.mkDerivation {
name = "soapyrtlsdr-${version}";
src = fetchFromGitHub {
owner = "pothosware";
repo = "SoapyRTLSDR";
rev = "soapy-rtlsdr-${version}";
sha256 = "1wyghfqq3vcbjn5w06h5ik62m6555inrlkyrsnk2r78865xilkv3";
};
nativeBuildInputs = [ cmake pkgconfig ];
buildInputs = [ rtl-sdr soapysdr ];
cmakeFlags = [ "-DSoapySDR_DIR=${soapysdr}/share/cmake/SoapySDR/" ];
meta = with stdenv.lib; {
homepage = https://github.com/pothosware/SoapyRTLSDR;
description = "SoapySDR plugin for RTL-SDR devices";
license = licenses.mit;
maintainers = with maintainers; [ ragge ];
platforms = platforms.linux;
};
}

View file

@ -100,11 +100,11 @@ let
flash = stdenv.mkDerivation rec {
name = "flashplayer-ppapi-${version}";
version = "31.0.0.153";
version = "32.0.0.101";
src = fetchzip {
url = "https://fpdownload.adobe.com/pub/flashplayer/pdc/${version}/flash_player_ppapi_linux.x86_64.tar.gz";
sha256 = "0c7vh1h9lzx09njf7w1acvj2v91girlzflqxzli8nxza7pd1zb2v";
sha256 = "1bmmjraqzdz03jzbgs1l932gka1zhiyiis06r4yi4f93mdy31w72";
stripRoot = false;
};

View file

@ -1,18 +1,18 @@
# This file is autogenerated from update.sh in the same directory.
{
beta = {
sha256 = "0nxxqfncw9ci3rhg8fiqaxy6zvh9x3j10lw8yw7c0cg2yni10qsp";
sha256bin64 = "0frcaplyzhkxzzcfcf0vigqpzixar4jg9hhrh4i8z8vx2gnxkwwy";
version = "71.0.3578.53";
sha256 = "03ddfxxzh8pxil9n28y8nkzl8x0kb5bzzjy4mihg448dflh3anq2";
sha256bin64 = "147lh1way8db0j0m6wbpfzmfsvvlsjb29cjgf7s9hljb00wqv6ay";
version = "71.0.3578.80";
};
dev = {
sha256 = "11bsn77kvjqdwpiwjf4gaindfj0sx932wp6g7cald0638wdz7pqv";
sha256bin64 = "1j5pd8imc35ch7l3jmnmjm2yda2xzdwha5im34240wm6rrdr2v2j";
version = "72.0.3610.2";
sha256 = "0whw1kq5gd07k061ycfdn7bygahbl6zqa54wkz2lqh73yknbbnj4";
sha256bin64 = "0hlfzzf7kx90jw0zin685c4haiv262hf9a4sj6fmb2yhj21hbp87";
version = "72.0.3622.0";
};
stable = {
sha256 = "0bwlq5xii26b3yngwkwb7l2mx03c30ffpym4xg0hcci8ry7zhpj4";
sha256bin64 = "1gnhjbpkp2gn3y5pingwv153bakidq60pr4fj2iq1kniyllsmmpg";
version = "70.0.3538.110";
sha256 = "03ddfxxzh8pxil9n28y8nkzl8x0kb5bzzjy4mihg448dflh3anq2";
sha256bin64 = "1rnw3whn2aaxxb4w3s2nf0wb91qjrq099550j42wig7xa71j6rz4";
version = "71.0.3578.80";
};
}

View file

@ -74,25 +74,25 @@ let
in
stdenv.mkDerivation rec {
name = "flashplayer-${version}";
version = "31.0.0.153";
version = "32.0.0.101";
src = fetchurl {
url =
if debug then
"https://fpdownload.macromedia.com/pub/flashplayer/updaters/31/flash_player_npapi_linux_debug.${arch}.tar.gz"
"https://fpdownload.macromedia.com/pub/flashplayer/updaters/32/flash_player_npapi_linux_debug.${arch}.tar.gz"
else
"https://fpdownload.adobe.com/get/flashplayer/pdc/${version}/flash_player_npapi_linux.${arch}.tar.gz";
sha256 =
if debug then
if arch == "x86_64" then
"0d3ch1ksxra8hvbqnzj5fmbvlz6hq42b3rncx4vpjlwrcjd9ggy9"
"0383r5pl1jrspy06mpxq50kkip5q5v052kz9aymk4qylgy1dwpn2"
else
"1qldcashv1x64cvpbx1741hz32rmc0dp7i3ayhpbi15rvf95qx8f"
"1vx2map0wlj6bj8dqyxxaymmz9awjjfhi6097knpmqp6j8dj7l5g"
else
if arch == "x86_64" then
"114n3kvdyfmn2w6w6zbijx29fz10x3cbjyy3ci05n0y07lhq1grc"
"003mr9mqkg0agj3zlmci5a1m3lnhj27mnvqswjaffdg5rlihvxyi"
else
"0sxvjf3xylm4bmhianyfy54gzbm4gkq1i9q8gg4fn3nb3c0z7327";
"1smmdsnnlsssakzqas5268svyv3rk717zr7kwpkj4rd5d1pqwcps";
};
nativeBuildInputs = [ unzip ];

View file

@ -50,19 +50,19 @@
stdenv.mkDerivation rec {
name = "flashplayer-standalone-${version}";
version = "31.0.0.153";
version = "32.0.0.101";
src = fetchurl {
url =
if debug then
"https://fpdownload.macromedia.com/pub/flashplayer/updaters/31/flash_player_sa_linux_debug.x86_64.tar.gz"
"https://fpdownload.macromedia.com/pub/flashplayer/updaters/32/flash_player_sa_linux_debug.x86_64.tar.gz"
else
"https://fpdownload.macromedia.com/pub/flashplayer/updaters/31/flash_player_sa_linux.x86_64.tar.gz";
"https://fpdownload.macromedia.com/pub/flashplayer/updaters/32/flash_player_sa_linux.x86_64.tar.gz";
sha256 =
if debug then
"1k78nwrz5zbsj5jvn340n2y4dz1zxrcb7f7955d8dra15w0zax1k"
"1i59vfhxrlksxwmr3kj3dfbasfjgnx9aimmv400z07fw3zmdrbpw"
else
"0ajg3p4c36xzvvjl2hpbzn2g3xwjgf2xy6x4478aq7fxfgb0vf6s";
"0fz9zhp0qn9xda5pg37dfnvx04n8d7156h1qayf2l3la94apsacq";
};
nativeBuildInputs = [ unzip ];

View file

@ -17,7 +17,7 @@ stdenv.mkDerivation rec {
src = fetchurl {
url = "https://downloads.vivaldi.com/stable/${product}-stable_${version}_amd64.deb";
sha256 = "08x6abyz65vx4ycj8ys8sib9z1adb8ybmnrqjck69b30kbz78rj2";
sha256 = "00rxp6rardxjg17g2b28y2rj8szqlainp4ga6c58z981zkxvdlls";
};
unpackPhase = ''

View file

@ -0,0 +1,32 @@
{ stdenv, buildGoPackage, fetchFromGitHub }:
buildGoPackage rec {
name = "kube-router-${version}";
version = "0.2.3";
rev = "v${version}";
goPackagePath = "github.com/cloudnativelabs/kube-router";
src = fetchFromGitHub {
inherit rev;
owner = "cloudnativelabs";
repo = "kube-router";
sha256 = "1dsr76dq6sycwgh75glrcb4scv52lrrd0aivskhc7mwq30plafcj";
};
buildFlagsArray = ''
-ldflags=
-X
${goPackagePath}/pkg/cmd.version=${version}
-X
${goPackagePath}/pkg/cmd.buildDate=Nix
'';
meta = with stdenv.lib; {
homepage = "https://www.kube-router.io/";
description = "All-in-one router, firewall and service proxy for Kubernetes";
license = licenses.asl20;
maintainers = with maintainers; [ colemickens johanot ];
platforms = platforms.linux;
};
}

View file

@ -15,13 +15,13 @@ with lib;
stdenv.mkDerivation rec {
name = "kubernetes-${version}";
version = "1.12.2";
version = "1.12.3";
src = fetchFromGitHub {
owner = "kubernetes";
repo = "kubernetes";
rev = "v${version}";
sha256 = "14w77yw8pd2y5d764byh31vv9203y38zlvcr1a9wylrs00kgzwfw";
sha256 = "0y227qzv7hsibf0sil5ylfdvkfsd43qlsyprc1dwgbj8igjl6q2d";
};
buildInputs = [ removeReferencesTo makeWrapper which go_1_10 rsync go-bindata ];

View file

@ -0,0 +1,26 @@
{ lib, buildGoPackage, fetchFromGitHub }:
buildGoPackage rec {
name = "${pname}-${version}";
pname = "terraform-docs";
version = "0.5.0";
goPackagePath = "github.com/segmentio/${pname}";
src = fetchFromGitHub {
owner = "segmentio";
repo = pname;
rev = "v${version}";
sha256 = "12w2yr669hk5kxdb9rrzsn8hwvx8rzrc1rmn8hs9l8z1bkfhr4gg";
};
preBuild = ''
buildFlagsArray+=("-ldflags" "-X main.version=${version}")
'';
meta = with lib; {
description = "A utility to generate documentation from Terraform modules in various output formats";
homepage = "https://github.com/segmentio/terraform-docs/";
license = licenses.mit;
maintainers = with maintainers; [ zimbatm ];
};
}

View file

@ -11,8 +11,8 @@
{
owner = "terraform-providers";
repo = "terraform-provider-alicloud";
version = "1.23.0";
sha256 = "14hs58lqlj9vkmr4bxbyga8yz4h6mrx6zla587sqwgj5bjrg5vld";
version = "1.25.0";
sha256 = "09f0vdzkifj2mk1qccacpnlqiihbhhb2sfd21rpxbqscmj6a7vj1";
};
archive =
{
@ -39,8 +39,8 @@
{
owner = "terraform-providers";
repo = "terraform-provider-aws";
version = "1.46.0";
sha256 = "1xp02cwyl9sf8swl7x3wah3bg0ssm7y0svq8bkfki6632nfw9vzi";
version = "1.51.0";
sha256 = "1hx4zbmwcbaslq2pj01m3y8b44gipw9gg235jsv7454nrd3jhvhg";
};
azurerm =
{
@ -137,8 +137,8 @@
{
owner = "terraform-providers";
repo = "terraform-provider-datadog";
version = "1.5.0";
sha256 = "0wr44rqmg0hffgb2g4h03lk4pg9i244c13kyrc3m89b3biwdcydz";
version = "1.6.0";
sha256 = "16rp6kqax7i8fnl4id3sg0jmhjswx7wrnn1mp4z29gca46ji1nfh";
};
digitalocean =
{
@ -235,8 +235,8 @@
{
owner = "terraform-providers";
repo = "terraform-provider-hcloud";
version = "1.5.0";
sha256 = "135h811qh1l1kn66n371f00b422xi4zw15cgs3id866za5cavxf3";
version = "1.6.0";
sha256 = "19kax1l2l6vr8cwgy14ahhafnvlxgkw86xx2g9ajfg70d0q4zs3g";
};
helm =
{
@ -270,8 +270,8 @@
{
owner = "terraform-providers";
repo = "terraform-provider-icinga2";
version = "0.1.1";
sha256 = "0z7lxrspm33j7bkkm2n7ac0jgyaz3y3lql3gd30p10nvpilrg07v";
version = "0.2.0";
sha256 = "02ladn2w75k35vn8llj3zh9hbpnnnvpm47c9f29zshfs04acwbq0";
};
ignition =
{
@ -291,8 +291,8 @@
{
owner = "terraform-providers";
repo = "terraform-provider-kubernetes";
version = "1.3.0";
sha256 = "0fhh0r92whcxqz4z2kb6qx9dyygms5mz7ifhb9c7s2r22jnfz1j3";
version = "1.4.0";
sha256 = "14bhqrpx0z4qn51xwcklafva46ipx05q6myy7xh5wf6wpjz69j9p";
};
librato =
{
@ -305,8 +305,8 @@
{
owner = "terraform-providers";
repo = "terraform-provider-linode";
version = "1.2.0";
sha256 = "1wnl48qi8lhrxnrdgnhw7cb7mqv6141g4i648wb7cni5vlqy3i5l";
version = "1.3.0";
sha256 = "1683nkpq7wnc67pphablcmaifq2l1pz3gc9y5y9jbslllphy92v5";
};
local =
{
@ -396,8 +396,8 @@
{
owner = "terraform-providers";
repo = "terraform-provider-oci";
version = "3.7.0";
sha256 = "10d8hvcr019cr8fh54klnr9xhi0y3l5w4nb2h9bny84nv2rznk38";
version = "3.9.0";
sha256 = "1mm6q9crn2izx1il6fk3mhi9is1zrrsy7rnldcj05bzyywnq3r97";
};
oneandone =
{
@ -459,8 +459,8 @@
{
owner = "terraform-providers";
repo = "terraform-provider-pagerduty";
version = "1.2.0";
sha256 = "037mdcvpcpjj0dpwg0nny862j631ajhv472a847p2ajgk02bq1wf";
version = "1.2.1";
sha256 = "1b0fbzqalcxngnxk51afxkhs82bj68sjakvb28p0im0x1lblxj0n";
};
panos =
{
@ -536,8 +536,15 @@
{
owner = "terraform-providers";
repo = "terraform-provider-scaleway";
version = "1.7.0";
sha256 = "0gsjvpwfw2sc6ncy8v3j6gs0aanq3b08j3gid43687mfd782f4gk";
version = "1.8.0";
sha256 = "1vr3im5jas7m3yn5529m6ghhx4lxf2lksqbznpwyi351sbsn4ji2";
};
selvpc =
{
owner = "terraform-providers";
repo = "terraform-provider-selvpc";
version = "0.3.0";
sha256 = "1s1p0qa9x007hq26i4h0gcqpyx54jnwvg8d6ya044gm7gghhviz4";
};
softlayer =
{
@ -592,8 +599,8 @@
{
owner = "terraform-providers";
repo = "terraform-provider-tfe";
version = "0.3.0";
sha256 = "125k1hgpzwlsgslnz2nwz4mc5yl3hqyg48xdcn7bxvmvaf6kw9gd";
version = "0.4.0";
sha256 = "02qvxc4ljb6s8bkw521wdsxhp53pmk7sbk3dyjbrwpz9xdg8dscn";
};
tls =
{
@ -651,4 +658,11 @@
version = "0.0.1";
sha256 = "00vz6qjq1pk39iqg4356b8g3c6slla9jifkv2knk46gc9q93q0lf";
};
secret =
{
owner = "tweag";
repo = "terraform-provider-secret";
version = "0.0.1";
sha256 = "1mqs1il8y97hf9havcmxdfwjcpkrxa1hpkifzzy4rjc88m2m4q9r";
};
}

View file

@ -7,10 +7,13 @@
# <organisation>/<repo> - include only the named repository.
# include all terraform-providers
terraform-providers terraform-provider- terraform-provider-\\(azure-classic\\|scaffolding\\|google-beta\\)
terraform-providers terraform-provider- terraform-provider-\\(azure-classic\\|scaffolding\\|google-beta\\|skytap\\)
# include terraform-provider-matchbox
coreos/terraform-provider-matchbox
# include terraform-provider-nixos
tweag/terraform-provider-nixos
# include terraform-provider-secret
tweag/terraform-provider-secret

View file

@ -14,13 +14,13 @@
}:
stdenv.mkDerivation rec {
name = "dino-unstable-2018-11-27";
name = "dino-unstable-2018-11-29";
src = fetchFromGitHub {
owner = "dino";
repo = "dino";
rev = "141db9e40a3a81cfa3ad3587dc47f69c541d0fde";
sha256 = "006r1x7drlz39jjxlfdnxgrnambw9amhl9jcgf6p1dx71h1x8221";
rev = "680d28360c781ff29e810821801cfaba0493c526";
sha256 = "1w08xc842p2nggdxf0dwqw8izhwsrqah10w3s0v1i7dp33yhycln";
fetchSubmodules = true;
};
@ -57,6 +57,8 @@ stdenv.mkDerivation rec {
gettext
];
enableParallelBuilding = true;
meta = with stdenv.lib; {
description = "Modern Jabber/XMPP Client using GTK+/Vala";
homepage = https://github.com/dino/dino;

View file

@ -3,13 +3,13 @@
stdenv.mkDerivation rec {
name = "rambox-bare-${version}";
version = "0.6.2";
version = "0.6.3";
src = fetchFromGitHub {
owner = "ramboxapp";
repo = "community-edition";
rev = version;
sha256 = "150vf62cp739l9dgpnksgpkffabs2wi15q217m3nai34irhwzk8m";
sha256 = "1ghk29d0x6i3j8b1b4xxgyf961lp17qsvvhnilnkh1nhmvxpwmw5";
};
nativeBuildInputs = [ nodejs-8_x ruby sencha ];
@ -18,7 +18,7 @@ stdenv.mkDerivation rec {
inherit src;
nodejs = nodejs-8_x;
sha256 = "0hbw47653wh159c34f0rlj3p7xy0lvsyp0wh2hl35kv3fnsfbbm0";
sha256 = "03h1kfiaflwbrvcd8v0bsymn7n2dxi3yj4pxkwcigqg4jgcf56k6";
};
patches = [ ./isDev.patch ];

View file

@ -1,4 +1,4 @@
{ stdenv, fetchurl, dpkg, makeWrapper
{ darkMode ? false, stdenv, fetchurl, dpkg, makeWrapper
, alsaLib, atk, cairo, cups, curl, dbus, expat, fontconfig, freetype, glib
, gnome2, gtk3, gdk_pixbuf, libnotify, libxcb, nspr, nss, pango
, systemd, xorg }:
@ -88,6 +88,21 @@ in stdenv.mkDerivation {
substituteInPlace $out/share/applications/slack.desktop \
--replace /usr/bin/ $out/bin/ \
--replace /usr/share/ $out/share/
'' + stdenv.lib.optionalString darkMode ''
cat <<EOF >> $out/lib/slack/resources/app.asar.unpacked/src/static/ssb-interop.js
document.addEventListener('DOMContentLoaded', function() {
let tt__customCss = ".menu ul li a:not(.inline_menu_link) {color: #fff !important;}"
$.ajax({
url: 'https://cdn.rawgit.com/laCour/slack-night-mode/master/css/raw/black.css',
success: function(css) {
\$("<style></style>").appendTo('head').html(css + tt__customCss);
\$("<style></style>").appendTo('head').html('#reply_container.upload_in_threads .inline_message_input_container {background: padding-box #545454}');
\$("<style></style>").appendTo('head').html('.p-channel_sidebar {background: #363636 !important}');
\$("<style></style>").appendTo('head').html('#client_body:not(.onboarding):not(.feature_global_nav_layout):before {background: inherit;}');
}
});
});
EOF
'';
meta = with stdenv.lib; {

View file

@ -13,8 +13,8 @@ let
in {
stable = mkTelegram stableVersion;
preview = mkTelegram (stableVersion // {
version = "1.4.7";
sha256Hash = "00kjirikywdbigm4zdnm50s3wxfn9bw1yx13xz4k4ppz6amq9nrp";
version = "1.4.8";
sha256Hash = "0jn7nyvx5kmva418hi1x1awbycmhgk82gazx49kmdxspdd4nsrgj";
stable = false;
});
}

View file

@ -8,7 +8,15 @@
with lib;
mkDerivation rec {
let
# TODO: Not optimal (maybe we should only package the stable versions)
previewPatches = fetchFromGitHub {
owner = "primeos";
repo = "nixpkgs-tdesktop-patches";
rev = "b3c0cbce1b412443a8712c90069932bbcae87fb6";
sha256 = "1bymrciaci6plghaz7a6qwsidjm8rg5fqdh158cdp70il4g7kmw9";
};
in mkDerivation rec {
name = "telegram-desktop-${version}";
inherit version;
@ -29,7 +37,10 @@ mkDerivation rec {
};
# TODO: libtgvoip.patch no-gtk2.patch
patches = [ "${archPatches}/tdesktop.patch" ]
patches =
(if stable
then [ "${archPatches}/tdesktop.patch" ]
else [ "${previewPatches}/tdesktop.patch" ])
# TODO: Only required to work around a compiler bug.
# This should be fixed in GCC 7.3.1 (or later?)
++ [ ./fix-internal-compiler-error.patch ];

View file

@ -13,11 +13,11 @@ assert pulseaudioSupport -> libpulseaudio != null;
let
inherit (stdenv.lib) concatStringsSep makeBinPath optional;
version = "2.4.129780.0915";
version = "2.5.146186.1130";
srcs = {
x86_64-linux = fetchurl {
url = "https://zoom.us/client/${version}/zoom_x86_64.tar.xz";
sha256 = "0s4014ymc92rwpagcwjhmwwfz0vq35wiq2nhh6nlxcrr6jl4wd78";
sha256 = "1644xs7xg8a27xg7bgb7856hvlvfh2lin749alds782i52p9rsjr";
};
};

View file

@ -2,7 +2,6 @@
, ncurses, openssl, aspell, gnutls
, zlib, curl, pkgconfig, libgcrypt
, cmake, makeWrapper, libobjc, libresolv, libiconv
, writeScriptBin # for withPlugins
, asciidoctor # manpages
, guileSupport ? true, guile
, luaSupport ? true, lua5
@ -11,8 +10,6 @@
, rubySupport ? true, ruby
, tclSupport ? true, tcl
, extraBuildInputs ? []
, configure ? { availablePlugins, ... }: { plugins = builtins.attrValues availablePlugins; }
, runCommand, buildEnv
}:
let
@ -27,7 +24,7 @@ let
];
enabledPlugins = builtins.filter (p: p.enabled) plugins;
weechat =
in
assert lib.all (p: p.enabled -> ! (builtins.elem null p.buildInputs)) plugins;
stdenv.mkDerivation rec {
version = "2.3";
@ -82,72 +79,4 @@ let
maintainers = with stdenv.lib.maintainers; [ lovek323 garbas the-kenny lheckemann ma27 ];
platforms = stdenv.lib.platforms.unix;
};
};
in if configure == null then weechat else
let
perlInterpreter = perl;
availablePlugins = let
simplePlugin = name: {pluginFile = "${weechat.${name}}/lib/weechat/plugins/${name}.so";};
in rec {
python = {
pluginFile = "${weechat.python}/lib/weechat/plugins/python.so";
withPackages = pkgsFun: (python // {
extraEnv = ''
export PYTHONHOME="${pythonPackages.python.withPackages pkgsFun}"
'';
});
};
perl = (simplePlugin "perl") // {
extraEnv = ''
export PATH="${perlInterpreter}/bin:$PATH"
'';
withPackages = pkgsFun: (perl // {
extraEnv = ''
${perl.extraEnv}
export PERL5LIB=${lib.makeFullPerlPath (pkgsFun perlPackages)}
'';
});
};
tcl = simplePlugin "tcl";
ruby = simplePlugin "ruby";
guile = simplePlugin "guile";
lua = simplePlugin "lua";
};
config = configure { inherit availablePlugins; };
plugins = config.plugins or (builtins.attrValues availablePlugins);
pluginsDir = runCommand "weechat-plugins" {} ''
mkdir -p $out/plugins
for plugin in ${lib.concatMapStringsSep " " (p: p.pluginFile) plugins} ; do
ln -s $plugin $out/plugins
done
'';
init = let
init = builtins.replaceStrings [ "\n" ] [ ";" ] (config.init or "");
mkScript = drv: lib.flip map drv.scripts (script: "/script load ${drv}/share/${script}");
scripts = builtins.concatStringsSep ";" (lib.foldl (scripts: drv: scripts ++ mkScript drv)
[ ] (config.scripts or []));
in "${scripts};${init}";
mkWeechat = bin: (writeScriptBin bin ''
#!${stdenv.shell}
export WEECHAT_EXTRA_LIBDIR=${pluginsDir}
${lib.concatMapStringsSep "\n" (p: lib.optionalString (p ? extraEnv) p.extraEnv) plugins}
exec ${weechat}/bin/${bin} "$@" --run-command ${lib.escapeShellArg init}
'') // {
inherit (weechat) name meta;
unwrapped = weechat;
};
in buildEnv {
name = "weechat-bin-env-${weechat.version}";
paths = [
(mkWeechat "weechat")
(mkWeechat "weechat-headless")
];
meta = weechat.meta;
}
}

View file

@ -0,0 +1,80 @@
{ stdenv, lib, runCommand, writeScriptBin, buildEnv
, pythonPackages, perl, perlPackages
}:
weechat:
let
wrapper = {
configure ? { availablePlugins, ... }: { plugins = builtins.attrValues availablePlugins; }
}:
let
perlInterpreter = perl;
availablePlugins = let
simplePlugin = name: {pluginFile = "${weechat.${name}}/lib/weechat/plugins/${name}.so";};
in rec {
python = {
pluginFile = "${weechat.python}/lib/weechat/plugins/python.so";
withPackages = pkgsFun: (python // {
extraEnv = ''
export PYTHONHOME="${pythonPackages.python.withPackages pkgsFun}"
'';
});
};
perl = (simplePlugin "perl") // {
extraEnv = ''
export PATH="${perlInterpreter}/bin:$PATH"
'';
withPackages = pkgsFun: (perl // {
extraEnv = ''
${perl.extraEnv}
export PERL5LIB=${lib.makeFullPerlPath (pkgsFun perlPackages)}
'';
});
};
tcl = simplePlugin "tcl";
ruby = simplePlugin "ruby";
guile = simplePlugin "guile";
lua = simplePlugin "lua";
};
config = configure { inherit availablePlugins; };
plugins = config.plugins or (builtins.attrValues availablePlugins);
pluginsDir = runCommand "weechat-plugins" {} ''
mkdir -p $out/plugins
for plugin in ${lib.concatMapStringsSep " " (p: p.pluginFile) plugins} ; do
ln -s $plugin $out/plugins
done
'';
init = let
init = builtins.replaceStrings [ "\n" ] [ ";" ] (config.init or "");
mkScript = drv: lib.flip map drv.scripts (script: "/script load ${drv}/share/${script}");
scripts = builtins.concatStringsSep ";" (lib.foldl (scripts: drv: scripts ++ mkScript drv)
[ ] (config.scripts or []));
in "${scripts};${init}";
mkWeechat = bin: (writeScriptBin bin ''
#!${stdenv.shell}
export WEECHAT_EXTRA_LIBDIR=${pluginsDir}
${lib.concatMapStringsSep "\n" (p: lib.optionalString (p ? extraEnv) p.extraEnv) plugins}
exec ${weechat}/bin/${bin} "$@" --run-command ${lib.escapeShellArg init}
'') // {
inherit (weechat) name meta;
unwrapped = weechat;
};
in buildEnv {
name = "weechat-bin-env-${weechat.version}";
paths = [
(mkWeechat "weechat")
(mkWeechat "weechat-headless")
];
meta = weechat.meta;
};
in lib.makeOverridable wrapper

View file

@ -1,5 +1,5 @@
{ stdenv, fetchurl, pkgconfig, intltool, glib, gtk3, gmime, gnutls,
webkitgtk, libesmtp, openssl, libnotify, enchant, gpgme,
webkitgtk, libesmtp, openssl, libnotify, gtkspell3, gpgme,
libcanberra-gtk3, libsecret, gtksourceview, gobject-introspection,
hicolor-icon-theme, wrapGAppsHook
}:
@ -29,7 +29,7 @@ stdenv.mkDerivation rec {
webkitgtk
openssl
libnotify
enchant
gtkspell3
gpgme
libcanberra-gtk3
gtksourceview
@ -45,6 +45,7 @@ stdenv.mkDerivation rec {
"--with-ssl"
"--with-unique"
"--without-gnome"
"--with-spell-checker=gtkspell"
];
NIX_CFLAGS_COMPILE = "-I${glib.dev}/include/gio-unix-2.0";

View file

@ -1,21 +1,20 @@
{ stdenv, fetchurl, cups, libssh, libXpm, nxproxy, openldap, openssh,
makeWrapper, qtbase, qtsvg, qtx11extras, qttools, phonon }:
{ stdenv, fetchgit, cups, libssh, libXpm, nxproxy, openldap, openssh
, makeWrapper, qtbase, qtsvg, qtx11extras, qttools, phonon, pkgconfig }:
stdenv.mkDerivation rec {
name = "x2goclient-${version}";
version = "4.1.2.1";
pname = "x2goclient";
version = "unstable-2018-11-30";
src = fetchurl {
url = "https://code.x2go.org/releases/source/x2goclient/${name}.tar.gz";
sha256 = "1bzjzz2m9bqqndnk1p9p522cfapsqgkb0wllvqj9d4ir18grh60w";
src = fetchgit {
url = "git://code.x2go.org/x2goclient.git";
rev = "659655675f11ffd361ab9fb48fa77a01a1536fe8";
sha256 = "05gfs11m259bchy3k0ihqpwg9wf8lp94rbca5dzla9fjzrb7pyy4";
};
buildInputs = [ cups libssh libXpm nxproxy openldap openssh
qtbase qtsvg qtx11extras qttools phonon ];
qtbase qtsvg qtx11extras qttools phonon pkgconfig ];
nativeBuildInputs = [ makeWrapper ];
patches = [ ./qt511.patch ];
postPatch = ''
substituteInPlace Makefile \
--replace "SHELL=/bin/bash" "SHELL=$SHELL" \

View file

@ -1,15 +0,0 @@
diff --git a/src/printwidget.cpp b/src/printwidget.cpp
index 58a8af7..131d340 100644
--- a/src/printwidget.cpp
+++ b/src/printwidget.cpp
@@ -23,6 +23,7 @@
#include "x2gosettings.h"
#include "x2gologdebug.h"
#include <QDir>
+#include <QButtonGroup>
#ifdef Q_OS_WIN
#include "wapi.h"
#endif
--
2.17.1

View file

@ -5,14 +5,14 @@
with stdenv.lib;
stdenv.mkDerivation rec {
version = "6.2.7";
version = "6.2.8";
name = "seafile-client-${version}";
src = fetchFromGitHub {
owner = "haiwen";
repo = "seafile-client";
rev = "v${version}";
sha256 = "16ikl6vkp9v16608bq2sfg48idn2p7ik3q8n6j866zxkmgdvkpsg";
sha256 = "1y57cw789cmssgl39kj94q259kba08v5i1yc1cmx7qxyigrpwyv6";
};
nativeBuildInputs = [ pkgconfig cmake makeWrapper ];

View file

@ -7,13 +7,13 @@ with stdenv.lib;
buildGoPackage rec {
name = "gitea-${version}";
version = "1.5.3";
version = "1.6.0";
src = fetchFromGitHub {
owner = "go-gitea";
repo = "gitea";
rev = "v${version}";
sha256 = "1f8cbsd3kn4v2a6c57rwh9slgvss7gnxs96yhcy2ddwyycf6i04d";
sha256 = "01nqf8pnpa0n72brqh499z15rys6f0ck7l2cnpbiqgg3kir8b21p";
# Required to generate the same checksum on MacOS due to unicode encoding differences
# More information: https://github.com/NixOS/nixpkgs/pull/48128
extraPostFetch = ''

View file

@ -1,32 +1,32 @@
{
"ce": {
"version": "11.5.0",
"repo_hash": "0cjkkap3n9g9zahrxk99a330ahyb6cvx97dsnrxcdsn0cbrsxsrb",
"deb_hash": "0kn7mg1lk4gvc3x76z4rbh0j03b0wk6x1p5938wx8sc50k0bgrcp",
"deb_url": "https://packages.gitlab.com/gitlab/gitlab-ce/packages/debian/stretch/gitlab-ce_11.5.0-ce.0_amd64.deb/download.deb",
"version": "11.5.1",
"repo_hash": "0drfan4yncvpcbmmb0lcr1zgk2bav2bzza70mwv3a65habhsy0x5",
"deb_hash": "04v5xqimj985718csjzfx7rmnmbfbrm2bp05i4s3x7byrzkl8w9d",
"deb_url": "https://packages.gitlab.com/gitlab/gitlab-ce/packages/debian/stretch/gitlab-ce_11.5.1-ce.0_amd64.deb/download.deb",
"owner": "gitlab-org",
"repo": "gitlab-ce",
"rev": "v11.5.0",
"rev": "v11.5.1",
"passthru": {
"GITALY_SERVER_VERSION": "0.129.0",
"GITLAB_PAGES_VERSION": "1.3.0",
"GITLAB_PAGES_VERSION": "1.3.1",
"GITLAB_SHELL_VERSION": "8.4.1",
"GITLAB_WORKHORSE_VERSION": "7.1.0"
"GITLAB_WORKHORSE_VERSION": "7.1.3"
}
},
"ee": {
"version": "11.5.0",
"repo_hash": "1s2jr7vhbpklpcfjxgxnmq0zq14hh2aa6akdsb7ld7fj5lmzp00z",
"deb_hash": "108mgmlf947h200qrwg71ilhq5ihr4awxns6lqs2wa90ph9yq25c",
"deb_url": "https://packages.gitlab.com/gitlab/gitlab-ee/packages/debian/stretch/gitlab-ee_11.5.0-ee.0_amd64.deb/download.deb",
"version": "11.5.1",
"repo_hash": "150f7lnci88d821qxxla0dhwly3w59s3yzgvakzfc6p6iy07m9jp",
"deb_hash": "0gg3p4r6xscilw6igjk6l9mcxj3d7npnzg872r5y44p0q8faafhg",
"deb_url": "https://packages.gitlab.com/gitlab/gitlab-ee/packages/debian/stretch/gitlab-ee_11.5.1-ee.0_amd64.deb/download.deb",
"owner": "gitlab-org",
"repo": "gitlab-ee",
"rev": "v11.5.0-ee",
"rev": "v11.5.1-ee",
"passthru": {
"GITALY_SERVER_VERSION": "0.129.0",
"GITLAB_PAGES_VERSION": "1.3.0",
"GITLAB_PAGES_VERSION": "1.3.1",
"GITLAB_SHELL_VERSION": "8.4.1",
"GITLAB_WORKHORSE_VERSION": "7.1.0"
"GITLAB_WORKHORSE_VERSION": "7.1.3"
}
}
}

View file

@ -25,7 +25,7 @@ index 435cb29..078c1df 100644
func NewFromDir(dir string) (*Config, error) {
- return newFromFile(path.Join(dir, configFile))
+ return newFromFile(path.Join(dir, "shell-config.yml"))
+ return newFromFile("/run/gitlab/shell-config.yml")
}
func newFromFile(filename string) (*Config, error) {

View file

@ -3,13 +3,13 @@
stdenv.mkDerivation rec {
name = "gitlab-workhorse-${version}";
version = "7.1.0";
version = "7.1.3";
src = fetchFromGitLab {
owner = "gitlab-org";
repo = "gitlab-workhorse";
rev = "v${version}";
sha256 = "1jq28z2kf58wnbv8jkwfx2bm8ki22hpm9ssdy2ymza22gq0zx00g";
sha256 = "1r75jj0xb4jv5fq2ihxk0vlv43gsk523zx86076mwph1g75gi1nz";
};
buildInputs = [ git go ];

View file

@ -79,13 +79,6 @@ gem 'gpgme'
gem 'gitlab_omniauth-ldap', '~> 2.0.4', require: 'omniauth-ldap'
gem 'net-ldap'
# Git Wiki
# Only used to compute wiki page slugs
gem 'gitlab-gollum-lib', '~> 4.2', require: false
# Language detection
gem 'github-linguist', '~> 5.3.3', require: 'linguist'
# API
gem 'grape', '~> 1.1'
gem 'grape-entity', '~> 0.7.1'
@ -146,6 +139,7 @@ gem 'rouge', '~> 3.1'
gem 'truncato', '~> 0.7.9'
gem 'bootstrap_form', '~> 2.7.0'
gem 'nokogiri', '~> 1.8.2'
gem 'escape_utils', '~> 1.1'
# Calendar rendering
gem 'icalendar'
@ -159,6 +153,11 @@ group :unicorn do
gem 'unicorn-worker-killer', '~> 0.4.4'
end
group :puma do
gem 'puma', '~> 3.12', require: false
gem 'puma_worker_killer', require: false
end
# State machine
gem 'state_machines-activerecord', '~> 0.5.1'
@ -212,7 +211,7 @@ gem 'hipchat', '~> 1.5.0'
gem 'jira-ruby', '~> 1.4'
# Flowdock integration
gem 'gitlab-flowdock-git-hook', '~> 1.0.1'
gem 'flowdock', '~> 0.7'
# Slack integration
gem 'slack-notifier', '~> 1.5.1'
@ -245,9 +244,6 @@ gem 'rack-attack', '~> 4.4.1'
# Ace editor
gem 'ace-rails-ap', '~> 4.1.0'
# Keyboard shortcuts
gem 'mousetrap-rails', '~> 1.4.6'
# Detect and convert string character encoding
gem 'charlock_holmes', '~> 0.7.5'
@ -420,11 +416,10 @@ group :ed25519 do
end
# Gitaly GRPC client
gem 'gitaly-proto', '~> 0.118.1', require: 'gitaly'
gem 'grpc', '~> 1.11.0'
gem 'gitaly-proto', '~> 0.123.0', require: 'gitaly'
gem 'grpc', '~> 1.15.0'
# Locked until https://github.com/google/protobuf/issues/4210 is closed
gem 'google-protobuf', '= 3.5.1'
gem 'google-protobuf', '~> 3.6'
gem 'toml-rb', '~> 1.0.0', require: false
@ -436,6 +431,3 @@ gem 'flipper-active_support_cache_store', '~> 0.13.0'
# Structured logging
gem 'lograge', '~> 0.5'
gem 'grape_logging', '~> 1.7'
# Asset synchronization
gem 'asset_sync', '~> 2.4'

View file

@ -58,11 +58,6 @@ GEM
asciidoctor (1.5.6.2)
asciidoctor-plantuml (0.0.8)
asciidoctor (~> 1.5)
asset_sync (2.4.0)
activemodel (>= 4.1.0)
fog-core
mime-types (>= 2.99)
unf
ast (2.4.0)
atomic (1.1.99)
attr_encrypted (3.1.0)
@ -274,32 +269,9 @@ GEM
gettext_i18n_rails (>= 0.7.1)
po_to_json (>= 1.0.0)
rails (>= 3.2.0)
gitaly-proto (0.118.1)
google-protobuf (~> 3.1)
grpc (~> 1.10)
github-linguist (5.3.3)
charlock_holmes (~> 0.7.5)
escape_utils (~> 1.1.0)
mime-types (>= 1.19)
rugged (>= 0.25.1)
gitaly-proto (0.123.0)
grpc (~> 1.0)
github-markup (1.7.0)
gitlab-flowdock-git-hook (1.0.1)
flowdock (~> 0.7)
gitlab-grit (>= 2.4.1)
multi_json
gitlab-gollum-lib (4.2.7.5)
gemojione (~> 3.2)
github-markup (~> 1.6)
gollum-grit_adapter (~> 1.0)
nokogiri (>= 1.6.1, < 2.0)
rouge (~> 3.1)
sanitize (~> 4.6.4)
stringex (~> 2.6)
gitlab-grit (2.8.2)
charlock_holmes (~> 0.6)
diff-lcs (~> 1.1)
mime-types (>= 1.16)
posix-spawn (~> 0.3)
gitlab-markup (1.6.4)
gitlab-sidekiq-fetcher (0.3.0)
sidekiq (~> 5)
@ -314,8 +286,6 @@ GEM
rubyntlm (~> 0.5)
globalid (0.4.1)
activesupport (>= 4.2.0)
gollum-grit_adapter (1.0.1)
gitlab-grit (~> 2.7, >= 2.7.1)
gon (6.2.0)
actionpack (>= 3.0)
multi_json
@ -327,16 +297,15 @@ GEM
mime-types (~> 3.0)
representable (~> 3.0)
retriable (>= 2.0, < 4.0)
google-protobuf (3.5.1)
googleapis-common-protos-types (1.0.1)
google-protobuf (3.6.1)
googleapis-common-protos-types (1.0.2)
google-protobuf (~> 3.0)
googleauth (0.6.2)
googleauth (0.6.6)
faraday (~> 0.12)
jwt (>= 1.4, < 3.0)
logging (~> 2.0)
memoist (~> 0.12)
multi_json (~> 1.11)
os (~> 0.9)
os (>= 0.9, < 2.0)
signet (~> 0.7)
gpgme (2.0.13)
mini_portile2 (~> 2.1)
@ -360,10 +329,9 @@ GEM
railties
sprockets-rails
graphql (1.8.1)
grpc (1.11.0)
grpc (1.15.0)
google-protobuf (~> 3.1)
googleapis-common-protos-types (~> 1.0.0)
googleauth (>= 0.5.1, < 0.7)
haml (5.0.4)
temple (>= 0.8.0)
tilt
@ -465,11 +433,7 @@ GEM
xml-simple
licensee (8.9.2)
rugged (~> 0.24)
little-plugger (1.1.4)
locale (2.1.2)
logging (2.2.2)
little-plugger (~> 1.1)
multi_json (~> 1.10)
lograge (0.10.0)
actionpack (>= 4)
activesupport (>= 4)
@ -493,7 +457,6 @@ GEM
mini_mime (1.0.1)
mini_portile2 (2.3.0)
minitest (5.7.0)
mousetrap-rails (1.4.6)
msgpack (1.2.4)
multi_json (1.13.1)
multi_xml (0.6.0)
@ -575,9 +538,9 @@ GEM
org-ruby (0.9.12)
rubypants (~> 0.2)
orm_adapter (0.5.0)
os (0.9.6)
os (1.0.0)
parallel (1.12.1)
parser (2.5.1.0)
parser (2.5.3.0)
ast (~> 2.4.0)
parslet (1.8.2)
peek (1.0.1)
@ -605,7 +568,6 @@ GEM
pg (0.18.4)
po_to_json (1.0.1)
json (>= 1.6.0)
posix-spawn (0.3.13)
powerpack (0.1.1)
premailer (1.10.4)
addressable
@ -629,6 +591,10 @@ GEM
pry-rails (0.3.6)
pry (>= 0.10.4)
public_suffix (3.0.3)
puma (3.12.0)
puma_worker_killer (0.1.0)
get_process_mem (~> 0.2)
puma (>= 2.7, < 4)
pyu-ruby-sasl (0.0.3.3)
rack (1.6.11)
rack-accept (0.4.5)
@ -797,7 +763,7 @@ GEM
rubyzip (1.2.2)
rufus-scheduler (3.4.0)
et-orbi (~> 1.0)
rugged (0.27.4)
rugged (0.27.5)
safe_yaml (1.0.4)
sanitize (4.6.6)
crass (~> 1.0.2)
@ -843,7 +809,7 @@ GEM
sidekiq-cron (0.6.0)
rufus-scheduler (>= 3.3.0)
sidekiq (>= 4.2.1)
signet (0.8.1)
signet (0.11.0)
addressable (~> 2.3)
faraday (~> 0.9)
jwt (>= 1.5, < 3.0)
@ -876,7 +842,6 @@ GEM
state_machines-activerecord (0.5.1)
activerecord (>= 4.1, < 6.0)
state_machines-activemodel (>= 0.5.0)
stringex (2.8.4)
sys-filesystem (1.1.6)
ffi
sysexits (1.2.0)
@ -968,7 +933,6 @@ DEPENDENCIES
asana (~> 0.6.0)
asciidoctor (~> 1.5.6)
asciidoctor-plantuml (= 0.0.8)
asset_sync (~> 2.4)
attr_encrypted (~> 3.1.0)
awesome_print
babosa (~> 1.0.2)
@ -1006,6 +970,7 @@ DEPENDENCIES
ed25519 (~> 1.2)
email_reply_trimmer (~> 0.1)
email_spec (~> 2.2.0)
escape_utils (~> 1.1)
factory_bot_rails (~> 4.8.2)
faraday (~> 0.12)
fast_blank
@ -1013,6 +978,7 @@ DEPENDENCIES
flipper (~> 0.13.0)
flipper-active_record (~> 0.13.0)
flipper-active_support_cache_store (~> 0.13.0)
flowdock (~> 0.7)
fog-aliyun (~> 0.2.0)
fog-aws (~> 2.0.1)
fog-core (~> 1.44)
@ -1027,18 +993,15 @@ DEPENDENCIES
gettext (~> 3.2.2)
gettext_i18n_rails (~> 1.8.0)
gettext_i18n_rails_js (~> 1.3)
gitaly-proto (~> 0.118.1)
github-linguist (~> 5.3.3)
gitaly-proto (~> 0.123.0)
github-markup (~> 1.7.0)
gitlab-flowdock-git-hook (~> 1.0.1)
gitlab-gollum-lib (~> 4.2)
gitlab-markup (~> 1.6.4)
gitlab-sidekiq-fetcher
gitlab-styles (~> 2.4)
gitlab_omniauth-ldap (~> 2.0.4)
gon (~> 6.2)
google-api-client (~> 0.23)
google-protobuf (= 3.5.1)
google-protobuf (~> 3.6)
gpgme
grape (~> 1.1)
grape-entity (~> 0.7.1)
@ -1046,7 +1009,7 @@ DEPENDENCIES
grape_logging (~> 1.7)
graphiql-rails (~> 1.4.10)
graphql (~> 1.8.0)
grpc (~> 1.11.0)
grpc (~> 1.15.0)
haml_lint (~> 0.26.0)
hamlit (~> 2.8.8)
hangouts-chat (~> 0.0.5)
@ -1075,7 +1038,6 @@ DEPENDENCIES
method_source (~> 0.8)
mini_magick
minitest (~> 5.7.0)
mousetrap-rails (~> 1.4.6)
mysql2 (~> 0.4.10)
net-ldap
net-ssh (~> 5.0)
@ -1109,6 +1071,8 @@ DEPENDENCIES
prometheus-client-mmap (~> 0.9.4)
pry-byebug (~> 3.4.1)
pry-rails (~> 0.3.4)
puma (~> 3.12)
puma_worker_killer
rack-attack (~> 4.4.1)
rack-cors (~> 1.0.0)
rack-oauth2 (~> 1.2.1)
@ -1187,4 +1151,4 @@ DEPENDENCIES
wikicloth (= 0.8.1)
BUNDLED WITH
1.16.4
1.17.1

View file

@ -164,15 +164,6 @@
};
version = "0.0.8";
};
asset_sync = {
dependencies = ["activemodel" "fog-core" "mime-types" "unf"];
source = {
remotes = ["https://rubygems.org"];
sha256 = "0wjd662yyg72dwwc6cav7gk2bjv9nkhn056f03h8zmyank451hdf";
type = "gem";
};
version = "2.4.0";
};
ast = {
source = {
remotes = ["https://rubygems.org"];
@ -1066,22 +1057,13 @@
version = "1.3.0";
};
gitaly-proto = {
dependencies = ["google-protobuf" "grpc"];
dependencies = ["grpc"];
source = {
remotes = ["https://rubygems.org"];
sha256 = "19nyx75xnb3lsap6rr3p1avqsw1dcrm8d3ggmmihd58a9s762fki";
sha256 = "16b9sdaimhcda401z2s7apf0nz6y0lxs74xhkwlz4jzf6ms44mgg";
type = "gem";
};
version = "0.118.1";
};
github-linguist = {
dependencies = ["charlock_holmes" "escape_utils" "mime-types" "rugged"];
source = {
remotes = ["https://rubygems.org"];
sha256 = "0kgashbqpypv329m63b85ri1dx0gppwd0832hvwh124lk5b19drk";
type = "gem";
};
version = "5.3.3";
version = "0.123.0";
};
github-markup = {
source = {
@ -1091,33 +1073,6 @@
};
version = "1.7.0";
};
gitlab-flowdock-git-hook = {
dependencies = ["flowdock" "gitlab-grit" "multi_json"];
source = {
remotes = ["https://rubygems.org"];
sha256 = "1s3a10cdbh4xy732b92zcsm5zyc1lhi5v29d76j8mwbqmj11a2p8";
type = "gem";
};
version = "1.0.1";
};
gitlab-gollum-lib = {
dependencies = ["gemojione" "github-markup" "gollum-grit_adapter" "nokogiri" "rouge" "sanitize" "stringex"];
source = {
remotes = ["https://rubygems.org"];
sha256 = "15h6a7lsfkm967d5dhjlbcm2lnl1l9akzvaq92qlxq40r5apw0kn";
type = "gem";
};
version = "4.2.7.5";
};
gitlab-grit = {
dependencies = ["charlock_holmes" "diff-lcs" "mime-types" "posix-spawn"];
source = {
remotes = ["https://rubygems.org"];
sha256 = "0xgs3l81ghlc5nm75n0pz7b2cj3hpscfq5iy27c483nnjn2v5mc4";
type = "gem";
};
version = "2.8.2";
};
gitlab-markup = {
source = {
remotes = ["https://rubygems.org"];
@ -1162,15 +1117,6 @@
};
version = "0.4.1";
};
gollum-grit_adapter = {
dependencies = ["gitlab-grit"];
source = {
remotes = ["https://rubygems.org"];
sha256 = "0fcibm63v1afc0fj5rki0mm51m7nndil4cjcjjvkh3yigfn4nr4b";
type = "gem";
};
version = "1.0.1";
};
gon = {
dependencies = ["actionpack" "multi_json" "request_store"];
source = {
@ -1192,28 +1138,28 @@
google-protobuf = {
source = {
remotes = ["https://rubygems.org"];
sha256 = "0s8ijd9wdrkqwsb6nasrsv7f9i5im2nyax7f7jlb5y9vh8nl98qi";
sha256 = "134d3ini9ymdwxpz445m28ss9x0m6vcpijcdkzvgk4n538wdmppf";
type = "gem";
};
version = "3.5.1";
version = "3.6.1";
};
googleapis-common-protos-types = {
dependencies = ["google-protobuf"];
source = {
remotes = ["https://rubygems.org"];
sha256 = "0yf10s7w8wpa49hc86z7z2fkn9yz7j2njz0n8xmqb24ji090z4ck";
sha256 = "01ds7g01pxqm3mg283xjzy0lhhvvhvzw3m7gf7szd1r7la4wf0qq";
type = "gem";
};
version = "1.0.1";
version = "1.0.2";
};
googleauth = {
dependencies = ["faraday" "jwt" "logging" "memoist" "multi_json" "os" "signet"];
dependencies = ["faraday" "jwt" "memoist" "multi_json" "os" "signet"];
source = {
remotes = ["https://rubygems.org"];
sha256 = "08z4zfj9cwry13y8c2w5p4xylyslxxjq4wahd95bk1ddl5pknd4f";
sha256 = "1747p1dhpvz76i98xnjrvaj785y1232svm0nc8g9by6pz835gp2l";
type = "gem";
};
version = "0.6.2";
version = "0.6.6";
};
gpgme = {
dependencies = ["mini_portile2"];
@ -1278,13 +1224,13 @@
version = "1.8.1";
};
grpc = {
dependencies = ["google-protobuf" "googleapis-common-protos-types" "googleauth"];
dependencies = ["google-protobuf" "googleapis-common-protos-types"];
source = {
remotes = ["https://rubygems.org"];
sha256 = "1is4czi3i7y6zyxzyrpsma1z91axmc0jz2ngr6ckixqd3629npkz";
sha256 = "0m2wspnm1cfkmhlbp7yqv5bb4vsfh246cm0aavxra67aw4l8plhb";
type = "gem";
};
version = "1.11.0";
version = "1.15.0";
};
haml = {
dependencies = ["temple" "tilt"];
@ -1649,14 +1595,6 @@
};
version = "8.9.2";
};
little-plugger = {
source = {
remotes = ["https://rubygems.org"];
sha256 = "1frilv82dyxnlg8k1jhrvyd73l6k17mxc5vwxx080r4x1p04gwym";
type = "gem";
};
version = "1.1.4";
};
locale = {
source = {
remotes = ["https://rubygems.org"];
@ -1665,15 +1603,6 @@
};
version = "2.1.2";
};
logging = {
dependencies = ["little-plugger" "multi_json"];
source = {
remotes = ["https://rubygems.org"];
sha256 = "06j6iaj89h9jhkx1x3hlswqrfnqds8br05xb1qra69dpvbdmjcwn";
type = "gem";
};
version = "2.2.2";
};
lograge = {
dependencies = ["actionpack" "activesupport" "railties" "request_store"];
source = {
@ -1791,14 +1720,6 @@
};
version = "5.7.0";
};
mousetrap-rails = {
source = {
remotes = ["https://rubygems.org"];
sha256 = "00n13r5pwrk4vq018128vcfh021dw0fa2bk4pzsv0fslfm8ayp2m";
type = "gem";
};
version = "1.4.6";
};
msgpack = {
source = {
remotes = ["https://rubygems.org"];
@ -2114,10 +2035,10 @@
os = {
source = {
remotes = ["https://rubygems.org"];
sha256 = "1llv8w3g2jwggdxr5a5cjkrnbbfnvai3vxacxxc0fy84xmz3hymz";
sha256 = "1s401gvhqgs2r8hh43ia205mxsy1wc0ib4k76wzkdpspfcnfr1rk";
type = "gem";
};
version = "0.9.6";
version = "1.0.0";
};
parallel = {
source = {
@ -2131,10 +2052,10 @@
dependencies = ["ast"];
source = {
remotes = ["https://rubygems.org"];
sha256 = "1af7aa1c2npi8dkshgm3f8qyacabm94ckrdz7b8vd3f8zzswqzp9";
sha256 = "1zjk0w1kjj3xk8ymy1430aa4gg0k8ckphfj88br6il4pm83f0n1f";
type = "gem";
};
version = "2.5.1.0";
version = "2.5.3.0";
};
parslet = {
source = {
@ -2215,14 +2136,6 @@
};
version = "1.0.1";
};
posix-spawn = {
source = {
remotes = ["https://rubygems.org"];
sha256 = "1pmxmpins57qrbr31bs3bm7gidhaacmrp4md6i962gvpq4gyfcjw";
type = "gem";
};
version = "0.3.13";
};
powerpack = {
source = {
remotes = ["https://rubygems.org"];
@ -2309,6 +2222,23 @@
};
version = "3.0.3";
};
puma = {
source = {
remotes = ["https://rubygems.org"];
sha256 = "1k7dqxnq0dnf5rxkgs9rknclkn3ah7lsdrk6nrqxla8qzy31wliq";
type = "gem";
};
version = "3.12.0";
};
puma_worker_killer = {
dependencies = ["get_process_mem" "puma"];
source = {
remotes = ["https://rubygems.org"];
sha256 = "1m08qi8mxpp20zqqjj9yzcrx0sn29n5fn5avlf1lnl0n7qa9c03i";
type = "gem";
};
version = "0.1.0";
};
pyu-ruby-sasl = {
source = {
remotes = ["https://rubygems.org"];
@ -2916,10 +2846,10 @@
rugged = {
source = {
remotes = ["https://rubygems.org"];
sha256 = "1y6k5yrfmhc1v4albbpa3xzl28vk5lric3si8ada28sp9mmk2x72";
sha256 = "1jv4nw9hvlxp8hhhlllrfcznki82i50fp1sj65zsjllfl2bvz8x6";
type = "gem";
};
version = "0.27.4";
version = "0.27.5";
};
safe_yaml = {
source = {
@ -3075,10 +3005,10 @@
dependencies = ["addressable" "faraday" "jwt" "multi_json"];
source = {
remotes = ["https://rubygems.org"];
sha256 = "0js81lxqirdza8gf2f6avh11fny49ygmxfi1qx7jp8l9wrhznbkv";
sha256 = "1f5d3bz5bjc4b0r2jmqd15qf07lgsqkgd25f0h46jihrf9l5fsi4";
type = "gem";
};
version = "0.8.1";
version = "0.11.0";
};
simple_po_parser = {
source = {
@ -3199,14 +3129,6 @@
};
version = "0.5.1";
};
stringex = {
source = {
remotes = ["https://rubygems.org"];
sha256 = "0c5dfrjzkskzfsdvwsviq4111rwwpbk9022nxwdidz014mky5vi1";
type = "gem";
};
version = "2.8.4";
};
sys-filesystem = {
dependencies = ["ffi"];
source = {

View file

@ -82,13 +82,6 @@ gem 'gpgme'
gem 'gitlab_omniauth-ldap', '~> 2.0.4', require: 'omniauth-ldap'
gem 'net-ldap'
# Git Wiki
# Only used to compute wiki page slugs
gem 'gitlab-gollum-lib', '~> 4.2', require: false
# Language detection
gem 'github-linguist', '~> 5.3.3', require: 'linguist'
# API
gem 'grape', '~> 1.1'
gem 'grape-entity', '~> 0.7.1'
@ -156,6 +149,7 @@ gem 'rouge', '~> 3.1'
gem 'truncato', '~> 0.7.9'
gem 'bootstrap_form', '~> 2.7.0'
gem 'nokogiri', '~> 1.8.2'
gem 'escape_utils', '~> 1.1'
# Calendar rendering
gem 'icalendar'
@ -169,6 +163,11 @@ group :unicorn do
gem 'unicorn-worker-killer', '~> 0.4.4'
end
group :puma do
gem 'puma', '~> 3.12', require: false
gem 'puma_worker_killer', require: false
end
# State machine
gem 'state_machines-activerecord', '~> 0.5.1'
@ -222,7 +221,7 @@ gem 'hipchat', '~> 1.5.0'
gem 'jira-ruby', '~> 1.4'
# Flowdock integration
gem 'gitlab-flowdock-git-hook', '~> 1.0.1'
gem 'flowdock', '~> 0.7'
# Slack integration
gem 'slack-notifier', '~> 1.5.1'
@ -255,9 +254,6 @@ gem 'rack-attack', '~> 4.4.1'
# Ace editor
gem 'ace-rails-ap', '~> 4.1.0'
# Keyboard shortcuts
gem 'mousetrap-rails', '~> 1.4.6'
# Detect and convert string character encoding
gem 'charlock_holmes', '~> 0.7.5'
@ -435,11 +431,10 @@ group :ed25519 do
end
# Gitaly GRPC client
gem 'gitaly-proto', '~> 0.118.1', require: 'gitaly'
gem 'grpc', '~> 1.11.0'
gem 'gitaly-proto', '~> 0.123.0', require: 'gitaly'
gem 'grpc', '~> 1.15.0'
# Locked until https://github.com/google/protobuf/issues/4210 is closed
gem 'google-protobuf', '= 3.5.1'
gem 'google-protobuf', '~> 3.6'
gem 'toml-rb', '~> 1.0.0', require: false
@ -451,6 +446,3 @@ gem 'flipper-active_support_cache_store', '~> 0.13.0'
# Structured logging
gem 'lograge', '~> 0.5'
gem 'grape_logging', '~> 1.7'
# Asset synchronization
gem 'asset_sync', '~> 2.4'

View file

@ -58,11 +58,6 @@ GEM
asciidoctor (1.5.6.2)
asciidoctor-plantuml (0.0.8)
asciidoctor (~> 1.5)
asset_sync (2.4.0)
activemodel (>= 4.1.0)
fog-core
mime-types (>= 2.99)
unf
ast (2.4.0)
atomic (1.1.99)
attr_encrypted (3.1.0)
@ -298,32 +293,9 @@ GEM
gettext_i18n_rails (>= 0.7.1)
po_to_json (>= 1.0.0)
rails (>= 3.2.0)
gitaly-proto (0.118.1)
google-protobuf (~> 3.1)
grpc (~> 1.10)
github-linguist (5.3.3)
charlock_holmes (~> 0.7.5)
escape_utils (~> 1.1.0)
mime-types (>= 1.19)
rugged (>= 0.25.1)
gitaly-proto (0.123.0)
grpc (~> 1.0)
github-markup (1.7.0)
gitlab-flowdock-git-hook (1.0.1)
flowdock (~> 0.7)
gitlab-grit (>= 2.4.1)
multi_json
gitlab-gollum-lib (4.2.7.5)
gemojione (~> 3.2)
github-markup (~> 1.6)
gollum-grit_adapter (~> 1.0)
nokogiri (>= 1.6.1, < 2.0)
rouge (~> 3.1)
sanitize (~> 4.6.4)
stringex (~> 2.6)
gitlab-grit (2.8.2)
charlock_holmes (~> 0.6)
diff-lcs (~> 1.1)
mime-types (>= 1.16)
posix-spawn (~> 0.3)
gitlab-license (1.0.0)
gitlab-markup (1.6.4)
gitlab-sidekiq-fetcher (0.3.0)
@ -339,8 +311,6 @@ GEM
rubyntlm (~> 0.5)
globalid (0.4.1)
activesupport (>= 4.2.0)
gollum-grit_adapter (1.0.1)
gitlab-grit (~> 2.7, >= 2.7.1)
gon (6.2.0)
actionpack (>= 3.0)
multi_json
@ -352,16 +322,15 @@ GEM
mime-types (~> 3.0)
representable (~> 3.0)
retriable (>= 2.0, < 4.0)
google-protobuf (3.5.1)
googleapis-common-protos-types (1.0.1)
google-protobuf (3.6.1)
googleapis-common-protos-types (1.0.2)
google-protobuf (~> 3.0)
googleauth (0.6.2)
googleauth (0.6.6)
faraday (~> 0.12)
jwt (>= 1.4, < 3.0)
logging (~> 2.0)
memoist (~> 0.12)
multi_json (~> 1.11)
os (~> 0.9)
os (>= 0.9, < 2.0)
signet (~> 0.7)
gpgme (2.0.13)
mini_portile2 (~> 2.1)
@ -385,10 +354,9 @@ GEM
railties
sprockets-rails
graphql (1.8.1)
grpc (1.11.0)
grpc (1.15.0)
google-protobuf (~> 3.1)
googleapis-common-protos-types (~> 1.0.0)
googleauth (>= 0.5.1, < 0.7)
gssapi (1.2.0)
ffi (>= 1.0.1)
haml (5.0.4)
@ -493,11 +461,7 @@ GEM
xml-simple
licensee (8.9.2)
rugged (~> 0.24)
little-plugger (1.1.4)
locale (2.1.2)
logging (2.2.2)
little-plugger (~> 1.1)
multi_json (~> 1.10)
lograge (0.10.0)
actionpack (>= 4)
activesupport (>= 4)
@ -521,7 +485,6 @@ GEM
mini_mime (1.0.1)
mini_portile2 (2.3.0)
minitest (5.7.0)
mousetrap-rails (1.4.6)
msgpack (1.2.4)
multi_json (1.13.1)
multi_xml (0.6.0)
@ -604,9 +567,9 @@ GEM
org-ruby (0.9.12)
rubypants (~> 0.2)
orm_adapter (0.5.0)
os (0.9.6)
os (1.0.0)
parallel (1.12.1)
parser (2.5.1.0)
parser (2.5.3.0)
ast (~> 2.4.0)
parslet (1.8.2)
peek (1.0.1)
@ -634,7 +597,6 @@ GEM
pg (0.18.4)
po_to_json (1.0.1)
json (>= 1.6.0)
posix-spawn (0.3.13)
powerpack (0.1.1)
premailer (1.10.4)
addressable
@ -658,6 +620,10 @@ GEM
pry-rails (0.3.6)
pry (>= 0.10.4)
public_suffix (3.0.3)
puma (3.12.0)
puma_worker_killer (0.1.0)
get_process_mem (~> 0.2)
puma (>= 2.7, < 4)
pyu-ruby-sasl (0.0.3.3)
rack (1.6.11)
rack-accept (0.4.5)
@ -826,7 +792,7 @@ GEM
rubyzip (1.2.2)
rufus-scheduler (3.4.0)
et-orbi (~> 1.0)
rugged (0.27.4)
rugged (0.27.5)
safe_yaml (1.0.4)
sanitize (4.6.6)
crass (~> 1.0.2)
@ -872,7 +838,7 @@ GEM
sidekiq-cron (0.6.0)
rufus-scheduler (>= 3.3.0)
sidekiq (>= 4.2.1)
signet (0.8.1)
signet (0.11.0)
addressable (~> 2.3)
faraday (~> 0.9)
jwt (>= 1.5, < 3.0)
@ -905,7 +871,6 @@ GEM
state_machines-activerecord (0.5.1)
activerecord (>= 4.1, < 6.0)
state_machines-activemodel (>= 0.5.0)
stringex (2.8.4)
sys-filesystem (1.1.6)
ffi
sysexits (1.2.0)
@ -997,7 +962,6 @@ DEPENDENCIES
asana (~> 0.6.0)
asciidoctor (~> 1.5.6)
asciidoctor-plantuml (= 0.0.8)
asset_sync (~> 2.4)
attr_encrypted (~> 3.1.0)
awesome_print
aws-sdk
@ -1039,6 +1003,7 @@ DEPENDENCIES
elasticsearch-rails (~> 0.1.9)
email_reply_trimmer (~> 0.1)
email_spec (~> 2.2.0)
escape_utils (~> 1.1)
factory_bot_rails (~> 4.8.2)
faraday (~> 0.12)
faraday_middleware-aws-signers-v4
@ -1047,6 +1012,7 @@ DEPENDENCIES
flipper (~> 0.13.0)
flipper-active_record (~> 0.13.0)
flipper-active_support_cache_store (~> 0.13.0)
flowdock (~> 0.7)
fog-aliyun (~> 0.2.0)
fog-aws (~> 2.0.1)
fog-core (~> 1.44)
@ -1061,11 +1027,8 @@ DEPENDENCIES
gettext (~> 3.2.2)
gettext_i18n_rails (~> 1.8.0)
gettext_i18n_rails_js (~> 1.3)
gitaly-proto (~> 0.118.1)
github-linguist (~> 5.3.3)
gitaly-proto (~> 0.123.0)
github-markup (~> 1.7.0)
gitlab-flowdock-git-hook (~> 1.0.1)
gitlab-gollum-lib (~> 4.2)
gitlab-license (~> 1.0)
gitlab-markup (~> 1.6.4)
gitlab-sidekiq-fetcher
@ -1073,7 +1036,7 @@ DEPENDENCIES
gitlab_omniauth-ldap (~> 2.0.4)
gon (~> 6.2)
google-api-client (~> 0.23)
google-protobuf (= 3.5.1)
google-protobuf (~> 3.6)
gpgme
grape (~> 1.1)
grape-entity (~> 0.7.1)
@ -1081,7 +1044,7 @@ DEPENDENCIES
grape_logging (~> 1.7)
graphiql-rails (~> 1.4.10)
graphql (~> 1.8.0)
grpc (~> 1.11.0)
grpc (~> 1.15.0)
gssapi
haml_lint (~> 0.26.0)
hamlit (~> 2.8.8)
@ -1111,7 +1074,6 @@ DEPENDENCIES
method_source (~> 0.8)
mini_magick
minitest (~> 5.7.0)
mousetrap-rails (~> 1.4.6)
mysql2 (~> 0.4.10)
net-ldap
net-ntp
@ -1146,6 +1108,8 @@ DEPENDENCIES
prometheus-client-mmap (~> 0.9.4)
pry-byebug (~> 3.4.1)
pry-rails (~> 0.3.4)
puma (~> 3.12)
puma_worker_killer
rack-attack (~> 4.4.1)
rack-cors (~> 1.0.0)
rack-oauth2 (~> 1.2.1)
@ -1224,4 +1188,4 @@ DEPENDENCIES
wikicloth (= 0.8.1)
BUNDLED WITH
1.16.4
1.17.1

View file

@ -164,15 +164,6 @@
};
version = "0.0.8";
};
asset_sync = {
dependencies = ["activemodel" "fog-core" "mime-types" "unf"];
source = {
remotes = ["https://rubygems.org"];
sha256 = "0wjd662yyg72dwwc6cav7gk2bjv9nkhn056f03h8zmyank451hdf";
type = "gem";
};
version = "2.4.0";
};
ast = {
source = {
remotes = ["https://rubygems.org"];
@ -1154,22 +1145,13 @@
version = "1.3.0";
};
gitaly-proto = {
dependencies = ["google-protobuf" "grpc"];
dependencies = ["grpc"];
source = {
remotes = ["https://rubygems.org"];
sha256 = "19nyx75xnb3lsap6rr3p1avqsw1dcrm8d3ggmmihd58a9s762fki";
sha256 = "16b9sdaimhcda401z2s7apf0nz6y0lxs74xhkwlz4jzf6ms44mgg";
type = "gem";
};
version = "0.118.1";
};
github-linguist = {
dependencies = ["charlock_holmes" "escape_utils" "mime-types" "rugged"];
source = {
remotes = ["https://rubygems.org"];
sha256 = "0kgashbqpypv329m63b85ri1dx0gppwd0832hvwh124lk5b19drk";
type = "gem";
};
version = "5.3.3";
version = "0.123.0";
};
github-markup = {
source = {
@ -1179,33 +1161,6 @@
};
version = "1.7.0";
};
gitlab-flowdock-git-hook = {
dependencies = ["flowdock" "gitlab-grit" "multi_json"];
source = {
remotes = ["https://rubygems.org"];
sha256 = "1s3a10cdbh4xy732b92zcsm5zyc1lhi5v29d76j8mwbqmj11a2p8";
type = "gem";
};
version = "1.0.1";
};
gitlab-gollum-lib = {
dependencies = ["gemojione" "github-markup" "gollum-grit_adapter" "nokogiri" "rouge" "sanitize" "stringex"];
source = {
remotes = ["https://rubygems.org"];
sha256 = "15h6a7lsfkm967d5dhjlbcm2lnl1l9akzvaq92qlxq40r5apw0kn";
type = "gem";
};
version = "4.2.7.5";
};
gitlab-grit = {
dependencies = ["charlock_holmes" "diff-lcs" "mime-types" "posix-spawn"];
source = {
remotes = ["https://rubygems.org"];
sha256 = "0xgs3l81ghlc5nm75n0pz7b2cj3hpscfq5iy27c483nnjn2v5mc4";
type = "gem";
};
version = "2.8.2";
};
gitlab-license = {
source = {
remotes = ["https://rubygems.org"];
@ -1258,15 +1213,6 @@
};
version = "0.4.1";
};
gollum-grit_adapter = {
dependencies = ["gitlab-grit"];
source = {
remotes = ["https://rubygems.org"];
sha256 = "0fcibm63v1afc0fj5rki0mm51m7nndil4cjcjjvkh3yigfn4nr4b";
type = "gem";
};
version = "1.0.1";
};
gon = {
dependencies = ["actionpack" "multi_json" "request_store"];
source = {
@ -1288,28 +1234,28 @@
google-protobuf = {
source = {
remotes = ["https://rubygems.org"];
sha256 = "0s8ijd9wdrkqwsb6nasrsv7f9i5im2nyax7f7jlb5y9vh8nl98qi";
sha256 = "134d3ini9ymdwxpz445m28ss9x0m6vcpijcdkzvgk4n538wdmppf";
type = "gem";
};
version = "3.5.1";
version = "3.6.1";
};
googleapis-common-protos-types = {
dependencies = ["google-protobuf"];
source = {
remotes = ["https://rubygems.org"];
sha256 = "0yf10s7w8wpa49hc86z7z2fkn9yz7j2njz0n8xmqb24ji090z4ck";
sha256 = "01ds7g01pxqm3mg283xjzy0lhhvvhvzw3m7gf7szd1r7la4wf0qq";
type = "gem";
};
version = "1.0.1";
version = "1.0.2";
};
googleauth = {
dependencies = ["faraday" "jwt" "logging" "memoist" "multi_json" "os" "signet"];
dependencies = ["faraday" "jwt" "memoist" "multi_json" "os" "signet"];
source = {
remotes = ["https://rubygems.org"];
sha256 = "08z4zfj9cwry13y8c2w5p4xylyslxxjq4wahd95bk1ddl5pknd4f";
sha256 = "1747p1dhpvz76i98xnjrvaj785y1232svm0nc8g9by6pz835gp2l";
type = "gem";
};
version = "0.6.2";
version = "0.6.6";
};
gpgme = {
dependencies = ["mini_portile2"];
@ -1374,13 +1320,13 @@
version = "1.8.1";
};
grpc = {
dependencies = ["google-protobuf" "googleapis-common-protos-types" "googleauth"];
dependencies = ["google-protobuf" "googleapis-common-protos-types"];
source = {
remotes = ["https://rubygems.org"];
sha256 = "1is4czi3i7y6zyxzyrpsma1z91axmc0jz2ngr6ckixqd3629npkz";
sha256 = "0m2wspnm1cfkmhlbp7yqv5bb4vsfh246cm0aavxra67aw4l8plhb";
type = "gem";
};
version = "1.11.0";
version = "1.15.0";
};
gssapi = {
dependencies = ["ffi"];
@ -1762,14 +1708,6 @@
};
version = "8.9.2";
};
little-plugger = {
source = {
remotes = ["https://rubygems.org"];
sha256 = "1frilv82dyxnlg8k1jhrvyd73l6k17mxc5vwxx080r4x1p04gwym";
type = "gem";
};
version = "1.1.4";
};
locale = {
source = {
remotes = ["https://rubygems.org"];
@ -1778,15 +1716,6 @@
};
version = "2.1.2";
};
logging = {
dependencies = ["little-plugger" "multi_json"];
source = {
remotes = ["https://rubygems.org"];
sha256 = "06j6iaj89h9jhkx1x3hlswqrfnqds8br05xb1qra69dpvbdmjcwn";
type = "gem";
};
version = "2.2.2";
};
lograge = {
dependencies = ["actionpack" "activesupport" "railties" "request_store"];
source = {
@ -1904,14 +1833,6 @@
};
version = "5.7.0";
};
mousetrap-rails = {
source = {
remotes = ["https://rubygems.org"];
sha256 = "00n13r5pwrk4vq018128vcfh021dw0fa2bk4pzsv0fslfm8ayp2m";
type = "gem";
};
version = "1.4.6";
};
msgpack = {
source = {
remotes = ["https://rubygems.org"];
@ -2235,10 +2156,10 @@
os = {
source = {
remotes = ["https://rubygems.org"];
sha256 = "1llv8w3g2jwggdxr5a5cjkrnbbfnvai3vxacxxc0fy84xmz3hymz";
sha256 = "1s401gvhqgs2r8hh43ia205mxsy1wc0ib4k76wzkdpspfcnfr1rk";
type = "gem";
};
version = "0.9.6";
version = "1.0.0";
};
parallel = {
source = {
@ -2252,10 +2173,10 @@
dependencies = ["ast"];
source = {
remotes = ["https://rubygems.org"];
sha256 = "1af7aa1c2npi8dkshgm3f8qyacabm94ckrdz7b8vd3f8zzswqzp9";
sha256 = "1zjk0w1kjj3xk8ymy1430aa4gg0k8ckphfj88br6il4pm83f0n1f";
type = "gem";
};
version = "2.5.1.0";
version = "2.5.3.0";
};
parslet = {
source = {
@ -2336,14 +2257,6 @@
};
version = "1.0.1";
};
posix-spawn = {
source = {
remotes = ["https://rubygems.org"];
sha256 = "1pmxmpins57qrbr31bs3bm7gidhaacmrp4md6i962gvpq4gyfcjw";
type = "gem";
};
version = "0.3.13";
};
powerpack = {
source = {
remotes = ["https://rubygems.org"];
@ -2430,6 +2343,23 @@
};
version = "3.0.3";
};
puma = {
source = {
remotes = ["https://rubygems.org"];
sha256 = "1k7dqxnq0dnf5rxkgs9rknclkn3ah7lsdrk6nrqxla8qzy31wliq";
type = "gem";
};
version = "3.12.0";
};
puma_worker_killer = {
dependencies = ["get_process_mem" "puma"];
source = {
remotes = ["https://rubygems.org"];
sha256 = "1m08qi8mxpp20zqqjj9yzcrx0sn29n5fn5avlf1lnl0n7qa9c03i";
type = "gem";
};
version = "0.1.0";
};
pyu-ruby-sasl = {
source = {
remotes = ["https://rubygems.org"];
@ -3037,10 +2967,10 @@
rugged = {
source = {
remotes = ["https://rubygems.org"];
sha256 = "1y6k5yrfmhc1v4albbpa3xzl28vk5lric3si8ada28sp9mmk2x72";
sha256 = "1jv4nw9hvlxp8hhhlllrfcznki82i50fp1sj65zsjllfl2bvz8x6";
type = "gem";
};
version = "0.27.4";
version = "0.27.5";
};
safe_yaml = {
source = {
@ -3196,10 +3126,10 @@
dependencies = ["addressable" "faraday" "jwt" "multi_json"];
source = {
remotes = ["https://rubygems.org"];
sha256 = "0js81lxqirdza8gf2f6avh11fny49ygmxfi1qx7jp8l9wrhznbkv";
sha256 = "1f5d3bz5bjc4b0r2jmqd15qf07lgsqkgd25f0h46jihrf9l5fsi4";
type = "gem";
};
version = "0.8.1";
version = "0.11.0";
};
simple_po_parser = {
source = {
@ -3320,14 +3250,6 @@
};
version = "0.5.1";
};
stringex = {
source = {
remotes = ["https://rubygems.org"];
sha256 = "0c5dfrjzkskzfsdvwsviq4111rwwpbk9022nxwdidz014mky5vi1";
type = "gem";
};
version = "2.8.4";
};
sys-filesystem = {
dependencies = ["ffi"];
source = {

View file

@ -9,41 +9,41 @@ let
# plex-media-player is updated, the versions for these files are changed,
# so the build IDs (and SHAs) below will need to be updated!
depSrcs = rec {
webClientBuildId = "56-23317d81e49651";
webClientDesktopBuildId = "3.57.1-1e49651";
webClientTvBuildId = "3.60.1-23317d8";
webClientBuildId = "85-88b3ac67015f76";
webClientDesktopBuildId = "3.77.2-7015f76";
webClientTvBuildId = "3.78.0-88b3ac6";
webClient = fetchurl {
url = "https://artifacts.plex.tv/web-client-pmp/${webClientBuildId}/buildid.cmake";
sha256 = "1a48a65zzdx347kfnxriwkb0yjlhvn2g8jkda5pz10r3lwja0gbi";
sha256 = "0j7i4yr95ljw9cwyaygld41j7yvndj3dza3cbydv4x8mh2hn05v1";
};
webClientDesktopHash = fetchurl {
url = "https://artifacts.plex.tv/web-client-pmp/${webClientBuildId}/web-client-desktop-${webClientDesktopBuildId}.tar.xz.sha1";
sha256 = "04wdgpsh33y8hyjhjrfw6ymf9g002jny7hvhld4xp33lwxhd2j5w";
sha256 = "106kx9ahz7jgskpjraff2g235n1whwvf18yw0nmp5dwr9ys9h8jp";
};
webClientDesktop = fetchurl {
url = "https://artifacts.plex.tv/web-client-pmp/${webClientBuildId}/web-client-desktop-${webClientDesktopBuildId}.tar.xz";
sha256 = "1asw9f84z9sm3w7ifnc7j631j84rgx23c6msmn2dnw48ckv3bj2z";
sha256 = "0h23h3fd3w43glvnhrg9qiajs0ql490kb00g3i4cpi29hy1ky45r";
};
webClientTvHash = fetchurl {
url = "https://artifacts.plex.tv/web-client-pmp/${webClientBuildId}/web-client-tv-${webClientTvBuildId}.tar.xz.sha1";
sha256 = "0d1hsvmpwczwx442f8qdvfr8c3w84630j9qwpg2y4qm423sgdvja";
sha256 = "05zk2zpmcdf276ys5zyirsmvhvyvz99fa6hlgymma8ql6w67133r";
};
webClientTv = fetchurl {
url = "https://artifacts.plex.tv/web-client-pmp/${webClientBuildId}/web-client-tv-${webClientTvBuildId}.tar.xz";
sha256 = "1ih3l5paf1jl68b1xq3iqqmvs3m07fybz57hcz4f78v0gwq2kryq";
sha256 = "1cflpgaf4kyj6ccqa11j28rkp8s7zlbnid7s00m5n2c907dihmw2";
};
};
in stdenv.mkDerivation rec {
name = "plex-media-player-${version}";
version = "2.14.1.880";
vsnHash = "301a4b6c";
version = "2.23.0.920";
vsnHash = "5bc1a2e5";
src = fetchFromGitHub {
owner = "plexinc";
repo = "plex-media-player";
rev = "v${version}-${vsnHash}";
sha256 = "0xz41r697vl6s3qvy6jwriv3pb9cfy61j6sydvdq121x5a0jnh9a";
sha256 = "1jzlyj32gr3ar89qnk8slazrbchqkjfx9dchzkzfvpi6742v9igm";
};
nativeBuildInputs = [ pkgconfig cmake python3 ];

View file

@ -188,22 +188,27 @@ rec {
# Use the name and tag to get the parent ID field.
parentID=$(jshon -e $fromImageName -e $fromImageTag -u \
< image/repositories)
cat ./image/manifest.json | jq -r '.[0].Layers | .[]' > layer-list
else
touch layer-list
fi
# Unpack all of the parent layers into the image.
lowerdir=""
while [[ -n "$parentID" ]]; do
echo "Unpacking layer $parentID"
mkdir -p image/$parentID/layer
tar -C image/$parentID/layer -xpf image/$parentID/layer.tar
rm image/$parentID/layer.tar
extractionID=0
for layerTar in $(cat layer-list); do
echo "Unpacking layer $layerTar"
extractionID=$((extractionID + 1))
find image/$parentID/layer -name ".wh.*" -exec bash -c 'name="$(basename {}|sed "s/^.wh.//")"; mknod "$(dirname {})/$name" c 0 0; rm {}' \;
mkdir -p image/$extractionID/layer
tar -C image/$extractionID/layer -xpf $layerTar
rm $layerTar
find image/$extractionID/layer -name ".wh.*" -exec bash -c 'name="$(basename {}|sed "s/^.wh.//")"; mknod "$(dirname {})/$name" c 0 0; rm {}' \;
# Get the next lower directory and continue the loop.
lowerdir=$lowerdir''${lowerdir:+:}image/$parentID/layer
parentID=$(cat image/$parentID/json \
| (jshon -e parent -u 2>/dev/null || true))
lowerdir=$lowerdir''${lowerdir:+:}image/$extractionID/layer
done
mkdir work
@ -673,6 +678,9 @@ rec {
if [[ -n "$fromImage" ]]; then
echo "Unpacking base image..."
tar -C image -xpf "$fromImage"
cat ./image/manifest.json | jq -r '.[0].Layers | .[]' > layer-list
# Do not import the base image configuration and manifest
chmod a+w image image/*.json
rm -f image/*.json
@ -690,6 +698,8 @@ rec {
for l in image/*/layer.tar; do
ls_tar $l >> baseFiles
done
else
touch layer-list
fi
chmod -R ug+rw image
@ -742,17 +752,23 @@ rec {
# Use the temp folder we've been working on to create a new image.
mv temp image/$layerID
# Add the new layer ID to the beginning of the layer list
(
# originally this used `sed -i "1i$layerID" layer-list`, but
# would fail if layer-list was completely empty.
echo "$layerID/layer.tar"
cat layer-list
) | ${pkgs.moreutils}/bin/sponge layer-list
# Create image json and image manifest
imageJson=$(cat ${baseJson} | jq ". + {\"rootfs\": {\"diff_ids\": [], \"type\": \"layers\"}}")
manifestJson=$(jq -n "[{\"RepoTags\":[\"$imageName:$imageTag\"]}]")
currentID=$layerID
while [[ -n "$currentID" ]]; do
layerChecksum=$(sha256sum image/$currentID/layer.tar | cut -d ' ' -f1)
for layerTar in $(cat ./layer-list); do
layerChecksum=$(sha256sum image/$layerTar | cut -d ' ' -f1)
imageJson=$(echo "$imageJson" | jq ".history |= [{\"created\": \"$(jq -r .created ${baseJson})\"}] + .")
imageJson=$(echo "$imageJson" | jq ".rootfs.diff_ids |= [\"sha256:$layerChecksum\"] + .")
manifestJson=$(echo "$manifestJson" | jq ".[0].Layers |= [\"$currentID/layer.tar\"] + .")
currentID=$(cat image/$currentID/json | (jshon -e parent -u 2>/dev/null || true))
manifestJson=$(echo "$manifestJson" | jq ".[0].Layers |= [\"$layerTar\"] + .")
done
imageJsonChecksum=$(echo "$imageJson" | sha256sum | cut -d ' ' -f1)

View file

@ -156,5 +156,24 @@ rec {
name = "layered-image";
tag = "latest";
config.Cmd = [ "${pkgs.hello}/bin/hello" ];
contents = [ pkgs.hello pkgs.bash pkgs.coreutils ];
};
# 11. Create an image on top of a layered image
layered-on-top = pkgs.dockerTools.buildImage {
name = "layered-on-top";
tag = "latest";
fromImage = layered-image;
extraCommands = ''
mkdir ./example-output
chmod 777 ./example-output
'';
config = {
Env = [ "PATH=${pkgs.coreutils}/bin/" ];
WorkingDir = "/example-output";
Cmd = [
"${pkgs.bash}/bin/bash" "-c" "echo hello > foo; cat foo"
];
};
};
}

View file

@ -71,6 +71,9 @@ in ''
export CARGO_PKG_VERSION_MAJOR=${builtins.elemAt version 0}
export CARGO_PKG_VERSION_MINOR=${builtins.elemAt version 1}
export CARGO_PKG_VERSION_PATCH=${builtins.elemAt version 2}
export NUM_JOBS=1
export RUSTC="rustc"
export RUSTDOC="rustdoc"
if [[ -n "${versionPre}" ]]; then
export CARGO_PKG_VERSION_PRE="${versionPre}"
fi

View file

@ -2,6 +2,7 @@
{
kernel = stdenv.hostPlatform.parsed.kernel.name;
abi = stdenv.hostPlatform.parsed.abi.name;
cpu = stdenv.hostPlatform.parsed.cpu.name;
updateFeatures = f: up: functions: builtins.deepSeq f (lib.lists.foldl' (features: fun: fun features) (lib.attrsets.recursiveUpdate f up) functions);
mapFeatures = features: map (fun: fun { features = features; });
mkFeatures = feat: lib.lists.foldl (features: featureName:
@ -11,10 +12,12 @@
features
) [] (builtins.attrNames feat);
include = includedFiles: src: builtins.filterSource (path: type:
lib.lists.any (f:
let p = toString (src + ("/" + f)); in
(path == p) || (type == "directory" && lib.strings.hasPrefix path p)
) includedFiles
lib.lists.any (f:
let p = toString (src + ("/" + f));
suff = lib.strings.removePrefix p path;
in
suff == "" || (lib.strings.hasPrefix "/" suff)
) includedFiles
) src;
exclude = excludedFiles: src: builtins.filterSource (path: type:
lib.lists.all (f:

View file

@ -20,9 +20,11 @@ crateName: metadata:
mkdir -p $out/lib
cp -r target/build/* $out/lib # */
fi
if [[ "$(ls -A target/bin)" ]]; then
mkdir -p $out/bin
cp -P target/bin/* $out/bin # */
if [[ -d target/bin ]]; then
if [[ "$(ls -A target/bin)" ]]; then
mkdir -p $out/bin
cp -P target/bin/* $out/bin # */
fi
fi
runHook postInstall
''

View file

@ -1,4 +1,4 @@
# Generated by carnix 0.8.11: carnix generate-nix
# Generated by carnix 0.9.1: carnix generate-nix
{ lib, buildPlatform, buildRustCrate, buildRustCrateHelpers, cratesIO, fetchgit }:
with buildRustCrateHelpers;
let inherit (lib.lists) fold;
@ -6,7 +6,7 @@ let inherit (lib.lists) fold;
in
let crates = cratesIO; in
rec {
carnix = crates.crates.carnix."0.8.11" deps;
carnix = crates.crates.carnix."0.9.2" deps;
__all = [ (carnix {}) ];
deps.aho_corasick."0.6.8" = {
memchr = "2.1.0";
@ -42,7 +42,7 @@ rec {
arrayvec = "0.4.7";
constant_time_eq = "0.1.3";
};
deps.carnix."0.8.11" = {
deps.carnix."0.9.2" = {
clap = "2.32.0";
dirs = "1.0.4";
env_logger = "0.5.13";
@ -51,7 +51,6 @@ rec {
log = "0.4.5";
nom = "3.2.1";
regex = "1.0.5";
rusqlite = "0.14.0";
serde = "1.0.80";
serde_derive = "1.0.80";
serde_json = "1.0.32";
@ -112,16 +111,9 @@ rec {
version_check = "0.1.5";
};
deps.libc."0.2.43" = {};
deps.libsqlite3_sys."0.9.3" = {
pkg_config = "0.3.14";
};
deps.linked_hash_map."0.4.2" = {};
deps.log."0.4.5" = {
cfg_if = "0.1.6";
};
deps.lru_cache."0.1.1" = {
linked_hash_map = "0.4.2";
};
deps.memchr."1.0.2" = {
libc = "0.2.43";
};
@ -134,7 +126,6 @@ rec {
deps.nom."3.2.1" = {
memchr = "1.0.2";
};
deps.pkg_config."0.3.14" = {};
deps.proc_macro2."0.4.20" = {
unicode_xid = "0.1.0";
};
@ -170,12 +161,6 @@ rec {
deps.remove_dir_all."0.5.1" = {
winapi = "0.3.6";
};
deps.rusqlite."0.14.0" = {
bitflags = "1.0.4";
libsqlite3_sys = "0.9.3";
lru_cache = "0.1.1";
time = "0.1.40";
};
deps.rustc_demangle."0.1.9" = {};
deps.ryu."0.2.6" = {};
deps.scoped_threadpool."0.1.9" = {};
@ -220,11 +205,6 @@ rec {
deps.thread_local."0.3.6" = {
lazy_static = "1.1.0";
};
deps.time."0.1.40" = {
libc = "0.2.43";
redox_syscall = "0.1.40";
winapi = "0.3.6";
};
deps.toml."0.4.8" = {
serde = "1.0.80";
};
@ -232,7 +212,6 @@ rec {
deps.unicode_width."0.1.5" = {};
deps.unicode_xid."0.1.0" = {};
deps.utf8_ranges."1.0.1" = {};
deps.vcpkg."0.2.6" = {};
deps.vec_map."0.8.1" = {};
deps.version_check."0.1.5" = {};
deps.winapi."0.3.6" = {

File diff suppressed because it is too large Load diff

View file

@ -8,19 +8,54 @@ rec {
# Examples:
# writeBash = makeScriptWriter { interpreter = "${pkgs.bash}/bin/bash"; }
# makeScriptWriter { interpreter = "${pkgs.dash}/bin/dash"; } "hello" "echo hello world"
makeScriptWriter = { interpreter, check ? "" }: name: text:
assert lib.or (types.path.check name) (builtins.match "([0-9A-Za-z._])[0-9A-Za-z._-]*" name != null);
makeScriptWriter = { interpreter, check ? "" }: nameOrPath: content:
assert lib.or (types.path.check nameOrPath) (builtins.match "([0-9A-Za-z._])[0-9A-Za-z._-]*" nameOrPath != null);
assert lib.or (types.path.check content) (types.string.check content);
let
name = last (builtins.split "/" nameOrPath);
in
pkgs.writeTextFile {
name = last (builtins.split "/" name);
executable = true;
destination = if types.path.check name then name else "";
text = ''
#! ${interpreter}
${text}
'';
checkPhase = check;
};
pkgs.runCommand name (if (types.string.check content) then {
inherit content interpreter;
passAsFile = [ "content" ];
} else {
inherit interpreter;
contentPath = content;
}) ''
echo "#! $interpreter" > $out
cat "$contentPath" >> $out
chmod +x $out
${optionalString (types.path.check nameOrPath) ''
mv $out tmp
mkdir -p $out/$(dirname "${nameOrPath}")
mv tmp $out/${nameOrPath}
''}
'';
# Base implementation for compiled executables.
# Takes a compile script, which in turn takes the name as an argument.
#
# Examples:
# writeSimpleC = makeBinWriter { compileScript = name: "gcc -o $out $contentPath"; }
makeBinWriter = { compileScript }: nameOrPath: content:
assert lib.or (types.path.check nameOrPath) (builtins.match "([0-9A-Za-z._])[0-9A-Za-z._-]*" nameOrPath != null);
assert lib.or (types.path.check content) (types.string.check content);
let
name = last (builtins.split "/" nameOrPath);
in
pkgs.runCommand name (if (types.string.check content) then {
inherit content;
passAsFile = [ "content" ];
} else {
contentPath = content;
}) ''
${compileScript}
${optionalString (types.path.check nameOrPath) ''
mv $out tmp
mkdir -p $out/$(dirname "${nameOrPath}")
mv tmp $out/${nameOrPath}
''}
'';
# Like writeScript but the first line is a shebang to bash
#
@ -48,41 +83,33 @@ rec {
# return 0;
# }
# ''
writeC = name: {
libraries ? [],
}: text: pkgs.runCommand name {
inherit text;
buildInputs = [ pkgs.pkgconfig ] ++ libraries;
passAsFile = [ "text" ];
} ''
PATH=${makeBinPath [
pkgs.binutils-unwrapped
pkgs.coreutils
pkgs.gcc
pkgs.pkgconfig
]}
mkdir -p "$(dirname "$out")"
gcc \
${optionalString (libraries != [])
"$(pkg-config --cflags --libs ${
concatMapStringsSep " " (lib: escapeShellArg (builtins.parseDrvName lib.name).name) (libraries)
})"
} \
-O \
-o "$out" \
-Wall \
-x c \
"$textPath"
strip --strip-unneeded "$out"
'';
writeC = name: { libraries ? [] }:
makeBinWriter {
compileScript = ''
PATH=${makeBinPath [
pkgs.binutils-unwrapped
pkgs.coreutils
pkgs.gcc
pkgs.pkgconfig
]}
gcc \
${optionalString (libraries != [])
"$(pkgs.pkgconfig}/bin/pkg-config --cflags --libs ${
concatMapStringsSep " " (lib: escapeShellArg (builtins.parseDrvName lib.name).name) (libraries)
})"
} \
-O \
-o "$out" \
-Wall \
-x c \
"$contentPath"
strip --strip-unneeded "$out"
'';
} name;
# writeCBin takes the same arguments as writeC but outputs a directory (like writeScriptBin)
writeCBin = name: spec: text:
pkgs.runCommand name {
} ''
mkdir -p $out/bin
ln -s ${writeC name spec text} $out/bin/${name}
'';
writeCBin = name:
writeC "/bin/${name}";
# Like writeScript but the first line is a shebang to dash
#
@ -103,29 +130,25 @@ rec {
#
# Example:
# writeHaskell "missiles" { libraries = [ pkgs.haskellPackages.acme-missiles ]; } ''
# Import Acme.Missiles
# import Acme.Missiles
#
# main = launchMissiles
# '';
writeHaskell = name: {
libraries ? [],
ghc ? pkgs.ghc
}: text: pkgs.runCommand name {
inherit text;
passAsFile = [ "text" ];
} ''
cp $textPath ${name}.hs
${ghc.withPackages (_: libraries )}/bin/ghc ${name}.hs
cp ${name} $out
'';
}:
makeBinWriter {
compileScript = ''
cp $contentPath tmp.hs
${ghc.withPackages (_: libraries )}/bin/ghc tmp.hs
mv tmp $out
'';
} name;
# writeHaskellBin takes the same arguments as writeHaskell but outputs a directory (like writeScriptBin)
writeHaskellBin = name: spec: text:
pkgs.runCommand name {
} ''
mkdir -p $out/bin
ln -s ${writeHaskell name spec text} $out/bin/${name}
'';
writeHaskellBin = name:
writeHaskell "/bin/${name}";
# writeJS takes a name an attributeset with libraries and some JavaScript sourcecode and
# returns an executable
@ -137,7 +160,7 @@ rec {
# var result = UglifyJS.minify(code);
# console.log(result.code);
# ''
writeJS = name: { libraries ? [] }: text:
writeJS = name: { libraries ? [] }: content:
let
node-env = pkgs.buildEnv {
name = "node";
@ -148,7 +171,7 @@ rec {
};
in writeDash name ''
export NODE_PATH=${node-env}/lib/node_modules
exec ${pkgs.nodejs}/bin/node ${pkgs.writeText "js" text}
exec ${pkgs.nodejs}/bin/node ${pkgs.writeText "js" content}
'';
# writeJSBin takes the same arguments as writeJS but outputs a directory (like writeScriptBin)

View file

@ -1,4 +1,4 @@
{ stdenv, lib, runCommand, haskellPackages, nodePackages, perlPackages, python2Packages, python3Packages, writers}:
{ stdenv, lib, runCommand, haskellPackages, nodePackages, perlPackages, python2Packages, python3Packages, writers, writeText }:
with writers;
let
@ -128,6 +128,24 @@ let
'';
};
path = {
bash = writeBash "test_bash" (writeText "test" ''
if [[ "test" == "test" ]]; then echo "success"; fi
'');
haskell = writeHaskell "test_haskell" { libraries = [ haskellPackages.acme-default ]; } (writeText "test" ''
import Data.Default
int :: Int
int = def
main :: IO ()
main = case int of
18871 -> putStrLn $ id "success"
_ -> print "fail"
'');
};
writeTest = expectedValue: test:
writeDash "test-writers" ''
if test "$(${test})" != "${expectedValue}"; then
@ -142,6 +160,7 @@ in runCommand "test-writers" {
} ''
${lib.concatMapStringsSep "\n" (test: writeTest "success" "${test}/bin/test_writers") (lib.attrValues bin)}
${lib.concatMapStringsSep "\n" (test: writeTest "success" "${test}") (lib.attrValues simple)}
${lib.concatMapStringsSep "\n" (test: writeTest "success" "${test}") (lib.attrValues path)}
echo 'nix-writers successfully tested' >&2
touch $out

View file

@ -2,11 +2,14 @@
let
mkNoto = { name, weights, sha256, }:
let version = "2017-10-24-phase3-second-cleanup"; in
let
version = "2018-11-30";
ref = "85e78f831469323c85847e23f95026c894159135";
in
fetchzip {
name = "${name}-${version}";
inherit sha256;
url = "https://github.com/googlei18n/noto-fonts/archive/v${version}.zip";
url = "https://github.com/googlei18n/noto-fonts/archive/${ref}.zip";
postFetch = ''
unzip $downloadedFile
mkdir -p $out/share/fonts/noto
@ -47,12 +50,12 @@ rec {
noto-fonts = mkNoto {
name = "noto-fonts";
weights = "{Regular,Bold,Light,Italic,BoldItalic,LightItalic}";
sha256 = "1dmarbsfank6xzzx31h5jdv6n99rzblqyb1iqjkpll6dl3627pnb";
sha256 = "0kvq5ldip2ra2njlxg9fxj46nfqzq5l3n359d3kwfbsld7hixm2d";
};
noto-fonts-extra = mkNoto {
name = "noto-fonts-extra";
weights = "{Black,Condensed,Extra,Medium,Semi,Thin}*";
sha256 = "1lih49bqmsmblczvbl7qb1bhn0bq8v5xkr991b3gjghpdkx584bc";
sha256 = "0l94aiy1b3qirg2mmbagbr0014vqk32za79pzck1acy2hgy716kq";
};
noto-fonts-cjk = let version = "1.004"; in fetchzip {
name = "noto-fonts-cjk-${version}";

View file

@ -0,0 +1,33 @@
{ stdenv, fetchFromGitLab }:
stdenv.mkDerivation rec {
pname = "open-sans";
version = "1.11";
src = fetchFromGitLab {
domain = "salsa.debian.org";
owner = "fonts-team";
repo = "fonts-open-sans";
rev = "debian%2F1.11-1"; # URL-encoded form of "debian/1.11-1" tag
sha256 = "077hkvpmk3ghbqyb901w43b2m2a27lh8ddasyx1x7pdwyr2bjjl2";
};
dontBuild = true;
installPhase = ''
mkdir -p $out/share/fonts/truetype
cp *.ttf $out/share/fonts/truetype
'';
meta = with stdenv.lib; {
description = "Open Sans fonts";
longDescription = ''
Open Sans is a humanist sans serif typeface designed by Steve Matteson,
Type Director of Ascender Corp.
'';
homepage = https://www.opensans.com;
license = licenses.asl20;
platforms = platforms.all;
maintainers = [ maintainers.worldofpeace ];
};
}

View file

@ -1,27 +0,0 @@
{stdenv, fetchzip}:
fetchzip {
name = "opensans-ttf-20140617";
url = "http://web.archive.org/web/20150801161609/https://hexchain.org/pub/archlinux/ttf-opensans/opensans.tar.gz";
postFetch = ''
tar -xzf $downloadedFile
mkdir -p $out/share/fonts/truetype
cp *.ttf $out/share/fonts/truetype
'';
sha256 = "0zpzqw5y9g5jk7xjcxa12ds60ckvxmpw8p7bnkkmad53s94yr5wf";
meta = {
description = "Open Sans fonts";
longDescription = ''
Open Sans is a humanist sans serif typeface designed by Steve Matteson,
Type Director of Ascender Corp.
'';
homepage = https://en.wikipedia.org/wiki/Open_Sans;
license = stdenv.lib.licenses.asl20;
platforms = stdenv.lib.platforms.all;
maintainers = [ ];
};
}

View file

@ -3,21 +3,21 @@
stdenv.mkDerivation rec {
name = "${pname}-${version}";
pname = "zafiro-icons";
version = "0.7.2";
version = "0.7.3";
src = fetchFromGitHub {
owner = "zayronxio";
repo = pname;
rev = "v${version}";
sha256 = "1rs3wazmvidlkig5q7x1n9nz7jhfq18wps3wsplax9zcdy0hv248";
sha256 = "02q3wcklmqdy4ycyly7477q98y3mkgnpr7c78jqxvy2yr486wwyx";
};
nativeBuildInputs = [ gtk3 ];
installPhase = ''
mkdir -p $out/share/icons/Zafiro
cp -a * $out/share/icons/Zafiro
gtk-update-icon-cache "$out"/share/icons/Zafiro
mkdir -p $out/share/icons/Zafiro-icons
cp -a * $out/share/icons/Zafiro-icons
gtk-update-icon-cache "$out"/share/icons/Zafiro-icons
'';
meta = with stdenv.lib; {

View file

@ -1,6 +1,6 @@
{ fetchurl }:
fetchurl {
url = "https://github.com/commercialhaskell/all-cabal-hashes/archive/95366a34cd5c9b47444ac819562fff2f23d7d753.tar.gz";
sha256 = "184qrgb7jl1s79v4z1jz9ywihilf60jh93xhwf0n75vnxb4ibnfd";
url = "https://github.com/commercialhaskell/all-cabal-hashes/archive/56099dd4eb61f963da8edefdd19fd6a2e4371d95.tar.gz";
sha256 = "1byz5rp1n682bcm7wcdm6jxabgq1nx660bf51g11fyni1b5fr9ax";
}

View file

@ -2,13 +2,13 @@
stdenv.mkDerivation rec {
name = "materia-theme-${version}";
version = "20181115";
version = "20181125";
src = fetchFromGitHub {
owner = "nana-4";
repo = "materia-theme";
rev = "v${version}";
sha256 = "1vfwzvzbs4336vjg6y4asm21p64xc5f7cfsld5l159174ikcz5fp";
sha256 = "17gsgll2m534lwvpffqisdmhhmn0da419wnpq39wv5cjnmk0q3by";
};
nativeBuildInputs = [ gnome3.glib libxml2 bc ];

View file

@ -0,0 +1,35 @@
{ stdenv, fetchurl, gtk-engine-murrine }:
stdenv.mkDerivation rec {
name = "nordic-polar-${version}";
version = "1.3.0";
srcs = [
(fetchurl {
url = "https://github.com/EliverLara/Nordic-Polar/releases/download/v${version}/Nordic-Polar.tar.xz";
sha256 = "1c5zgymkwd89fr680c49siwbkhfbay56iq9vlyqkj1dp0xnc528s";
})
(fetchurl {
url = "https://github.com/EliverLara/Nordic-Polar/releases/download/v${version}/Nordic-Polar-standard-buttons.tar.xz";
sha256 = "0nxzcgqzc42qvnhafranz6rwanqb4wzf9ychm5m4yrlp3ngw38p4";
})
];
sourceRoot = ".";
propagatedUserEnvPkgs = [ gtk-engine-murrine ];
installPhase = ''
mkdir -p $out/share/themes
cp -a Nordic-Polar* $out/share/themes
rm $out/share/themes/*/{LICENSE,README.md}
'';
meta = with stdenv.lib; {
description = "Gtk theme created using the awesome Nord color pallete";
homepage = https://github.com/EliverLara/Nordic-Polar;
license = licenses.gpl3;
platforms = platforms.all;
maintainers = [ maintainers.romildo ];
};
}

View file

@ -1,11 +1,11 @@
{ stdenv, fetchurl, makeWrapper, jre, gnugrep, coreutils }:
stdenv.mkDerivation rec {
name = "scala-2.12.7";
name = "scala-2.12.8";
src = fetchurl {
url = "https://www.scala-lang.org/files/archive/${name}.tgz";
sha256 = "116i6sviziynbm7yffakkcnzb2jmrhvjrnbqbbnhyyi806shsnyn";
sha256 = "18w0vdbsp0q5rxglgalwlgkggld926bqi1fxc598rn4gh46a03j4";
};
propagatedBuildInputs = [ jre ] ;

View file

@ -1,9 +1,9 @@
{ stdenv, fetchzip, fetchFromGitHub, boost, cmake, z3 }:
let
version = "0.5.0";
rev = "1d4f565a64988a3400847d2655ca24f73f234bc6";
sha256 = "0phzk2whvgrrf8xpl5pz886glhd5s40y1hbbvq9q3fxf6vc3lisy";
version = "0.5.1";
rev = "c8a2cb62832afb2dc09ccee6fd42c1516dfdb981";
sha256 = "0d6mfnixlr9m5yr3r4p6cv6vwrrivcamyar5d0f9rvir9w9ypzrr";
jsoncppURL = https://github.com/open-source-parsers/jsoncpp/archive/1.8.4.tar.gz;
jsoncpp = fetchzip {
url = jsoncppURL;
@ -28,11 +28,6 @@ stdenv.mkDerivation {
echo >commit_hash.txt "${rev}"
substituteInPlace cmake/jsoncpp.cmake \
--replace "${jsoncppURL}" ${jsoncpp}
# To allow non-standard CMAKE_INSTALL_LIBDIR (fixed in upstream, not yet released)
substituteInPlace cmake/jsoncpp.cmake \
--replace "\''${CMAKE_INSTALL_LIBDIR}" "lib" \
--replace "# Build static lib but suitable to be included in a shared lib." "-DCMAKE_INSTALL_LIBDIR=lib"
'';
cmakeFlags = [
@ -42,7 +37,7 @@ stdenv.mkDerivation {
];
doCheck = stdenv.hostPlatform.isLinux && stdenv.hostPlatform == stdenv.buildPlatform;
checkPhase = "LD_LIBRARY_PATH=./libsolc:./libsolidity:./liblll:./libevmasm:./libdevcore:$LD_LIBRARY_PATH " +
checkPhase = "LD_LIBRARY_PATH=./libsolc:./libsolidity:./liblll:./libevmasm:./libdevcore:./libyul:./liblangutil:$LD_LIBRARY_PATH " +
"./test/soltest -p -- --no-ipc --no-smt --testpath ../test";
nativeBuildInputs = [ cmake ];
@ -56,7 +51,7 @@ stdenv.mkDerivation {
homepage = https://github.com/ethereum/solidity;
license = licenses.gpl3;
platforms = with platforms; linux ++ darwin;
maintainers = with maintainers; [ dbrock akru ];
maintainers = with maintainers; [ dbrock akru lionello ];
inherit version;
};
}

View file

@ -2,11 +2,10 @@ diff --git a/CMakeLists.txt b/CMakeLists.txt
index 0c05208f..8893648e 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -48,6 +48,20 @@ add_subdirectory(libevmasm)
@@ -48,6 +48,25 @@ add_subdirectory(libevmasm)
add_subdirectory(libsolidity)
add_subdirectory(libsolc)
+
+install(DIRECTORY libdevcore/
+ DESTINATION ${CMAKE_INSTALL_INCLUDEDIR}/libdevcore
+ FILES_MATCHING PATTERN "*.h")
@ -16,6 +15,12 @@ index 0c05208f..8893648e 100644
+install(DIRECTORY libsolidity/
+ DESTINATION ${CMAKE_INSTALL_INCLUDEDIR}/libsolidity
+ FILES_MATCHING PATTERN "*.h")
+install(DIRECTORY libyul/
+ DESTINATION ${CMAKE_INSTALL_INCLUDEDIR}/libyul
+ FILES_MATCHING PATTERN "*.h")
+install(DIRECTORY liblangutil/
+ DESTINATION ${CMAKE_INSTALL_INCLUDEDIR}/liblangutil
+ FILES_MATCHING PATTERN "*.h")
+install(DIRECTORY liblll/
+ DESTINATION ${CMAKE_INSTALL_INCLUDEDIR}/liblll
+ FILES_MATCHING PATTERN "*.h")
@ -57,8 +62,23 @@ index 0bdec4b4..e876177e 100644
@@ -29,6 +29,7 @@ endif()
add_library(solidity ${sources} ${headers})
target_link_libraries(solidity PUBLIC evmasm devcore ${Boost_FILESYSTEM_LIBRARY} ${Boost_SYSTEM_LIBRARY})
target_link_libraries(solidity PUBLIC yul evmasm langutil devcore ${Boost_FILESYSTEM_LIBRARY} ${Boost_SYSTEM_LIBRARY})
+install(TARGETS solidity LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR})
if (${Z3_FOUND})
target_link_libraries(solidity PUBLIC ${Z3_LIBRARY})
--- a/libyul/CMakeLists.txt
+++ b/libyul/CMakeLists.txt
@@ -42,3 +42,4 @@ endif()
optimiser/VarDeclPropagator.cpp
)
-target_link_libraries(yul PUBLIC devcore)
+target_link_libraries(yul PUBLIC evmasm devcore langutil)
+install(TARGETS yul LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR})
--- a/liblangutil/CMakeLists.txt
+++ b/liblangutil/CMakeLists.txt
@@ -11,3 +11,4 @@ endif()
add_library(langutil ${sources})
target_link_libraries(langutil PUBLIC devcore)
+install(TARGETS langutil LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR})

View file

@ -93,14 +93,9 @@ self: super: {
fdo-notify = if pkgs.stdenv.isLinux then self.fdo-notify else null;
hinotify = if pkgs.stdenv.isLinux then self.hinotify else self.fsnotify;
};
esqueleto = overrideSrc (addBuildDepend (dontCheck (dontHaddock super.esqueleto)) self.unliftio) {
src = pkgs.fetchFromGitHub {
owner = "bitemyapp";
repo = "esqueleto";
rev = "b81e0d951e510ebffca03c5a58658ad884cc6fbd";
sha256 = "0lz1qxms7cfg5p3j37inlych0r2fwhm8xbarcys3df9m7jy9nixa";
};
};
# https://github.com/bitemyapp/esqueleto/issues/105
esqueleto = markBrokenVersion "2.5.3" super.esqueleto;
# Fix test trying to access /home directory
shell-conduit = overrideCabal super.shell-conduit (drv: {
@ -948,8 +943,12 @@ self: super: {
# Tries to read a file it is not allowed to in the test suite
load-env = dontCheck super.load-env;
# https://github.com/yesodweb/Shelly.hs/issues/162
shelly = dontCheck super.shelly;
# hledger needs a newer megaparsec version than we have in LTS 12.x.
hledger-lib = super.hledger-lib.overrideScope (self: super: {
cassava-megaparsec = self.cassava-megaparsec_2_0_0;
hspec-megaparsec = self.hspec-megaparsec_2_0_0;
megaparsec = self.megaparsec_7_0_4;
});
# Copy hledger man pages from data directory into the proper place. This code
# should be moved into the cabal2nix generator.
@ -976,7 +975,12 @@ self: super: {
mkdir -p $out/share/info
cp -v *.info* $out/share/info/
'';
}));
})).overrideScope (self: super: {
cassava-megaparsec = self.cassava-megaparsec_2_0_0;
config-ini = self.config-ini_0_2_4_0;
hspec-megaparsec = self.hspec-megaparsec_2_0_0;
megaparsec = self.megaparsec_7_0_4;
});
hledger-web = overrideCabal super.hledger-web (drv: {
postInstall = ''
for i in $(seq 1 9); do
@ -1188,4 +1192,10 @@ self: super: {
# https://github.com/jmillikin/chell/issues/1
chell = super.chell.override { patience = self.patience_0_1_1; };
# The test suite tries to mess with ALSA, which doesn't work in the build sandbox.
xmobar = dontCheck super.xmobar;
# https://github.com/mgajda/json-autotype/issues/25
json-autotype = dontCheck super.json-autotype;
} // import ./configuration-tensorflow.nix {inherit pkgs haskellLib;} self super

View file

@ -46,7 +46,7 @@ self: super: {
# LTS-12.x versions do not compile.
base-orphans = self.base-orphans_0_8;
brick = self.brick_0_41_5;
brick = self.brick_0_42_1;
cassava-megaparsec = doJailbreak super.cassava-megaparsec;
config-ini = doJailbreak super.config-ini; # https://github.com/aisamanra/config-ini/issues/18
contravariant = self.contravariant_1_5;
@ -54,13 +54,11 @@ self: super: {
free = self.free_5_1;
haddock-library = dontCheck super.haddock-library_1_7_0;
HaTeX = doJailbreak super.HaTeX;
hledger = doJailbreak super.hledger;
hledger-lib = doJailbreak super.hledger-lib;
hledger-ui = doJailbreak super.hledger-ui;
hpack = self.hpack_0_31_1;
hslua = self.hslua_1_0_1;
hslua-module-text = self.hslua-module-text_0_2_0;
hspec = self.hspec_2_6_0;
hspec-contrib = self.hspec-contrib_0_5_1;
hspec-core = self.hspec-core_2_6_0;
hspec-discover = self.hspec-discover_2_6_0;
hspec-megaparsec = doJailbreak super.hspec-megaparsec; # newer versions need megaparsec 7.x

View file

@ -45,7 +45,7 @@ default-package-overrides:
- base-compat-batteries ==0.10.1
# Newer versions don't work in LTS-12.x
- cassava-megaparsec < 2
# LTS Haskell 12.20
# LTS Haskell 12.21
- abstract-deque ==0.3
- abstract-deque-tests ==0.3
- abstract-par ==0.3.3
@ -337,8 +337,8 @@ default-package-overrides:
- cabal-doctest ==1.0.6
- cabal-rpm ==0.12.6
- cache ==0.1.1.1
- cachix ==0.1.2
- cachix-api ==0.1.0.2
- cachix ==0.1.3
- cachix-api ==0.1.0.3
- cairo ==0.13.5.0
- calendar-recycling ==0.0.0.1
- call-stack ==0.1.0
@ -361,7 +361,7 @@ default-package-overrides:
- cereal-time ==0.1.0.0
- cereal-vector ==0.2.0.1
- cfenv ==0.1.0.0
- chan ==0.0.3
- chan ==0.0.4
- ChannelT ==0.0.0.7
- charset ==0.3.7.1
- charsetdetect-ae ==1.1.0.4
@ -433,7 +433,7 @@ default-package-overrides:
- composition-prelude ==1.5.3.1
- compressed ==3.11
- concise ==0.1.0.1
- concurrency ==1.6.1.0
- concurrency ==1.6.2.0
- concurrent-extra ==0.7.0.12
- concurrent-output ==1.10.9
- concurrent-split ==0.0.1.1
@ -535,7 +535,7 @@ default-package-overrides:
- data-default-instances-old-locale ==0.0.1
- data-diverse ==4.6.0.0
- data-diverse-lens ==4.3.0.0
- datadog ==0.2.2.0
- datadog ==0.2.3.0
- data-dword ==0.3.1.2
- data-endian ==0.1.1
- data-fix ==0.2.0
@ -732,8 +732,8 @@ default-package-overrides:
- fileplow ==0.1.0.0
- filter-logger ==0.6.0.0
- filtrable ==0.1.1.0
- fin ==0.0.1
- Fin ==0.2.6.0
- fin ==0.0.1
- FindBin ==0.0.5
- find-clumpiness ==0.2.3.1
- fingertree ==0.1.4.1
@ -982,7 +982,7 @@ default-package-overrides:
- histogram-fill ==0.9.1.0
- hjsmin ==0.2.0.2
- hlibgit2 ==0.18.0.16
- hlibsass ==0.1.7.0
- hlibsass ==0.1.8.0
- hmatrix ==0.19.0.0
- hmatrix-backprop ==0.1.2.3
- hmatrix-gsl ==0.19.0.1
@ -1097,7 +1097,7 @@ default-package-overrides:
- hw-mquery ==0.1.0.1
- hworker ==0.1.0.1
- hw-parser ==0.0.0.3
- hw-prim ==0.6.2.20
- hw-prim ==0.6.2.22
- hw-rankselect ==0.10.0.3
- hw-rankselect-base ==0.3.2.1
- hw-string-parse ==0.0.0.4
@ -1198,7 +1198,7 @@ default-package-overrides:
- json-rpc-server ==0.2.6.0
- json-schema ==0.7.4.2
- JuicyPixels ==3.2.9.5
- JuicyPixels-blp ==0.1.0.1
- JuicyPixels-blp ==0.1.1.0
- JuicyPixels-extra ==0.3.0
- JuicyPixels-scale-dct ==0.1.2
- justified-containers ==0.3.0.0
@ -1294,7 +1294,7 @@ default-package-overrides:
- log-postgres ==0.7.0.2
- long-double ==0.1
- loop ==0.3.0
- lrucache ==1.2.0.0
- lrucache ==1.2.0.1
- lrucaching ==0.3.3
- lucid ==2.9.11
- lucid-extras ==0.1.0.1
@ -1785,7 +1785,7 @@ default-package-overrides:
- rvar ==0.2.0.3
- s3-signer ==0.5.0.0
- safe ==0.3.17
- safecopy ==0.9.4.1
- safecopy ==0.9.4.2
- safe-exceptions ==0.1.7.0
- safe-exceptions-checked ==0.1.0
- safe-foldable ==0.1.0.0
@ -2130,7 +2130,7 @@ default-package-overrides:
- transformers-fix ==1.0
- transformers-lift ==0.2.0.1
- traverse-with-class ==1.0.0.0
- tree-diff ==0.0.1
- tree-diff ==0.0.2
- tree-fun ==0.8.1.0
- trifecta ==2
- triplesec ==0.1.2.0
@ -2323,7 +2323,7 @@ default-package-overrides:
- x509-validation ==1.6.11
- Xauth ==0.1
- xdg-basedir ==0.2.2
- xeno ==0.3.4
- xeno ==0.3.5.1
- xenstore ==0.1.1
- xhtml ==3000.2.2.1
- xls ==0.1.1

File diff suppressed because it is too large Load diff

View file

@ -259,6 +259,9 @@ rec {
*/
buildStrictly = pkg: buildFromSdist (failOnAllWarnings pkg);
/* Disable core optimizations, significantly speeds up build time */
disableOptimization = pkg: appendConfigureFlag pkg "--disable-optimization";
/* Turn on most of the compiler warnings and fail the build if any
of them occur. */
failOnAllWarnings = drv: appendConfigureFlag drv "--ghc-option=-Wall --ghc-option=-Werror";

View file

@ -9,8 +9,6 @@ stdenv.mkDerivation rec {
sha256 = "0lk8knip4xk6qzksdkn7085mmgm4ixfczdyyjw656c193y3rgnvc";
};
configureFlags = stdenv.lib.optionals stdenv.hostPlatform.isWindows [ "--disable-shared" "--enable-static" ];
meta = with stdenv.lib; {
description = "A C library for asynchronous DNS requests";
homepage = https://c-ares.haxx.se;

View file

@ -5,14 +5,14 @@
stdenv.mkDerivation (rec {
name = "libgit2-${version}";
version = "0.26.8";
version = "0.26.6";
# keep the version in sync with pythonPackages.pygit2 and gnome3.libgit2-glib
src = fetchFromGitHub {
owner = "libgit2";
repo = "libgit2";
rev = "v${version}";
sha256 = "0wmjgvz8nrpk2dsn5bcc87nl0j5hb6pah2hzrj0b6jkk9mnin9fl";
sha256 = "17pjvprmdrx4h6bb1hhc98w9qi6ki7yl57f090n9kbhswxqfs7s3";
};
cmakeFlags = [ "-DTHREADSAFE=ON" ];

View file

@ -10,7 +10,7 @@ stdenv.mkDerivation rec {
name = "libffi-3.2.1";
src = fetchurl {
url = "ftp://sourceware.org/pub/libffi/${name}.tar.gz";
url = "https://sourceware.org/pub/libffi/${name}.tar.gz";
sha256 = "0dya49bnhianl0r65m65xndz6ls2jn1xngyn72gd28ls3n7bnvnh";
};

Some files were not shown because too many files have changed in this diff Show more