Merge staging-next into staging

This commit is contained in:
Frederik Rietdijk 2019-10-29 09:53:46 +01:00
commit 58d9dab886
156 changed files with 2888 additions and 2482 deletions

View File

@ -51,4 +51,4 @@ For package version upgrades and such a one-line commit message is usually suffi
## Reviewing contributions
See the nixpkgs manual for more details on how to [Review contributions](https://nixos.org/nixpkgs/manual/#sec-reviewing-contributions).
See the nixpkgs manual for more details on how to [Review contributions](https://nixos.org/nixpkgs/manual/#chap-reviewing-contributions).

View File

@ -1,4 +1,4 @@
<!-- Nixpkgs has a lot of new incoming Pull Requests, but not enough people to review this constant stream. Even if you aren't a committer, we would appreciate reviews of other PRs, especially simple ones like package updates. Just testing the relevant package/service and leaving a comment saying what you tested, how you tested it and whether it worked would be great. List of open PRs: <https://github.com/NixOS/nixpkgs/pulls>, for more about reviewing contributions: <https://hydra.nixos.org/job/nixpkgs/trunk/manual/latest/download/1/nixpkgs/manual.html#sec-reviewing-contributions>. Reviewing isn't mandatory, but it would help out a lot and reduce the average time-to-merge for all of us. Thanks a lot if you do! -->
<!-- Nixpkgs has a lot of new incoming Pull Requests, but not enough people to review this constant stream. Even if you aren't a committer, we would appreciate reviews of other PRs, especially simple ones like package updates. Just testing the relevant package/service and leaving a comment saying what you tested, how you tested it and whether it worked would be great. List of open PRs: <https://github.com/NixOS/nixpkgs/pulls>, for more about reviewing contributions: <https://hydra.nixos.org/job/nixpkgs/trunk/manual/latest/download/1/nixpkgs/manual.html#chap-reviewing-contributions>. Reviewing isn't mandatory, but it would help out a lot and reduce the average time-to-merge for all of us. Thanks a lot if you do! -->
###### Motivation for this change

View File

@ -3911,6 +3911,11 @@
githubId = 13791;
name = "Luke Gorrie";
};
lumi = {
email = "lumi@pew.im";
github = "lumi-me-not";
name = "lumi";
};
luz = {
email = "luz666@daum.net";
github = "Luz";

View File

@ -227,6 +227,7 @@
./services/backup/rsnapshot.nix
./services/backup/tarsnap.nix
./services/backup/tsm.nix
./services/backup/zfs-replication.nix
./services/backup/znapzend.nix
./services/cluster/hadoop/default.nix
./services/cluster/kubernetes/addons/dns.nix

View File

@ -198,7 +198,7 @@ in
++ optionals (data.email != null) [ "--email" data.email ]
++ concatMap (p: [ "-f" p ]) data.plugins
++ concatLists (mapAttrsToList (name: root: [ "-d" (if root == null then name else "${name}:${root}")]) data.extraDomains)
++ optionals (!cfg.production) ["--server" "https://acme-staging.api.letsencrypt.org/directory"];
++ optionals (!cfg.production) ["--server" "https://acme-staging-v02.api.letsencrypt.org/directory"];
acmeService = {
description = "Renew ACME Certificate for ${cert}";
after = [ "network.target" "network-online.target" ];

View File

@ -34,6 +34,8 @@ let
description = "string of the form number{b|k|M|G}";
};
enabledFeatures = concatLists (mapAttrsToList (name: enabled: optional enabled name) cfg.features);
# Type for a string that must contain certain other strings (the list parameter).
# Note that these would need regex escaping.
stringContainingStrings = list: let
@ -354,6 +356,22 @@ in
'';
default = false;
};
features.recvu = mkEnableOption ''
recvu feature which uses <literal>-u</literal> on the receiving end to keep the destination
filesystem unmounted.
'';
features.compressed = mkEnableOption ''
compressed feature which adds the options <literal>-Lce</literal> to
the <command>zfs send</command> command. When this is enabled, make
sure that both the sending and receiving pool have the same relevant
features enabled. Using <literal>-c</literal> will skip unneccessary
decompress-compress stages, <literal>-L</literal> is for large block
support and -e is for embedded data support. see
<citerefentry><refentrytitle>znapzend</refentrytitle><manvolnum>1</manvolnum></citerefentry>
and <citerefentry><refentrytitle>zfs</refentrytitle><manvolnum>8</manvolnum></citerefentry>
for more info.
'';
};
};
@ -381,12 +399,22 @@ in
'';
serviceConfig = {
# znapzendzetup --import apparently tries to connect to the backup
# host 3 times with a timeout of 30 seconds, leading to a startup
# delay of >90s when the host is down, which is just above the default
# service timeout of 90 seconds. Increase the timeout so it doesn't
# make the service fail in that case.
TimeoutStartSec = 180;
# Needs to have write access to ZFS
User = "root";
ExecStart = let
args = concatStringsSep " " [
"--logto=${cfg.logTo}"
"--loglevel=${cfg.logLevel}"
(optionalString cfg.noDestroy "--nodestroy")
(optionalString cfg.autoCreation "--autoCreation")
(optionalString (enabledFeatures != [])
"--features=${concatStringsSep "," enabledFeatures}")
]; in "${pkgs.znapzend}/bin/znapzend ${args}";
ExecReload = "${pkgs.coreutils}/bin/kill -HUP $MAINPID";
Restart = "on-failure";

View File

@ -608,6 +608,8 @@ in {
# objects owners and extensions; for now we tack on what's needed
# here.
systemd.services.postgresql.postStart = mkAfter (optionalString databaseActuallyCreateLocally ''
set -eu
$PSQL -tAc "SELECT 1 FROM pg_database WHERE datname = '${cfg.databaseName}'" | grep -q 1 || $PSQL -tAc 'CREATE DATABASE "${cfg.databaseName}" OWNER "${cfg.databaseUsername}"'
current_owner=$($PSQL -tAc "SELECT pg_catalog.pg_get_userbyid(datdba) FROM pg_catalog.pg_database WHERE datname = '${cfg.databaseName}'")
if [[ "$current_owner" != "${cfg.databaseUsername}" ]]; then
@ -739,7 +741,6 @@ in {
gitlab-workhorse
];
serviceConfig = {
PermissionsStartOnly = true; # preStart must be run as root
Type = "simple";
User = cfg.user;
Group = cfg.group;
@ -781,13 +782,18 @@ in {
ExecStartPre = let
preStartFullPrivileges = ''
shopt -s dotglob nullglob
set -eu
chown --no-dereference '${cfg.user}':'${cfg.group}' '${cfg.statePath}'/*
chown --no-dereference '${cfg.user}':'${cfg.group}' '${cfg.statePath}'/config/*
'';
preStart = ''
set -eu
cp -f ${cfg.packages.gitlab}/share/gitlab/VERSION ${cfg.statePath}/VERSION
rm -rf ${cfg.statePath}/db/*
rm -rf ${cfg.statePath}/config/initializers/*
rm -f ${cfg.statePath}/lib
cp -rf --no-preserve=mode ${cfg.packages.gitlab}/share/gitlab/config.dist/* ${cfg.statePath}/config
cp -rf --no-preserve=mode ${cfg.packages.gitlab}/share/gitlab/db/* ${cfg.statePath}/db

View File

@ -31,7 +31,7 @@ let
# part of CUPS itself, e.g. the SMB backend is part of Samba. Since
# we can't update ${cups.out}/lib/cups itself, we create a symlink tree
# here and add the additional programs. The ServerBin directive in
# cupsd.conf tells cupsd to use this tree.
# cups-files.conf tells cupsd to use this tree.
bindir = pkgs.buildEnv {
name = "cups-progs";
paths =

View File

@ -187,7 +187,7 @@ let
# Note: For DHCP the values both, none, v4, v6 are deprecated
(assertValueOneOf "DHCP" ["yes" "no" "ipv4" "ipv6" "both" "none" "v4" "v6"])
(assertValueOneOf "DHCPServer" boolValues)
(assertValueOneOf "LinkLocalAddressing" ["yes" "no" "ipv4" "ipv6"])
(assertValueOneOf "LinkLocalAddressing" ["yes" "no" "ipv4" "ipv6" "ipv4-fallback" "fallback"])
(assertValueOneOf "IPv4LLRoute" boolValues)
(assertValueOneOf "LLMNR" ["yes" "resolve" "no"])
(assertValueOneOf "MulticastDNS" ["yes" "resolve" "no"])

View File

@ -19,7 +19,7 @@
python3.pkgs.buildPythonApplication rec {
pname = "lollypop";
version = "1.2.1";
version = "1.2.2";
format = "other";
doCheck = false;
@ -28,7 +28,7 @@ python3.pkgs.buildPythonApplication rec {
url = "https://gitlab.gnome.org/World/lollypop";
rev = "refs/tags/${version}";
fetchSubmodules = true;
sha256 = "0wmgs28ph9959lr6zhd2j7z2c3kpl64rng6s1xgzyhsgrcyvv4cd";
sha256 = "02dgp3b10yaw0yqzdzd15msjgxayvjkg9m652is0d7rwgjq1pk6v";
};
nativeBuildInputs = [

View File

@ -2,14 +2,14 @@
, usePulseAudio ? config.pulseaudio or false, libpulseaudio }:
let
version = "0.4.1";
version = "0.4.9";
in stdenv.mkDerivation {
pname = "openmpt123";
inherit version;
src = fetchurl {
url = "https://lib.openmpt.org/files/libopenmpt/src/libopenmpt-${version}+release.autotools.tar.gz";
sha256 = "1k1m1adjh4s2q9lxgkf836k5243akxrzq1hsdjhrkg4idd3pxzp4";
sha256 = "02kjwwh9d9i4rnfzqzr18pvcklc46yrs9mvdmjqx7kxg3c28hkqm";
};
enableParallelBuilding = true;

View File

@ -10,9 +10,6 @@ buildGoPackage rec {
propagatedBuildInputs =
stdenv.lib.optionals stdenv.isDarwin [ libobjc IOKit ];
# Fixes Cgo related build failures (see https://github.com/NixOS/nixpkgs/issues/25959 )
hardeningDisable = [ "fortify" ];
src = fetchFromGitHub {
owner = "ethereum";
repo = pname;

View File

@ -394,52 +394,22 @@ env NIXPKGS_ALLOW_BROKEN=1 nix-instantiate --show-trace ../../../../ -A emacsPac
(attrs.nativeBuildInputs or []) ++ [ external.git ];
});
vterm = let
emacsSources = pkgs.stdenv.mkDerivation {
name = self.emacs.name + "-sources";
src = self.emacs.src;
dontConfigure = true;
dontBuild = true;
doCheck = false;
fixupPhase = ":";
installPhase = ''
mkdir -p $out
cp -a * $out
'';
};
libvterm = pkgs.libvterm-neovim.overrideAttrs(old: rec {
pname = "libvterm-neovim";
version = "2019-04-27";
name = pname + "-" + version;
src = pkgs.fetchFromGitHub {
owner = "neovim";
repo = "libvterm";
rev = "89675ffdda615ffc3f29d1c47a933f4f44183364";
sha256 = "0l9ixbj516vl41v78fi302ws655xawl7s94gmx1kb3fmfgamqisy";
};
});
in pkgs.stdenv.mkDerivation {
inherit (super.vterm) name version src;
nativeBuildInputs = [ pkgs.cmake ];
buildInputs = [ self.emacs libvterm ];
vterm = super.vterm.overrideAttrs(old: {
buildInputs = old.buildInputs ++ [ self.emacs pkgs.cmake pkgs.libvterm-neovim ];
cmakeFlags = [
"-DEMACS_SOURCE=${emacsSources}"
"-DUSE_SYSTEM_LIBVTERM=True"
"-DEMACS_SOURCE=${self.emacs.src}"
"-DUSE_SYSTEM_LIBVTERM=ON"
];
installPhase = ''
install -d $out/share/emacs/site-lisp
install ../*.el $out/share/emacs/site-lisp
install ../*.so $out/share/emacs/site-lisp
# we need the proper out directory to exist, so we do this in the
# postInstall instead of postBuild
postInstall = ''
pushd source/build >/dev/null
make
install -m444 -t $out/share/emacs/site-lisp/elpa/vterm-** ../*.so
popd > /dev/null
rm -rf $out/share/emacs/site-lisp/elpa/vterm-**/{CMake*,build,*.c,*.h}
'';
};
});
# Legacy alias
emacs-libvterm = unstable.vterm;

View File

@ -1,12 +1,12 @@
{ stdenv, fetchurl, swt, jdk, makeWrapper, alsaLib }:
{ stdenv, fetchurl, swt, jdk, makeWrapper, alsaLib, jack2, fluidsynth, libpulseaudio }:
let metadata = assert stdenv.hostPlatform.system == "i686-linux" || stdenv.hostPlatform.system == "x86_64-linux";
if stdenv.hostPlatform.system == "i686-linux" then
{ arch = "x86"; sha256 = "1qmb51k0538pn7gv4nsvhfv33xik4l4af0qmpllkzrikmj8wvzlb"; }
{ arch = "x86"; sha256 = "27675c358db237df74d20e8676000c25a87b9de0bb0a6d1c325e8d6db807d296"; }
else
{ arch = "x86_64"; sha256 = "12af47jhlrh9aq5b3d13l7cdhlndgnfpy61gz002hajbq7i00ixh"; };
{ arch = "x86_64"; sha256 = "298555a249adb3ad72f3aef72a124e30bfa01cd069c7b5d152a738140e7903a2"; };
in stdenv.mkDerivation rec {
version = "1.2";
version = "1.5.2";
pname = "tuxguitar";
src = fetchurl {
@ -18,15 +18,16 @@ in stdenv.mkDerivation rec {
installPhase = ''
mkdir -p $out/bin
cp -r lib share $out/
cp tuxguitar $out/bin/tuxguitar
cp tuxguitar.jar $out/lib
cp -r dist lib share $out/
cp tuxguitar.sh $out/bin/tuxguitar
ln -s $out/dist $out/bin/dist
ln -s $out/lib $out/bin/lib
ln -s $out/share $out/bin/share
wrapProgram $out/bin/tuxguitar \
--set JAVA "${jdk}/bin/java" \
--prefix LD_LIBRARY_PATH : "$out/lib/:${stdenv.lib.makeLibraryPath [ swt alsaLib ]}" \
--prefix LD_LIBRARY_PATH : "$out/lib/:${stdenv.lib.makeLibraryPath [ swt alsaLib jack2 fluidsynth libpulseaudio ]}" \
--prefix CLASSPATH : "${swt}/jars/swt.jar:$out/lib/tuxguitar.jar:$out/lib/itext.jar"
'';

View File

@ -11,11 +11,11 @@
stdenv.mkDerivation rec {
pname = "drawio";
version = "12.1.0";
version = "12.1.7";
src = fetchurl {
url = "https://github.com/jgraph/drawio-desktop/releases/download/v${version}/draw.io-x86_64-${version}.rpm";
sha256 = "02gwhnbl9fzgf1z8c9bkm3rxzyncp7v57yqc322r85vg0wxir3f8";
sha256 = "1vac0cz99yjlz7b186wyy4wk4sxkvlirpjmh3vw65xaxamn8spn3";
};
nativeBuildInputs = [

View File

@ -0,0 +1,53 @@
{ stdenv, fetchFromGitHub
, cmake, wrapGAppsHook
, libX11, xorg, libzip, glfw, gnome3
}:
stdenv.mkDerivation rec {
pname = "tev";
version = "1.13";
src = fetchFromGitHub {
owner = "Tom94";
repo = pname;
rev = "v${version}";
fetchSubmodules = true;
sha256 = "0c8md6yv1q449aszs05xfby6a2aiw8pac7x0zs169i5mpqrrbfa9";
};
nativeBuildInputs = [ cmake wrapGAppsHook ];
buildInputs = [ libX11 libzip glfw ]
++ (with xorg; [ libXrandr libXinerama libXcursor libXi libXxf86vm ]);
dontWrapGApps = true; # We also need zenity (see below)
postPatch = ''
substituteInPlace CMakeLists.txt \
--replace "/usr/" "''${out}/"
'';
postInstall = ''
wrapProgram $out/bin/tev \
"''${gappsWrapperArgs[@]}" \
--prefix PATH ":" "${gnome3.zenity}/bin"
'';
meta = with stdenv.lib; {
description = "A high dynamic range (HDR) image comparison tool";
longDescription = ''
A high dynamic range (HDR) image comparison tool for graphics people. tev
allows viewing images through various tonemapping operators and inspecting
the values of individual pixels. Often, it is important to find exact
differences between pairs of images. For this purpose, tev allows rapidly
switching between opened images and visualizing various error metrics (L1,
L2, and relative versions thereof). To avoid clutter, opened images and
their layers can be filtered by keywords.
While the predominantly supported file format is OpenEXR certain other
types of images can also be loaded.
'';
inherit (src.meta) homepage;
license = licenses.bsd3;
platforms = platforms.unix;
maintainers = with maintainers; [ primeos ];
};
}

View File

@ -1,5 +1,5 @@
{
"url": "https://hubstaff-production.s3.amazonaws.com/downloads/HubstaffClient/Builds/Release/1.4.11-a12e5bad/Hubstaff-1.4.11-a12e5bad.sh",
"version": "1.4.11-a12e5bad",
"sha256": "0nqmw02spplqppvz2jniq5p5y69l8n5xp9wji4032kn4qsba33jn"
"url": "https://hubstaff-production.s3.amazonaws.com/downloads/HubstaffClient/Builds/Release/1.5.0-4309ed45/Hubstaff-1.5.0-4309ed45.sh",
"version": "1.5.0-4309ed45",
"sha256": "1rfxizb28b8r344d18jh6shfcxz35vx8vh10c3j6zdcc998zkcr1"
}

View File

@ -0,0 +1,26 @@
{ lib, fetchFromGitHub, buildPythonApplication, pytest, git }:
buildPythonApplication rec {
pname = "mu-repo";
version = "1.8.0";
src = fetchFromGitHub {
owner = "fabioz";
repo = pname;
rev = with lib;
"mu_repo_" + concatStringsSep "_" (splitVersion version);
sha256 = "1dxfggzbhiips0ww2s93yba9842ycp0i3x2i8vvcx0vgicv3rv6f";
};
checkInputs = [ pytest git ];
# disable test which assumes it's a git repo
checkPhase = "py.test mu_repo --ignore=mu_repo/tests/test_checkout.py";
meta = with lib; {
description = "Tool to help in dealing with multiple git repositories";
homepage = "http://fabioz.github.io/mu-repo/";
license = licenses.gpl3;
platforms = platforms.unix;
maintainers = with maintainers; [ sikmir ];
};
}

View File

@ -22,13 +22,13 @@ with stdenv.lib;
stdenv.mkDerivation rec {
pname = "profanity";
version = "0.7.0";
version = "0.7.1";
src = fetchFromGitHub {
owner = "profanity-im";
repo = "profanity";
rev = version;
sha256 = "15adg7ndjkzy04lizjmnvv0pf0snhzp6a8x74mndcm0zma0dia0z";
sha256 = "1mcgr86wqyzqx7mqxfkk2jwx6cgnvrky3zi4v1ww0lh6j05wj9gf";
};
patches = [ ./patches/packages-osx.patch ./patches/undefined-macros.patch ];

View File

@ -2,7 +2,7 @@
"name": "riot-web",
"productName": "Riot",
"main": "src/electron-main.js",
"version": "1.4.2",
"version": "1.5.0",
"description": "A feature-rich client for Matrix.org",
"author": "New Vector Ltd.",
"dependencies": {

View File

@ -6,12 +6,12 @@
let
executableName = "riot-desktop";
version = "1.4.2";
version = "1.5.0";
riot-web-src = fetchFromGitHub {
owner = "vector-im";
repo = "riot-web";
rev = "v${version}";
sha256 = "1s1m2jbcax92pql9yzw3kxdmn97a2xnas49rw3n1vldkla2wx4zx";
sha256 = "1xi5zg3602d7gdjxskpk2q3anpn2drrkxyirfvi9mzcfp2r05557";
};
in yarn2nix-moretea.mkYarnPackage rec {

View File

@ -5,11 +5,11 @@
stdenv.mkDerivation rec {
pname = "riot-web";
version = "1.4.2";
version = "1.5.0";
src = fetchurl {
url = "https://github.com/vector-im/riot-web/releases/download/v${version}/riot-v${version}.tar.gz";
sha256 = "0bbal3y4clgp7j703f3ll5zwhbpjz6zpw3qslwza6lik4g4k0vaj";
sha256 = "08r9473ncfy3wzqhnds729s77fq82jjgz8w3yya07aahcxzasi94";
};
installPhase = let

View File

@ -4,14 +4,14 @@
}:
stdenv.mkDerivation rec {
version = "20180716";
version = "2019-10-25";
pname = "neomutt";
src = fetchFromGitHub {
owner = "neomutt";
repo = "neomutt";
rev = "neomutt-${version}";
sha256 = "0im2kkahkr04q04irvcimfawxi531ld6wrsa92r2m7l10gmijkl8";
rev = version;
sha256 = "0hy6rxgm3acjqxpf4ss7391kps4g06fbjhbpgv1jdrj1y9kv0rm1";
};
buildInputs = [

View File

@ -1,9 +1,9 @@
{ stdenv, lib, fetchurl, autoconf, automake, pkgconfig, libtool
, gtk2, halibut, ncurses, perl
, gtk2, halibut, ncurses, perl, darwin
}:
stdenv.mkDerivation rec {
version = "0.71";
version = "0.73";
pname = "putty";
src = fetchurl {
@ -11,7 +11,7 @@ stdenv.mkDerivation rec {
"https://the.earth.li/~sgtatham/putty/${version}/${pname}-${version}.tar.gz"
"ftp://ftp.wayne.edu/putty/putty-website-mirror/${version}/${pname}-${version}.tar.gz"
];
sha256 = "1f66iss0kqk982azmxbk4xfm2i1csby91vdvly6cr04pz3i1r4rg";
sha256 = "076z34jpik2dmlwxicvf1djjgnahcqv12rjhmb9yq6ml7x0bbc1x";
};
# glib-2.62 deprecations
@ -20,9 +20,6 @@ stdenv.mkDerivation rec {
preConfigure = lib.optionalString stdenv.hostPlatform.isUnix ''
perl mkfiles.pl
( cd doc ; make );
sed -e '/AM_PATH_GTK(/d' \
-e '/AC_OUTPUT/iAM_PROG_CC_C_O' \
-e '/AC_OUTPUT/iAM_PROG_AR' -i configure.ac
./mkauto.sh
cd unix
'' + lib.optionalString stdenv.hostPlatform.isWindows ''
@ -41,7 +38,7 @@ stdenv.mkDerivation rec {
nativeBuildInputs = [ autoconf automake halibut libtool perl pkgconfig ];
buildInputs = lib.optionals stdenv.hostPlatform.isUnix [
gtk2 ncurses
];
] ++ lib.optional stdenv.isDarwin darwin.apple_sdk.libs.utmp;
enableParallelBuilding = true;
meta = with lib; {

View File

@ -2,11 +2,11 @@
stdenv.mkDerivation rec {
pname = "bcompare";
version = "4.3.0.24364";
version = "4.3.1.24438";
src = fetchurl {
url = "https://www.scootersoftware.com/${pname}-${version}_amd64.deb";
sha256 = "14ff250nyqfqgm9qazg4la7ajci3bhqm376wy2j3za1vf09774kc";
sha256 = "19rbcl0l49qbzn4bisdl9ibj0qm83kjkclva4qcy7jaqna9g7qrh";
};
unpackPhase = ''
@ -43,7 +43,6 @@ stdenv.mkDerivation rec {
ki18n
kcoreaddons
gdk-pixbuf
qt4
bzip2
];

View File

@ -0,0 +1,65 @@
{ lib
, python3Packages
, fetchFromGitHub
, enableGoogle ? false
, enableAWS ? false
, enableAzure ? false
, enableSSH ? false
}:
with python3Packages;
buildPythonApplication rec {
pname = "dvc";
version = "0.24.3";
# PyPi only has wheel
src = fetchFromGitHub {
owner = "iterative";
repo = "dvc";
rev = version;
sha256 = "1wqq4i23hppilp20fx5a5nj93xwf3wwwr2f8aasvn6jkv2l22vpl";
};
propagatedBuildInputs = [
ply
configparser
zc_lockfile
future
colorama
configobj
networkx
pyyaml
GitPython
setuptools
nanotime
pyasn1
schema
jsonpath_rw
requests
grandalf
asciimatics
distro
appdirs
]
++ lib.optional enableGoogle google_cloud_storage
++ lib.optional enableAWS boto3
++ lib.optional enableAzure azure-storage-blob
++ lib.optional enableSSH paramiko;
# tests require access to real cloud services
# nix build tests have to be isolated and run locally
doCheck = false;
patches = [ ./dvc-daemon.patch ];
postPatch = ''
substituteInPlace dvc/daemon.py --subst-var-by dvc "$out/bin/dcv"
'';
meta = with lib; {
description = "Version Control System for Machine Learning Projects";
license = licenses.asl20;
homepage = https://dvc.org;
maintainers = with maintainers; [ cmcdragonkai ];
};
}

View File

@ -0,0 +1,21 @@
diff --git a/dvc/daemon.py b/dvc/daemon.py
index 1d67a37..7ce6fde 100644
--- a/dvc/daemon.py
+++ b/dvc/daemon.py
@@ -67,14 +67,8 @@ def daemon(args):
Args:
args (list): list of arguments to append to `dvc daemon` command.
"""
- cmd = [sys.executable]
- if not is_binary():
- cmd += ['-m', 'dvc']
- cmd += ['daemon', '-q'] + args
-
- env = fix_env()
- file_path = os.path.abspath(inspect.stack()[0][1])
- env['PYTHONPATH'] = os.path.dirname(os.path.dirname(file_path))
+ cmd = [ "@dvc@" , "daemon", "-q"] + args
+ env = None
logger.debug("Trying to spawn '{}' with env '{}'".format(cmd, env))

View File

@ -1,13 +1,13 @@
{
"version": "12.3.5",
"repo_hash": "12ywspgnbwm232vmzbqhkqmwmcrb9pvihsayzmw0cxvhlfwq6995",
"version": "12.4.0",
"repo_hash": "0z2jykjv9sa4akq2qd4bl5ngqk3gpy2xfhxmcbd4d61w6l2jw00f",
"owner": "gitlab-org",
"repo": "gitlab",
"rev": "v12.3.5-ee",
"rev": "v12.4.0-ee",
"passthru": {
"GITALY_SERVER_VERSION": "1.65.1",
"GITLAB_PAGES_VERSION": "1.9.0",
"GITLAB_SHELL_VERSION": "10.0.0",
"GITLAB_WORKHORSE_VERSION": "8.10.0"
"GITALY_SERVER_VERSION": "1.67.0",
"GITLAB_PAGES_VERSION": "1.11.0",
"GITLAB_SHELL_VERSION": "10.2.0",
"GITLAB_WORKHORSE_VERSION": "8.14.0"
}
}

View File

@ -17,14 +17,14 @@ let
};
};
in buildGoPackage rec {
version = "1.65.1";
version = "1.67.0";
pname = "gitaly";
src = fetchFromGitLab {
owner = "gitlab-org";
repo = "gitaly";
rev = "v${version}";
sha256 = "1a39i723na2xk4363a7v48ba23vi04qpg0119dw09g13m0k5hjc3";
sha256 = "1mj2l15hnxwqmyc8xn79d6qpmpqbqw2ishalr8qvn83nzdsbk8l3";
};
goPackagePath = "gitlab.com/gitlab-org/gitaly";

View File

@ -270,33 +270,6 @@
sha256 = "02ldzxgznrfdzvghfraslhgp19la1fczcbzh7wm2zdc6lmpd1qq9";
};
}
{
goPackagePath = "github.com/kr/pretty";
fetch = {
type = "git";
url = "https://github.com/kr/pretty";
rev = "v0.1.0";
sha256 = "18m4pwg2abd0j9cn5v3k2ksk9ig4vlwxmlw9rrglanziv9l967qp";
};
}
{
goPackagePath = "github.com/kr/pty";
fetch = {
type = "git";
url = "https://github.com/kr/pty";
rev = "v1.1.1";
sha256 = "0383f0mb9kqjvncqrfpidsf8y6ns5zlrc91c6a74xpyxjwvzl2y6";
};
}
{
goPackagePath = "github.com/kr/text";
fetch = {
type = "git";
url = "https://github.com/kr/text";
rev = "v0.1.0";
sha256 = "1gm5bsl01apvc84bw06hasawyqm4q84vx1pm32wr9jnd7a8vjgj1";
};
}
{
goPackagePath = "github.com/libgit2/git2go";
fetch = {
@ -644,8 +617,8 @@
fetch = {
type = "git";
url = "https://gopkg.in/check.v1";
rev = "788fd7840127";
sha256 = "0v3bim0j375z81zrpr5qv42knqs0y2qv2vkjiqi5axvb78slki1a";
rev = "20d25e280405";
sha256 = "0k1m83ji9l1a7ng8a7v40psbymxasmssbrrhpdv2wl4rhs0nc3np";
};
}
{

View File

@ -1,12 +0,0 @@
source 'https://rubygems.org'
group :development, :test do
gem 'listen', '~> 0.5.0'
gem 'pry', '~> 0.12.2'
gem 'rspec', '~> 3.8.0'
gem 'rspec-parameterized', '~> 0.4.0'
gem 'rubocop', '0.49.1', require: false
gem 'simplecov', '~> 0.9.0', require: false
gem 'vcr', '~> 4.0.0'
gem 'webmock', '~> 3.4.0'
end

View File

@ -1,109 +0,0 @@
GEM
remote: https://rubygems.org/
specs:
abstract_type (0.0.7)
adamantium (0.2.0)
ice_nine (~> 0.11.0)
memoizable (~> 0.4.0)
addressable (2.5.2)
public_suffix (>= 2.0.2, < 4.0)
ast (2.4.0)
binding_of_caller (0.8.0)
debug_inspector (>= 0.0.1)
coderay (1.1.2)
concord (0.1.5)
adamantium (~> 0.2.0)
equalizer (~> 0.0.9)
crack (0.4.3)
safe_yaml (~> 1.0.0)
debug_inspector (0.0.3)
diff-lcs (1.3)
docile (1.1.5)
equalizer (0.0.11)
hashdiff (0.3.7)
ice_nine (0.11.2)
listen (0.5.3)
memoizable (0.4.2)
thread_safe (~> 0.3, >= 0.3.1)
method_source (0.9.2)
multi_json (1.13.1)
parallel (1.12.1)
parser (2.5.1.2)
ast (~> 2.4.0)
powerpack (0.1.2)
proc_to_ast (0.1.0)
coderay
parser
unparser
procto (0.0.3)
pry (0.12.2)
coderay (~> 1.1.0)
method_source (~> 0.9.0)
public_suffix (3.0.3)
rainbow (2.2.2)
rake
rake (12.3.3)
rspec (3.8.0)
rspec-core (~> 3.8.0)
rspec-expectations (~> 3.8.0)
rspec-mocks (~> 3.8.0)
rspec-core (3.8.0)
rspec-support (~> 3.8.0)
rspec-expectations (3.8.1)
diff-lcs (>= 1.2.0, < 2.0)
rspec-support (~> 3.8.0)
rspec-mocks (3.8.0)
diff-lcs (>= 1.2.0, < 2.0)
rspec-support (~> 3.8.0)
rspec-parameterized (0.4.0)
binding_of_caller
parser
proc_to_ast
rspec (>= 2.13, < 4)
unparser
rspec-support (3.8.0)
rubocop (0.49.1)
parallel (~> 1.10)
parser (>= 2.3.3.1, < 3.0)
powerpack (~> 0.1)
rainbow (>= 1.99.1, < 3.0)
ruby-progressbar (~> 1.7)
unicode-display_width (~> 1.0, >= 1.0.1)
ruby-progressbar (1.9.0)
safe_yaml (1.0.4)
simplecov (0.9.2)
docile (~> 1.1.0)
multi_json (~> 1.0)
simplecov-html (~> 0.9.0)
simplecov-html (0.9.0)
thread_safe (0.3.6)
unicode-display_width (1.4.0)
unparser (0.2.8)
abstract_type (~> 0.0.7)
adamantium (~> 0.2.0)
concord (~> 0.1.5)
diff-lcs (~> 1.3)
equalizer (~> 0.0.9)
parser (>= 2.3.1.2, < 2.6)
procto (~> 0.0.2)
vcr (4.0.0)
webmock (3.4.2)
addressable (>= 2.3.6)
crack (>= 0.3.2)
hashdiff
PLATFORMS
ruby
DEPENDENCIES
listen (~> 0.5.0)
pry (~> 0.12.2)
rspec (~> 3.8.0)
rspec-parameterized (~> 0.4.0)
rubocop (= 0.49.1)
simplecov (~> 0.9.0)
vcr (~> 4.0.0)
webmock (~> 3.4.0)
BUNDLED WITH
1.16.3

View File

@ -1,65 +1,25 @@
{ stdenv, ruby, bundler, fetchFromGitLab, buildGoPackage, bundlerEnv }:
{ stdenv, fetchFromGitLab, buildGoPackage, ruby }:
let
version = "10.0.0";
buildGoPackage rec {
pname = "gitlab-shell-go";
version = "10.2.0";
src = fetchFromGitLab {
owner = "gitlab-org";
repo = "gitlab-shell";
rev = "v${version}";
sha256 = "0n1llkb0jrqxm10l9wqmqxjycydqphgz0chbbf395d8pywyz826x";
sha256 = "1mpzsdqd8mlsh8wccz4s8415w080z55lnifn7l7vd5rflpnyfhcj";
};
rubyEnv = bundlerEnv {
name = "gitlab-shell-env";
inherit ruby;
gemdir = ./.;
};
goPackage = buildGoPackage {
pname = "gitlab-shell-go";
inherit src version;
patches = [ ./remove-hardcoded-locations-go.patch ];
buildInputs = [ ruby ];
goPackagePath = "gitlab.com/gitlab-org/gitlab-shell";
goDeps = ./deps.nix;
patches = [ ./remove-hardcoded-locations.patch ];
# gitlab-shell depends on an older version of gitaly which
# contains old, vendored versions of some packages; gitlab-shell
# also explicitly depends on newer versions of these libraries,
# but buildGoPackage exposes the vendored versions instead,
# leading to compilation errors. Since the vendored libraries
# aren't used here anyway, we'll just remove them.
postConfigure = ''
rm -r "$NIX_BUILD_TOP/go/src/gitlab.com/gitlab-org/gitaly/vendor/"
'';
};
in
stdenv.mkDerivation {
pname = "gitlab-shell";
inherit src version;
goPackagePath = "gitlab.com/gitlab-org/gitlab-shell";
goDeps = ./deps.nix;
patches = [ ./remove-hardcoded-locations-ruby.patch ];
# gitlab-shell will try to read its config relative to the source
# code by default which doesn't work in nixos because it's a
# read-only filesystem
postPatch = ''
substituteInPlace lib/gitlab_config.rb --replace \
"File.join(ROOT_PATH, 'config.yml')" \
"'/run/gitlab/shell-config.yml'"
'';
buildInputs = [ rubyEnv.wrappedRuby ];
dontBuild = true;
installPhase = ''
runHook preInstall
mkdir -p $out/
cp -R . $out/
cp ${goPackage.bin}/bin/* $out/bin/
runHook postInstall
postInstall = ''
cp -r "$NIX_BUILD_TOP/go/src/$goPackagePath"/bin/* $bin/bin
cp -r "$NIX_BUILD_TOP/go/src/$goPackagePath"/{support,VERSION} $bin/
'';
meta = with stdenv.lib; {

View File

@ -18,6 +18,42 @@
sha256 = "149v3ci17g6wd2pm18mzcncq5qpl9hwdjnz3rlbn5rfidyn46la1";
};
}
{
goPackagePath = "github.com/BurntSushi/toml";
fetch = {
type = "git";
url = "https://github.com/BurntSushi/toml";
rev = "v0.3.1";
sha256 = "1fjdwwfzyzllgiwydknf1pwjvy49qxfsczqx5gz3y0izs7as99j6";
};
}
{
goPackagePath = "github.com/alecthomas/template";
fetch = {
type = "git";
url = "https://github.com/alecthomas/template";
rev = "a0175ee3bccc";
sha256 = "0qjgvvh26vk1cyfq9fadyhfgdj36f1iapbmr5xp6zqipldz8ffxj";
};
}
{
goPackagePath = "github.com/alecthomas/units";
fetch = {
type = "git";
url = "https://github.com/alecthomas/units";
rev = "2efee857e7cf";
sha256 = "1j65b91qb9sbrml9cpabfrcf07wmgzzghrl7809hjjhrmbzri5bl";
};
}
{
goPackagePath = "github.com/beorn7/perks";
fetch = {
type = "git";
url = "https://github.com/beorn7/perks";
rev = "v1.0.0";
sha256 = "1i1nz1f6g55xi2y3aiaz5kqfgvknarbfl4f0sx4nyyb4s7xb1z9x";
};
}
{
goPackagePath = "github.com/certifi/gocertifi";
fetch = {
@ -36,6 +72,15 @@
sha256 = "1vwf33wsc4la25zk9nylpbp9px3svlmldkm0bha4hp56jws4q9cs";
};
}
{
goPackagePath = "github.com/cloudflare/tableflip";
fetch = {
type = "git";
url = "https://github.com/cloudflare/tableflip";
rev = "8392f1641731";
sha256 = "0by5hk8s0bhhl3kiw658p5g53zvc61k4q2wxnh1w64p5ghd1rfn8";
};
}
{
goPackagePath = "github.com/codahale/hdrhistogram";
fetch = {
@ -68,10 +113,37 @@
fetch = {
type = "git";
url = "https://github.com/getsentry/raven-go";
rev = "v0.1.0";
rev = "v0.1.2";
sha256 = "1dl80kar4lzdcfl3w6jssi1ld6bv0rmx6sp6bz6rzysfr9ilm02z";
};
}
{
goPackagePath = "github.com/go-kit/kit";
fetch = {
type = "git";
url = "https://github.com/go-kit/kit";
rev = "v0.8.0";
sha256 = "1rcywbc2pvab06qyf8pc2rdfjv7r6kxdv2v4wnpqnjhz225wqvc0";
};
}
{
goPackagePath = "github.com/go-logfmt/logfmt";
fetch = {
type = "git";
url = "https://github.com/go-logfmt/logfmt";
rev = "v0.3.0";
sha256 = "1gkgh3k5w1xwb2qbjq52p6azq3h1c1rr6pfwjlwj1zrijpzn2xb9";
};
}
{
goPackagePath = "github.com/go-stack/stack";
fetch = {
type = "git";
url = "https://github.com/go-stack/stack";
rev = "v1.8.0";
sha256 = "0wk25751ryyvxclyp8jdk5c3ar0cmfr8lrjb66qbg4808x66b96v";
};
}
{
goPackagePath = "github.com/gogo/protobuf";
fetch = {
@ -90,15 +162,6 @@
sha256 = "0jb2834rw5sykfr937fxi8hxi2zy80sj2bdn9b3jb4b26ksqng30";
};
}
{
goPackagePath = "github.com/golang/lint";
fetch = {
type = "git";
url = "https://github.com/golang/lint";
rev = "06c8688daad7";
sha256 = "0xi94dwvz50a66bq1hp9fyqkym5mcpdxdb1hrfvicldgjf37lc47";
};
}
{
goPackagePath = "github.com/golang/mock";
fetch = {
@ -113,8 +176,26 @@
fetch = {
type = "git";
url = "https://github.com/golang/protobuf";
rev = "v1.2.0";
sha256 = "0kf4b59rcbb1cchfny2dm9jyznp8ri2hsb14n8iak1q8986xa0ab";
rev = "v1.3.2";
sha256 = "1k1wb4zr0qbwgpvz9q5ws9zhlal8hq7dmq62pwxxriksayl6hzym";
};
}
{
goPackagePath = "github.com/google/go-cmp";
fetch = {
type = "git";
url = "https://github.com/google/go-cmp";
rev = "v0.2.0";
sha256 = "1fbv0x27k9sn8svafc0hjwsnckk864lv4yi7bvzrxvmd3d5hskds";
};
}
{
goPackagePath = "github.com/google/uuid";
fetch = {
type = "git";
url = "https://github.com/google/uuid";
rev = "v1.1.1";
sha256 = "0hfxcf9frkb57k6q0rdkrmnfs78ms21r1qfk9fhlqga2yh5xg8zb";
};
}
{
@ -126,6 +207,15 @@
sha256 = "0lwgxih021xfhfb1xb9la5f98bpgpaiz63sbllx77qwwl2rmhrsp";
};
}
{
goPackagePath = "github.com/grpc-ecosystem/go-grpc-prometheus";
fetch = {
type = "git";
url = "https://github.com/grpc-ecosystem/go-grpc-prometheus";
rev = "v1.2.0";
sha256 = "1lzk54h7np32b3acidg1ggbn8ppbnns0m71gcg9d1qkkdh8zrijl";
};
}
{
goPackagePath = "github.com/hpcloud/tail";
fetch = {
@ -136,12 +226,57 @@
};
}
{
goPackagePath = "github.com/kisielk/gotool";
goPackagePath = "github.com/json-iterator/go";
fetch = {
type = "git";
url = "https://github.com/kisielk/gotool";
rev = "v1.0.0";
sha256 = "14af2pa0ssyp8bp2mvdw184s5wcysk6akil3wzxmr05wwy951iwn";
url = "https://github.com/json-iterator/go";
rev = "v1.1.6";
sha256 = "08caswxvdn7nvaqyj5kyny6ghpygandlbw9vxdj7l5vkp7q0s43r";
};
}
{
goPackagePath = "github.com/julienschmidt/httprouter";
fetch = {
type = "git";
url = "https://github.com/julienschmidt/httprouter";
rev = "v1.2.0";
sha256 = "1k8bylc9s4vpvf5xhqh9h246dl1snxrzzz0614zz88cdh8yzs666";
};
}
{
goPackagePath = "github.com/kelseyhightower/envconfig";
fetch = {
type = "git";
url = "https://github.com/kelseyhightower/envconfig";
rev = "v1.3.0";
sha256 = "1zcq480ig7wbg4378qcfxznp2gzqmk7x6rbxizflvg9v2f376vrw";
};
}
{
goPackagePath = "github.com/konsorten/go-windows-terminal-sequences";
fetch = {
type = "git";
url = "https://github.com/konsorten/go-windows-terminal-sequences";
rev = "v1.0.1";
sha256 = "1lchgf27n276vma6iyxa0v1xds68n2g8lih5lavqnx5x6q5pw2ip";
};
}
{
goPackagePath = "github.com/kr/logfmt";
fetch = {
type = "git";
url = "https://github.com/kr/logfmt";
rev = "b84e30acd515";
sha256 = "02ldzxgznrfdzvghfraslhgp19la1fczcbzh7wm2zdc6lmpd1qq9";
};
}
{
goPackagePath = "github.com/libgit2/git2go";
fetch = {
type = "git";
url = "https://github.com/libgit2/git2go";
rev = "ecaeb7a21d47";
sha256 = "14r7ryff93r49g94f6kg66xc0y6rwb31lj22s3qmzmlgywk0pgvr";
};
}
{
@ -162,6 +297,42 @@
sha256 = "08zcgr1az1n8zaxzwdd205j86hczgyc52nxfnw5avpw7rrkf7v0d";
};
}
{
goPackagePath = "github.com/matttproud/golang_protobuf_extensions";
fetch = {
type = "git";
url = "https://github.com/matttproud/golang_protobuf_extensions";
rev = "v1.0.1";
sha256 = "1d0c1isd2lk9pnfq2nk0aih356j30k3h1gi2w0ixsivi5csl7jya";
};
}
{
goPackagePath = "github.com/modern-go/concurrent";
fetch = {
type = "git";
url = "https://github.com/modern-go/concurrent";
rev = "bacd9c7ef1dd";
sha256 = "0s0fxccsyb8icjmiym5k7prcqx36hvgdwl588y0491gi18k5i4zs";
};
}
{
goPackagePath = "github.com/modern-go/reflect2";
fetch = {
type = "git";
url = "https://github.com/modern-go/reflect2";
rev = "v1.0.1";
sha256 = "06a3sablw53n1dqqbr2f53jyksbxdmmk8axaas4yvnhyfi55k4lf";
};
}
{
goPackagePath = "github.com/mwitkow/go-conntrack";
fetch = {
type = "git";
url = "https://github.com/mwitkow/go-conntrack";
rev = "cc309e4a2223";
sha256 = "0nbrnpk7bkmqg9mzwsxlm0y8m7s9qd9phr1q30qlx2qmdmz7c1mf";
};
}
{
goPackagePath = "github.com/onsi/ginkgo";
fetch = {
@ -243,13 +414,58 @@
sha256 = "0c1cn55m4rypmscgf0rrb88pn58j3ysvc2d0432dp3c6fqg6cnzw";
};
}
{
goPackagePath = "github.com/prometheus/client_golang";
fetch = {
type = "git";
url = "https://github.com/prometheus/client_golang";
rev = "v1.0.0";
sha256 = "1f03ndyi3jq7zdxinnvzimz3s4z2374r6dikkc8i42xzb6d1bli6";
};
}
{
goPackagePath = "github.com/prometheus/client_model";
fetch = {
type = "git";
url = "https://github.com/prometheus/client_model";
rev = "fd36f4220a90";
sha256 = "1bs5d72k361llflgl94c22n0w53j30rsfh84smgk8mbjbcmjsaa5";
};
}
{
goPackagePath = "github.com/prometheus/common";
fetch = {
type = "git";
url = "https://github.com/prometheus/common";
rev = "v0.4.1";
sha256 = "0sf4sjdckblz1hqdfvripk3zyp8xq89w7q75kbsyg4c078af896s";
};
}
{
goPackagePath = "github.com/prometheus/procfs";
fetch = {
type = "git";
url = "https://github.com/prometheus/procfs";
rev = "v0.0.2";
sha256 = "0s7pvs7fgnfpmym3cd0k219av321h9sf3yvdlnn3qy0ps280lg7k";
};
}
{
goPackagePath = "github.com/sirupsen/logrus";
fetch = {
type = "git";
url = "https://github.com/sirupsen/logrus";
rev = "v1.0.5";
sha256 = "0g5z7al7kky11ai2dhac6gkp3b5pxsvx72yj3xg4wg3265gbn7yz";
rev = "v1.2.0";
sha256 = "0r6334x2bls8ddznvzaldx4g88msjjns4mlks95rqrrg7h0ijigg";
};
}
{
goPackagePath = "github.com/stretchr/objx";
fetch = {
type = "git";
url = "https://github.com/stretchr/objx";
rev = "v0.1.1";
sha256 = "0iph0qmpyqg4kwv8jsx6a56a7hhqq8swrazv40ycxk9rzr0s8yls";
};
}
{
@ -257,8 +473,8 @@
fetch = {
type = "git";
url = "https://github.com/stretchr/testify";
rev = "v1.2.2";
sha256 = "0dlszlshlxbmmfxj5hlwgv3r22x0y1af45gn1vd198nvvs3pnvfs";
rev = "v1.3.0";
sha256 = "0wjchp2c8xbgcbbq32w3kvblk6q6yn533g78nxl6iskq6y95lxsy";
};
}
{
@ -266,8 +482,8 @@
fetch = {
type = "git";
url = "https://github.com/tinylib/msgp";
rev = "v1.0.2";
sha256 = "0pypfknghg1hcjjrqz3f1riaylk6hcxn9h0qyzynb74rp0qmlxjc";
rev = "v1.1.0";
sha256 = "08ha23sn14071ywrgxlyj7r523vzdwx1i83dcp1mqa830glgqaff";
};
}
{
@ -302,17 +518,8 @@
fetch = {
type = "git";
url = "https://gitlab.com/gitlab-org/gitaly.git";
rev = "v1.7.0";
sha256 = "1hhiyw1ag22mgn6chp8lf29y2fgj90xyb7wjd6s30hayqja7knh1";
};
}
{
goPackagePath = "gitlab.com/gitlab-org/gitaly-proto";
fetch = {
type = "git";
url = "https://gitlab.com/gitlab-org/gitaly-proto.git";
rev = "v1.12.0";
sha256 = "02aqw1q8n84v4f3rc0x7hsg0gkmbqkznp9cl6vrhjvsisv38v695";
rev = "v1.68.0";
sha256 = "06w2qx9r7wxhpk6a3icqa0l6hr7x2j2k11kni1ksdx1m1100myjb";
};
}
{
@ -338,8 +545,8 @@
fetch = {
type = "git";
url = "https://go.googlesource.com/crypto";
rev = "182114d58262";
sha256 = "0dhagsjpk3wn2f7w148v0h9i651jpk4c0mlsy5sihcnmqz8s764l";
rev = "20be4c3c3ed5";
sha256 = "1ph7y8v30hc95h1dwr7vrhg1nzs47a261qin6zg8mhf12g5k2lxb";
};
}
{
@ -347,8 +554,8 @@
fetch = {
type = "git";
url = "https://go.googlesource.com/lint";
rev = "06c8688daad7";
sha256 = "0xi94dwvz50a66bq1hp9fyqkym5mcpdxdb1hrfvicldgjf37lc47";
rev = "d0100b6bd8b3";
sha256 = "0b0amr9x4ji66iv9ayfx7zrfx52k1m5g66qfcxkgj80qrb1y2yn7";
};
}
{
@ -356,8 +563,8 @@
fetch = {
type = "git";
url = "https://go.googlesource.com/net";
rev = "10aee1819953";
sha256 = "1rd6y0fr2gqhx3bsy0ahnacqzbxijkx8wyfmamrb3wbzc01091rl";
rev = "d28f0bde5980";
sha256 = "18xj31h70m7xxb7gc86n9i21w6d7djbjz67zfaljm4jqskz6hxkf";
};
}
{
@ -374,8 +581,8 @@
fetch = {
type = "git";
url = "https://go.googlesource.com/sync";
rev = "1d60e4601c6f";
sha256 = "046jlanz2lkxq1r57x9bl6s4cvfqaic6p2xybsj8mq1120jv4rs6";
rev = "112230192c58";
sha256 = "05i2k43j2d0llq768hg5pf3hb2yhfzp9la1w5wp0rsnnzblr0lfn";
};
}
{
@ -383,8 +590,8 @@
fetch = {
type = "git";
url = "https://go.googlesource.com/sys";
rev = "70b957f3b65e";
sha256 = "146jwkr39asigqbsnsigxpkpb4vydld4k9q34xvvw0bp10qzjxxw";
rev = "953cdadca894";
sha256 = "0gkha4whk8xkcv3isigbs250akag99isxnd3v9xmy0kl3g88hxy1";
};
}
{
@ -401,8 +608,8 @@
fetch = {
type = "git";
url = "https://go.googlesource.com/tools";
rev = "6cd1fcedba52";
sha256 = "00hl0vkmy8impsnmc2dmm55sdhia95k0kqcrjbdpynryn1lamn5d";
rev = "2c0ae7006135";
sha256 = "1lsi2ssxajclj3bciz2a41v1vjv768ja3v6wnbyhxy8xphwkp4fk";
};
}
{
@ -428,8 +635,8 @@
fetch = {
type = "git";
url = "https://github.com/grpc/grpc-go";
rev = "v1.16.0";
sha256 = "0a9xl6c5j7lvsb4q6ry5p892rjm86p47d4f8xrf0r8lxblf79qbg";
rev = "v1.24.0";
sha256 = "0h8mwv74vzcfb7p4ai247x094skxca71vjp4wpj2wzmri0x9p4v6";
};
}
{
@ -442,12 +649,12 @@
};
}
{
goPackagePath = "gopkg.in/airbrake/gobrake.v2";
goPackagePath = "gopkg.in/alecthomas/kingpin.v2";
fetch = {
type = "git";
url = "https://gopkg.in/airbrake/gobrake.v2";
rev = "v2.0.9";
sha256 = "1x06f7n7qlyzqgyz0sdfcidf3w4ldn6zs6qx2mhibggk2z4whcjw";
url = "https://gopkg.in/alecthomas/kingpin.v2";
rev = "v2.2.6";
sha256 = "0mndnv3hdngr3bxp7yxfd47cas4prv98sqw534mx7vp38gd88n5r";
};
}
{
@ -468,15 +675,6 @@
sha256 = "07va9crci0ijlivbb7q57d2rz9h27zgn2fsm60spjsqpdbvyrx4g";
};
}
{
goPackagePath = "gopkg.in/gemnasium/logrus-airbrake-hook.v2";
fetch = {
type = "git";
url = "https://gopkg.in/gemnasium/logrus-airbrake-hook.v2";
rev = "v2.1.2";
sha256 = "0sbg0dn6cysmf8f2bi209jwl4jnpiwp4rdghnxlzirw3c32ms5y5";
};
}
{
goPackagePath = "gopkg.in/tomb.v1";
fetch = {
@ -491,8 +689,8 @@
fetch = {
type = "git";
url = "https://gopkg.in/yaml.v2";
rev = "v2.2.1";
sha256 = "0dwjrs2lp2gdlscs7bsrmyc5yf6mm4fvgw71bzr9mv2qrd2q73s1";
rev = "v2.2.2";
sha256 = "01wj12jzsdqlnidpyjssmj0r4yavlqy7dwrg7adqd8dicjc4ncsa";
};
}
{
@ -500,8 +698,8 @@
fetch = {
type = "git";
url = "https://github.com/dominikh/go-tools";
rev = "88497007e858";
sha256 = "0rinkyx3r2bq45mgcasnn5jb07cwbv3p3s2wwcrzxsarsj6wa5lc";
rev = "ea95bdfd59fc";
sha256 = "1763nw7pwpzkvzfnm63dgzcgbq9hwmq5l1nffchnhh77vgkaq4ic";
};
}
]

View File

@ -1,451 +0,0 @@
{
abstract_type = {
groups = ["default" "development" "test"];
platforms = [];
source = {
remotes = ["https://rubygems.org"];
sha256 = "09330cmhrc2wmfhdj9zzg82sv6cdhm3qgdkva5ni5xfjril2pf14";
type = "gem";
};
version = "0.0.7";
};
adamantium = {
dependencies = ["ice_nine" "memoizable"];
groups = ["default" "development" "test"];
platforms = [];
source = {
remotes = ["https://rubygems.org"];
sha256 = "0165r2ikgfwv2rm8dzyijkp74fvg0ni72hpdx8ay2v7cj08dqyak";
type = "gem";
};
version = "0.2.0";
};
addressable = {
dependencies = ["public_suffix"];
groups = ["default" "development" "test"];
platforms = [];
source = {
remotes = ["https://rubygems.org"];
sha256 = "0viqszpkggqi8hq87pqp0xykhvz60g99nwmkwsb0v45kc2liwxvk";
type = "gem";
};
version = "2.5.2";
};
ast = {
groups = ["default" "development" "test"];
platforms = [];
source = {
remotes = ["https://rubygems.org"];
sha256 = "184ssy3w93nkajlz2c70ifm79jp3j737294kbc5fjw69v1w0n9x7";
type = "gem";
};
version = "2.4.0";
};
binding_of_caller = {
dependencies = ["debug_inspector"];
groups = ["default" "development" "test"];
platforms = [];
source = {
remotes = ["https://rubygems.org"];
sha256 = "05syqlks7463zsy1jdfbbdravdhj9hpj5pv2m74blqpv8bq4vv5g";
type = "gem";
};
version = "0.8.0";
};
coderay = {
groups = ["default" "development" "test"];
platforms = [];
source = {
remotes = ["https://rubygems.org"];
sha256 = "15vav4bhcc2x3jmi3izb11l4d9f3xv8hp2fszb7iqmpsccv1pz4y";
type = "gem";
};
version = "1.1.2";
};
concord = {
dependencies = ["adamantium" "equalizer"];
groups = ["default" "development" "test"];
platforms = [];
source = {
remotes = ["https://rubygems.org"];
sha256 = "1b6cdn0fg4n9gzbdr7zyf4jq40y6h0c0g9cra7wk9hhmsylk91bg";
type = "gem";
};
version = "0.1.5";
};
crack = {
dependencies = ["safe_yaml"];
groups = ["default" "development" "test"];
platforms = [];
source = {
remotes = ["https://rubygems.org"];
sha256 = "0abb0fvgw00akyik1zxnq7yv391va148151qxdghnzngv66bl62k";
type = "gem";
};
version = "0.4.3";
};
debug_inspector = {
groups = ["default" "development" "test"];
platforms = [];
source = {
remotes = ["https://rubygems.org"];
sha256 = "0vxr0xa1mfbkfcrn71n7c4f2dj7la5hvphn904vh20j3x4j5lrx0";
type = "gem";
};
version = "0.0.3";
};
diff-lcs = {
groups = ["default" "development" "test"];
platforms = [];
source = {
remotes = ["https://rubygems.org"];
sha256 = "18w22bjz424gzafv6nzv98h0aqkwz3d9xhm7cbr1wfbyas8zayza";
type = "gem";
};
version = "1.3";
};
docile = {
groups = ["default" "development" "test"];
platforms = [];
source = {
remotes = ["https://rubygems.org"];
sha256 = "0m8j31whq7bm5ljgmsrlfkiqvacrw6iz9wq10r3gwrv5785y8gjx";
type = "gem";
};
version = "1.1.5";
};
equalizer = {
groups = ["default" "development" "test"];
platforms = [];
source = {
remotes = ["https://rubygems.org"];
sha256 = "1kjmx3fygx8njxfrwcmn7clfhjhb6bvv3scy2lyyi0wqyi3brra4";
type = "gem";
};
version = "0.0.11";
};
hashdiff = {
groups = ["default" "development" "test"];
platforms = [];
source = {
remotes = ["https://rubygems.org"];
sha256 = "0yj5l2rw8i8jc725hbcpc4wks0qlaaimr3dpaqamfjkjkxl0hjp9";
type = "gem";
};
version = "0.3.7";
};
ice_nine = {
groups = ["default" "development" "test"];
platforms = [];
source = {
remotes = ["https://rubygems.org"];
sha256 = "1nv35qg1rps9fsis28hz2cq2fx1i96795f91q4nmkm934xynll2x";
type = "gem";
};
version = "0.11.2";
};
listen = {
groups = ["development" "test"];
platforms = [];
source = {
remotes = ["https://rubygems.org"];
sha256 = "0inlw7vix61170vjr87h9izhjm5dbby8rbfrf1iryiv7b3kyvkxl";
type = "gem";
};
version = "0.5.3";
};
memoizable = {
dependencies = ["thread_safe"];
groups = ["default" "development" "test"];
platforms = [];
source = {
remotes = ["https://rubygems.org"];
sha256 = "0v42bvghsvfpzybfazl14qhkrjvx0xlmxz0wwqc960ga1wld5x5c";
type = "gem";
};
version = "0.4.2";
};
method_source = {
groups = ["default" "development" "test"];
platforms = [];
source = {
remotes = ["https://rubygems.org"];
sha256 = "1pviwzvdqd90gn6y7illcdd9adapw8fczml933p5vl739dkvl3lq";
type = "gem";
};
version = "0.9.2";
};
multi_json = {
groups = ["default" "development" "test"];
platforms = [];
source = {
remotes = ["https://rubygems.org"];
sha256 = "1rl0qy4inf1mp8mybfk56dfga0mvx97zwpmq5xmiwl5r770171nv";
type = "gem";
};
version = "1.13.1";
};
parallel = {
groups = ["default" "development" "test"];
platforms = [];
source = {
remotes = ["https://rubygems.org"];
sha256 = "01hj8v1qnyl5ndrs33g8ld8ibk0rbcqdpkpznr04gkbxd11pqn67";
type = "gem";
};
version = "1.12.1";
};
parser = {
dependencies = ["ast"];
groups = ["default" "development" "test"];
platforms = [];
source = {
remotes = ["https://rubygems.org"];
sha256 = "1zp89zg7iypncszxsjp8kiccrpbdf728jl449g6cnfkz990fyb5k";
type = "gem";
};
version = "2.5.1.2";
};
powerpack = {
groups = ["default" "development" "test"];
platforms = [];
source = {
remotes = ["https://rubygems.org"];
sha256 = "1r51d67wd467rpdfl6x43y84vwm8f5ql9l9m85ak1s2sp3nc5hyv";
type = "gem";
};
version = "0.1.2";
};
proc_to_ast = {
dependencies = ["coderay" "parser" "unparser"];
groups = ["default" "development" "test"];
platforms = [];
source = {
remotes = ["https://rubygems.org"];
sha256 = "14c65w48bbzp5lh1cngqd1y25kqvfnq1iy49hlzshl12dsk3z9wj";
type = "gem";
};
version = "0.1.0";
};
procto = {
groups = ["default" "development" "test"];
platforms = [];
source = {
remotes = ["https://rubygems.org"];
sha256 = "13imvg1x50rz3r0yyfbhxwv72lbf7q28qx9l9nfbb91h2n9ch58c";
type = "gem";
};
version = "0.0.3";
};
pry = {
dependencies = ["coderay" "method_source"];
groups = ["development" "test"];
platforms = [];
source = {
remotes = ["https://rubygems.org"];
sha256 = "00rm71x0r1jdycwbs83lf9l6p494m99asakbvqxh8rz7zwnlzg69";
type = "gem";
};
version = "0.12.2";
};
public_suffix = {
groups = ["default" "development" "test"];
platforms = [];
source = {
remotes = ["https://rubygems.org"];
sha256 = "08q64b5br692dd3v0a9wq9q5dvycc6kmiqmjbdxkxbfizggsvx6l";
type = "gem";
};
version = "3.0.3";
};
rainbow = {
dependencies = ["rake"];
groups = ["default" "development" "test"];
platforms = [];
source = {
remotes = ["https://rubygems.org"];
sha256 = "08w2ghc5nv0kcq5b257h7dwjzjz1pqcavajfdx2xjyxqsvh2y34w";
type = "gem";
};
version = "2.2.2";
};
rake = {
groups = ["default" "development" "test"];
platforms = [];
source = {
remotes = ["https://rubygems.org"];
sha256 = "1cvaqarr1m84mhc006g3l1vw7sa5qpkcw0138lsxlf769zdllsgp";
type = "gem";
};
version = "12.3.3";
};
rspec = {
dependencies = ["rspec-core" "rspec-expectations" "rspec-mocks"];
groups = ["development" "test"];
platforms = [];
source = {
remotes = ["https://rubygems.org"];
sha256 = "15ppasvb9qrscwlyjz67ppw1lnxiqnkzx5vkx1bd8x5n3dhikxc3";
type = "gem";
};
version = "3.8.0";
};
rspec-core = {
dependencies = ["rspec-support"];
groups = ["default" "development" "test"];
platforms = [];
source = {
remotes = ["https://rubygems.org"];
sha256 = "1p1s5bnbqp3sxk67y0fh0x884jjym527r0vgmhbm81w7aq6b7l4p";
type = "gem";
};
version = "3.8.0";
};
rspec-expectations = {
dependencies = ["diff-lcs" "rspec-support"];
groups = ["default" "development" "test"];
platforms = [];
source = {
remotes = ["https://rubygems.org"];
sha256 = "0vfqqcjmhdq25jrc8rd7nx4n8xid7s1ynv65ph06bk2xafn3rgll";
type = "gem";
};
version = "3.8.1";
};
rspec-mocks = {
dependencies = ["diff-lcs" "rspec-support"];
groups = ["default" "development" "test"];
platforms = [];
source = {
remotes = ["https://rubygems.org"];
sha256 = "06y508cjqycb4yfhxmb3nxn0v9xqf17qbd46l1dh4xhncinr4fyp";
type = "gem";
};
version = "3.8.0";
};
rspec-parameterized = {
dependencies = ["binding_of_caller" "parser" "proc_to_ast" "rspec" "unparser"];
groups = ["development" "test"];
platforms = [];
source = {
remotes = ["https://rubygems.org"];
sha256 = "0arynbr6cfjhccwc8gy2xf87nybdnncsnmfwknnh8s7d4mj730p0";
type = "gem";
};
version = "0.4.0";
};
rspec-support = {
groups = ["default" "development" "test"];
platforms = [];
source = {
remotes = ["https://rubygems.org"];
sha256 = "0p3m7drixrlhvj2zpc38b11x145bvm311x6f33jjcxmvcm0wq609";
type = "gem";
};
version = "3.8.0";
};
rubocop = {
dependencies = ["parallel" "parser" "powerpack" "rainbow" "ruby-progressbar" "unicode-display_width"];
groups = ["development" "test"];
platforms = [];
source = {
remotes = ["https://rubygems.org"];
sha256 = "1mqyylfzch0967w7nfnqza84sqhljijd9y4bnq8hcmrscch75cxw";
type = "gem";
};
version = "0.49.1";
};
ruby-progressbar = {
groups = ["default" "development" "test"];
platforms = [];
source = {
remotes = ["https://rubygems.org"];
sha256 = "1igh1xivf5h5g3y5m9b4i4j2mhz2r43kngh4ww3q1r80ch21nbfk";
type = "gem";
};
version = "1.9.0";
};
safe_yaml = {
groups = ["default" "development" "test"];
platforms = [];
source = {
remotes = ["https://rubygems.org"];
sha256 = "1hly915584hyi9q9vgd968x2nsi5yag9jyf5kq60lwzi5scr7094";
type = "gem";
};
version = "1.0.4";
};
simplecov = {
dependencies = ["docile" "multi_json" "simplecov-html"];
groups = ["development" "test"];
platforms = [];
source = {
remotes = ["https://rubygems.org"];
sha256 = "1a3wy9zlmfwl3f47cibnxyxrgfz16y6fmy0dj1vyidzyys4mvy12";
type = "gem";
};
version = "0.9.2";
};
simplecov-html = {
groups = ["default" "development" "test"];
platforms = [];
source = {
remotes = ["https://rubygems.org"];
sha256 = "0jv9pmpaxihrcsgcf6mgl3qg7rhf9scl5l2k67d768w9cz63xgvc";
type = "gem";
};
version = "0.9.0";
};
thread_safe = {
groups = ["default" "development" "test"];
platforms = [];
source = {
remotes = ["https://rubygems.org"];
sha256 = "0nmhcgq6cgz44srylra07bmaw99f5271l0dpsvl5f75m44l0gmwy";
type = "gem";
};
version = "0.3.6";
};
unicode-display_width = {
groups = ["default" "development" "test"];
platforms = [];
source = {
remotes = ["https://rubygems.org"];
sha256 = "0040bsdpcmvp8w31lqi2s9s4p4h031zv52401qidmh25cgyh4a57";
type = "gem";
};
version = "1.4.0";
};
unparser = {
dependencies = ["abstract_type" "adamantium" "concord" "diff-lcs" "equalizer" "parser" "procto"];
groups = ["default" "development" "test"];
platforms = [];
source = {
remotes = ["https://rubygems.org"];
sha256 = "0rh1649846ac17av30x0b0v9l45v0x1j2y1i8m1a7xdd0v4sld0z";
type = "gem";
};
version = "0.2.8";
};
vcr = {
groups = ["development" "test"];
platforms = [];
source = {
remotes = ["https://rubygems.org"];
sha256 = "0qh7lkj9b0shph84dw1wsrlaprl0jn1i4339fpsfy99402290zrr";
type = "gem";
};
version = "4.0.0";
};
webmock = {
dependencies = ["addressable" "crack" "hashdiff"];
groups = ["development" "test"];
platforms = [];
source = {
remotes = ["https://rubygems.org"];
sha256 = "03994dxs4xayvkxqp01dd1ivhg4xxx7z35f7cxw7y2mwj3xn24ib";
type = "gem";
};
version = "3.4.2";
};
}

View File

@ -1,42 +0,0 @@
diff --git a/go/internal/config/config.go b/go/internal/config/config.go
index f951fe6..b422fe3 100644
--- a/go/internal/config/config.go
+++ b/go/internal/config/config.go
@@ -3,7 +3,6 @@ package config
import (
"io/ioutil"
"net/url"
- "os"
"path"
"strings"
@@ -44,16 +43,13 @@ type Config struct {
}
func New() (*Config, error) {
- dir, err := os.Getwd()
- if err != nil {
- return nil, err
- }
+ dir := "/run/gitlab"
return NewFromDir(dir)
}
func NewFromDir(dir string) (*Config, error) {
- return newFromFile(path.Join(dir, configFile))
+ return newFromFile("/run/gitlab/shell-config.yml")
}
func (c *Config) FeatureEnabled(featureName string) bool {
diff --git a/go/internal/command/fallback/fallback.go b/go/internal/command/fallback/fallback.go
index 2cb76a8..f59ad5e 100644
--- a/go/internal/command/fallback/fallback.go
+++ b/go/internal/command/fallback/fallback.go
@@ -53,5 +53,5 @@
func (c *Command) fallbackProgram() string {
fileName := fmt.Sprintf("%s-ruby", c.Executable.Name)
- return filepath.Join(c.RootDir, "bin", fileName)
+ return filepath.Join("/run/current-system/sw/bin", fileName)
}

View File

@ -1,27 +0,0 @@
diff --git a/lib/gitlab_keys.rb b/lib/gitlab_keys.rb
index 0600a18..c46f2d7 100644
--- a/lib/gitlab_keys.rb
+++ b/lib/gitlab_keys.rb
@@ -2,7 +2,7 @@ class GitlabKeys # rubocop:disable Metrics/ClassLength
attr_accessor :auth_file, :key
def self.command(whatever)
- "#{ROOT_PATH}/bin/gitlab-shell #{whatever}"
+ "/run/current-system/sw/bin/gitlab-shell #{whatever}"
end
def self.command_key(key_id)
diff --git a/lib/gitlab_shell.rb b/lib/gitlab_shell.rb
index 2cb76a8..f59ad5e 100644
--- a/lib/gitlab_shell.rb
+++ b/lib/gitlab_shell.rb
@@ -195,7 +195,8 @@ class GitlabShell # rubocop:disable Metrics/ClassLength
args = [executable, gitaly_address, json_args]
# We use 'chdir: ROOT_PATH' to let the next executable know where config.yml is.
- Kernel.exec(env, *args, unsetenv_others: true, chdir: ROOT_PATH)
+ # Except we don't, because we're already in the right directory on nixos!
+ Kernel.exec(env, *args, unsetenv_others: true)
end
def api

View File

@ -0,0 +1,57 @@
diff --git a/go/internal/config/config.go b/go/internal/config/config.go
index 2231851..c869930 100644
--- a/go/internal/config/config.go
+++ b/go/internal/config/config.go
@@ -3,7 +3,6 @@ package config
import (
"io/ioutil"
"net/url"
- "os"
"path"
"path/filepath"
@@ -38,16 +37,13 @@ type Config struct {
}
func New() (*Config, error) {
- dir, err := os.Getwd()
- if err != nil {
- return nil, err
- }
+ dir := "/run/gitlab"
return NewFromDir(dir)
}
func NewFromDir(dir string) (*Config, error) {
- return newFromFile(path.Join(dir, configFile))
+ return newFromFile("/run/gitlab/shell-config.yml")
}
func newFromFile(filename string) (*Config, error) {
diff --git a/go/internal/keyline/key_line.go b/go/internal/keyline/key_line.go
index f92f50b..160e287 100644
--- a/go/internal/keyline/key_line.go
+++ b/go/internal/keyline/key_line.go
@@ -36,7 +36,7 @@ func NewPrincipalKeyLine(keyId string, principal string, rootDir string) (*KeyLi
}
func (k *KeyLine) ToString() string {
- command := fmt.Sprintf("%s %s-%s", path.Join(k.RootDir, executable.BinDir, executable.GitlabShell), k.Prefix, k.Id)
+ command := fmt.Sprintf("%s %s-%s", path.Join("/run/current-system/sw/bin", executable.GitlabShell), k.Prefix, k.Id)
return fmt.Sprintf(`command="%s",%s %s`, command, SshOptions, k.Value)
}
diff --git a/support/gitlab_config.rb b/support/gitlab_config.rb
index 1416488..90a5f79 100644
--- a/support/gitlab_config.rb
+++ b/support/gitlab_config.rb
@@ -4,7 +4,7 @@ class GitlabConfig
attr_reader :config
def initialize
- @config = YAML.load_file(File.join(ROOT_PATH, 'config.yml'))
+ @config = YAML.load_file('/run/gitlab/shell-config.yml')
end
def auth_file

View File

@ -3,20 +3,19 @@
buildGoPackage rec {
pname = "gitlab-workhorse";
version = "8.10.0";
version = "8.14.0";
src = fetchFromGitLab {
owner = "gitlab-org";
repo = "gitlab-workhorse";
rev = "v${version}";
sha256 = "11cfhh48dga5ghfcijb68gbx0nfr5bs3vvp2j1gam9ac37fpvk0x";
sha256 = "1cqx75h4x4chjvp72kzbln8qkm5p7p2w7x8bdd99g38kf21wxxaq";
};
goPackagePath = "gitlab.com/gitlab-org/gitlab-workhorse";
goDeps = ./deps.nix;
buildInputs = [ git ];
makeFlags = [ "PREFIX=$(out)" "VERSION=${version}" "GOCACHE=$(TMPDIR)/go-cache" ];
buildFlagsArray = "-ldflags=-X main.Version=${version}";
# gitlab-workhorse depends on an older version of labkit which
# contains old, vendored versions of some packages; gitlab-workhorse

View File

@ -150,3 +150,14 @@ index b276a81eac..070e3ebd81 100644
end
end
end
--- a/lib/gitlab/authorized_keys.rb
+++ b/lib/gitlab/authorized_keys.rb
@@ -157,7 +157,7 @@
raise KeyError, "Invalid ID: #{id.inspect}"
end
- "#{File.join(Gitlab.config.gitlab_shell.path, 'bin', 'gitlab-shell')} #{id}"
+ "#{File.join('/run/current-system/sw/bin', 'gitlab-shell')} #{id}"
end
def strip(key)

View File

@ -87,9 +87,9 @@ gem 'rack-cors', '~> 1.0.0', require: 'rack/cors'
# GraphQL API
gem 'graphql', '~> 1.9.11'
# NOTE: graphiql-rails v1.5+ doesn't work: https://gitlab.com/gitlab-org/gitlab-ce/issues/67293
# NOTE: graphiql-rails v1.5+ doesn't work: https://gitlab.com/gitlab-org/gitlab/issues/31771
# TODO: remove app/views/graphiql/rails/editors/show.html.erb when https://github.com/rmosolgo/graphiql-rails/pull/71 is released:
# https://gitlab.com/gitlab-org/gitlab-ce/issues/67263
# https://gitlab.com/gitlab-org/gitlab/issues/31747
gem 'graphiql-rails', '~> 1.4.10'
gem 'apollo_upload_server', '~> 2.0.0.beta3'
gem 'graphql-docs', '~> 1.6.0', group: [:development, :test]
@ -148,7 +148,7 @@ gem 'wikicloth', '0.8.1'
gem 'asciidoctor', '~> 2.0.10'
gem 'asciidoctor-include-ext', '~> 0.3.1', require: false
gem 'asciidoctor-plantuml', '0.0.9'
gem 'rouge', '~> 3.7'
gem 'rouge', '~> 3.11.0'
gem 'truncato', '~> 0.7.11'
gem 'bootstrap_form', '~> 4.2.0'
gem 'nokogiri', '~> 1.10.4'
@ -311,7 +311,7 @@ gem 'gettext', '~> 3.2.2', require: false, group: :development
gem 'batch-loader', '~> 1.4.0'
# Perf bar
# https://gitlab.com/gitlab-org/gitlab-ee/issues/13996
# https://gitlab.com/gitlab-org/gitlab/issues/13996
gem 'gitlab-peek', '~> 0.0.1', require: 'peek'
# Snowplow events tracking
@ -355,7 +355,7 @@ group :development, :test do
gem 'fuubar', '~> 2.2.0'
gem 'database_cleaner', '~> 1.7.0'
gem 'factory_bot_rails', '~> 4.8.2'
gem 'factory_bot_rails', '~> 5.1.0'
gem 'rspec-rails', '~> 3.8.0'
gem 'rspec-retry', '~> 0.6.1'
gem 'rspec_profiling', '~> 0.0.5'
@ -405,7 +405,7 @@ group :test do
gem 'webmock', '~> 3.5.1'
gem 'rails-controller-testing'
gem 'concurrent-ruby', '~> 1.1'
gem 'test-prof', '~> 0.2.5'
gem 'test-prof', '~> 0.10.0'
gem 'rspec_junit_formatter'
end
@ -446,7 +446,7 @@ group :ed25519 do
end
# Gitaly GRPC protocol definitions
gem 'gitaly', '~> 1.58.0'
gem 'gitaly', '~> 1.65.0'
gem 'grpc', '~> 1.19.0'
@ -465,7 +465,7 @@ gem 'lograge', '~> 0.5'
gem 'grape_logging', '~> 1.7'
# DNS Lookup
gem 'net-dns', '~> 0.9.0'
gem 'gitlab-net-dns', '~> 0.9.1'
# Countries list
gem 'countries', '~> 3.0'

View File

@ -108,7 +108,7 @@ GEM
binding_ninja (0.2.3)
binding_of_caller (0.8.0)
debug_inspector (>= 0.0.1)
bootsnap (1.4.4)
bootsnap (1.4.5)
msgpack (~> 1.0)
bootstrap_form (4.2.0)
actionpack (>= 5.0)
@ -209,10 +209,10 @@ GEM
descendants_tracker (0.0.4)
thread_safe (~> 0.3, >= 0.3.1)
device_detector (1.0.0)
devise (4.6.2)
devise (4.7.1)
bcrypt (~> 3.0)
orm_adapter (~> 0.1)
railties (>= 4.1.0, < 6.0)
railties (>= 4.1.0)
responders
warden (~> 1.2.3)
devise-two-factor (3.0.0)
@ -254,7 +254,7 @@ GEM
mail (~> 2.7)
encryptor (3.0.0)
equalizer (0.0.11)
erubi (1.8.0)
erubi (1.9.0)
escape_utils (1.2.1)
et-orbi (1.2.1)
tzinfo
@ -264,11 +264,11 @@ GEM
expression_parser (0.9.0)
extended-markdown-filter (0.6.0)
html-pipeline (~> 2.0)
factory_bot (4.8.2)
activesupport (>= 3.0.0)
factory_bot_rails (4.8.2)
factory_bot (~> 4.8.2)
railties (>= 3.0.0)
factory_bot (5.1.0)
activesupport (>= 4.2.0)
factory_bot_rails (5.1.0)
factory_bot (~> 5.1.0)
railties (>= 4.2.0)
faraday (0.12.2)
multipart-post (>= 1.2, < 3)
faraday-http-cache (2.0.0)
@ -358,7 +358,7 @@ GEM
po_to_json (>= 1.0.0)
rails (>= 3.2.0)
git (1.5.0)
gitaly (1.58.0)
gitaly (1.65.0)
grpc (~> 1.0)
github-markup (1.7.0)
gitlab-labkit (0.5.2)
@ -370,6 +370,7 @@ GEM
redis (> 3.0.0, < 5.0.0)
gitlab-license (1.0.0)
gitlab-markup (1.7.0)
gitlab-net-dns (0.9.1)
gitlab-peek (0.0.1)
railties (>= 4.0.0)
gitlab-sidekiq-fetcher (0.5.2)
@ -487,7 +488,7 @@ GEM
mime-types (~> 3.0)
multi_xml (>= 0.5.2)
httpclient (2.8.3)
i18n (1.6.0)
i18n (1.7.0)
concurrent-ruby (~> 1.0)
i18n_data (0.8.0)
icalendar (2.4.1)
@ -565,7 +566,7 @@ GEM
activesupport (>= 4)
railties (>= 4)
request_store (~> 1.0)
loofah (2.2.3)
loofah (2.3.0)
crass (~> 1.0.2)
nokogiri (>= 1.5.9)
mail (2.7.1)
@ -586,7 +587,7 @@ GEM
mini_mime (1.0.1)
mini_portile2 (2.4.0)
minitest (5.11.3)
msgpack (1.3.0)
msgpack (1.3.1)
multi_json (1.13.1)
multi_xml (0.6.0)
multipart-post (2.0.0)
@ -596,7 +597,6 @@ GEM
mustermann (~> 1.0.0)
nakayoshi_fork (0.0.4)
nap (1.1.0)
net-dns (0.9.0)
net-ldap (0.16.0)
net-ntp (2.1.3)
net-ssh (5.2.0)
@ -770,8 +770,8 @@ GEM
rails-dom-testing (2.0.3)
activesupport (>= 4.2.0)
nokogiri (>= 1.6)
rails-html-sanitizer (1.2.0)
loofah (~> 2.2, >= 2.2.2)
rails-html-sanitizer (1.3.0)
loofah (~> 2.3)
rails-i18n (5.1.1)
i18n (>= 0.7, < 2)
railties (>= 5.0, < 6)
@ -783,7 +783,7 @@ GEM
thor (>= 0.19.0, < 2.0)
rainbow (3.0.0)
raindrops (0.19.0)
rake (12.3.2)
rake (12.3.3)
rb-fsevent (0.10.2)
rb-inotify (0.9.10)
ffi (>= 0.5.0, < 2)
@ -824,9 +824,9 @@ GEM
declarative-option (< 0.2.0)
uber (< 0.2.0)
request_store (1.3.1)
responders (2.4.0)
actionpack (>= 4.2.0, < 5.3)
railties (>= 4.2.0, < 5.3)
responders (2.4.1)
actionpack (>= 4.2.0, < 6.0)
railties (>= 4.2.0, < 6.0)
rest-client (2.0.2)
http-cookie (>= 1.0.2, < 2.0)
mime-types (>= 1.16, < 4.0)
@ -834,7 +834,7 @@ GEM
retriable (3.1.2)
rinku (2.0.0)
rotp (2.1.2)
rouge (3.7.0)
rouge (3.11.0)
rqrcode (0.7.0)
chunky_png
rqrcode-rails3 (0.1.7)
@ -994,7 +994,7 @@ GEM
temple (0.8.1)
terminal-table (1.8.0)
unicode-display_width (~> 1.1, >= 1.1.1)
test-prof (0.2.5)
test-prof (0.10.0)
text (1.3.1)
thin (1.7.2)
daemons (~> 1.0, >= 1.0.9)
@ -1058,8 +1058,8 @@ GEM
descendants_tracker (~> 0.0, >= 0.0.3)
equalizer (~> 0.0, >= 0.0.9)
vmstat (2.3.0)
warden (1.2.7)
rack (>= 1.0)
warden (1.2.8)
rack (>= 2.0.6)
webfinger (1.1.0)
activesupport
httpclient (>= 2.4)
@ -1144,7 +1144,7 @@ DEPENDENCIES
email_reply_trimmer (~> 0.1)
email_spec (~> 2.2.0)
escape_utils (~> 1.1)
factory_bot_rails (~> 4.8.2)
factory_bot_rails (~> 5.1.0)
faraday (~> 0.12)
faraday_middleware-aws-signers-v4
fast_blank
@ -1168,11 +1168,12 @@ DEPENDENCIES
gettext (~> 3.2.2)
gettext_i18n_rails (~> 1.8.0)
gettext_i18n_rails_js (~> 1.3)
gitaly (~> 1.58.0)
gitaly (~> 1.65.0)
github-markup (~> 1.7.0)
gitlab-labkit (~> 0.5)
gitlab-license (~> 1.0)
gitlab-markup (~> 1.7.0)
gitlab-net-dns (~> 0.9.1)
gitlab-peek (~> 0.0.1)
gitlab-sidekiq-fetcher (= 0.5.2)
gitlab-styles (~> 2.7)
@ -1222,7 +1223,6 @@ DEPENDENCIES
mini_magick
minitest (~> 5.11.0)
nakayoshi_fork (~> 0.0.4)
net-dns (~> 0.9.0)
net-ldap
net-ntp
net-ssh (~> 5.2)
@ -1276,7 +1276,7 @@ DEPENDENCIES
redis-rails (~> 5.0.2)
request_store (~> 1.3)
responders (~> 2.0)
rouge (~> 3.7)
rouge (~> 3.11.0)
rqrcode-rails3 (~> 0.1.7)
rspec-parameterized
rspec-rails (~> 3.8.0)
@ -1314,7 +1314,7 @@ DEPENDENCIES
stackprof (~> 0.2.10)
state_machines-activerecord (~> 0.5.1)
sys-filesystem (~> 1.1.6)
test-prof (~> 0.2.5)
test-prof (~> 0.10.0)
thin (~> 1.7.0)
timecop (~> 0.8.0)
toml-rb (~> 1.0.0)

View File

@ -482,10 +482,10 @@
platforms = [];
source = {
remotes = ["https://rubygems.org"];
sha256 = "1jcc0x0l3jqap8r8l1j994ljh93c8hcppm59mjzpa0hdvprh23av";
sha256 = "0dyjk2irr0d3d3am2dzipg1zyv2nz69a16g8xkprxfa0na07wvs0";
type = "gem";
};
version = "1.4.4";
version = "1.4.5";
};
bootstrap_form = {
dependencies = ["actionpack" "activemodel"];
@ -975,10 +975,10 @@
platforms = [];
source = {
remotes = ["https://rubygems.org"];
sha256 = "04b2p61mqfb6ln8s2lhmvnkd45wjjinykbn9svmhs54kacrrjkcf";
sha256 = "0a64xq0dj6p0firpg4mrrfmlakpv17hky5yfrjhchs2sybmymr9i";
type = "gem";
};
version = "4.6.2";
version = "4.7.1";
};
devise-two-factor = {
dependencies = ["activesupport" "attr_encrypted" "devise" "railties" "rotp"];
@ -1175,10 +1175,10 @@
platforms = [];
source = {
remotes = ["https://rubygems.org"];
sha256 = "1kagnf6ziahj0d781s6ryy6fwqwa3ad4xbzzj84p9m4nv4c2jir1";
sha256 = "1nwzxnqhr31fn7nbqmffcysvxjdfl3bhxi0bld5qqhcnfc1xd13x";
type = "gem";
};
version = "1.8.0";
version = "1.9.0";
};
escape_utils = {
groups = ["default" "development" "test"];
@ -1258,10 +1258,10 @@
platforms = [];
source = {
remotes = ["https://rubygems.org"];
sha256 = "0r975ba6y0mcy3aya099gpnjn5gf1h6fbw8f3smmjay5zvin3nwx";
sha256 = "04mvwcdh1056r79vq969vlncrcy53fkhw0iixpqvp8gnx5ajbsv6";
type = "gem";
};
version = "4.8.2";
version = "5.1.0";
};
factory_bot_rails = {
dependencies = ["factory_bot" "railties"];
@ -1269,10 +1269,10 @@
platforms = [];
source = {
remotes = ["https://rubygems.org"];
sha256 = "0cdbp12ih2w77l331frv8gv6bv9dinn1663dy1jn0gb9ss1hwvs2";
sha256 = "02q7lwfdilwahza2jz0p0kc2rragv617q9r2yy72syv6lfy923sx";
type = "gem";
};
version = "4.8.2";
version = "5.1.0";
};
faraday = {
dependencies = ["multipart-post"];
@ -1645,10 +1645,10 @@
platforms = [];
source = {
remotes = ["https://rubygems.org"];
sha256 = "00di7rl1171rvpncxnfdpnmqc32kx9xmi6nwrn52k8cyrxzz2ixf";
sha256 = "0h8jzwifqgkrgh9d05g0vsdkyrnk75i53lmm3pfp9rj47gvn1z1j";
type = "gem";
};
version = "1.58.0";
version = "1.65.0";
};
github-markup = {
groups = ["default"];
@ -1691,6 +1691,16 @@
};
version = "1.7.0";
};
gitlab-net-dns = {
groups = ["default"];
platforms = [];
source = {
remotes = ["https://rubygems.org"];
sha256 = "1jylfc47477imjmzc4jq7zsxklhrws6q4bb0zzl33drirf6s1ldw";
type = "gem";
};
version = "0.9.1";
};
gitlab-peek = {
dependencies = ["railties"];
groups = ["default"];
@ -2127,10 +2137,10 @@
platforms = [];
source = {
remotes = ["https://rubygems.org"];
sha256 = "1hfxnlyr618s25xpafw9mypa82qppjccbh292c4l3bj36az7f6wl";
sha256 = "0hmypvx9iyc0b4hski7aic2xzm09cg1c7q1qlpnk3k8s5acxzyhl";
type = "gem";
};
version = "1.6.0";
version = "1.7.0";
};
i18n_data = {
groups = ["default"];
@ -2467,10 +2477,10 @@
platforms = [];
source = {
remotes = ["https://rubygems.org"];
sha256 = "1ccsid33xjajd0im2xv941aywi58z7ihwkvaf1w2bv89vn5bhsjg";
sha256 = "06kfq90vi38gv6i128f4zg462kj32szs5vsgm25hxgw9zd12pj9x";
type = "gem";
};
version = "2.2.3";
version = "2.3.0";
};
mail = {
dependencies = ["mini_mime"];
@ -2625,10 +2635,10 @@
platforms = [];
source = {
remotes = ["https://rubygems.org"];
sha256 = "1186lhwnxiw5ryv6dbxrsfy0fajfll2l95kf9pmca50iyiqi86zn";
sha256 = "1qr2mkm2i3m76zarvy7qgjl9596hmvjrg7x6w42vx8cfsbf5p0y1";
type = "gem";
};
version = "1.3.0";
version = "1.3.1";
};
multi_json = {
groups = ["default"];
@ -2711,16 +2721,6 @@
};
version = "1.1.0";
};
net-dns = {
groups = ["default"];
platforms = [];
source = {
remotes = ["https://rubygems.org"];
sha256 = "18d97xjphw21naaqfhgxp95ikr1d79rx708b2df3xm01j6isqy1d";
type = "gem";
};
version = "0.9.0";
};
net-ldap = {
groups = ["default"];
platforms = [];
@ -3480,10 +3480,10 @@
platforms = [];
source = {
remotes = ["https://rubygems.org"];
sha256 = "0ilwxzm3a7bql5c9q2n9g9nb1hax7vd8d65a5yp3d967ld97nvrq";
sha256 = "1icpqmxbppl4ynzmn6dx7wdil5hhq6fz707m9ya6d86c7ys8sd4f";
type = "gem";
};
version = "1.2.0";
version = "1.3.0";
};
rails-i18n = {
dependencies = ["i18n" "railties"];
@ -3532,10 +3532,10 @@
platforms = [];
source = {
remotes = ["https://rubygems.org"];
sha256 = "1sy5a7nh6xjdc9yhcw31jji7ssrf9v5806hn95gbrzr998a2ydjn";
sha256 = "1cvaqarr1m84mhc006g3l1vw7sa5qpkcw0138lsxlf769zdllsgp";
type = "gem";
};
version = "12.3.2";
version = "12.3.3";
};
rb-fsevent = {
groups = ["default" "development" "test"];
@ -3758,10 +3758,10 @@
platforms = [];
source = {
remotes = ["https://rubygems.org"];
sha256 = "1rhdyyvvm26f2l3fgwdp6xasfl2y0whwgy766bhdwz697mf78zfn";
sha256 = "18lqbiyc7234vd6iwxia5yvvzg6bdvdwl2nm4a5y7ia5fxjl3kqm";
type = "gem";
};
version = "2.4.0";
version = "2.4.1";
};
rest-client = {
dependencies = ["http-cookie" "mime-types" "netrc"];
@ -3809,10 +3809,10 @@
platforms = [];
source = {
remotes = ["https://rubygems.org"];
sha256 = "0pv628bqalippv8vjs3003qpl3zab9g44vqzydgcwxd628r5k9sv";
sha256 = "1zsyv6abqrk7lpql5f1ja4m88bfy9qndi8xykpss6cpvjdmi3ydb";
type = "gem";
};
version = "3.7.0";
version = "3.11.0";
};
rqrcode = {
dependencies = ["chunky_png"];
@ -4513,10 +4513,10 @@
platforms = [];
source = {
remotes = ["https://rubygems.org"];
sha256 = "08nvn3c1mzgcjgk9lr3py0zjd8fjjrm3ncn9rpqkfbx429mgw2l3";
sha256 = "0ag33hv8ky8nxpsra9jkam9npi1jjwb7f7zmvi2najci5mdr10nr";
type = "gem";
};
version = "0.2.5";
version = "0.10.0";
};
text = {
groups = ["default" "development"];
@ -4839,10 +4839,10 @@
platforms = [];
source = {
remotes = ["https://rubygems.org"];
sha256 = "0va966lhpylcwbqb9n151kkihx30agh0a57mwjwdxyanll4s1q12";
sha256 = "1fr9n9i9r82xb6i61fdw4xgc7zjv7fsdrr4k0njchy87iw9fl454";
type = "gem";
};
version = "1.2.7";
version = "1.2.8";
};
webfinger = {
dependencies = ["activesupport" "httpclient"];

View File

@ -193,15 +193,10 @@ def update_gitlab_shell():
repo = GitLabRepo(repo='gitlab-shell')
gitlab_shell_dir = pathlib.Path(__file__).parent / 'gitlab-shell'
for fn in ['Gemfile.lock', 'Gemfile']:
with open(gitlab_shell_dir / fn, 'w') as f:
f.write(repo.get_file(fn, f"v{gitlab_shell_version}"))
for fn in ['go.mod', 'go.sum']:
with open(gitlab_shell_dir / fn, 'w') as f:
f.write(repo.get_file(f"go/{fn}", f"v{gitlab_shell_version}"))
subprocess.check_output(['bundix'], cwd=gitlab_shell_dir)
subprocess.check_output(['vgo2nix'], cwd=gitlab_shell_dir)
for fn in ['go.mod', 'go.sum']:

File diff suppressed because it is too large Load Diff

View File

@ -5,18 +5,19 @@
# mkdir -p ~/.config/obs-studio/plugins
# ln -s ~/.nix-profile/share/obs/obs-plugins/obs-linuxbrowser ~/.config/obs-studio/plugins/
{ stdenv, fetchFromGitHub, obs-studio, cmake, libcef
}:
{ stdenv, fetchFromGitHub, obs-studio, cmake, libcef }:
stdenv.mkDerivation rec {
pname = "obs-linuxbrowser";
version = "0.6.1";
version = "0.6.1-6-gf86dba6";
src = fetchFromGitHub {
owner = "bazukas";
repo = "obs-linuxbrowser";
rev = version;
sha256 = "1mi9pchy07ipnx1m2767n29d53v822yajcf6c3705dhz882z21zq";
sha256 = "08d7qz0721va88bcyia8p0ycw50f6x3yk97s3vzhsc9xpq691kpi";
};
nativeBuildInputs = [ cmake ];
buildInputs = [ obs-studio ];
postUnpack = ''
@ -44,6 +45,5 @@ stdenv.mkDerivation rec {
maintainers = with maintainers; [ puffnfresh ];
license = licenses.gpl2;
platforms = with platforms; linux;
broken = true;
};
}

View File

@ -16,8 +16,6 @@ buildGoPackage rec {
goPackagePath = "github.com/containerd/containerd";
outputs = [ "bin" "out" "man" ];
hardeningDisable = [ "fortify" ];
buildInputs = [ btrfs-progs go-md2man utillinux ];
buildFlags = "VERSION=v${version}";

View File

@ -37,8 +37,6 @@ rec {
rev = containerdRev;
sha256 = containerdSha256;
};
hardeningDisable = [ "fortify" ];
});
docker-tini = tini.overrideAttrs (oldAttrs: {
@ -82,9 +80,6 @@ rec {
sha256 = sha256;
};
# Optimizations break compilation of libseccomp c bindings
hardeningDisable = [ "fortify" ];
nativeBuildInputs = [ pkgconfig ];
buildInputs = [
makeWrapper removeReferencesTo go-md2man go libtool
@ -213,13 +208,13 @@ rec {
};
docker_19_03 = makeOverridable dockerGen {
version = "19.03.2";
rev = "6a30dfca03664a0b6bf0646a7d389ee7d0318e6e";
sha256 = "0bghqwxlx4v06bwcv3c2wizbihhf983gvypx5sjcbgmiyd3bgb47";
version = "19.03.4";
rev = "9013bf583a215dc1488d941f9b6f7f11e1ea899f";
sha256 = "094d6d93jd7g1vw362cqbv9qbyv8h6pb6dj750pgqvnf1bn1mffb";
runcRev = "3e425f80a8c931f88e6d94a8c831b9d5aa481657";
runcSha256 = "18psc830b2rkwml1x6vxngam5b5wi3pj14mw817rshpzy87prspj";
containerdRev = "894b81a4b802e4eb2a91d1ce216b8817763c29fb";
containerdSha256 = "0sp5mn5wd3xma4svm6hf67hyhiixzkzz6ijhyjkwdrc4alk81357";
containerdRev = "b34a5c8af56e510852c35414db4c1f4fa6172339";
containerdSha256 = "1kddhkd93wkrimk0yjcqiavdrqc818nd39rf3wrgxyilx1mfnrwb";
tiniRev = "fec3683b971d9c3ef73f284f176672c44b448662";
tiniSha256 = "1h20i3wwlbd8x4jr2gz68hgklh0lb0jj7y5xk1wvr8y58fip1rdn";
};

View File

@ -1,35 +1,61 @@
{ fetchurl, stdenv }:
let
version = "0.18.0";
baseurl = "https://github.com/firecracker-microvm/firecracker/releases/download";
version = "0.19.0";
suffix = {
x86_64-linux = "";
aarch64-linux = "-aarch64";
}."${stdenv.hostPlatform.system}" or (throw "Unsupported system: ${stdenv.hostPlatform.system}");
baseurl = "https://github.com/firecracker-microvm/firecracker/releases/download";
fetchbin = name: sha256: fetchurl {
url = "${baseurl}/v${version}/${name}-v${version}";
inherit sha256;
url = "${baseurl}/v${version}/${name}-v${version}${suffix}";
sha256 = sha256."${stdenv.hostPlatform.system}";
};
firecracker-bin = fetchbin "firecracker" {
x86_64-linux = "0yjhw77xc2nc96p36jhf0va95gf6hwi9n270g4iiwakycdy048mx";
aarch64-linux = "165yca7pcwpqw3x6dihcjz1xcwjh37sdi9qrrjk9zasxx7xcniym";
};
jailer-bin = fetchbin "jailer" {
x86_64-linux = "1q792b4bl1q3ach8nc8l0fbcil44knv3wa542xrskndzdz28lhsp";
aarch64-linux = "1cnwlpy5bswjprk7fcjgf6lxidhp7z00qx691nkwhzjkby80j490";
};
firecracker-bin = fetchbin "firecracker" "140g93z0k8yd9lr049ps4dj0psb9ac1v7g5zs7lzpws9rj8shmgh";
jailer-bin = fetchbin "jailer" "0sk1zm1fx0zdy5il8vyygzads72ni2lcil42wv59j8b2bg8p7fwd";
in
stdenv.mkDerivation {
name = "firecracker-${version}";
pname = "firecracker";
inherit version;
srcs = [ firecracker-bin jailer-bin ];
phases = [ "installPhase" ];
unpackPhase = ":";
configurePhase = ":";
buildPhase = ''
cp ${firecracker-bin} firecracker
cp ${jailer-bin} jailer
chmod +x firecracker jailer
'';
doCheck = true;
checkPhase = ''
./firecracker --version
./jailer --version
'';
installPhase = ''
mkdir -p $out/bin
install -D ${firecracker-bin} $out/bin/firecracker
install -D ${jailer-bin} $out/bin/jailer
install -D firecracker $out/bin/firecracker
install -D jailer $out/bin/jailer
'';
meta = with stdenv.lib; {
description = "Secure, fast, minimal micro-container virtualization";
homepage = http://firecracker-microvm.io;
license = licenses.asl20;
platforms = [ "x86_64-linux" ];
platforms = [ "x86_64-linux" "aarch64-linux" ];
maintainers = with maintainers; [ thoughtpolice ];
};
}

View File

@ -0,0 +1,23 @@
{ stdenv, buildGoModule, fetchFromGitHub }:
buildGoModule rec {
pname = "firectl";
version = "0.1.0";
src = fetchFromGitHub {
owner = "firecracker-microvm";
repo = pname;
rev = "v${version}";
sha256 = "1ni3yx4rjhrkqk2038c6hkb2jwsdj2llx233wd5wgpvb6c57652p";
};
modSha256 = "1nqjz1afklcxc3xcpmygjdh3lfxjk6zvmghr8z8fr3nw2wvw2ddr";
meta = with stdenv.lib; {
description = "A command-line tool to run Firecracker microVMs";
homepage = https://github.com/firecracker-microvm/firectl;
license = licenses.asl20;
platforms = platforms.linux;
maintainers = with maintainers; [ xrelkd ];
};
}

View File

@ -18,8 +18,6 @@ buildGoPackage rec {
outputs = [ "bin" "out" "man" ];
# Optimizations break compilation of libseccomp c bindings
hardeningDisable = [ "fortify" ];
nativeBuildInputs = [ pkgconfig go-md2man ];
buildInputs = [ btrfs-progs libseccomp gpgme lvm2 systemd ];

View File

@ -0,0 +1,56 @@
From c4edb65554f90a5abfc2ecbf63587b8c6ef2653d Mon Sep 17 00:00:00 2001
From: worldofpeace <worldofpeace@protonmail.ch>
Date: Tue, 22 Oct 2019 17:20:24 -0400
Subject: [PATCH] dde-kwin.pc: make paths relative
Values like libdir should be relative to the literal ${prefix}.
We also use @ONLY so we don't substitute values like ${prefix}
with CMake resulting in an unintentional replacement.
---
plugins/kwin-xcb/lib/CMakeLists.txt | 2 +-
plugins/kwin-xcb/lib/dde-kwin.pc.in | 18 +++++++++---------
2 files changed, 10 insertions(+), 10 deletions(-)
diff --git a/plugins/kwin-xcb/lib/CMakeLists.txt b/plugins/kwin-xcb/lib/CMakeLists.txt
index 0189b74..62e5553 100644
--- a/plugins/kwin-xcb/lib/CMakeLists.txt
+++ b/plugins/kwin-xcb/lib/CMakeLists.txt
@@ -61,7 +61,7 @@ install_files(
kwinutils.h
)
-configure_file(${PROJECT_NAME}.pc.in ${PROJECT_NAME}.pc)
+configure_file(${PROJECT_NAME}.pc.in ${PROJECT_NAME}.pc @ONLY)
if (CMAKE_INSTALL_LIBDIR)
install_files("/${CMAKE_INSTALL_LIBDIR}/pkgconfig" FILES ${CMAKE_CURRENT_BINARY_DIR}/${PROJECT_NAME}.pc)
elseif (CMAKE_LIBRARY_OUTPUT_DIRECTORY)
diff --git a/plugins/kwin-xcb/lib/dde-kwin.pc.in b/plugins/kwin-xcb/lib/dde-kwin.pc.in
index 9b1d813..1179761 100644
--- a/plugins/kwin-xcb/lib/dde-kwin.pc.in
+++ b/plugins/kwin-xcb/lib/dde-kwin.pc.in
@@ -1,13 +1,13 @@
-prefix=${CMAKE_INSTALL_PREFIX}
-exec_prefix=${CMAKE_INSTALL_PREFIX}
-libdir=${CMAKE_INSTALL_PREFIX}/${CMAKE_INSTALL_LIBDIR}
-includedir=${INCLUDE_OUTPUT_PATH}
+prefix=@CMAKE_INSTALL_PREFIX@
+exec_prefix=${prefix}
+libdir=${prefix}/lib
+includedir=@INCLUDE_OUTPUT_PATH@
-Name: ${PROJECT_NAME}
+Name: @PROJECT_NAME@
Description: DDE KWin plugin library
-Version: ${PROJECT_VERSION}
-Libs: -l${PROJECT_NAME}
-Libs.private: -L/usr/X11R6/lib64 -lQt5X11Extras -lKF5WindowSystem -lQt5Widgets -lQt5Gui -lKF5ConfigCore -lKF5CoreAddons -lQt5Core -lGL -lpthread
-Cflags: -I${INCLUDE_OUTPUT_PATH}
+Version: @PROJECT_VERSION@
+Libs: -l$@PROJECT_NAME@
+Libs.private: -L/usr/X11R6/lib64 -lQt5X11Extras -lKF5WindowSystem -lQt5Widgets -lQt5Gui -lKF5ConfigCore -lKF5CoreAddons -lQt5Core -lGL -lpthread
+Cflags: -I@INCLUDE_OUTPUT_PATH@
--
2.23.0

View File

@ -0,0 +1,140 @@
{ stdenv
, mkDerivation
, pkgconfig
, fetchFromGitHub
, deepin
, cmake
, extra-cmake-modules
, qtbase
, libxcb
, kglobalaccel
, kwindowsystem
, kcoreaddons
, kwin
, dtkcore
, gsettings-qt
, fontconfig
, deepin-desktop-schemas
, glib
, libXrender
, mtdev
, qttools
, deepin-gettext-tools
, kwayland
, qtx11extras
, qtquickcontrols2
, epoxy
, qt5integration
, dde-session-ui
, dbus
, wrapGAppsHook
}:
mkDerivation rec {
pname = "dde-kwin";
version = "5.0.0";
src = fetchFromGitHub {
owner = "linuxdeepin";
repo = pname;
rev = version;
sha256 = "0bvkx9h5ygj46a0j76kfyq3gvk6zn4fx6clhrmcr40hbi2k33cbl";
};
nativeBuildInputs = [
cmake
deepin-gettext-tools
deepin.setupHook
extra-cmake-modules
pkgconfig
wrapGAppsHook
];
buildInputs = [
deepin-desktop-schemas
dtkcore
epoxy
fontconfig
glib
gsettings-qt
kcoreaddons
kglobalaccel
kwayland
kwin
kwindowsystem
libXrender
libxcb
mtdev
qtbase
qtquickcontrols2
qttools
qtx11extras
qt5integration
];
# Need to add kwayland around:
# * https://github.com/linuxdeepin/dde-kwin/blob/5226bb984c844129f9fa589da56e77decb7b39a1/plugins/kwineffects/blur/CMakeLists.txt#L14
NIX_CFLAGS_COMPILE = "-I${kwayland.dev}/include/KF5";
cmakeFlags = [
"-DKWIN_VERSION=${(builtins.parseDrvName kwin.name).version}"
];
patches = [
./0001-dde-kwin.pc-make-paths-relative.patch
./fix-paths.patch
];
postPatch = ''
searchHardCodedPaths
patchShebangs translate_ts2desktop.sh \
translate_generation.sh \
translate_desktop2ts.sh \
plugins/kwin-xcb/plugin/translate_generation.sh
fixPath ${deepin-gettext-tools} /usr/bin/deepin-desktop-ts-convert translate_desktop2ts.sh translate_ts2desktop.sh
fixPath $out /etc/xdg configures/CMakeLists.txt deepin-wm-dbus/deepinwmfaker.cpp
# TODO: Need environmental patch
fixPath /run/current-system/sw /usr/lib plugins/kwin-xcb/plugin/main.cpp
substituteInPlace configures/kwin-wm-multitaskingview.desktop \
--replace "dbus-send" "${dbus}/bin/dbus-send"
fixPath ${dde-session-ui} /usr/lib/deepin-daemon/dde-warning-dialog deepin-wm-dbus/deepinwmfaker.cpp
# Correct qt plugin installation path to be within dde-kwin prefix.
substituteInPlace CMakeLists.txt \
--subst-var-by plugin_path "$out/$qtPluginPrefix"
'';
postInstall = ''
# Correct invalid path in .pc
substituteInPlace $out/lib/pkgconfig/dde-kwin.pc \
--replace "-L/usr/X11R6/lib64" ""
chmod +x $out/bin/kwin_no_scale
'';
dontWrapQtApps = true;
preFixup = ''
gappsWrapperArgs+=(
"''${qtWrapperArgs[@]}"
)
'';
enableParallelBuilding = true;
passthru.updateScript = deepin.updateScript { name = "${pname}-${version}"; };
meta = with stdenv.lib; {
description = "KWin configuration for Deepin Desktop Environment";
homepage = "https://github.com/linuxdeepin/dde-kwin";
license = licenses.gpl3;
platforms = platforms.linux;
maintainers = with maintainers; [ romildo worldofpeace ];
};
}

View File

@ -0,0 +1,16 @@
diff --git a/CMakeLists.txt b/CMakeLists.txt
index feef49d..ecb7ed2 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -26,9 +26,9 @@ macro(query_qmake args output)
endif()
endmacro()
-query_qmake("QT_INSTALL_PLUGINS" QT_INSTALL_PLUGINS)
+set(QT_INSTALL_PLUGINS @plugin_path@)
-set(PLUGIN_INSTALL_PATH ${QT_INSTALL_PLUGINS}/platforms)
+set(PLUGIN_INSTALL_PATH @plugin_path@/platforms)
# Find includes in corresponding build directories
set(CMAKE_INCLUDE_CURRENT_DIR ON)
# Instruct CMake to run moc automatically when needed

View File

@ -1,65 +0,0 @@
{ stdenv, fetchFromGitHub, pkgconfig, intltool, libtool, gnome3, glib,
gtk3, libgtop, bamf, json-glib, libcanberra-gtk3, libxkbcommon,
libstartup_notification, deepin-wallpapers, deepin-desktop-schemas,
deepin, wrapGAppsHook }:
stdenv.mkDerivation rec {
pname = "deepin-metacity";
version = "3.22.24";
src = fetchFromGitHub {
owner = "linuxdeepin";
repo = pname;
rev = version;
sha256 = "1im0wz1zlxiag4kpp5d4hv0aa0ybr4bizarr3903hrqv0lp46hyx";
};
nativeBuildInputs = [
pkgconfig
intltool
libtool
glib.dev
gnome3.gnome-common
wrapGAppsHook
];
buildInputs = [
gnome3.dconf
gtk3
libgtop
gnome3.zenity
bamf
json-glib
libcanberra-gtk3
libstartup_notification
libxkbcommon
deepin-wallpapers
deepin-desktop-schemas
];
postPatch = ''
sed -i src/ui/deepin-background-cache.c \
-e 's;/usr/share/backgrounds/default_background.jpg;${deepin-wallpapers}/share/backgrounds/deepin/desktop.jpg;'
'';
NIX_CFLAGS_COMPILE = "-I${glib.dev}/include/gio-unix-2.0";
configureFlags = [ "--disable-themes-documentation" ];
preConfigure = ''
HOME=$TMP
NOCONFIGURE=1 ./autogen.sh
'';
enableParallelBuilding = true;
passthru.updateScript = deepin.updateScript { inherit ;name = "${pname}-${version}"; };
meta = with stdenv.lib; {
description = "2D window manager for Deepin";
homepage = https://github.com/linuxdeepin/deepin-metacity;
license = licenses.gpl3;
platforms = platforms.linux;
maintainers = with maintainers; [ romildo ];
};
}

View File

@ -1,41 +0,0 @@
From 8eeb4febcae517080d6638f8953e02335df79f01 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Jos=C3=A9=20Romildo=20Malaquias?= <malaquias@gmail.com>
Date: Sat, 20 Apr 2019 00:28:47 -0300
Subject: [PATCH] Get plugins dir from environment variable
---
src/compositor/meta-plugin-manager.c | 12 ++++++++++--
1 file changed, 10 insertions(+), 2 deletions(-)
diff --git a/src/compositor/meta-plugin-manager.c b/src/compositor/meta-plugin-manager.c
index ac5716db..d000100b 100644
--- a/src/compositor/meta-plugin-manager.c
+++ b/src/compositor/meta-plugin-manager.c
@@ -56,14 +56,22 @@ meta_plugin_manager_set_plugin_type (GType gtype)
void
meta_plugin_manager_load (const gchar *plugin_name)
{
- const gchar *dpath = MUTTER_PLUGIN_DIR "/";
+ const gchar *env_var;
+ const gchar *dpath;
gchar *path;
MetaModule *module;
+ env_var = g_getenv ("DEEPIN_MUTTER_PLUGINS_DIR");
+ g_debug ("$DEEPIN_MUTTER_PLUGINS_DIR: %s\n", env_var);
+
+ dpath = env_var == NULL || strlen (env_var) == 0 ? MUTTER_PLUGIN_DIR : env_var;
+ g_debug ("dpath: %s\n", dpath);
+
if (g_path_is_absolute (plugin_name))
path = g_strdup (plugin_name);
else
- path = g_strconcat (dpath, plugin_name, ".so", NULL);
+ path = g_strconcat (dpath, "/", plugin_name, ".so", NULL);
+ g_debug ("path: %s\n", path);
module = g_object_new (META_TYPE_MODULE, "path", path, NULL);
if (!module || !g_type_module_use (G_TYPE_MODULE (module)))
--
2.21.0

View File

@ -1,79 +0,0 @@
{ stdenv, fetchFromGitHub, pkgconfig, intltool, libtool, gnome3, gtk3,
xorg, libcanberra-gtk3, upower, xkeyboard_config, libxkbcommon,
libstartup_notification, libinput, libgudev, cogl, clutter, systemd,
gsettings-desktop-schemas, deepin-desktop-schemas, wrapGAppsHook,
deepin }:
stdenv.mkDerivation rec {
pname = "deepin-mutter";
version = "3.20.38";
src = fetchFromGitHub {
owner = "linuxdeepin";
repo = pname;
rev = version;
sha256 = "1aq7606sgn2c6n8wfgxdryw3lprc4va0zjc0r65798w5656fdi31";
};
nativeBuildInputs = [
pkgconfig
intltool
libtool
gnome3.gnome-common
wrapGAppsHook
deepin.setupHook
];
buildInputs = [
clutter
cogl
deepin-desktop-schemas
gnome3.gnome-desktop
gnome3.zenity
gsettings-desktop-schemas
gtk3
libcanberra-gtk3
libgudev
libinput
libstartup_notification
libxkbcommon
systemd
upower
xkeyboard_config
xorg.libxkbfile
];
patches = [
./deepin-mutter.plugins-dir.patch
];
postPatch = ''
searchHardCodedPaths # debugging
sed -i -e "s,Exec=deepin-mutter,Exec=$out/bin/deepin-mutter," data/mutter.desktop.in
'';
configureFlags = [
"--enable-native-backend"
"--enable-compile-warnings=minimum"
];
preConfigure = ''
NOCONFIGURE=1 ./autogen.sh
'';
postFixup = ''
searchHardCodedPaths $out # debugging
'';
enableParallelBuilding = true;
passthru.updateScript = deepin.updateScript { inherit ;name = "${pname}-${version}"; };
meta = with stdenv.lib; {
description = "Base window manager for deepin, fork of gnome mutter";
homepage = https://github.com/linuxdeepin/deepin-mutter;
license = licenses.gpl3;
platforms = platforms.linux;
maintainers = with maintainers; [ romildo ];
};
}

View File

@ -1,75 +0,0 @@
{ stdenv, fetchFromGitHub, pkgconfig, intltool, libtool, vala, gnome3,
dbus, bamf, clutter-gtk, pantheon, libgee, libcanberra-gtk3,
libwnck3, deepin-menu, deepin-mutter, deepin-wallpapers,
deepin-desktop-schemas, wrapGAppsHook, deepin }:
stdenv.mkDerivation rec {
pname = "deepin-wm";
version = "1.9.38";
src = fetchFromGitHub {
owner = "linuxdeepin";
repo = pname;
rev = version;
sha256 = "1qhdnv4x78f0gkr94q0j8x029fk9ji4m9jdipgrdm83pnahib80g";
};
nativeBuildInputs = [
pkgconfig
intltool
libtool
vala
gnome3.gnome-common
wrapGAppsHook
deepin.setupHook
];
buildInputs = [
bamf
clutter-gtk
dbus
deepin-desktop-schemas
deepin-menu
deepin-mutter
deepin-wallpapers
gnome3.gnome-desktop
libcanberra-gtk3
libgee
libwnck3
pantheon.granite
];
postPatch = ''
searchHardCodedPaths # debugging
# fix background path
fixPath ${deepin-wallpapers} /usr/share/backgrounds src/Background/BackgroundSource.vala
sed -i 's|default_background.jpg|deepin/desktop.jpg|' src/Background/BackgroundSource.vala
# fix executable paths in desktop files
sed -i -e "s,Exec=dbus-send,Exec=${dbus}/bin/dbus-send," data/gala-multitaskingview.desktop.in
sed -i -e "s,Exec=deepin-wm,Exec=$out/bin/deepin-wm," data/gala.desktop
'';
NIX_CFLAGS_COMPILE = "-DWNCK_I_KNOW_THIS_IS_UNSTABLE";
preConfigure = ''
NOCONFIGURE=1 ./autogen.sh
'';
postFixup = ''
searchHardCodedPaths $out # debugging
'';
enableParallelBuilding = true;
passthru.updateScript = deepin.updateScript { inherit ;name = "${pname}-${version}"; };
meta = with stdenv.lib; {
description = "Deepin Window Manager";
homepage = https://github.com/linuxdeepin/deepin-wm;
license = licenses.gpl3;
platforms = platforms.linux;
maintainers = with maintainers; [ romildo ];
};
}

View File

@ -13,6 +13,7 @@ let
dde-daemon = callPackage ./dde-daemon { };
dde-dock = callPackage ./dde-dock { };
dde-file-manager = callPackage ./dde-file-manager { };
dde-kwin = callPackage ./dde-kwin { };
dde-launcher = callPackage ./dde-launcher { };
dde-network-utils = callPackage ./dde-network-utils { };
dde-polkit-agent = callPackage ./dde-polkit-agent { };
@ -27,9 +28,7 @@ let
deepin-icon-theme = callPackage ./deepin-icon-theme { };
deepin-image-viewer = callPackage ./deepin-image-viewer { };
deepin-menu = callPackage ./deepin-menu { };
deepin-metacity = callPackage ./deepin-metacity { };
deepin-movie-reborn = callPackage ./deepin-movie-reborn { };
deepin-mutter = callPackage ./deepin-mutter { };
deepin-screenshot = callPackage ./deepin-screenshot { };
deepin-shortcut-viewer = callPackage ./deepin-shortcut-viewer { };
deepin-sound-theme = callPackage ./deepin-sound-theme { };
@ -38,9 +37,6 @@ let
};
deepin-turbo = callPackage ./deepin-turbo { };
deepin-wallpapers = callPackage ./deepin-wallpapers { };
deepin-wm = callPackage ./deepin-wm {
vala = pkgs.vala_0_40;
};
dpa-ext-gnomekeyring = callPackage ./dpa-ext-gnomekeyring { };
dtkcore = callPackage ./dtkcore { };
dtkwidget = callPackage ./dtkwidget { };

View File

@ -1,7 +1,27 @@
{ stdenv, fetchurl, pkgconfig, meson, gettext, gobject-introspection, glib
, clutter-gtk, clutter-gst, gnome3, gtksourceview4, gjs
, webkitgtk, libmusicbrainz5, icu, wrapGAppsHook, gst_all_1
, gdk-pixbuf, librsvg, gtk3, harfbuzz, ninja, epoxy }:
{ stdenv
, fetchurl
, pkgconfig
, meson
, gettext
, gobject-introspection
, glib
, clutter-gtk
, clutter-gst
, gnome3
, gtksourceview4
, gjs
, webkitgtk
, libmusicbrainz5
, icu
, wrapGAppsHook
, gst_all_1
, gdk-pixbuf
, librsvg
, gtk3
, harfbuzz
, ninja
, epoxy
}:
stdenv.mkDerivation rec {
pname = "sushi";
@ -13,15 +33,42 @@ stdenv.mkDerivation rec {
};
nativeBuildInputs = [
pkgconfig meson ninja gettext gobject-introspection wrapGAppsHook
pkgconfig
meson
ninja
gettext
gobject-introspection
wrapGAppsHook
];
buildInputs = [
glib gtk3 gnome3.evince icu harfbuzz
clutter-gtk clutter-gst gjs gtksourceview4 gdk-pixbuf
librsvg libmusicbrainz5 webkitgtk epoxy
gst_all_1.gstreamer gst_all_1.gst-plugins-base gst_all_1.gst-plugins-good
glib
gtk3
gnome3.evince
icu
harfbuzz
clutter-gtk
clutter-gst
gjs
gtksourceview4
gdk-pixbuf
librsvg
libmusicbrainz5
webkitgtk
epoxy
gst_all_1.gstreamer
gst_all_1.gst-plugins-base
gst_all_1.gst-plugins-good
];
# See https://github.com/NixOS/nixpkgs/issues/31168
postInstall = ''
for file in $out/libexec/org.gnome.NautilusPreviewer
do
sed -e $"2iimports.package._findEffectiveEntryPointName = () => \'$(basename $file)\' " \
-i $file
done
'';
passthru = {
updateScript = gnome3.updateScript {
packageName = "sushi";

View File

@ -3,6 +3,7 @@
, fetchurl
, pkgconfig
, expat
, enableSystemd ? stdenv.isLinux && !stdenv.hostPlatform.isMusl
, systemd
, libX11 ? null
, libICE ? null
@ -15,6 +16,8 @@ assert
x11Support ->
libX11 != null && libICE != null && libSM != null;
assert enableSystemd -> systemd != null;
stdenv.mkDerivation rec {
pname = "dbus";
version = "1.12.16";
@ -50,11 +53,12 @@ stdenv.mkDerivation rec {
expat
];
buildInputs = lib.optionals x11Support [
libX11
libICE
libSM
] ++ lib.optional stdenv.isLinux systemd;
buildInputs =
lib.optionals x11Support [
libX11
libICE
libSM
] ++ lib.optional enableSystemd systemd;
# ToDo: optional selinux?
configureFlags = [
@ -101,6 +105,7 @@ stdenv.mkDerivation rec {
description = "Simple interprocess messaging system";
homepage = http://www.freedesktop.org/wiki/Software/dbus/;
license = licenses.gpl2Plus; # most is also under AFL-2.1
maintainers = with maintainers; [ worldofpeace ];
platforms = platforms.unix;
};
}

View File

@ -202,7 +202,7 @@ stdenv.mkDerivation rec {
description = "C library of programming buildings blocks";
homepage = https://www.gtk.org/;
license = licenses.lgpl21Plus;
maintainers = with maintainers; [ lovek323 raskin ];
maintainers = with maintainers; [ lovek323 raskin worldofpeace ];
platforms = platforms.unix;
longDescription = ''

View File

@ -1,42 +1,94 @@
{ stdenv, fetchurl, pkgconfig, vala, glib, libxslt, gtk3, wrapGAppsHook
, webkitgtk, json-glib, librest, libsecret, gtk-doc, gobject-introspection
, gettext, icu, glib-networking
, libsoup, docbook_xsl, docbook_xml_dtd_412, gnome3, gcr, kerberos
{ stdenv
, fetchFromGitLab
, pkgconfig
, vala
, glib
, meson
, ninja
, python3
, libxslt
, gtk3
, webkitgtk
, json-glib
, librest
, libsecret
, gtk-doc
, gobject-introspection
, gettext
, icu
, glib-networking
, libsoup
, docbook_xsl
, docbook_xml_dtd_412
, gnome3
, gcr
, kerberos
, gvfs
, dbus
, wrapGAppsHook
}:
let
stdenv.mkDerivation rec {
pname = "gnome-online-accounts";
version = "3.34.0";
in stdenv.mkDerivation rec {
name = "${pname}-${version}";
version = "3.34.1";
src = fetchurl {
url = "mirror://gnome/sources/${pname}/${stdenv.lib.versions.majorMinor version}/${name}.tar.xz";
sha256 = "0mvz6wrw03zyp5sm46znkipncagb257xam29mfi06ixmxvjbqky4";
# https://gitlab.gnome.org/GNOME/gnome-online-accounts/issues/87
src = fetchFromGitLab {
domain = "gitlab.gnome.org";
owner = "GNOME";
repo = "gnome-online-accounts";
rev = version;
sha256 = "0ry06qw068rqn4y42953kwl6fkxpgfya58y87cd3zink6gj7q0fm";
};
outputs = [ "out" "man" "dev" "devdoc" ];
configureFlags = [
"--enable-media-server"
"--enable-kerberos"
"--enable-lastfm"
"--enable-todoist"
"--enable-gtk-doc"
"--enable-documentation"
mesonFlags = [
"-Dfedora=false" # not useful in NixOS or for NixOS users.
"-Dgtk_doc=true"
"-Dlastfm=true"
"-Dman=true"
"-Dmedia_server=true"
];
enableParallelBuilding = true;
nativeBuildInputs = [
pkgconfig gobject-introspection vala gettext wrapGAppsHook
libxslt docbook_xsl docbook_xml_dtd_412 gtk-doc
dbus # used for checks and pkgconfig to install dbus service/s
docbook_xml_dtd_412
docbook_xsl
gettext
gobject-introspection
gtk-doc
libxslt
meson
ninja
pkgconfig
python3
vala
wrapGAppsHook
];
buildInputs = [
glib gtk3 webkitgtk json-glib librest libsecret glib-networking icu libsoup
gcr kerberos
gcr
glib
glib-networking
gtk3
gvfs # OwnCloud, Google Drive
icu
json-glib
kerberos
librest
libsecret
libsoup
webkitgtk
];
NIX_CFLAGS_COMPILE = "-I${glib.dev}/include/gio-unix-2.0";
postPatch = ''
chmod +x meson_post_install.py
patchShebangs meson_post_install.py
'';
passthru = {
updateScript = gnome3.updateScript {
packageName = pname;
@ -45,7 +97,10 @@ in stdenv.mkDerivation rec {
};
meta = with stdenv.lib; {
homepage = "https://wiki.gnome.org/Projects/GnomeOnlineAccounts";
description = "Single sign-on framework for GNOME";
platforms = platforms.linux;
license = licenses.lgpl2Plus;
maintainers = gnome3.maintainers;
};
}

View File

@ -202,7 +202,7 @@ stdenv.mkDerivation rec {
'';
homepage = https://www.gtk.org/;
license = licenses.lgpl2Plus;
maintainers = with maintainers; [ raskin vcunat lethalman ];
maintainers = with maintainers; [ raskin vcunat lethalman worldofpeace ];
platforms = platforms.all;
};
}

View File

@ -1,7 +1,8 @@
{ stdenv, fetchurl, cmake, alsaLib, atk, cairo, cups, dbus, expat, fontconfig
, GConf, gdk-pixbuf, glib, gtk2, libX11, libxcb, libXcomposite, libXcursor
, libXdamage, libXext, libXfixes, libXi, libXrandr, libXrender, libXScrnSaver
, libXtst, nspr, nss, pango, libpulseaudio, systemd }:
, libXtst, nspr, nss, pango, libpulseaudio, systemd, at-spi2-atk, at-spi2-core
}:
let
libPath =
@ -9,20 +10,24 @@ let
alsaLib atk cairo cups dbus expat fontconfig GConf gdk-pixbuf glib gtk2
libX11 libxcb libXcomposite libXcursor libXdamage libXext libXfixes libXi
libXrandr libXrender libXScrnSaver libXtst nspr nss pango libpulseaudio
systemd
systemd at-spi2-core at-spi2-atk
];
in
stdenv.mkDerivation rec {
pname = "cef-binary";
version = "3.3497.1833.g13f506f";
version = "74.1.14-g50c3c5c";
src = fetchurl {
url = "http://opensource.spotify.com/cefbuilds/cef_binary_${version}_linux64.tar.bz2";
sha256 = "02v22yx1ga2yxagjblzkfw0ax7zkrdpc959l1a15m8nah3y7xf9p";
name = "cef_binary_74.1.14+g50c3c5c+chromium-74.0.3729.131_linux64_minimal.tar.bz2";
url = "http://opensource.spotify.com/cefbuilds/cef_binary_74.1.19%2Bgb62bacf%2Bchromium-74.0.3729.157_linux64_minimal.tar.bz2";
sha256 = "0v3540kq4y68gq7mb4d8a9issm363lm5ngrd6d96pcc7vckkw4wn";
};
nativeBuildInputs = [ cmake ];
makeFlags = "libcef_dll_wrapper";
dontStrip = true;
dontPatchELF = true;
installPhase = ''
mkdir -p $out/lib/ $out/share/cef/
cp libcef_dll_wrapper/libcef_dll_wrapper.a $out/lib/
@ -39,6 +44,5 @@ stdenv.mkDerivation rec {
maintainers = with maintainers; [ puffnfresh ];
license = licenses.bsd3;
platforms = with platforms; linux;
broken = true;
};
}

View File

@ -0,0 +1,31 @@
{ stdenv, fetchFromGitHub
, cmake, protobuf, protobufc
, libsodium, openssl
}:
stdenv.mkDerivation rec {
pname = "libnats";
version = "2.1.0";
src = fetchFromGitHub {
owner = "nats-io";
repo = "nats.c";
rev = "refs/tags/v${version}";
sha256 = "16a0f0gvrmyrqvmh6vinqny3qhm6wyzw5ijnn3r82b1gqlpws0fz";
};
nativeBuildInputs = [ cmake ];
buildInputs = [ libsodium openssl protobuf protobufc ];
separateDebugInfo = true;
enableParallelBuilding = true;
outputs = [ "out" "dev" ];
meta = with stdenv.lib; {
description = "C API for the NATS messaging system";
homepage = "https://github.com/nats-io/nats.c";
license = licenses.asl20;
platforms = platforms.unix;
maintainers = with maintainers; [ thoughtpolice ];
};
}

View File

@ -4,12 +4,12 @@
stdenv.mkDerivation rec {
pname = "liburing";
version = "0.2pre252_${builtins.substring 0 8 src.rev}";
version = "0.2";
src = fetchgit {
url = "http://git.kernel.dk/liburing";
rev = "a9bb08db3f8795eb58239d5dbb888e9c1d424011";
sha256 = "0gv06fcgqhfkqgiqzjb4qzpxh3h595ypw01a0kmhqnmsnvmb624n";
url = "http://git.kernel.dk/${pname}";
rev = "refs/tags/${pname}-${version}";
sha256 = "0dxq7qjrwndgavrrc6y2wg54ia3y5wkmcyhpdk4l5pvh7hw6kpdz";
};
separateDebugInfo = true;

View File

@ -1,4 +1,14 @@
{ stdenv, fetchurl, pkgconfig, systemd ? null, libobjc, IOKit, withStatic ? false }:
{ stdenv
, fetchurl
, pkgconfig
, enableSystemd ? stdenv.isLinux && !stdenv.hostPlatform.isMusl
, systemd ? null
, libobjc
, IOKit
, withStatic ? false
}:
assert enableSystemd -> systemd != null;
stdenv.mkDerivation (rec {
pname = "libusb";
@ -13,12 +23,17 @@ stdenv.mkDerivation (rec {
nativeBuildInputs = [ pkgconfig ];
propagatedBuildInputs =
stdenv.lib.optional stdenv.isLinux systemd ++
stdenv.lib.optional enableSystemd systemd ++
stdenv.lib.optionals stdenv.isDarwin [ libobjc IOKit ];
NIX_LDFLAGS = stdenv.lib.optionalString stdenv.isLinux "-lgcc_s";
preFixup = stdenv.lib.optionalString stdenv.isLinux ''
configureFlags =
# We use `isLinux` here only to avoid mass rebuilds for Darwin, where
# disabling udev happens automatically. Remove `isLinux` at next big change!
stdenv.lib.optional (stdenv.isLinux && !enableSystemd) "--disable-udev";
preFixup = stdenv.lib.optionalString enableSystemd ''
sed 's,-ludev,-L${systemd.lib}/lib -ludev,' -i $out/lib/libusb-1.0.la
'';

View File

@ -4,8 +4,8 @@ with skawarePackages;
buildPackage {
pname = "nsss";
version = "0.0.1.1";
sha256 = "14y1vl7n8vd5fh9bwiwwxxslisli8pz3a2f1sfv12l0p8ngpgm57";
version = "0.0.2.1";
sha256 = "1arzl4492wv42rvv6xs8h5d3qpy9nwxv5l84inzabs6s9f9nlxax";
description = "An implementation of a subset of the pwd.h, group.h and shadow.h family of functions.";

View File

@ -2,13 +2,13 @@
stdenv.mkDerivation rec {
pname = "nvidia-texture-tools";
version = "2.1.0";
version = "unstable-2019-10-27";
src = fetchFromGitHub {
owner = "castano";
repo = "nvidia-texture-tools";
rev = version;
sha256 = "0p8ja0k323nkgm07z0qlslg6743vimy9rf3wad2968az0vwzjjyx";
rev = "a131e4c6b0b7c9c73ccc3c9e6f1c7e165be86bcc";
sha256 = "1qzyr3ib5dpxyq1y33lq02qv4cww075sm9bm4f651d34q5x38sk3";
};
nativeBuildInputs = [ cmake ];
@ -37,5 +37,6 @@ stdenv.mkDerivation rec {
homepage = https://github.com/castano/nvidia-texture-tools;
license = licenses.mit;
platforms = platforms.unix;
broken = stdenv.isAarch64;
};
}

View File

@ -96,6 +96,6 @@ stdenv.mkDerivation rec {
description = "A toolkit for defining and handling the policy that allows unprivileged processes to speak to privileged processes";
license = licenses.gpl2;
platforms = platforms.unix;
maintainers = [ ];
maintainers = with maintainers; [ worldofpeace ];
};
}

View File

@ -3,11 +3,25 @@
For details on using mkl as a blas provider for python packages such as numpy,
numexpr, scipy, etc., see the Python section of the NixPkgs manual.
*/
stdenvNoCC.mkDerivation rec {
name = "mkl-${version}";
version = "${date}.${rel}";
date = "2019.3";
rel = "199";
let
# Release notes and download URLs are here:
# https://registrationcenter.intel.com/en/products/
version = "${year}.${spot}.${rel}";
year = "2019";
# Darwin is pinned to 2019.3 because the DMG does not unpack; see here for details:
# https://github.com/matthewbauer/undmg/issues/4
spot = if stdenvNoCC.isDarwin then "3" else "5";
rel = if stdenvNoCC.isDarwin then "199" else "281";
rpm-ver = "${year}.${spot}-${rel}-${year}.${spot}-${rel}";
# Intel openmp uses its own versioning, but shares the spot release patch.
openmp-ver = "19.0.${spot}-${rel}-19.0.${spot}-${rel}";
in stdenvNoCC.mkDerivation {
pname = "mkl";
inherit version;
src = if stdenvNoCC.isDarwin
then
@ -17,27 +31,25 @@ stdenvNoCC.mkDerivation rec {
})
else
(fetchurl {
url = "http://registrationcenter-download.intel.com/akdlm/irc_nas/tec/15275/l_mkl_${version}.tgz";
sha256 = "13rb2v2872jmvzcqm4fqsvhry0j2r5cn4lqql4wpqbl1yia2pph6";
url = "https://registrationcenter-download.intel.com/akdlm/irc_nas/tec/15816/l_mkl_${version}.tgz";
sha256 = "0zkk4rrq7g44acxaxhpd2053r66w169mww6917an0lxhd52fm5cr";
});
nativeBuildInputs = if stdenvNoCC.isDarwin
then
[ undmg
darwin.cctools
]
[ undmg darwin.cctools ]
else
[ rpmextract ];
buildPhase = if stdenvNoCC.isDarwin then ''
for f in Contents/Resources/pkg/*.tgz; do
tar xzvf $f
done
for f in Contents/Resources/pkg/*.tgz; do
tar xzvf $f
done
'' else ''
rpmextract rpm/intel-mkl-common-c-${date}-${rel}-${date}-${rel}.noarch.rpm
rpmextract rpm/intel-mkl-core-${date}-${rel}-${date}-${rel}.x86_64.rpm
rpmextract rpm/intel-mkl-core-rt-${date}-${rel}-${date}-${rel}.x86_64.rpm
rpmextract rpm/intel-openmp-19.0.3-${rel}-19.0.3-${rel}.x86_64.rpm
rpmextract rpm/intel-mkl-common-c-${rpm-ver}.noarch.rpm
rpmextract rpm/intel-mkl-core-${rpm-ver}.x86_64.rpm
rpmextract rpm/intel-mkl-core-rt-${rpm-ver}.x86_64.rpm
rpmextract rpm/intel-openmp-${openmp-ver}.x86_64.rpm
'';
installPhase = ''
@ -82,12 +94,12 @@ stdenvNoCC.mkDerivation rec {
# larger updated load commands do not fit. Use install_name_tool
# explicitly and ignore the error.
postFixup = stdenvNoCC.lib.optionalString stdenvNoCC.isDarwin ''
for f in $out/lib/*.dylib; do
install_name_tool -id $out/lib/$(basename $f) $f || true
done
install_name_tool -change @rpath/libiomp5.dylib $out/lib/libiomp5.dylib $out/lib/libmkl_intel_thread.dylib
install_name_tool -change @rpath/libtbb.dylib $out/lib/libtbb.dylib $out/lib/libmkl_tbb_thread.dylib
install_name_tool -change @rpath/libtbbmalloc.dylib $out/lib/libtbbmalloc.dylib $out/lib/libtbbmalloc_proxy.dylib
for f in $out/lib/*.dylib; do
install_name_tool -id $out/lib/$(basename $f) $f || true
done
install_name_tool -change @rpath/libiomp5.dylib $out/lib/libiomp5.dylib $out/lib/libmkl_intel_thread.dylib
install_name_tool -change @rpath/libtbb.dylib $out/lib/libtbb.dylib $out/lib/libmkl_tbb_thread.dylib
install_name_tool -change @rpath/libtbbmalloc.dylib $out/lib/libtbbmalloc.dylib $out/lib/libtbbmalloc_proxy.dylib
'';
# Per license agreement, do not modify the binary
@ -105,6 +117,6 @@ stdenvNoCC.mkDerivation rec {
homepage = https://software.intel.com/en-us/mkl;
license = licenses.issl;
platforms = [ "x86_64-linux" "x86_64-darwin" ];
maintainers = [ maintainers.bhipple ];
maintainers = with maintainers; [ bhipple ];
};
}

View File

@ -4,8 +4,8 @@ with skawarePackages;
buildPackage {
pname = "skalibs";
version = "2.8.1.0";
sha256 = "1fk6n402ywn4kpy6ng7sfnnqcg0mp6wq2hrv8sv3kxd0nh3na723";
version = "2.9.1.0";
sha256 = "19c6s3f7vxi96l2yqzjk9x9i4xkfg4fdzxhn1jg6bfb2qjph9cnk";
description = "A set of general-purpose C programming libraries";

View File

@ -4,8 +4,8 @@ with skawarePackages;
buildPackage {
pname = "utmps";
version = "0.0.2.1";
sha256 = "1q90mcn50irhhrzl3h9bvhsn7hac0zgg67b6hfhmc5yvh4c8wnr4";
version = "0.0.3.1";
sha256 = "1h4hgjdrai51qkalgcx2ff60drpnw0ich66z90p8wk74am0vgc0h";
description = "A secure utmpx and wtmp implementation";

View File

@ -1,5 +1,7 @@
{ stdenv
, lib
, fetchurl
, fetchpatch
, gettext
, pkgconfig
, meson
@ -58,6 +60,17 @@ stdenv.mkDerivation rec {
pango
];
patches =
# VTE needs a small patch to work with musl:
# https://gitlab.gnome.org/GNOME/vte/issues/72
lib.optional
stdenv.hostPlatform.isMusl
(fetchpatch {
name = "0001-Add-W_EXITCODE-macro-for-non-glibc-systems.patch";
url = "https://gitlab.gnome.org/GNOME/vte/uploads/c334f767f5d605e0f30ecaa2a0e4d226/0001-Add-W_EXITCODE-macro-for-non-glibc-systems.patch";
sha256 = "1ii9db9i5l3fy2alxz7bjfsgjs3lappnlx339dvxbi2141zknf5r";
});
postPatch = ''
patchShebangs perf/*
patchShebangs src/box_drawing_generate.sh
@ -75,7 +88,7 @@ stdenv.mkDerivation rec {
the system's terminfo database.
'';
license = licenses.lgpl2;
maintainers = with maintainers; [ astsmtl antono lethalman ];
maintainers = with maintainers; [ astsmtl antono lethalman ] ++ gnome3.maintainers;
platforms = platforms.unix;
};
}

View File

@ -37,5 +37,5 @@ let
};
};
in {
xapian_1_4 = generic "1.4.12" "0z5c1y9vp519h2x2igjq39v6j615nppry0wasd0xn4hphgd3d2jg";
xapian_1_4 = generic "1.4.13" "0z0k8902bz2ckdggikj5yz11ik2n8krmdwzvpqv60phcm3zzzy4k";
}

View File

@ -1,14 +1,14 @@
diff -Naur xapian-core.old/tests/api_db.cc xapian-core.new/tests/api_db.cc
--- xapian-core.old/tests/api_db.cc
+++ xapian-core.new/tests/api_db.cc
@@ -998,6 +998,7 @@
@@ -1020,6 +1020,7 @@
// test for keepalives
DEFINE_TESTCASE(keepalive1, remote) {
+ SKIP_TEST("Fails in darwin nix build environment");
Xapian::Database db(get_remote_database("apitest_simpledata", 5000));
XFAIL_FOR_BACKEND("multi_glass_remoteprog_glass",
"Multi remote databases are currently buggy");
/* Test that keep-alives work */
diff -Naur xapian-core.old/tests/api_scalability.cc xapian-core.new/tests/api_scalability.cc
--- xapian-core.old/tests/api_scalability.cc
+++ xapian-core.new/tests/api_scalability.cc

View File

@ -29,6 +29,8 @@ stdenv.mkDerivation rec {
inherit (dune) installPhase;
passthru = { inherit hasC; };
meta = {
homepage = "https://github.com/mirage/checkseum";
description = "ADLER-32 and CRC32C Cyclic Redundancy Check";

View File

@ -1,28 +1,29 @@
{ stdenv, buildOcaml, fetchzip, libffi, pkgconfig, ncurses, integers }:
{ stdenv, fetchzip, ocaml, findlib, libffi, pkgconfig, ncurses, integers }:
buildOcaml {
name = "ctypes";
version = "0.13.1";
if !stdenv.lib.versionAtLeast ocaml.version "4.02"
then throw "ctypes is not available for OCaml ${ocaml.version}"
else
minimumSupportedOcamlVersion = "4";
stdenv.mkDerivation rec {
name = "ocaml${ocaml.version}-ctypes-${version}";
version = "0.15.1";
src = fetchzip {
url = "https://github.com/ocamllabs/ocaml-ctypes/archive/67e711ec891e087fbe1e0b4665aa525af4eaa409.tar.gz";
sha256 = "1z84s5znr3lj84rzv6m37xxj9h7fwx4qiiykx3djf52qgk1rb2xb";
url = "https://github.com/ocamllabs/ocaml-ctypes/archive/${version}.tar.gz";
sha256 = "0adas974bwinn8jidb6chljkpd70s041h2a969dicsj0xsg6wys6";
};
nativeBuildInputs = [ pkgconfig ];
buildInputs = [ ncurses ];
buildInputs = [ ocaml findlib ncurses ];
propagatedBuildInputs = [ integers libffi ];
hasSharedObjects = true;
buildPhase = ''
make XEN=false libffi.config ctypes-base ctypes-stubs
make XEN=false ctypes-foreign
'';
installPhase = ''
mkdir -p $out/lib/ocaml/${ocaml.version}/site-lib/stublibs
make install XEN=false
'';
@ -31,5 +32,6 @@ buildOcaml {
description = "Library for binding to C libraries using pure OCaml";
license = licenses.mit;
maintainers = [ maintainers.ericbmerritt ];
inherit (ocaml.meta) platforms;
};
}

View File

@ -1,30 +1,27 @@
{ stdenv, fetchFromGitHub, ocaml, findlib, ocamlbuild, topkg
{ lib, fetchurl, buildDunePackage
, checkseum, cmdliner
, alcotest, bos, camlzip, mmap, re
}:
if !stdenv.lib.versionAtLeast ocaml.version "4.03"
then throw "decompress is not available for OCaml ${ocaml.version}"
else
buildDunePackage rec {
version = "0.9.0";
pname = "decompress";
stdenv.mkDerivation rec {
version = "0.6";
name = "ocaml${ocaml.version}-decompress-${version}";
src = fetchFromGitHub {
owner = "mirage";
repo = "decompress";
rev = "v${version}";
sha256 = "0hfs5zrvimzvjwdg57vrxx9bb7irvlm07dk2yv3s5qhj30zimd08";
src = fetchurl {
url = "https://github.com/mirage/decompress/releases/download/v${version}/decompress-v${version}.tbz";
sha256 = "0fryhcvv96vfca51c7kqdn3n3canqsbbvfbi75ya6lca4lmpipbh";
};
buildInputs = [ ocaml findlib ocamlbuild topkg ];
inherit (topkg) buildPhase installPhase;
buildInputs = [ cmdliner ];
propagatedBuildInputs = [ checkseum ];
checkInputs = lib.optionals doCheck [ alcotest bos camlzip mmap re ];
doCheck = true;
meta = {
description = "Pure OCaml implementation of Zlib";
license = stdenv.lib.licenses.mit;
maintainers = [ stdenv.lib.maintainers.vbgl ];
inherit (src.meta) homepage;
inherit (ocaml.meta) platforms;
license = lib.licenses.mit;
maintainers = [ lib.maintainers.vbgl ];
homepage = "https://github.com/mirage/decompress";
broken = !checkseum.hasC;
};
}

View File

@ -0,0 +1,20 @@
{ lib, buildDunePackage, fetchurl, ocaml, alcotest, angstrom, ke }:
buildDunePackage rec {
pname = "encore";
version = "0.3";
src = fetchurl {
url = "https://github.com/mirage/encore/releases/download/v${version}/encore-v${version}.tbz";
sha256 = "05nv6yms5axsmq9cspr7884rz5kirj50izx3vdm89q4yl186qykl";
};
propagatedBuildInputs = [ angstrom ke ];
checkInputs = lib.optional doCheck alcotest;
doCheck = lib.versions.majorMinor ocaml.version != "4.07";
meta = {
homepage = "https://github.com/mirage/encore";
description = "Library to generate encoder/decoder which ensure isomorphism";
license = lib.licenses.mit;
maintainers = [ lib.maintainers.vbgl ];
};
}

View File

@ -1,27 +1,28 @@
{ stdenv, fetchFromGitHub, buildDunePackage
, astring, decompress, fmt, hex, logs, mstruct, ocaml_lwt, ocamlgraph, ocplib-endian, uri
, alcotest, mtime, nocrypto
{ lib, fetchFromGitHub, buildDunePackage
, alcotest, git, mtime, nocrypto
, angstrom, astring, cstruct, decompress, digestif, encore, duff, fmt
, fpath, hex, ke, logs, lru, ocaml_lwt, ocamlgraph, ocplib-endian, uri, rresult
}:
buildDunePackage rec {
pname = "git";
version = "1.11.5";
version = "2.1.0";
src = fetchFromGitHub {
owner = "mirage";
repo = "ocaml-git";
rev = version;
sha256 = "0r1bxpxjjnl9hh8xbabsxl7svzvd19hfy73a2y1m4kljmw64dpfh";
sha256 = "0v55zkwgml6i5hp0kzynbi58z6j15k3qgzg06b3h8pdbv5fwd1jp";
};
buildInputs = [ alcotest mtime nocrypto ];
propagatedBuildInputs = [ astring decompress fmt hex logs mstruct ocaml_lwt ocamlgraph ocplib-endian uri ];
propagatedBuildInputs = [ angstrom astring cstruct decompress digestif encore duff fmt fpath hex ke logs lru ocaml_lwt ocamlgraph ocplib-endian uri rresult ];
checkInputs = lib.optionals doCheck [ alcotest git mtime nocrypto ];
doCheck = true;
meta = {
description = "Git format and protocol in pure OCaml";
license = stdenv.lib.licenses.isc;
maintainers = [ stdenv.lib.maintainers.vbgl ];
license = lib.licenses.isc;
maintainers = [ lib.maintainers.vbgl ];
inherit (src.meta) homepage;
};
}

View File

@ -1,26 +1,27 @@
{ stdenv, fetchFromGitHub, which, ocaml, findlib, ocamlbuild, decompress }:
{ lib, fetchFromGitHub, fetchpatch, buildDunePackage, decompress }:
stdenv.mkDerivation rec {
version = "20171028";
name = "ocaml${ocaml.version}-imagelib-${version}";
buildDunePackage rec {
minimumOCamlVersion = "4.07";
version = "20191011";
pname = "imagelib";
src = fetchFromGitHub {
owner = "rlepigre";
repo = "ocaml-imagelib";
rev = "ocaml-imagelib_${version}";
sha256 = "1frkrgcrv4ybdmqcfxpfsywx0hm1arxgxp32n8kzky6qip1g0zxf";
rev = "03fed7733825cef7e0465163f398f6af810e2e75";
sha256 = "0h7vgyss42nhlfqpbdnb54nxq86rskqi2ilx8b87r0hi19hqx463";
};
buildInputs = [ which ocaml findlib ocamlbuild ];
patches = [ (fetchpatch {
url = "https://github.com/rlepigre/ocaml-imagelib/pull/24/commits/4704fd44adcda62e0d96ea5b1927071326aa6111.patch";
sha256 = "0ipjab1hfa2v2pnd8g1k3q2ia0plgiw7crm3fa4w2aqpzdyabkb9";
}) ];
propagatedBuildInputs = [ decompress ];
createFindlibDestdir = true;
meta = {
description = "Image formats such as PNG and PPM in OCaml";
license = stdenv.lib.licenses.lgpl3;
maintainers = [ stdenv.lib.maintainers.vbgl ];
license = lib.licenses.lgpl3;
maintainers = [ lib.maintainers.vbgl ];
inherit (src.meta) homepage;
inherit (ocaml.meta) platforms;
};
}

View File

@ -0,0 +1,8 @@
{ buildDunePackage, imagelib }:
buildDunePackage {
pname = "imagelib-unix";
inherit (imagelib) version src meta;
propagatedBuildInputs = [ imagelib ];
}

View File

@ -1,22 +1,18 @@
{ stdenv, fetchurl, ocaml, findlib, ocamlbuild, topkg }:
{ lib, fetchzip, buildDunePackage }:
stdenv.mkDerivation {
name = "ocaml${ocaml.version}-integers-0.2.2";
buildDunePackage rec {
pname = "integers";
version = "0.3.0";
src = fetchurl {
url = https://github.com/ocamllabs/ocaml-integers/releases/download/v0.2.2/integers-0.2.2.tbz;
sha256 = "08b1ljw88ny3l0mdq6xmffjk8anfc77igryva5jz1p6f4f746ywk";
src = fetchzip {
url = "https://github.com/ocamllabs/ocaml-integers/archive/${version}.tar.gz";
sha256 = "1yhif5zh4srh63mhimfx3p5ljpb3lixjdd3i9pjnbj2qgpzlqj8p";
};
buildInputs = [ ocaml findlib ocamlbuild topkg ];
inherit (topkg) buildPhase installPhase;
meta = {
description = "Various signed and unsigned integer types for OCaml";
license = stdenv.lib.licenses.mit;
license = lib.licenses.mit;
homepage = https://github.com/ocamllabs/ocaml-integers;
maintainers = [ stdenv.lib.maintainers.vbgl ];
inherit (ocaml.meta) platforms;
maintainers = [ lib.maintainers.vbgl ];
};
}

View File

@ -0,0 +1,28 @@
{ lib, buildDunePackage, fetchurl
, bigarray-compat, fmt
, alcotest, bigstringaf
}:
buildDunePackage rec {
pname = "ke";
version = "0.4";
src = fetchurl {
url = "https://github.com/mirage/ke/releases/download/v${version}/ke-v${version}.tbz";
sha256 = "13c9xy60vmq29mnwpg3h3zgl6gjbjfwbx1s0crfc6xwvark0zxnx";
};
propagatedBuildInputs = [ bigarray-compat fmt ];
checkInputs = lib.optionals doCheck [ alcotest bigstringaf ];
doCheck = true;
minimumOCamlVersion = "4.03";
meta = {
description = "Fast implementation of queue in OCaml";
homepage = "https://github.com/mirage/ke";
license = lib.licenses.mit;
maintainers = [ lib.maintainers.vbgl ];
};
}

View File

@ -9,7 +9,8 @@ buildPerlPackage rec {
sha256 = "1qss4q5df3nsydsbggb7gg50bn0kdxq5wn8riqm9zwkiq6a4bifg";
};
nativeBuildInputs = [ docbook_xsl docbook_xsl_ns ModuleBuild ];
propagatedBuildInputs = [ TextWrapI18N LocaleGettext TermReadKey SGMLSpm UnicodeLineBreak PodParser YAMLTiny ];
propagatedBuildInputs = [ TextWrapI18N LocaleGettext SGMLSpm UnicodeLineBreak PodParser YAMLTiny ];
# TODO: TermReadKey was temporarily removed from propagatedBuildInputs to unfreeze the build
buildInputs = [ gettext libxslt glibcLocales docbook_xml_dtd_412 docbook_sgml_dtd_41 texlive.combined.scheme-basic opensp ];
LC_ALL = "en_US.UTF-8";
SGML_CATALOG_FILES = "${docbook_xml_dtd_412}/xml/dtd/docbook/catalog.xml";

View File

@ -3,14 +3,14 @@
buildPythonPackage rec {
pname = "acoustics";
version = "0.2.1";
version = "0.2.2";
checkInputs = [ pytest ];
propagatedBuildInputs = [ numpy scipy matplotlib pandas tabulate ];
src = fetchPypi {
inherit pname version;
sha256 = "d7cec62d3e7a7eb26026f2aacc726fb1dd0b044574cbdee83da654b847543c20";
sha256 = "00981908c7cf54be58c0bfe902d7743225554ecf3432b30723e9300d9f3a0b0e";
};
checkPhase = ''

View File

@ -1,8 +1,6 @@
{ lib, buildPythonPackage, fetchPypi
, decorator, requests, simplejson
, nose, mock
, pillow
}:
, decorator, requests, simplejson, pillow
, nose, mock, pytest }:
buildPythonPackage rec {
pname = "datadog";
@ -17,9 +15,12 @@ buildPythonPackage rec {
find . -name '*.pyc' -exec rm {} \;
'';
propagatedBuildInputs = [ decorator requests simplejson ];
propagatedBuildInputs = [ decorator requests simplejson pillow ];
checkInputs = [ nose mock pillow ];
checkInputs = [ nose mock pytest ];
checkPhase = ''
pytest tests/unit
'';
meta = with lib; {
description = "The Datadog Python library";

View File

@ -0,0 +1,21 @@
{ stdenv
, buildPythonPackage
, fetchPypi
}:
buildPythonPackage rec {
pname = "html2text";
version = "2018.1.9";
src = fetchPypi {
inherit pname version;
sha256 = "627514fb30e7566b37be6900df26c2c78a030cc9e6211bda604d8181233bcdd4";
};
meta = with stdenv.lib; {
description = "Turn HTML into equivalent Markdown-structured text";
homepage = https://github.com/Alir3z4/html2text/;
license = licenses.gpl3;
};
}

View File

@ -1,21 +1,28 @@
{ stdenv
, buildPythonPackage
, fetchPypi
{ lib, buildPythonPackage, fetchFromGitHub, pythonOlder
, pytest
}:
buildPythonPackage rec {
pname = "html2text";
version = "2019.9.26";
disabled = pythonOlder "3.5";
src = fetchPypi {
inherit pname version;
sha256 = "6f56057c5c2993b5cc5b347cb099bdf6d095828fef1b53ef4e2a2bf2a1be9b4f";
src = fetchFromGitHub {
owner = "Alir3z4";
repo = pname;
rev = version;
sha256 = "1gzcx4n6q71plq4zvb1z0fy3brrln0qqrd6jc89iiqn7r1ix8h87";
};
meta = with stdenv.lib; {
# python setup.py test is broken, use pytest
checkInputs = [ pytest ];
checkPhase = ''
pytest
'';
meta = with lib; {
description = "Turn HTML into equivalent Markdown-structured text";
homepage = https://github.com/Alir3z4/html2text/;
license = licenses.gpl3;
};
}

View File

@ -0,0 +1,33 @@
{ stdenv, buildPythonPackage, fetchFromGitHub, pythonOlder
, tatsu, arrow
, pytest-sugar, pytestpep8, pytest-flakes, pytestcov
}:
buildPythonPackage rec {
pname = "ics";
version = "0.6";
src = fetchFromGitHub {
owner = "C4ptainCrunch";
repo = "ics.py";
rev = "v${version}";
sha256 = "02bs9wlh40p1n33jchrl2cdpsnm5hq84070by3b6gm0vmgz6gn5v";
};
propagatedBuildInputs = [ tatsu arrow ];
checkInputs = [ pytest-sugar pytestpep8 pytest-flakes pytestcov ];
disabled = pythonOlder "3.6";
meta = with stdenv.lib; {
description = "Pythonic and easy iCalendar library (RFC 5545)";
longDescription = ''
Ics.py is a pythonic and easy iCalendar library. Its goals are to read and
write ics data in a developer friendly way.
'';
homepage = "http://icspy.readthedocs.org/en/stable/";
license = licenses.asl20;
maintainers = with maintainers; [ primeos ];
};
}

View File

@ -1,4 +1,6 @@
{ lib, buildPythonPackage, fetchPypi, isPy27, futures, backports_functools_lru_cache, mock, pytest }:
{ lib, buildPythonPackage, fetchPypi, setuptools, isPy27, futures
, backports_functools_lru_cache, mock, pytest
}:
let
skipTests = [ "test_requirements_finder" "test_pipfile_finder" ] ++ lib.optional isPy27 "test_standard_library_deprecates_user_issue_778";
@ -12,13 +14,24 @@ in buildPythonPackage rec {
sha256 = "54da7e92468955c4fceacd0c86bd0ec997b0e1ee80d97f67c35a78b719dccab1";
};
propagatedBuildInputs = lib.optionals isPy27 [ futures backports_functools_lru_cache ];
propagatedBuildInputs = [
setuptools
] ++ lib.optionals isPy27 [ futures backports_functools_lru_cache ];
checkInputs = [ mock pytest ];
# isort excludes paths that contain /build/, so test fixtures don't work with TMPDIR=/build/
checkPhase = ''
# isort excludes paths that contain /build/, so test fixtures don't work
# with TMPDIR=/build/
PATH=$out/bin:$PATH TMPDIR=/tmp/ pytest ${testOpts}
# Confirm that the produced executable script is wrapped correctly and runs
# OK, by launching it in a subshell without PYTHONPATH
(
unset PYTHONPATH
echo "Testing that `isort --version-number` returns OK..."
$out/bin/isort --version-number
)
'';
meta = with lib; {

View File

@ -7,7 +7,7 @@ buildPythonPackage rec {
version = "2.1";
src = fetchPypi {
inherit pname version;
sha256 = "0e4c278310a5e1ecd565f09555b89ed923cac100b2525797201d2a89dcab337c";
sha256 = "0z1kmgf8jahx42bmflmj030wl8yrksw5b5ghcpayrqd5221jfk0f";
};
doCheck = false;

View File

@ -1,4 +1,11 @@
{ lib, buildPythonPackage, fetchPypi, pytest, case, pytz, Pyro4, amqp }:
{ lib, buildPythonPackage, fetchPypi
, amqp
, case
, Pyro4
, pytest
, pytz
, sqlalchemy
}:
buildPythonPackage rec {
pname = "kombu";
@ -10,13 +17,20 @@ buildPythonPackage rec {
};
postPatch = ''
substituteInPlace requirements/test.txt --replace "pytest-sugar" ""
substituteInPlace requirements/test.txt \
--replace "pytest-sugar" ""
substituteInPlace requirements/default.txt \
--replace "amqp==2.5.1" "amqp~=2.5"
'';
checkInputs = [ pytest case pytz Pyro4 ];
propagatedBuildInputs = [ amqp ];
checkInputs = [ pytest case pytz Pyro4 sqlalchemy ];
# test_redis requires fakeredis, which isn't trivial to package
checkPhase = ''
pytest --ignore t/unit/transport/test_redis.py
'';
meta = with lib; {
description = "Messaging library for Python";
homepage = https://github.com/celery/kombu;

View File

@ -1,4 +1,4 @@
{ stdenv, buildPythonPackage, fetchPypi, six, httplib2 }:
{ stdenv, buildPythonPackage, fetchPypi, six, httplib2, requests }:
buildPythonPackage rec {
pname = "mailmanclient";
@ -9,7 +9,11 @@ buildPythonPackage rec {
sha256 = "c8736cbe152ae1bd58b46ccfbcafb6a1e301513530772e7fda89f91d1e5c1ae9";
};
propagatedBuildInputs = [ six httplib2 ];
propagatedBuildInputs = [ six httplib2 requests ];
# no tests with Pypi tar ball, checkPhase removes setup.py which invalidates import check
doCheck = false;
pythonImportsCheck = [ "mailmanclient" ];
meta = with stdenv.lib; {
homepage = "http://www.gnu.org/software/mailman/";

View File

@ -22,6 +22,7 @@
, sure
, werkzeug
, xmltodict
, isPy38
}:
buildPythonPackage rec {
@ -33,6 +34,10 @@ buildPythonPackage rec {
sha256 = "0rhbjvqi1khp80gfnl3x632kwlpq3k7m8f13nidznixdpa78vm4m";
};
# 3.8 is not yet support
# https://github.com/spulec/moto/pull/2519
disabled = isPy38;
# Backported fix from 1.3.14.dev for compatibility with botocore >= 1.9.198.
patches = [
(fetchpatch {

View File

@ -6,13 +6,13 @@
buildPythonPackage rec {
pname = "pelican";
version = "4.1.1";
version = "4.2.0";
src = fetchFromGitHub {
owner = "getpelican";
repo = "pelican";
rev = version;
sha256 = "08lwbkgqdf6qx9vg17qj70k7nz2j34ymlnrc4cbz7xj98cw4ams1";
sha256 = "0w9nqdw2jmqc6kqwg4rh6irr5k6j7hk8axg6vgd137rs50v62yv5";
# Remove unicode file names which leads to different checksums on HFS+
# vs. other filesystems because of unicode normalisation.
extraPostFetch = ''
@ -31,7 +31,7 @@ buildPythonPackage rec {
glibcLocales
# Note: Pelican has to adapt to a changed CLI of pandoc before enabling this
# again. Compare https://github.com/getpelican/pelican/pull/2252.
# Version 4.1.1 is incompatible with our current pandoc version.
# Version 4.2.0 is incompatible with our current pandoc version.
# pandoc
git
mock

View File

@ -22,17 +22,17 @@ stdenv.mkDerivation rec {
dontCheck = true;
installPhase = ''
install -D py3buddy.py $out/lib/${python.libPrefix}/site-packages/py3buddy.py
install -D py3buddy.py $out/${python.sitePackages}/py3buddy.py
'';
postInstall = ''
install -D 99-ibuddy.rules $out/lib/udev/rules.d/99-ibuddy.rules
'';
meta = {
meta = with stdenv.lib; {
description = "Code to work with the iBuddy MSN figurine";
homepage = "https://github.com/armijnhemel/py3buddy";
license = with stdenv.lib.licenses; [ mit ];
maintainers = with stdenv.lib.maintainers; [ prusnak ];
license = with licenses; [ mit ];
maintainers = with maintainers; [ prusnak ];
};
}

View File

@ -1,6 +1,6 @@
{ stdenv, lib, buildPythonPackage, fetchPypi, astroid, six, isort,
mccabe, configparser, backports_functools_lru_cache, singledispatch,
pytest, pytestrunner, pyenchant }:
pytest, pytestrunner, pyenchant, setuptools }:
buildPythonPackage rec {
pname = "pylint";
@ -13,7 +13,7 @@ buildPythonPackage rec {
checkInputs = [ pytest pytestrunner pyenchant ];
propagatedBuildInputs = [ astroid six isort mccabe configparser backports_functools_lru_cache singledispatch ];
propagatedBuildInputs = [ astroid six isort mccabe configparser backports_functools_lru_cache singledispatch setuptools ];
postPatch = lib.optionalString stdenv.isDarwin ''
# Remove broken darwin test

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