Merge branch 'master' of https://github.com/NixOS/nixpkgs into php-mysqlnd-m

This commit is contained in:
John Boehr 2017-11-07 14:01:39 -08:00
commit 24c6407883
No known key found for this signature in database
GPG Key ID: 73B8EFB60708F699
154 changed files with 2856 additions and 1481 deletions

View File

@ -265,6 +265,7 @@
hbunke = "Hendrik Bunke <bunke.hendrik@gmail.com>";
hce = "Hans-Christian Esperer <hc@hcesperer.org>";
hectorj = "Hector Jusforgues <hector.jusforgues+nixos@gmail.com>";
hedning = "Tor Hedin Brønner <torhedinbronner@gmail.com>";
heel = "Sergii Paryzhskyi <parizhskiy@gmail.com>";
henrytill = "Henry Till <henrytill@gmail.com>";
hhm = "hhm <heehooman+nixpkgs@gmail.com>";
@ -517,6 +518,7 @@
rardiol = "Ricardo Ardissone <ricardo.ardissone@gmail.com>";
rasendubi = "Alexey Shmalko <rasen.dubi@gmail.com>";
raskin = "Michael Raskin <7c6f434c@mail.ru>";
ravloony = "Tom Macdonald <ravloony@gmail.com>";
rbasso = "Rafael Basso <rbasso@sharpgeeks.net>";
redbaron = "Maxim Ivanov <ivanov.maxim@gmail.com>";
redvers = "Redvers Davies <red@infect.me>";

View File

@ -67,7 +67,7 @@ in
type = types.nullOr types.str;
default = null;
example = literalExample "0.0.0.0";
description = "Address to bind to. The default it to bind to all addresses";
description = "Address to bind to. The default is to bind to all addresses";
};
port = mkOption {

View File

@ -7,13 +7,13 @@ with stdenv.lib;
stdenv.mkDerivation rec {
name = "bitcoin" + (toString (optional (!withGui) "d")) + "-abc-" + version;
version = "0.15.0";
version = "0.16.0";
src = fetchFromGitHub {
owner = "bitcoin-ABC";
repo = "bitcoin-abc";
rev = "v${version}";
sha256 = "1fygn6cc99iasg5g5jyps5ps873hfnn4ln4hsmcwlwiqd591qxyv";
sha256 = "0wwcgvd8zgl5qh6z1sa3kdv1lr9cwwbs9j2gaad5mqr9sfwbbxdh";
};
patches = [ ./fix-bitcoin-qt-build.patch ];

View File

@ -1,31 +1,47 @@
{ stdenv, fetchFromGitHub, SDL, alsaLib, cmake, fftwSinglePrec, fluidsynth
, fltk13, libjack2, libvorbis , libsamplerate, libsndfile, pkgconfig
, libpulseaudio, qt4, freetype, libgig
}:
{ stdenv, fetchFromGitHub, cmake, pkgconfig, alsaLib ? null, fftwFloat, fltk13
, fluidsynth ? null, lame ? null, libgig ? null, libjack2 ? null, libpulseaudio ? null
, libsamplerate, libsoundio ? null, libsndfile, libvorbis ? null, portaudio ? null
, qtbase, qttools, SDL ? null }:
stdenv.mkDerivation rec {
name = "lmms-${version}";
version = "1.1.90";
version = "1.2.0-rc4";
src = fetchFromGitHub {
owner = "LMMS";
repo = "lmms";
rev = "v${version}";
sha256 = "0njiarndwqamqiinr1wbwkzjn87yzr1z5k9cfwk0jdkbalgakkq3";
sha256 = "1n3py18zqbvfnkdiz4wc6z60xaajpkd3kn1wxmby5dmc4vccvjj5";
};
nativeBuildInputs = [ cmake qttools pkgconfig ];
buildInputs = [
SDL alsaLib cmake fftwSinglePrec fltk13 fluidsynth libjack2 libgig
libsamplerate libsndfile libvorbis pkgconfig libpulseaudio qt4
alsaLib
fftwFloat
fltk13
fluidsynth
lame
libgig
libjack2
libpulseaudio
libsamplerate
libsndfile
libsoundio
libvorbis
portaudio
qtbase
SDL # TODO: switch to SDL2 in the next version
];
cmakeFlags = [ "-DWANT_QT5=ON" ];
enableParallelBuilding = true;
meta = with stdenv.lib; {
description = "Linux MultiMedia Studio";
description = "DAW similar to FL Studio (music production software)";
homepage = https://lmms.io;
license = licenses.gpl2Plus;
platforms = platforms.linux;
maintainers = [ maintainers.goibhniu ];
maintainers = with maintainers; [ goibhniu yegortimoshenko ];
};
}

View File

@ -152,16 +152,16 @@ rec {
bytecode-outline = buildEclipsePlugin rec {
name = "bytecode-outline-${version}";
version = "2.4.3";
version = "2.5.0.201711011753-5a57fdf";
srcFeature = fetchurl {
url = "http://andrei.gmxhome.de/eclipse/features/de.loskutov.BytecodeOutline.feature_${version}.jar";
sha256 = "0imhwp73gxy1y5d5gpjgd05ywn0xg3vqc5980wcx3fd51g4ifc67";
sha256 = "0yciqhcq0n5i326mwy57r4ywmkz2c2jky7r4pcmznmhvks3z65ps";
};
srcPlugin = fetchurl {
url = "http://dl.bintray.com/iloveeclipse/plugins/de.loskutov.BytecodeOutline_${version}.jar";
sha256 = "0230i88mvvxhn11m9c5mv3494zhh1xkxyfyva9qahck0wbqwpzkw";
sha256 = "1vmsqv32jfl7anvdkw0vir342miv5sr9df7vd1w44lf1yf97vxlw";
};
meta = with stdenv.lib; {

View File

@ -0,0 +1,37 @@
{ lib, buildPythonApplication, fetchFromGitHub
, gdk_pixbuf, glib, gtk3, pango, webkitgtk
, pygobject3, pyyaml
}:
buildPythonApplication rec {
name = "rednotebook-${version}";
version = "2.3";
src = fetchFromGitHub {
owner = "jendrikseipp";
repo = "rednotebook";
rev = "v${version}";
sha256 = "0zkfid104hcsf20r6829v11wxdghqkd3j1zbgyvd1s7q4nxjn5lj";
};
# We have not packaged tests.
doCheck = false;
propagatedBuildInputs = [
gdk_pixbuf glib gtk3 pango webkitgtk
pygobject3 pyyaml
];
makeWrapperArgs = [
"--set GI_TYPELIB_PATH $GI_TYPELIB_PATH"
"--prefix XDG_DATA_DIRS : $out/share"
"--suffix XDG_DATA_DIRS : $XDG_ICON_DIRS:$GSETTINGS_SCHEMAS_PATH"
];
meta = with lib; {
homepage = http://rednotebook.sourceforge.net/;
description = "A modern journal that includes a calendar navigation, customizable templates, export functionality and word clouds";
license = licenses.gpl2;
maintainers = with maintainers; [ orivej tstrobel ];
};
}

View File

@ -37,7 +37,7 @@
let
mirror = https://get.geo.opera.com/pub/opera/desktop;
version = "46.0.2597.39";
version = "48.0.2685.52";
rpath = stdenv.lib.makeLibraryPath [
@ -87,19 +87,10 @@ in stdenv.mkDerivation {
name = "opera-${version}";
src =
#if stdenv.system == "i686-linux" then
# fetchurl {
# url = "${mirror}/${version}/linux/opera-stable_${version}_i386.deb";
# sha256 = "...";
# }
#else
if stdenv.system == "x86_64-linux" then
fetchurl {
url = "${mirror}/${version}/linux/opera-stable_${version}_amd64.deb";
sha256 = "1ladvqilm5rr222wjybvribnyii2l0p8jbsd10xr06wps63g1kia";
}
else throw "Opera is not supported on ${stdenv.system} (only x86_64 linux is supported)";
src = fetchurl {
url = "${mirror}/${version}/linux/opera-stable_${version}_amd64.deb";
sha256 = "027njqh2as4d0xsnvzamqiplghb8cxqnc19y0vqkvjnsw57v828p";
};
unpackCmd = "${dpkg}/bin/dpkg-deb -x $curSrc .";
@ -123,6 +114,7 @@ in stdenv.mkDerivation {
meta = {
homepage = http://www.opera.com;
description = "Web browser";
platforms = [ "x86_64-linux" ];
license = stdenv.lib.licenses.unfree;
};
}

View File

@ -10,14 +10,14 @@
stdenv.mkDerivation rec {
name = "palemoon-${version}";
version = "27.5.0";
version = "27.6.0";
src = fetchFromGitHub {
name = "palemoon-src";
owner = "MoonchildProductions";
repo = "Pale-Moon";
rev = version + "_Release";
sha256 = "0m4fgwxn6hs8r240i6acaajx76cvqy1b7cqmdsxd33qpjrrj1h9d";
sha256 = "1v5rbam93fcc7c1l69clr9chi2l0zv0dhjq12v535n8vv9lhahhl";
};
desktopItem = makeDesktopItem {

View File

@ -60,6 +60,8 @@ in stdenv.mkDerivation rec {
"CXXFLAGS=-O2 -Wno-error=strict-aliasing"
)
substituteInPlace 3rdparty/stout/include/stout/jsonify.hpp \
--replace '<xlocale.h>' '<locale.h>'
# Fix cases where makedev(),major(),minor() are referenced through
# <sys/types.h> instead of <sys/sysmacros.h>
sed 1i'#include <sys/sysmacros.h>' -i src/linux/fs.cpp

View File

@ -24,9 +24,6 @@ buildPythonApplication rec {
# unicode-capable filesystem (and setting LC_ALL doesn't work).
# setlocale: LC_ALL: cannot change locale (en_US.UTF-8)
postPatch = ''
sed -i '/def test_non_ascii/i\ import pytest\
@pytest.mark.skip' flexget/tests/test_filesystem.py
substituteInPlace requirements.txt \
--replace "chardet==3.0.3" "chardet" \
--replace "rebulk==0.8.2" "rebulk" \
@ -35,7 +32,13 @@ buildPythonApplication rec {
--replace "sqlalchemy==1.1.10" "sqlalchemy" \
--replace "zxcvbn-python==4.4.15" "zxcvbn-python" \
--replace "flask-cors==3.0.2" "flask-cors" \
--replace "certifi==2017.4.17" "certifi"
--replace "certifi==2017.4.17" "certifi" \
--replace "apscheduler==3.3.1" "apscheduler" \
--replace "path.py==10.3.1" "path.py" \
--replace "tempora==1.8" "tempora" \
--replace "cheroot==5.5.0" "cheroot" \
--replace "six==1.10.0" "six" \
--replace "aniso8601==1.2.1" "aniso8601"
'';
checkPhase = ''
@ -47,7 +50,8 @@ buildPythonApplication rec {
and not test_double_episodes \
and not test_inject_force \
and not test_double_prefered \
and not test_double"
and not test_double \
and not test_non_ascii"
'';
buildInputs = [ pytest mock vcrpy pytest-catchlog boto3 ];

View File

@ -0,0 +1,61 @@
{ stdenv, fetchFromGitHub, fetchNodeModules, nodejs-8_x, ruby, sencha }:
stdenv.mkDerivation rec {
name = "rambox-bare-${version}";
version = "0.5.13";
src = fetchFromGitHub {
owner = "saenzramiro";
repo = "rambox";
rev = version;
sha256 = "0c770a9z017y6gcrpyri7s1gifm8zi5f29bq5nvh3zzg4wgqh326";
};
nativeBuildInputs = [ nodejs-8_x ruby sencha ];
node_modules = fetchNodeModules {
inherit src;
nodejs = nodejs-8_x;
sha256 = "1y3q8ggyvfywxqi5hn9mvr1sjfylspis43iyf4b7snyr1a1br3r4";
};
patches = [ ./hide-check-for-updates.patch ./isDev.patch ];
# These credentials are only for this derivation. If you want to get credentials
# for another distribution, go to https://auth0.com. If you want to reuse the same
# domain, drop a line at yegortimoshenko@gmail.com!
auth0ClientID = "0spuNKfIGeLAQ_Iki9t3fGxbfJl3k8SU";
auth0Domain = "nixpkgs.auth0.com";
configurePhase = ''
echo 'var auth0Cfg = { clientID: "${auth0ClientID}", domain: "${auth0Domain}" };' > env.js
ln -s ${node_modules} node_modules
'';
buildPhase = ''
mkdir ../rambox-build
npm run sencha:compile:build
'';
installPhase = ''
mv ../rambox-build/ $out
# https://github.com/saenzramiro/rambox/issues/1281
echo '{"name": "rambox", "version": "${version}", "main": "electron/main.js"}' > $out/package.json
# https://github.com/saenzramiro/rambox/issues/1282
cp --parents ext/packages/ext-locale/build/ext-locale-*.js $out
# Symbolic link causes `Uncaught Error: Cannot find module 'immutable'`
cp -r ${node_modules} $out/node_modules
'';
meta = with stdenv.lib; {
description = "Messaging and emailing app that combines common web applications into one";
homepage = http://rambox.pro;
license = licenses.gpl3;
maintainers = with maintainers; [ gnidorah ];
platforms = platforms.linux;
};
}

View File

@ -1,64 +1,26 @@
{ stdenv, fetchurl, dpkg, makeWrapper
, xorg, gtk2, atk, glib, pango, gdk_pixbuf, cairo, freetype, fontconfig
, gnome2, dbus, nss, nspr, alsaLib, cups, expat, udev, libnotify, xdg_utils }:
{ stdenv, newScope, makeWrapper, electron, xdg_utils }:
let
bits = if stdenv.system == "x86_64-linux" then "x64"
else "ia32";
version = "0.5.13";
runtimeDeps = [
udev libnotify
];
deps = (with xorg; [
libXi libXcursor libXdamage libXrandr libXcomposite libXext libXfixes
libXrender libX11 libXtst libXScrnSaver libxcb
]) ++ [
gtk2 atk glib pango gdk_pixbuf cairo freetype fontconfig dbus
gnome2.GConf nss nspr alsaLib cups expat stdenv.cc.cc
] ++ runtimeDeps;
in stdenv.mkDerivation rec {
name = "rambox-${version}";
src = fetchurl {
url = "https://github.com/saenzramiro/rambox/releases/download/${version}/Rambox_${version}-${bits}.deb";
sha256 = if bits == "x64" then
"0bn562fr1wsnn3xsd4q2rrxi6c56vckrkfmjl2dqb30hpmj2vn0d" else
"180ndvkil5mk5idwnn7spfygnhhll6pjc342pfzgmzk46a723qs4";
callPackage = newScope self;
self = {
fetchNodeModules = callPackage ./fetchNodeModules.nix {};
rambox-bare = callPackage ./bare.nix {};
sencha = callPackage ./sencha {};
};
in
# don't remove runtime deps
dontPatchELF = true;
with self;
buildInputs = [ dpkg makeWrapper ];
stdenv.mkDerivation {
name = "rambox-${rambox-bare.version}";
unpackPhase = "dpkg-deb -x $src .";
nativeBuildInputs = [ makeWrapper ];
unpackPhase = ":";
installPhase = ''
patchelf --set-interpreter "$(cat $NIX_CC/nix-support/dynamic-linker)" opt/Rambox/rambox
patchelf --set-rpath "$out/opt/Rambox:${stdenv.lib.makeLibraryPath deps}" opt/Rambox/rambox
mkdir -p $out/bin
cp -r opt $out
ln -s $out/opt/Rambox/rambox $out/bin
# provide resources
cp -r usr/share $out
substituteInPlace $out/share/applications/rambox.desktop \
--replace Exec=\"/opt/Rambox/rambox\" Exec=rambox
makeWrapper ${electron}/bin/electron $out/bin/rambox \
--add-flags "${rambox-bare} --without-update" \
--prefix PATH : ${xdg_utils}/bin
'';
postFixup = ''
paxmark m $out/opt/Rambox/rambox
wrapProgram $out/opt/Rambox/rambox --prefix PATH : ${xdg_utils}/bin
'';
meta = with stdenv.lib; {
description = "Free and Open Source messaging and emailing app that combines common web applications into one";
homepage = http://rambox.pro;
license = licenses.mit;
maintainers = [ maintainers.gnidorah ];
platforms = ["i686-linux" "x86_64-linux"];
hydraPlatforms = [];
};
}

View File

@ -0,0 +1,26 @@
{ stdenv, jq }: { src, nodejs, sha256 }:
# Only npm >= 5.4.2 is deterministic, see:
# https://github.com/npm/npm/issues/17979#issuecomment-332701215
assert stdenv.lib.versionAtLeast nodejs.version "8.9.0";
stdenv.mkDerivation {
name = "node_modules";
outputHashAlgo = "sha256";
outputHash = sha256;
outputHashMode = "recursive";
nativeBuildInputs = [ jq nodejs ];
buildCommand = ''
cp -r ${src}/* .
HOME=. npm install --force --ignore-scripts --only=production
for f in $(find node_modules -name package.json); do
# https://github.com/npm/npm/issues/10393
jq -S 'delpaths(keys | map(select(startswith("_")) | [.]))' $f > $f.tmp
mv $f.tmp $f
done
mv node_modules $out
'';
}

View File

@ -0,0 +1,35 @@
https://github.com/saenzramiro/rambox/issues/1283
diff -urNZ a/electron/menu.js b/electron/menu.js
--- a/electron/menu.js 2017-11-02 22:02:59.753119865 +0000
+++ b/electron/menu.js 2017-11-02 22:08:34.419698562 +0000
@@ -220,14 +220,6 @@
}
},
{
- label: locale['menu.help[5]'],
- click(item, win) {
- const webContents = win.webContents;
- const send = webContents.send.bind(win.webContents);
- send('autoUpdater:check-update');
- }
- },
- {
label: locale['menu.help[6]'],
click() {
sendAction('showAbout')
@@ -290,14 +282,6 @@
type: 'separator'
});
helpSubmenu.push({
- label: `&`+locale['menu.help[5]'],
- click(item, win) {
- const webContents = win.webContents;
- const send = webContents.send.bind(win.webContents);
- send('autoUpdater:check-update');
- }
- });
- helpSubmenu.push({
label: `&`+locale['menu.help[6]'],
click() {
sendAction('showAbout')

View File

@ -0,0 +1,14 @@
https://github.com/saenzramiro/rambox/issues/1280
diff -urNZ a/electron/main.js b/electron/main.js
--- a/electron/main.js 2017-11-02 14:58:06.085127616 +0000
+++ b/electron/main.js 2017-11-02 14:58:18.316887679 +0000
@@ -8,7 +8,7 @@
// Configuration
const Config = require('electron-config');
// Development
-const isDev = require('electron-is-dev');
+const isDev = false;
// Updater
const updater = require('./updater');
// File System

View File

@ -0,0 +1,41 @@
{ stdenv, fetchurl, gzip, which, unzip, jdk }:
let
version = "6.5.2";
srcs = {
i686-linux = fetchurl {
url = "https://cdn.sencha.com/cmd/${version}/no-jre/SenchaCmd-${version}-linux-i386.sh.zip";
sha256 = "18gcqw9434xab97skcb97iw4p4s2pgggvq7jaisblap0ja00kqjr";
};
x86_64-linux = fetchurl {
url = "https://cdn.sencha.com/cmd/${version}/no-jre/SenchaCmd-${version}-linux-amd64.sh.zip";
sha256 = "1b8jv99k37q1bi7b29f23lfzxc66v5fqdmr1rxsrqchwcrllc0z7";
};
};
in
stdenv.mkDerivation rec {
inherit version;
name = "sencha-bare-${version}";
src = srcs.${stdenv.system};
nativeBuildInputs = [ gzip which unzip ];
buildInputs = [ jdk ];
sourceRoot = ".";
configurePhase = ''
substituteAll ${./response.varfile} response.varfile
'';
installPhase = ''
./SenchaCmd*.sh -q -dir $out -varfile response.varfile
rm $out/shell-wrapper.sh $out/Uninstaller
'';
meta = with stdenv.lib; {
license = licenses.unfree;
platforms = attrNames srcs;
};
}

View File

@ -0,0 +1,17 @@
{ stdenv, callPackage, makeWrapper }:
let
sencha-bare = callPackage ./bare.nix {};
in
stdenv.mkDerivation {
name = "sencha-${sencha-bare.version}";
nativeBuildInputs = [ makeWrapper ];
unpackPhase = ":";
installPhase = ''
makeWrapper ${sencha-bare}/sencha $out/bin/sencha
'';
}

View File

@ -0,0 +1,13 @@
addToPath$Integer=1
parentDir=.
sys.adminRights$Boolean=false
sys.component.148$Boolean=true
sys.component.157$Boolean=true
sys.component.26$Boolean=true
sys.component.30$Boolean=true
sys.component.90$Boolean=true
sys.component.91$Boolean=true
sys.component.92$Boolean=true
sys.component.94$Boolean=true
sys.installationDir=@out@
sys.languageId=en

View File

@ -1,7 +1,12 @@
{stdenv, fetchurl, python27Packages, file }:
{ stdenv, fetchurl, python27Packages, file }:
let
inherit (python27Packages) python;
requirements = (import ./requirements.nix {
inherit stdenv fetchurl;
pythonPackages = python27Packages;
});
in
stdenv.mkDerivation rec {
name = "salut-a-toi";
@ -16,9 +21,12 @@ in
buildInputs = with python27Packages;
[
python twisted urwid wxPython pygobject2
wokkel dbus-python pyfeed wrapPython setuptools file
dbus-python wrapPython setuptools file
pycrypto pyxdg
];
] ++ (with requirements; [
pyfeed
wokkel
]);
configurePhase = ''
sed -i "/use_setuptools/d" setup.py

View File

@ -0,0 +1,67 @@
{ fetchurl
, stdenv
, pythonPackages
}:
let
buildPythonPackage = pythonPackages.buildPythonPackage;
xe = buildPythonPackage rec {
url = "http://www.blarg.net/%7Esteveha/xe-0.7.4.tar.gz";
name = stdenv.lib.nameFromURL url ".tar";
src = fetchurl {
inherit url;
sha256 = "0v9878cl0y9cczdsr6xjy8v9l139lc23h4m5f86p4kpf2wlnpi42";
};
# error: invalid command 'test'
doCheck = false;
meta = {
homepage = "http://home.blarg.net/~steveha/xe.html";
description = "XML elements";
};
};
in {
pyfeed = (buildPythonPackage rec {
url = "http://www.blarg.net/%7Esteveha/pyfeed-0.7.4.tar.gz";
name = stdenv.lib.nameFromURL url ".tar";
src = fetchurl {
inherit url;
sha256 = "1h4msq573m7wm46h3cqlx4rsn99f0l11rhdqgf50lv17j8a8vvy1";
};
propagatedBuildInputs = [ xe ];
# error: invalid command 'test'
doCheck = false;
meta = with stdenv.lib; {
homepage = "http://home.blarg.net/~steveha/pyfeed.html";
description = "Tools for syndication feeds";
};
});
wokkel = buildPythonPackage (rec {
url = "http://wokkel.ik.nu/releases/0.7.0/wokkel-0.7.0.tar.gz";
name = stdenv.lib.nameFromURL url ".tar";
src = fetchurl {
inherit url;
sha256 = "0rnshrzw8605x05mpd8ndrx3ri8h6cx713mp8sl4f04f4gcrz8ml";
};
propagatedBuildInputs = with pythonPackages; [twisted dateutil];
meta = with stdenv.lib; {
description = "Some (mainly XMPP-related) additions to twisted";
homepage = "http://wokkel.ik.nu/";
license = licenses.mit;
};
});
}

View File

@ -0,0 +1,88 @@
{ stdenv, lib, fetchurl, dpkg, gnome2, atk, cairo, gdk_pixbuf, glib, freetype,
fontconfig, dbus, libX11, xlibs, libXi, libXcursor, libXdamage, libXrandr,
libXcomposite, libXext, libXfixes, libXrender, libXtst, libXScrnSaver, nss,
nspr, alsaLib, cups, expat, udev
}:
let
rpath = lib.makeLibraryPath [
alsaLib
atk
cairo
cups
dbus
expat
fontconfig
freetype
gdk_pixbuf
glib
gnome2.GConf
gnome2.gtk
gnome2.pango
libX11
libXScrnSaver
libXcomposite
libXcursor
libXdamage
libXext
libXfixes
libXi
libXrandr
libXrender
libXtst
nspr
nss
stdenv.cc.cc
udev
xlibs.libxcb
];
in
stdenv.mkDerivation rec {
name = "signal-desktop-${version}";
version = "1.0.35";
src =
if stdenv.system == "x86_64-linux" then
fetchurl {
url = "https://updates.signal.org/desktop/apt/pool/main/s/signal-desktop/signal-desktop_${version}_amd64.deb";
sha256 = "d9f9d4d54f4121efc8eadf1cf0ff957828088b313e53b66dc540b851c44c1860";
}
else
throw "Signal for Desktop is not currently supported on ${stdenv.system}";
phases = [ "unpackPhase" "installPhase" ];
nativeBuildInputs = [ dpkg ];
unpackPhase = "dpkg-deb -x $src .";
installPhase = ''
mkdir -p $out
cp -R opt $out
mv ./usr/share $out/share
mv $out/opt/Signal $out/libexec
rmdir $out/opt
chmod -R g-w $out
# Patch signal
patchelf --set-interpreter "$(cat $NIX_CC/nix-support/dynamic-linker)" \
--set-rpath ${rpath}:$out/libexec $out/libexec/signal-desktop
# Symlink to bin
mkdir -p $out/bin
ln -s $out/libexec/signal-desktop $out/bin/signal-desktop
# Fix the desktop link
substituteInPlace $out/share/applications/signal-desktop.desktop \
--replace /opt/Signal/signal-desktop $out/bin/signal-desktop
'';
meta = {
description = "Signal Private Messenger for the Desktop.";
homepage = https://signal.org/;
license = lib.licenses.gpl3;
platforms = [
"x86_64-linux"
];
};
}

View File

@ -2,11 +2,13 @@
, gdk_pixbuf, libnotify, gst_all_1
, libgnome_keyring3, networkmanager
, wrapGAppsHook, gnome3
, withGnomeKeyring ? false
, withNetworkManager ? true
# otherwise passwords are stored unencrypted
, withGnomeKeyring ? true
}:
pythonPackages.buildPythonApplication rec {
let
inherit (pythonPackages) python;
in pythonPackages.buildPythonApplication rec {
name = "mailnag-${version}";
version = "1.2.1";
@ -20,8 +22,7 @@ pythonPackages.buildPythonApplication rec {
gst_all_1.gst-plugins-base gst_all_1.gst-plugins-good
gst_all_1.gst-plugins-bad
gnome3.defaultIconTheme
] ++ stdenv.lib.optional withGnomeKeyring libgnome_keyring3
++ stdenv.lib.optional withNetworkManager networkmanager;
] ++ stdenv.lib.optional withGnomeKeyring libgnome_keyring3;
nativeBuildInputs = [
wrapGAppsHook
@ -31,6 +32,10 @@ pythonPackages.buildPythonApplication rec {
pygobject3 dbus-python pyxdg
];
buildPhase = "";
installPhase = "${python}/bin/python setup.py install --prefix=$out";
doCheck = false;
meta = with stdenv.lib; {

View File

@ -0,0 +1,20 @@
{ pythonPackages, isPy3k, pkgs }:
pythonPackages.buildPythonPackage rec {
name = "beautifulsoup-3.2.1";
disabled = isPy3k;
src = pkgs.fetchurl {
url = "http://www.crummy.com/software/BeautifulSoup/download/3.x/BeautifulSoup-3.2.1.tar.gz";
sha256 = "1nshbcpdn0jpcj51x0spzjp519pkmqz0n0748j7dgpz70zlqbfpm";
};
# error: invalid command 'test'
doCheck = false;
meta = {
homepage = http://www.crummy.com/software/BeautifulSoup/;
license = "bsd";
description = "Undemanding HTML/XML parser";
};
}

View File

@ -1,5 +1,12 @@
{ stdenv, fetchFromGitHub, fetchpatch, pythonPackages, gocr, unrar, rhino, spidermonkey }:
pythonPackages.buildPythonApplication rec {
{ stdenv, fetchFromGitHub, fetchpatch, pythonPackages, gocr, unrar, rhino, spidermonkey
, pkgs }:
let
beautifulsoup = pythonPackages.callPackage ./beautifulsoup.nix {
inherit pythonPackages;
};
in pythonPackages.buildPythonApplication rec {
version = "0.4.9-next";
name = "pyLoad-" + version;

View File

@ -0,0 +1,29 @@
--- a/src/rsh-client.c.orig 2005-10-02 17:17:21.000000000 +0200
+++ b/src/rsh-client.c 2017-11-07 16:56:06.957370469 +0100
@@ -53,7 +53,7 @@
char *cvs_server = (root->cvs_server != NULL
? root->cvs_server : getenv ("CVS_SERVER"));
int i = 0;
- /* This needs to fit "rsh", "-b", "-l", "USER", "host",
+ /* This needs to fit "rsh", "-b", "-l", "USER", "--", "host",
"cmd (w/ args)", and NULL. We leave some room to grow. */
char *rsh_argv[10];
@@ -97,6 +97,9 @@
rsh_argv[i++] = root->username;
}
+ /* Only non-option arguments from here. (CVE-2017-12836) */
+ rsh_argv[i++] = "--";
+
rsh_argv[i++] = root->hostname;
rsh_argv[i++] = cvs_server;
rsh_argv[i++] = "server";
@@ -171,6 +174,7 @@
*p++ = root->username;
}
+ *p++ = "--";
*p++ = root->hostname;
*p++ = command;
*p++ = NULL;

View File

@ -11,6 +11,7 @@ stdenv.mkDerivation {
patches = [
./getcwd-chroot.patch
./CVE-2012-0804.patch
./CVE-2017-12836.patch
];
hardeningDisable = [ "fortify" "format" ];

View File

@ -3,3 +3,7 @@ source 'https://rubygems.org'
gem 'github-linguist', '~> 4.7.0', require: 'linguist'
gem 'gitaly-proto', '~> 0.37.0', require: 'gitaly'
gem 'activesupport'
group :development, :test do
gem 'gitlab-styles', '~> 2.0.0', require: false
end

View File

@ -8,6 +8,7 @@ GEM
tzinfo (~> 1.1)
addressable (2.5.1)
public_suffix (~> 2.0, >= 2.0.2)
ast (2.3.0)
charlock_holmes (0.7.5)
concurrent-ruby (1.0.5)
escape_utils (1.1.1)
@ -21,6 +22,10 @@ GEM
escape_utils (~> 1.1.0)
mime-types (>= 1.19)
rugged (>= 0.23.0b)
gitlab-styles (2.0.0)
rubocop (~> 0.49)
rubocop-gitlab-security (~> 0.1.0)
rubocop-rspec (~> 1.15)
google-protobuf (3.4.0.2)
googleauth (0.5.3)
faraday (~> 0.12)
@ -47,7 +52,26 @@ GEM
multi_json (1.12.1)
multipart-post (2.0.0)
os (0.9.6)
parallel (1.12.0)
parser (2.4.0.0)
ast (~> 2.2)
powerpack (0.1.1)
public_suffix (2.0.5)
rainbow (2.2.2)
rake
rake (12.1.0)
rubocop (0.50.0)
parallel (~> 1.10)
parser (>= 2.3.3.1, < 3.0)
powerpack (~> 0.1)
rainbow (>= 2.2.2, < 3.0)
ruby-progressbar (~> 1.7)
unicode-display_width (~> 1.0, >= 1.0.1)
rubocop-gitlab-security (0.1.0)
rubocop (>= 0.47.1)
rubocop-rspec (1.17.0)
rubocop (>= 0.50.0)
ruby-progressbar (1.8.3)
rugged (0.26.0)
signet (0.7.3)
addressable (~> 2.3)
@ -57,6 +81,7 @@ GEM
thread_safe (0.3.6)
tzinfo (1.2.2)
thread_safe (~> 0.1)
unicode-display_width (1.3.0)
PLATFORMS
ruby
@ -65,6 +90,7 @@ DEPENDENCIES
activesupport
gitaly-proto (~> 0.37.0)
github-linguist (~> 4.7.0)
gitlab-styles (~> 2.0.0)
BUNDLED WITH
1.15.4

View File

@ -7,14 +7,14 @@ let
gemdir = ./.;
};
in buildGoPackage rec {
version = "0.38.0";
version = "0.43.1";
name = "gitaly-${version}";
src = fetchFromGitLab {
owner = "gitlab-org";
repo = "gitaly";
rev = "v${version}";
sha256 = "02s5gjxbjvm990n4h5zkyqj71a9mp4yj83hfl8mma0g7gx00icsf";
sha256 = "19ggfc5nwv8q1wq739ab8qdfdngpi33431dgfa9593p6ad7v6hyq";
};
goPackagePath = "gitlab.com/gitlab-org/gitaly";

View File

@ -17,6 +17,14 @@
};
version = "2.5.1";
};
ast = {
source = {
remotes = ["https://rubygems.org"];
sha256 = "0pp82blr5fakdk27d1d21xq9zchzb6vmyb1zcsl520s3ygvprn8m";
type = "gem";
};
version = "2.3.0";
};
charlock_holmes = {
source = {
remotes = ["https://rubygems.org"];
@ -68,6 +76,15 @@
};
version = "4.7.6";
};
gitlab-styles = {
dependencies = ["rubocop" "rubocop-gitlab-security" "rubocop-rspec"];
source = {
remotes = ["https://rubygems.org"];
sha256 = "1k8xrkjx8rcny8p0gsp18wskvn1qbw4rfgdp1f6x0p4xp6dlhjf4";
type = "gem";
};
version = "2.0.0";
};
google-protobuf = {
source = {
remotes = ["https://rubygems.org"];
@ -184,6 +201,31 @@
};
version = "0.9.6";
};
parallel = {
source = {
remotes = ["https://rubygems.org"];
sha256 = "0qv2yj4sxr36ga6xdxvbq9h05hn10bwcbkqv6j6q1fiixhsdnnzd";
type = "gem";
};
version = "1.12.0";
};
parser = {
dependencies = ["ast"];
source = {
remotes = ["https://rubygems.org"];
sha256 = "130rfk8a2ws2fyq52hmi1n0xakylw39wv4x1qhai4z17x2b0k9cq";
type = "gem";
};
version = "2.4.0.0";
};
powerpack = {
source = {
remotes = ["https://rubygems.org"];
sha256 = "1fnn3fli5wkzyjl4ryh0k90316shqjfnhydmc7f8lqpi0q21va43";
type = "gem";
};
version = "0.1.1";
};
public_suffix = {
source = {
remotes = ["https://rubygems.org"];
@ -192,6 +234,58 @@
};
version = "2.0.5";
};
rainbow = {
dependencies = ["rake"];
source = {
remotes = ["https://rubygems.org"];
sha256 = "08w2ghc5nv0kcq5b257h7dwjzjz1pqcavajfdx2xjyxqsvh2y34w";
type = "gem";
};
version = "2.2.2";
};
rake = {
source = {
remotes = ["https://rubygems.org"];
sha256 = "0mfqgpp3m69s5v1rd51lfh5qpjwyia5p4rg337pw8c8wzm6pgfsw";
type = "gem";
};
version = "12.1.0";
};
rubocop = {
dependencies = ["parallel" "parser" "powerpack" "rainbow" "ruby-progressbar" "unicode-display_width"];
source = {
remotes = ["https://rubygems.org"];
sha256 = "1hpd7zcv4y9y750wj630abvmcjwv39dsrj1fjff60ik7gfri0xlz";
type = "gem";
};
version = "0.50.0";
};
rubocop-gitlab-security = {
dependencies = ["rubocop"];
source = {
remotes = ["https://rubygems.org"];
sha256 = "0aw9qmyc6xj6fi0jxp8m4apk358rd91z492ragn6jp4rghkqj5cy";
type = "gem";
};
version = "0.1.0";
};
rubocop-rspec = {
dependencies = ["rubocop"];
source = {
remotes = ["https://rubygems.org"];
sha256 = "1hf48ng67yswvshmv4cyysj1rs1z3fnvlycr50jdcgwlynpyxkhs";
type = "gem";
};
version = "1.17.0";
};
ruby-progressbar = {
source = {
remotes = ["https://rubygems.org"];
sha256 = "029kv0q3kfq53rjyak4ypn7196l8z4hflfmv4p5787n78z7baiqf";
type = "gem";
};
version = "1.8.3";
};
rugged = {
source = {
remotes = ["https://rubygems.org"];
@ -226,4 +320,12 @@
};
version = "1.2.2";
};
unicode-display_width = {
source = {
remotes = ["https://rubygems.org"];
sha256 = "12pi0gwqdnbx1lv5136v3vyr0img9wr0kxcn4wn54ipq4y41zxq8";
type = "gem";
};
version = "1.3.0";
};
}

View File

@ -1,14 +1,14 @@
{ stdenv, ruby, bundler, fetchFromGitLab, go }:
stdenv.mkDerivation rec {
version = "5.9.0";
version = "5.9.3";
name = "gitlab-shell-${version}";
srcs = fetchFromGitLab {
owner = "gitlab-org";
repo = "gitlab-shell";
rev = "v${version}";
sha256 = "1zjlwivksaqlfxxhxjgpqa3293nhijw76fj7nv0l11820wplc7yf";
sha256 = "12iil8ap9lbd7skj7xr2v6lsyjdd97svbmyj0n2j8m819fv0x27p";
};
buildInputs = [

View File

@ -3,7 +3,7 @@ index 0b11ce3..ffc3faf 100644
--- a/lib/gitlab_projects.rb
+++ b/lib/gitlab_projects.rb
@@ -8,7 +8,7 @@ require_relative 'gitlab_metrics'
require_relative 'gitlab_reference_counter'
require_relative 'gitlab_metrics'
class GitlabProjects
- GLOBAL_HOOKS_DIRECTORY = File.join(ROOT_PATH, 'hooks')
@ -15,7 +15,7 @@ diff --git a/lib/gitlab_shell.rb b/lib/gitlab_shell.rb
index e7d0254..181ec8a 100644
--- a/lib/gitlab_shell.rb
+++ b/lib/gitlab_shell.rb
@@ -163,7 +163,8 @@ class GitlabShell
@@ -188,7 +188,8 @@ class GitlabShell
end
# We use 'chdir: ROOT_PATH' to let the next executable know where config.yml is.

View File

@ -1,14 +1,14 @@
{ stdenv, fetchFromGitLab, git, go }:
stdenv.mkDerivation rec {
version = "3.0.0";
version = "3.2.0";
name = "gitlab-workhorse-${version}";
srcs = fetchFromGitLab {
owner = "gitlab-org";
repo = "gitlab-workhorse";
rev = "v${version}";
sha256 = "0lz3bgwww640c7gh97vf40a8h6cz4znscl0r00z6iiwkc0xxzp7j";
sha256 = "1ivqlhvmxhdb8359yh469zl45j00n94b53naqi8jx06kijfsdz4r";
};
buildInputs = [ git go ];

View File

@ -2,11 +2,11 @@ diff --git a/internal/git/command.go b/internal/git/command.go
index 0e5496c..5778294 100644
--- a/internal/git/command.go
+++ b/internal/git/command.go
@@ -16,6 +16,7 @@ func gitCommand(gl_id string, name string, args ...string) *exec.Cmd {
@@ -19,6 +19,7 @@ func gitCommand(gl_id string, name string, args ...string) *exec.Cmd {
cmd.Env = []string{
fmt.Sprintf("HOME=%s", os.Getenv("HOME")),
fmt.Sprintf("PATH=%s", os.Getenv("PATH")),
+ fmt.Sprintf("GITLAB_SHELL_CONFIG_PATH=%s", os.Getenv("GITLAB_SHELL_CONFIG_PATH")),
fmt.Sprintf("LD_LIBRARY_PATH=%s", os.Getenv("LD_LIBRARY_PATH")),
fmt.Sprintf("GL_ID=%s", gl_id),
fmt.Sprintf("GL_PROTOCOL=http"),
}

View File

@ -23,10 +23,10 @@ gem 'faraday', '~> 0.12'
# Authentication libraries
gem 'devise', '~> 4.2'
gem 'doorkeeper', '~> 4.2.0'
gem 'doorkeeper-openid_connect', '~> 1.1.0'
gem 'doorkeeper-openid_connect', '~> 1.2.0'
gem 'omniauth', '~> 1.4.2'
gem 'omniauth-auth0', '~> 1.4.1'
gem 'omniauth-azure-oauth2', '~> 0.0.6'
gem 'omniauth-azure-oauth2', '~> 0.0.9'
gem 'omniauth-cas3', '~> 1.1.4'
gem 'omniauth-facebook', '~> 4.0.0'
gem 'omniauth-github', '~> 1.1.1'
@ -105,7 +105,7 @@ gem 'fog-rackspace', '~> 0.1.1'
gem 'fog-aliyun', '~> 0.1.0'
# for Google storage
gem 'google-api-client', '~> 0.8.6'
gem 'google-api-client', '~> 0.13.6'
# for aws storage
gem 'unf', '~> 0.1.4'
@ -116,7 +116,7 @@ gem 'seed-fu', '~> 2.3.5'
# Markdown and HTML processing
gem 'html-pipeline', '~> 1.11.0'
gem 'deckar01-task_list', '2.0.0'
gem 'gitlab-markup', '~> 1.5.1'
gem 'gitlab-markup', '~> 1.6.2'
gem 'redcarpet', '~> 3.4'
gem 'RedCloth', '~> 4.3.2'
gem 'rdoc', '~> 4.2'
@ -239,7 +239,7 @@ gem 'rack-proxy', '~> 0.6.0'
gem 'sass-rails', '~> 5.0.6'
gem 'uglifier', '~> 2.7.2'
gem 'addressable', '~> 2.3.8'
gem 'addressable', '~> 2.5.2'
gem 'bootstrap-sass', '~> 3.3.0'
gem 'font-awesome-rails', '~> 4.7'
gem 'gemojione', '~> 3.3'
@ -281,7 +281,7 @@ group :metrics do
gem 'influxdb', '~> 0.2', require: false
# Prometheus
gem 'prometheus-client-mmap', '~>0.7.0.beta14'
gem 'prometheus-client-mmap', '~>0.7.0.beta18'
gem 'raindrops', '~> 0.18'
end
@ -356,12 +356,13 @@ end
group :test do
gem 'shoulda-matchers', '~> 3.1.2', require: false
gem 'email_spec', '~> 1.6.0'
gem 'json-schema', '~> 2.6.2'
gem 'json-schema', '~> 2.8.0'
gem 'webmock', '~> 2.3.2'
gem 'test_after_commit', '~> 1.1'
gem 'sham_rack', '~> 1.3.6'
gem 'timecop', '~> 0.8.0'
gem 'concurrent-ruby', '~> 1.0.5'
gem 'test-prof', '~> 0.2.5'
end
gem 'octokit', '~> 4.6.2'
@ -397,7 +398,7 @@ group :ed25519 do
end
# Gitaly GRPC client
gem 'gitaly-proto', '~> 0.33.0', require: 'gitaly'
gem 'gitaly-proto', '~> 0.39.0', require: 'gitaly'
gem 'toml-rb', '~> 0.3.15', require: false

View File

@ -47,7 +47,8 @@ GEM
adamantium (0.2.0)
ice_nine (~> 0.11.0)
memoizable (~> 0.4.0)
addressable (2.3.8)
addressable (2.5.2)
public_suffix (>= 2.0.2, < 4.0)
akismet (2.0.0)
allocations (1.0.5)
arel (6.0.4)
@ -64,10 +65,6 @@ GEM
attr_encrypted (3.0.3)
encryptor (~> 3.0.0)
attr_required (1.0.0)
autoparse (0.3.3)
addressable (>= 2.3.1)
extlib (>= 0.9.15)
multi_json (>= 1.0.0)
autoprefixer-rails (6.2.3)
execjs
json
@ -85,7 +82,7 @@ GEM
coderay (>= 1.0.0)
erubis (>= 2.6.6)
rack (>= 0.9.0)
bindata (2.3.5)
bindata (2.4.1)
binding_of_caller (0.7.2)
debug_inspector (>= 0.0.1)
bootstrap-sass (3.3.6)
@ -148,6 +145,8 @@ GEM
debugger-ruby_core_source (1.3.8)
deckar01-task_list (2.0.0)
html-pipeline
declarative (0.0.10)
declarative-option (0.1.0)
default_value_for (3.0.2)
activerecord (>= 3.2.0, < 5.1)
descendants_tracker (0.0.4)
@ -169,9 +168,9 @@ GEM
docile (1.1.5)
domain_name (0.5.20161021)
unf (>= 0.0.5, < 1.0.0)
doorkeeper (4.2.0)
doorkeeper (4.2.6)
railties (>= 4.2)
doorkeeper-openid_connect (1.1.2)
doorkeeper-openid_connect (1.2.0)
doorkeeper (~> 4.0)
json-jwt (~> 1.6)
dropzonejs-rails (0.7.2)
@ -190,13 +189,12 @@ GEM
excon (0.57.1)
execjs (2.6.0)
expression_parser (0.9.0)
extlib (0.9.16)
factory_girl (4.7.0)
activesupport (>= 3.0.0)
factory_girl_rails (4.7.0)
factory_girl (~> 4.7.0)
railties (>= 3.0.0)
faraday (0.12.1)
faraday (0.12.2)
multipart-post (>= 1.2, < 3)
faraday_middleware (0.11.0.1)
faraday (>= 0.7.4, < 1.0)
@ -277,7 +275,7 @@ GEM
po_to_json (>= 1.0.0)
rails (>= 3.2.0)
gherkin-ruby (0.3.2)
gitaly-proto (0.33.0)
gitaly-proto (0.39.0)
google-protobuf (~> 3.1)
grpc (~> 1.0)
github-linguist (4.7.6)
@ -290,12 +288,12 @@ GEM
flowdock (~> 0.7)
gitlab-grit (>= 2.4.1)
multi_json
gitlab-grit (2.8.1)
gitlab-grit (2.8.2)
charlock_holmes (~> 0.6)
diff-lcs (~> 1.1)
mime-types (>= 1.16, < 3)
mime-types (>= 1.16)
posix-spawn (~> 0.3)
gitlab-markup (1.5.1)
gitlab-markup (1.6.2)
gitlab_omniauth-ldap (2.0.4)
net-ldap (~> 0.16)
omniauth (~> 1.3)
@ -321,20 +319,16 @@ GEM
json
multi_json
request_store (>= 1.0)
google-api-client (0.8.7)
activesupport (>= 3.2, < 5.0)
addressable (~> 2.3)
autoparse (~> 0.3)
extlib (~> 0.9)
faraday (~> 0.9)
googleauth (~> 0.3)
launchy (~> 2.4)
multi_json (~> 1.10)
retriable (~> 1.4)
signet (~> 0.6)
google-api-client (0.13.6)
addressable (~> 2.5, >= 2.5.1)
googleauth (~> 0.5)
httpclient (>= 2.8.1, < 3.0)
mime-types (~> 3.0)
representable (~> 3.0)
retriable (>= 2.0, < 4.0)
google-protobuf (3.4.0.2)
googleauth (0.5.1)
faraday (~> 0.9)
googleauth (0.5.3)
faraday (~> 0.12)
jwt (~> 1.4)
logging (~> 2.0)
memoist (~> 0.12)
@ -359,7 +353,7 @@ GEM
rake
grape_logging (1.7.0)
grape
grpc (1.4.5)
grpc (1.6.0)
google-protobuf (~> 3.1)
googleauth (~> 0.5.1)
haml (4.0.7)
@ -418,14 +412,14 @@ GEM
railties (>= 4.2.0)
thor (>= 0.14, < 2.0)
json (1.8.6)
json-jwt (1.7.1)
json-jwt (1.7.2)
activesupport
bindata
multi_json (>= 1.3)
securecompare
url_safe_base64
json-schema (2.6.2)
addressable (~> 2.3.8)
json-schema (2.8.0)
addressable (>= 2.4)
jwt (1.5.6)
kaminari (1.0.1)
activesupport (>= 4.1.0)
@ -477,18 +471,20 @@ GEM
mail (2.6.6)
mime-types (>= 1.16, < 4)
mail_room (0.9.1)
memoist (0.15.0)
memoist (0.16.0)
memoizable (0.4.2)
thread_safe (~> 0.3, >= 0.3.1)
method_source (0.8.2)
mime-types (2.99.3)
mime-types (3.1)
mime-types-data (~> 3.2015)
mime-types-data (3.2016.0521)
mimemagic (0.3.0)
mini_mime (0.1.4)
mini_portile2 (2.3.0)
minitest (5.7.0)
mmap2 (2.2.7)
mousetrap-rails (1.4.6)
multi_json (1.12.1)
multi_json (1.12.2)
multi_xml (0.6.0)
multipart-post (2.0.0)
mustermann (1.0.0)
@ -518,10 +514,10 @@ GEM
omniauth-oauth2 (~> 1.1)
omniauth-authentiq (0.3.1)
omniauth-oauth2 (~> 1.3, >= 1.3.1)
omniauth-azure-oauth2 (0.0.6)
omniauth-azure-oauth2 (0.0.9)
jwt (~> 1.0)
omniauth (~> 1.0)
omniauth-oauth2 (~> 1.1)
omniauth-oauth2 (~> 1.4)
omniauth-cas3 (1.1.4)
addressable (~> 2.3)
nokogiri (~> 1.7, >= 1.7.1)
@ -547,7 +543,7 @@ GEM
omniauth-oauth (1.1.0)
oauth
omniauth (~> 1.0)
omniauth-oauth2 (1.3.1)
omniauth-oauth2 (1.4.0)
oauth2 (~> 1.0)
omniauth (~> 1.2)
omniauth-oauth2-generic (0.2.2)
@ -626,7 +622,7 @@ GEM
parser
unparser
procto (0.0.3)
prometheus-client-mmap (0.7.0.beta14)
prometheus-client-mmap (0.7.0.beta18)
mmap2 (~> 2.2, >= 2.2.7)
pry (0.10.4)
coderay (~> 1.1.0)
@ -637,6 +633,7 @@ GEM
pry (~> 0.10)
pry-rails (0.3.5)
pry (>= 0.9.10)
public_suffix (3.0.0)
pyu-ruby-sasl (0.0.3.3)
rack (1.6.8)
rack-accept (0.4.5)
@ -686,7 +683,7 @@ GEM
rainbow (2.2.2)
rake
raindrops (0.18.0)
rake (12.0.0)
rake (12.1.0)
rblineprof (0.3.6)
debugger-ruby_core_source (~> 1.3)
rbnacl (4.0.2)
@ -719,6 +716,10 @@ GEM
redis-store (~> 1.2.0)
redis-store (1.2.0)
redis (>= 2.2)
representable (3.0.4)
declarative (< 0.1.0)
declarative-option (< 0.2.0)
uber (< 0.2.0)
request_store (1.3.1)
responders (2.3.0)
railties (>= 4.2.0, < 5.1)
@ -726,7 +727,7 @@ GEM
http-cookie (>= 1.0.2, < 2.0)
mime-types (>= 1.16, < 4.0)
netrc (~> 0.8)
retriable (1.4.1)
retriable (3.1.1)
rinku (2.0.0)
rotp (2.1.2)
rouge (2.2.1)
@ -884,6 +885,7 @@ GEM
ffi
sysexits (1.2.0)
temple (0.7.7)
test-prof (0.2.5)
test_after_commit (1.1.0)
activerecord (>= 3.2)
text (1.3.1)
@ -904,12 +906,13 @@ GEM
tzinfo (1.2.3)
thread_safe (~> 0.1)
u2f (0.2.1)
uber (0.1.0)
uglifier (2.7.2)
execjs (>= 0.3.0)
json (>= 1.8.0)
unf (0.1.4)
unf_ext
unf_ext (0.0.7.2)
unf_ext (0.0.7.4)
unicode-display_width (1.3.0)
unicorn (5.1.0)
kgio (~> 2.6)
@ -965,7 +968,7 @@ DEPENDENCIES
activerecord-nulldb-adapter
activerecord_sane_schema_dumper (= 0.2)
acts-as-taggable-on (~> 4.0)
addressable (~> 2.3.8)
addressable (~> 2.5.2)
akismet (~> 2.0)
allocations (~> 1.0)
asana (~> 0.6.0)
@ -1002,7 +1005,7 @@ DEPENDENCIES
devise-two-factor (~> 3.0.0)
diffy (~> 3.1.0)
doorkeeper (~> 4.2.0)
doorkeeper-openid_connect (~> 1.1.0)
doorkeeper-openid_connect (~> 1.2.0)
dropzonejs-rails (~> 0.7.1)
email_reply_trimmer (~> 0.1)
email_spec (~> 1.6.0)
@ -1027,15 +1030,15 @@ DEPENDENCIES
gettext (~> 3.2.2)
gettext_i18n_rails (~> 1.8.0)
gettext_i18n_rails_js (~> 1.2.0)
gitaly-proto (~> 0.33.0)
gitaly-proto (~> 0.39.0)
github-linguist (~> 4.7.0)
gitlab-flowdock-git-hook (~> 1.0.1)
gitlab-markup (~> 1.5.1)
gitlab-markup (~> 1.6.2)
gitlab_omniauth-ldap (~> 2.0.4)
gollum-lib (~> 4.2)
gollum-rugged_adapter (~> 0.4.4)
gon (~> 6.1.0)
google-api-client (~> 0.8.6)
google-api-client (~> 0.13.6)
gpgme
grape (~> 1.0)
grape-entity (~> 0.6.0)
@ -1053,7 +1056,7 @@ DEPENDENCIES
jira-ruby (~> 1.4)
jquery-atwho-rails (~> 1.3.2)
jquery-rails (~> 4.1.0)
json-schema (~> 2.6.2)
json-schema (~> 2.8.0)
jwt (~> 1.5.6)
kaminari (~> 1.0)
knapsack (~> 1.11.0)
@ -1077,7 +1080,7 @@ DEPENDENCIES
omniauth (~> 1.4.2)
omniauth-auth0 (~> 1.4.1)
omniauth-authentiq (~> 0.3.1)
omniauth-azure-oauth2 (~> 0.0.6)
omniauth-azure-oauth2 (~> 0.0.9)
omniauth-cas3 (~> 1.1.4)
omniauth-facebook (~> 4.0.0)
omniauth-github (~> 1.1.1)
@ -1103,7 +1106,7 @@ DEPENDENCIES
pg (~> 0.18.2)
poltergeist (~> 1.9.0)
premailer-rails (~> 1.9.7)
prometheus-client-mmap (~> 0.7.0.beta14)
prometheus-client-mmap (~> 0.7.0.beta18)
pry-byebug (~> 3.4.1)
pry-rails (~> 0.3.4)
rack-attack (~> 4.4.1)
@ -1166,6 +1169,7 @@ DEPENDENCIES
stackprof (~> 0.2.10)
state_machines-activerecord (~> 0.4.0)
sys-filesystem (~> 1.1.6)
test-prof (~> 0.2.5)
test_after_commit (~> 1.1)
thin (~> 1.7.0)
timecop (~> 0.8.0)

View File

@ -18,11 +18,11 @@ let
};
};
version = "10.0.2";
version = "10.1.1";
gitlabDeb = fetchurl {
url = "https://packages.gitlab.com/gitlab/gitlab-ce/packages/debian/jessie/gitlab-ce_${version}-ce.0_amd64.deb/download";
sha256 = "0jsqjarvjzbxv1yiddzp5xwsqqrq5cvam0xn749p1vzqhcp8pahc";
sha256 = "0xvzxcygy6ffqm24rk6v9gs6g9r744vpwwvk9d00wjla7hwmq3w2";
};
in
@ -38,7 +38,7 @@ stdenv.mkDerivation rec {
owner = "gitlabhq";
repo = "gitlabhq";
rev = "v${version}";
sha256 = "1602d6nkb41gg80n6p0wqxrjsn79s0z3817461d8dw2ha2dmbl34";
sha256 = "0p118msad6l12pd4q3vkvjggiiasbkh6pnl94riqyb5zkb7yrb1a";
};
patches = [

View File

@ -115,12 +115,13 @@
version = "0.2.0";
};
addressable = {
dependencies = ["public_suffix"];
source = {
remotes = ["https://rubygems.org"];
sha256 = "1533axm85gpz267km9gnfarf9c78g2scrysd6b8yw33vmhkz2km6";
sha256 = "0viqszpkggqi8hq87pqp0xykhvz60g99nwmkwsb0v45kc2liwxvk";
type = "gem";
};
version = "2.3.8";
version = "2.5.2";
};
akismet = {
source = {
@ -205,15 +206,6 @@
};
version = "1.0.0";
};
autoparse = {
dependencies = ["addressable" "extlib" "multi_json"];
source = {
remotes = ["https://rubygems.org"];
sha256 = "1q5wkd8gc2ckmgry9fba4b8vxb5kr8k8gqq2wycbirgq06mbllb6";
type = "gem";
};
version = "0.3.3";
};
autoprefixer-rails = {
dependencies = ["execjs" "json"];
source = {
@ -292,10 +284,10 @@
bindata = {
source = {
remotes = ["https://rubygems.org"];
sha256 = "07i51jzq9iamw40xmmcgkrdq4m8f0vb5gp53p6q1vggj7z53q3v7";
sha256 = "0anbg203zjr4crql20ss5b9xg2c6a7j8nm6hs8w3ll1h1akkpp2z";
type = "gem";
};
version = "2.3.5";
version = "2.4.1";
};
binding_of_caller = {
dependencies = ["debug_inspector"];
@ -592,6 +584,22 @@
};
version = "2.0.0";
};
declarative = {
source = {
remotes = ["https://rubygems.org"];
sha256 = "0642xvwzzbgi3kp1bg467wma4g3xqrrn0sk369hjam7w579gnv5j";
type = "gem";
};
version = "0.0.10";
};
declarative-option = {
source = {
remotes = ["https://rubygems.org"];
sha256 = "1g4ibxq566f1frnhdymzi9hxxcm4g2gw4n21mpjk2mhwym4q6l0p";
type = "gem";
};
version = "0.1.0";
};
default_value_for = {
dependencies = ["activerecord"];
source = {
@ -665,19 +673,19 @@
dependencies = ["railties"];
source = {
remotes = ["https://rubygems.org"];
sha256 = "0hs8r280k7a1kibzxrhifjps880n43jfrybf4mqpffw669jrwk3v";
sha256 = "0r5rfvjjnlf9cn97cdrfw260zkg785k4197xqidgb35445k62mah";
type = "gem";
};
version = "4.2.0";
version = "4.2.6";
};
doorkeeper-openid_connect = {
dependencies = ["doorkeeper" "json-jwt"];
source = {
remotes = ["https://rubygems.org"];
sha256 = "1pla85j5wxra0k9rhj04g2ai5d5jg97fiavi0s9v2hjba2l54cni";
sha256 = "13k0xlr1grjj8ri26qy2zwbgi3fqxinvnygh53bnyi9qcynx5827";
type = "gem";
};
version = "1.1.2";
version = "1.2.0";
};
dropzonejs-rails = {
dependencies = ["rails"];
@ -778,14 +786,6 @@
};
version = "0.9.0";
};
extlib = {
source = {
remotes = ["https://rubygems.org"];
sha256 = "1cbw3vgb189z3vfc1arijmsd604m3w5y5xvdfkrblc9qh7sbk2rh";
type = "gem";
};
version = "0.9.16";
};
factory_girl = {
dependencies = ["activesupport"];
source = {
@ -808,10 +808,10 @@
dependencies = ["multipart-post"];
source = {
remotes = ["https://rubygems.org"];
sha256 = "1wkx9844vacsk2229xbc27djf6zw15kqd60ifr78whf9mp9v6l03";
sha256 = "157c4cmb5g1b3ny6k9qf9z57rfijl54fcq3hnqqf6g31g1m096b2";
type = "gem";
};
version = "0.12.1";
version = "0.12.2";
};
faraday_middleware = {
dependencies = ["faraday"];
@ -1071,10 +1071,10 @@
dependencies = ["google-protobuf" "grpc"];
source = {
remotes = ["https://rubygems.org"];
sha256 = "0f15idw1850kwi0na6x3xlk13ljwx3mpfnxfv58631cmb3ac7wf8";
sha256 = "0irc3yfyr5li2ki6w03znsklnk0qx3srk4wrb7jav042c4kw325k";
type = "gem";
};
version = "0.33.0";
version = "0.39.0";
};
github-linguist = {
dependencies = ["charlock_holmes" "escape_utils" "mime-types" "rugged"];
@ -1106,18 +1106,18 @@
dependencies = ["charlock_holmes" "diff-lcs" "mime-types" "posix-spawn"];
source = {
remotes = ["https://rubygems.org"];
sha256 = "0lf1cr6pzqrbnxiiwym6q74b1a2ihdi91dynajk8hi1p093hl66n";
sha256 = "0xgs3l81ghlc5nm75n0pz7b2cj3hpscfq5iy27c483nnjn2v5mc4";
type = "gem";
};
version = "2.8.1";
version = "2.8.2";
};
gitlab-markup = {
source = {
remotes = ["https://rubygems.org"];
sha256 = "1aam7zvvbai5nv7vf0c0640pvik6s71f276lip4yb4slbg0pfpn2";
sha256 = "114jfbyyfwad609k1l1fcmbzszb3frdchh83gdwndkglllvprhjz";
type = "gem";
};
version = "1.5.1";
version = "1.6.2";
};
gitlab_omniauth-ldap = {
dependencies = ["net-ldap" "omniauth" "pyu-ruby-sasl" "rubyntlm"];
@ -1174,13 +1174,13 @@
version = "6.1.0";
};
google-api-client = {
dependencies = ["activesupport" "addressable" "autoparse" "extlib" "faraday" "googleauth" "launchy" "multi_json" "retriable" "signet"];
dependencies = ["addressable" "googleauth" "httpclient" "mime-types" "representable" "retriable"];
source = {
remotes = ["https://rubygems.org"];
sha256 = "11wr57j9fp6x6fym4k1a7jqp72qgc8l24mfwb4y55bbvdmkv1b2d";
sha256 = "0ac9qa0kwnirkvwz2w9zf07lqcgbmnvgd1wg8xxyjbadwsbpyf1y";
type = "gem";
};
version = "0.8.7";
version = "0.13.6";
};
google-protobuf = {
source = {
@ -1194,10 +1194,10 @@
dependencies = ["faraday" "jwt" "logging" "memoist" "multi_json" "os" "signet"];
source = {
remotes = ["https://rubygems.org"];
sha256 = "1nzkg63s161c6jsia92c1jfwpayzbpwn588smd286idn07y0az2m";
sha256 = "1xpmvrzhczak25nm0k3r9aa083lmfnzi94mir3g1xyrgzz66vxli";
type = "gem";
};
version = "0.5.1";
version = "0.5.3";
};
gpgme = {
dependencies = ["mini_portile2"];
@ -1248,10 +1248,10 @@
dependencies = ["google-protobuf" "googleauth"];
source = {
remotes = ["https://rubygems.org"];
sha256 = "1zhci260088zlghpaz6ania1blz1dd7lgklsjnqk1vcymhpr6b38";
sha256 = "056ipqai887x5jpbgcc215kdi0lfqjzcjbx3hx11cjrfww01zc52";
type = "gem";
};
version = "1.4.5";
version = "1.6.0";
};
haml = {
dependencies = ["tilt"];
@ -1471,19 +1471,19 @@
dependencies = ["activesupport" "bindata" "multi_json" "securecompare" "url_safe_base64"];
source = {
remotes = ["https://rubygems.org"];
sha256 = "1ylvlnb6assan9qkhz1vq1gbfwxg35q9a8f8qhlyx0fak5fyks23";
sha256 = "15a3v498lvsshzgjnk2dmyvjv87y3lffq71axj5xq3iz4mp1r4b2";
type = "gem";
};
version = "1.7.1";
version = "1.7.2";
};
json-schema = {
dependencies = ["addressable"];
source = {
remotes = ["https://rubygems.org"];
sha256 = "15bva4w940ckan3q89in5f98s8zz77nxglylgm98697wa4fbfqp9";
sha256 = "11di8qyam6bmqn0fvvvf3crgaqy4sil0d406ymx0jacn3ff98ymz";
type = "gem";
};
version = "2.6.2";
version = "2.8.0";
};
jwt = {
source = {
@ -1662,10 +1662,10 @@
memoist = {
source = {
remotes = ["https://rubygems.org"];
sha256 = "0yd3rd7bnbhn9n47qlhcii5z89liabdjhy3is3h6gq77gyfk4f5q";
sha256 = "0pq8fhqh8w25qcw9v3vzfb0i6jp0k3949ahxc3wrwz2791dpbgbh";
type = "gem";
};
version = "0.15.0";
version = "0.16.0";
};
memoizable = {
dependencies = ["thread_safe"];
@ -1685,12 +1685,21 @@
version = "0.8.2";
};
mime-types = {
dependencies = ["mime-types-data"];
source = {
remotes = ["https://rubygems.org"];
sha256 = "03j98xr0qw2p2jkclpmk7pm29yvmmh0073d8d43ajmr0h3w7i5l9";
sha256 = "0087z9kbnlqhci7fxh9f6il63hj1k02icq2rs0c6cppmqchr753m";
type = "gem";
};
version = "2.99.3";
version = "3.1";
};
mime-types-data = {
source = {
remotes = ["https://rubygems.org"];
sha256 = "04my3746hwa4yvbx1ranhfaqkgf6vavi1kyijjnw8w3dy37vqhkm";
type = "gem";
};
version = "3.2016.0521";
};
mimemagic = {
source = {
@ -1743,10 +1752,10 @@
multi_json = {
source = {
remotes = ["https://rubygems.org"];
sha256 = "1wpc23ls6v2xbk3l1qncsbz16npvmw8p0b38l8czdzri18mp51xk";
sha256 = "1raim9ddjh672m32psaa9niw67ywzjbxbdb8iijx3wv9k5b0pk2x";
type = "gem";
};
version = "1.12.1";
version = "1.12.2";
};
multi_xml = {
source = {
@ -1895,10 +1904,10 @@
dependencies = ["jwt" "omniauth" "omniauth-oauth2"];
source = {
remotes = ["https://rubygems.org"];
sha256 = "0qay454zvyas8xfnfkycqpjkafaq5pw4gaji176cdfw0blhviz0s";
sha256 = "0ck5616fjik0dw89xvak1mi8ijcv10lsh6n9h4107l5dys2g3jfx";
type = "gem";
};
version = "0.0.6";
version = "0.0.9";
};
omniauth-cas3 = {
dependencies = ["addressable" "nokogiri" "omniauth"];
@ -1976,10 +1985,10 @@
dependencies = ["oauth2" "omniauth"];
source = {
remotes = ["https://rubygems.org"];
sha256 = "0mskwlw5ibx9mz7ywqji6mm56ikf7mglbnfc02qhg6ry527jsxdm";
sha256 = "0aykbg5qfm37ywrq34dydrhxa5jwpski71dpspgp2fi6dinx09f5";
type = "gem";
};
version = "1.3.1";
version = "1.4.0";
};
omniauth-oauth2-generic = {
dependencies = ["omniauth-oauth2"];
@ -2247,10 +2256,10 @@
dependencies = ["mmap2"];
source = {
remotes = ["https://rubygems.org"];
sha256 = "1r9s30hypcpw4abxlzcjlkcwkckqvr5sbph3blbl0rq2r8c8h25p";
sha256 = "1fgkilpiha338mvfkj5rwhny3vld0nb3v1vgbrlxbhnvch26wakh";
type = "gem";
};
version = "0.7.0.beta14";
version = "0.7.0.beta18";
};
pry = {
dependencies = ["coderay" "method_source" "slop"];
@ -2279,6 +2288,14 @@
};
version = "0.3.5";
};
public_suffix = {
source = {
remotes = ["https://rubygems.org"];
sha256 = "0snaj1gxfib4ja1mvy3dzmi7am73i0mkqr0zkz045qv6509dhj5f";
type = "gem";
};
version = "3.0.0";
};
pyu-ruby-sasl = {
source = {
remotes = ["https://rubygems.org"];
@ -2431,10 +2448,10 @@
rake = {
source = {
remotes = ["https://rubygems.org"];
sha256 = "01j8fc9bqjnrsxbppncai05h43315vmz9fwg28qdsgcjw9ck1d7n";
sha256 = "0mfqgpp3m69s5v1rd51lfh5qpjwyia5p4rg337pw8c8wzm6pgfsw";
type = "gem";
};
version = "12.0.0";
version = "12.1.0";
};
rblineprof = {
dependencies = ["debugger-ruby_core_source"];
@ -2575,6 +2592,15 @@
};
version = "1.2.0";
};
representable = {
dependencies = ["declarative" "declarative-option" "uber"];
source = {
remotes = ["https://rubygems.org"];
sha256 = "0qm9rgi1j5a6nv726ka4mmixivlxfsg91h8rpp72wwd4vqbkkm07";
type = "gem";
};
version = "3.0.4";
};
request_store = {
source = {
remotes = ["https://rubygems.org"];
@ -2604,10 +2630,10 @@
retriable = {
source = {
remotes = ["https://rubygems.org"];
sha256 = "1cmhwgv5r4vn7iqy4bfbnbb73pzl8ik69zrwq9vdim45v8b13gsj";
sha256 = "0pnriyn9zh120hxm92vb12hfsf7c98nawyims1shxj3ldpl0l3ar";
type = "gem";
};
version = "1.4.1";
version = "3.1.1";
};
rinku = {
source = {
@ -3195,6 +3221,14 @@
};
version = "0.7.7";
};
test-prof = {
source = {
remotes = ["https://rubygems.org"];
sha256 = "08nvn3c1mzgcjgk9lr3py0zjd8fjjrm3ncn9rpqkfbx429mgw2l3";
type = "gem";
};
version = "0.2.5";
};
test_after_commit = {
dependencies = ["activerecord"];
source = {
@ -3296,6 +3330,14 @@
};
version = "0.2.1";
};
uber = {
source = {
remotes = ["https://rubygems.org"];
sha256 = "1p1mm7mngg40x05z52md3mbamkng0zpajbzqjjwmsyw0zw3v9vjv";
type = "gem";
};
version = "0.1.0";
};
uglifier = {
dependencies = ["execjs" "json"];
source = {
@ -3317,10 +3359,10 @@
unf_ext = {
source = {
remotes = ["https://rubygems.org"];
sha256 = "04d13bp6lyg695x94whjwsmzc2ms72d94vx861nx1y40k3817yp8";
sha256 = "14hr2dzqh33kqc0xchs8l05pf3kjcayvad4z1ip5rdjxrkfk8glb";
type = "gem";
};
version = "0.0.7.2";
version = "0.0.7.4";
};
unicode-display_width = {
source = {

View File

@ -14,7 +14,7 @@ diff --git a/Gemfile.lock b/Gemfile.lock
index 38944248f9..08ce4486ba 100644
--- a/Gemfile.lock
+++ b/Gemfile.lock
@@ -32,6 +32,8 @@ GEM
@@ -33,6 +33,8 @@ GEM
activemodel (= 4.2.8)
activesupport (= 4.2.8)
arel (~> 6.0)
@ -23,11 +23,11 @@ index 38944248f9..08ce4486ba 100644
activerecord_sane_schema_dumper (0.2)
rails (>= 4, < 5)
activesupport (4.2.8)
@@ -926,6 +928,7 @@ PLATFORMS
@@ -963,6 +965,7 @@ PLATFORMS
DEPENDENCIES
RedCloth (~> 4.3.2)
ace-rails-ap (~> 4.1.0)
+ activerecord-nulldb-adapter
activerecord_sane_schema_dumper (= 0.2)
acts-as-taggable-on (~> 4.0)
addressable (~> 2.3.8)
addressable (~> 2.5.2)

View File

@ -27,20 +27,20 @@ diff --git a/config/gitlab.yml.example b/config/gitlab.yml.example
index 0b33783869..cd4e41d9bd 100644
--- a/config/gitlab.yml.example
+++ b/config/gitlab.yml.example
@@ -521,7 +521,7 @@ production: &base
@@ -574,7 +574,7 @@ production: &base
# CAUTION!
# Use the default values unless you really know what you are doing
git:
- bin_path: /usr/bin/git
+ bin_path: git
# The next value is the maximum memory size grit can use
# Given in number of bytes per git object (e.g. a commit)
# This value can be increased if you have very large commits
## Webpack settings
# If enabled, this will tell rails to serve frontend assets from the webpack-dev-server running
diff --git a/config/initializers/1_settings.rb b/config/initializers/1_settings.rb
index 8ddf8e4d2e..559cf9adf7 100644
--- a/config/initializers/1_settings.rb
+++ b/config/initializers/1_settings.rb
@@ -219,7 +219,7 @@ Settings.gitlab['user'] ||= 'git'
@@ -252,7 +252,7 @@ Settings.gitlab['user'] ||= 'git'
Settings.gitlab['user_home'] ||= begin
Etc.getpwnam(Settings.gitlab['user']).dir
rescue ArgumentError # no user configured
@ -49,15 +49,15 @@ index 8ddf8e4d2e..559cf9adf7 100644
end
Settings.gitlab['time_zone'] ||= nil
Settings.gitlab['signup_enabled'] ||= true if Settings.gitlab['signup_enabled'].nil?
@@ -454,7 +454,7 @@ Settings.backup['upload']['storage_class'] ||= nil
@@ -491,7 +491,7 @@ Settings.backup['upload']['storage_class'] ||= nil
# Git
#
Settings['git'] ||= Settingslogic.new({})
Settings.git['max_size'] ||= 20971520 # 20.megabytes
-Settings.git['bin_path'] ||= '/usr/bin/git'
+Settings.git['bin_path'] ||= 'git'
Settings.git['timeout'] ||= 10
-Settings.git['bin_path'] ||= '/usr/bin/git'
+Settings.git['bin_path'] ||= 'git'
# Important: keep the satellites.path setting until GitLab 9.0 at
# least. This setting is fed to 'rm -rf' in
diff --git a/lib/gitlab/logger.rb b/lib/gitlab/logger.rb
index 59b21149a9..4f4a39a06c 100644
--- a/lib/gitlab/logger.rb

View File

@ -28,6 +28,9 @@ stdenv.mkDerivation rec {
homepage = https://i3wm.org/i3lock/;
maintainers = with maintainers; [ garbas malyn ];
license = licenses.bsd3;
platforms = platforms.all;
# Needs the SSE2 instruction set. See upstream issue
# https://github.com/chrjguill/i3lock-color/issues/44
platforms = platforms.i686 ++ platforms.x86_64;
};
}

View File

@ -1,5 +1,5 @@
#! @shell@
set -eu -o pipefail
set -eu -o pipefail +o posix
shopt -s nullglob
if (( "${NIX_DEBUG:-0}" >= 7 )); then

View File

@ -286,7 +286,7 @@ stdenv.mkDerivation {
*) echo "Multiple dynamic linkers found for platform '${targetPlatform.config}'." >&2;;
esac
if [ -n "$dynamicLinker" ]; then
if [ -n "''${dynamicLinker:-}" ]; then
echo $dynamicLinker > $out/nix-support/dynamic-linker
'' + (if targetPlatform.isDarwin then ''

View File

@ -1,5 +1,5 @@
#! @shell@
set -eu -o pipefail
set -eu -o pipefail +o posix
shopt -s nullglob
if (( "${NIX_DEBUG:-0}" >= 7 )); then

View File

@ -1,5 +1,5 @@
#! @shell@
set -eu -o pipefail
set -eu -o pipefail +o posix
shopt -s nullglob
if (( "${NIX_DEBUG:-0}" >= 7 )); then

View File

@ -1,5 +1,5 @@
#! @shell@
set -eu -o pipefail
set -eu -o pipefail +o posix
shopt -s nullglob
if (( "${NIX_DEBUG:-0}" >= 7 )); then

View File

@ -84,6 +84,9 @@ in
, # Meta information, if any.
meta ? {}
# Passthru information, if any.
, passthru ? {}
}:
assert builtins.isList urls;
@ -139,4 +142,5 @@ else stdenv.mkDerivation {
'';
inherit meta;
inherit passthru;
}

View File

@ -4,7 +4,7 @@ let
rootHints = fetchurl {
url = "https://www.internic.net/domain/named.root";
sha256 = "01n4bqf95kbvig1hahqzmmdkpn4v7mzfc1p944gq922i5j3fjr92";
sha256 = "0vdrff4l8s8grif52dnh091s8qydhh88k25zqd9rj66sf1qwcwxl";
};
rootKey = ./root.key;
@ -13,7 +13,7 @@ let
in
stdenv.mkDerivation {
name = "dns-root-data-2017-08-29";
name = "dns-root-data-2017-10-24";
buildCommand = ''
mkdir $out

View File

@ -1,10 +1,10 @@
# Autogenerated by maintainers/scripts/gnome.sh update
fetchurl: {
name = "gitg-3.24.0";
name = "gitg-3.26.0";
src = fetchurl {
url = mirror://gnome/sources/gitg/3.24/gitg-3.24.0.tar.xz;
sha256 = "3e4ec4a8ae83bc7ced8c7610927ade70e37daa5e8beeb4f357a6ea30b4cc951e";
url = mirror://gnome/sources/gitg/3.26/gitg-3.26.0.tar.xz;
sha256 = "26730d437d6a30d6e341b9e8da99d2134dce4b96022c195609f45062f82b54d5";
};
}

View File

@ -1,12 +1,14 @@
{ stdenv, fetchurl, gnome3, libtool, pkgconfig, vala_0_32, libssh2
{ stdenv, fetchurl, gnome3, libtool, pkgconfig, vala, libssh2
, gtk_doc, gobjectIntrospection, libgit2, glib }:
stdenv.mkDerivation rec {
inherit (import ./src.nix fetchurl) name src;
nativeBuildInputs = [ pkgconfig ];
buildInputs = [ gnome3.gnome_common libtool vala_0_32 libssh2
gtk_doc gobjectIntrospection libgit2 glib ];
nativeBuildInputs = [
gnome3.gnome_common libtool pkgconfig vala gtk_doc gobjectIntrospection
];
buildInputs = [ libssh2 libgit2 glib ];
meta = with stdenv.lib; {
platforms = platforms.linux;

View File

@ -1,12 +1,10 @@
# Autogenerated by maintainers/scripts/gnome.sh update
fetchurl: rec {
major = "0.25";
minor = "0";
name = "libgit2-glib-${major}.${minor}";
fetchurl: {
name = "libgit2-glib-0.26.0";
src = fetchurl {
url = "mirror://gnome/sources/libgit2-glib/${major}/${name}.tar.xz";
sha256 = "0rf5gcr3khp35wj9ax9cbyq5j3iiwa1l0fi16w6sfgmrryd6n9aa";
url = mirror://gnome/sources/libgit2-glib/0.26/libgit2-glib-0.26.0.tar.xz;
sha256 = "06b16cfcc3a53d9804858618d690e5509e9af2e2245b75f0479cadbbe39745c3";
};
}

View File

@ -1,37 +1,40 @@
{ mkDerivation, aeson, ansi-terminal, ansi-wl-pprint, base, binary
, bytestring, containers, directory, edit-distance, fetchgit
, filemanip, filepath, HUnit, indents, mtl, optparse-applicative
, parsec, pretty, process, QuickCheck, quickcheck-io
, regex-applicative, split, stdenv, tasty, tasty-golden
, tasty-hunit, tasty-quickcheck, text, union-find, wl-pprint
{ mkDerivation, ansi-terminal, ansi-wl-pprint, base, binary
, bytestring, Cabal, cmark, containers, directory, fetchgit
, filepath, free, HUnit, indents, json, mtl, optparse-applicative
, parsec, process, QuickCheck, quickcheck-io, split, stdenv, tasty
, tasty-golden, tasty-hunit, tasty-quickcheck, text
}:
mkDerivation {
pname = "elm-format";
version = "0.5.2";
version = "0.7.0";
src = fetchgit {
url = "http://github.com/avh4/elm-format";
sha256 = "0lman7h6wr75y90javcc4y1scvwgv125gqqaqvfrd5xrfmm43gg8";
rev = "e452ed9342620e7bb0bc822983b96411d57143ef";
sha256 = "1snl2lrrzdwgzi68agi3sdw84aslj04pzzxpm1mam9ic6dzhn3jf";
rev = "da4b415c6a2b7e77b7d9f00beca3e45230e603fb";
};
isLibrary = false;
doHaddock = false;
isLibrary = true;
isExecutable = true;
executableHaskellDepends = [
aeson ansi-terminal ansi-wl-pprint base binary bytestring
containers directory edit-distance filemanip filepath indents mtl
optparse-applicative parsec pretty process regex-applicative split
text
setupHaskellDepends = [ base Cabal directory filepath process ];
libraryHaskellDepends = [
ansi-terminal ansi-wl-pprint base binary bytestring containers
directory filepath free indents json mtl optparse-applicative
parsec process split text
];
executableHaskellDepends = [ base ];
testHaskellDepends = [
aeson ansi-terminal ansi-wl-pprint base binary bytestring
containers directory edit-distance filemanip filepath HUnit indents
mtl optparse-applicative parsec pretty process QuickCheck
quickcheck-io regex-applicative split tasty tasty-golden
tasty-hunit tasty-quickcheck text union-find wl-pprint
base cmark containers HUnit mtl parsec QuickCheck quickcheck-io
split tasty tasty-golden tasty-hunit tasty-quickcheck text
];
jailbreak = true;
postInstall = ''
ln -s $out/bin/elm-format-0.18 $out/bin/elm-format
'';
postPatch = ''
sed -i "s|desc <-.*||" ./Setup.hs
sed -i "s|gitDescribe = .*|gitDescribe = \\\\\"da4b415c\\\\\"\"|" ./Setup.hs
'';
homepage = http://elm-lang.org;
description = "A source code formatter for Elm";
license = stdenv.lib.licenses.bsd3;

View File

@ -153,6 +153,7 @@ stdenv.mkDerivation ({
# target libraries and tools.
++ optional langAda ../gnat-cflags.patch
++ optional langVhdl ./ghdl-ortho-cflags.patch
++ [ ../struct-ucontext-4.5.patch ] # glibc-2.26
;
postPatch =

View File

@ -78,7 +78,11 @@ let version = "4.8.5";
sha256 = "01jd7pdarh54ki498g6sz64ijl9a1l5f9v8q2696aaxalvh2vwzl";
excludes = [ "gcc/cp/ChangeLog" ];
})]
;
++ [ # glibc-2.26
../struct-ucontext-4.8.patch
../sigsegv-not-declared.patch
../res_state-not-declared.patch
];
javaEcj = fetchurl {
# The `$(top_srcdir)/ecj.jar' file is automatically picked up at

View File

@ -72,6 +72,7 @@ let version = "4.9.4";
# target libraries and tools.
++ optional langAda ../gnat-cflags.patch
++ optional langFortran ../gfortran-driving.patch
++ [ ../struct-ucontext.patch ../struct-sigaltstack-4.9.patch ] # glibc-2.26
;
javaEcj = fetchurl {

View File

@ -72,7 +72,9 @@ let version = "6.4.0";
# The GNAT Makefiles did not pay attention to CFLAGS_FOR_TARGET for its
# target libraries and tools.
++ optional langAda ../gnat-cflags.patch
++ optional langFortran ../gfortran-driving.patch;
++ optional langFortran ../gfortran-driving.patch
++ [ ../struct-ucontext.patch ../struct-sigaltstack.patch ] # glibc-2.26
;
javaEcj = fetchurl {
# The `$(top_srcdir)/ecj.jar' file is automatically picked up at

View File

@ -0,0 +1,13 @@
diff --git a/libsanitizer/tsan/tsan_platform_linux.cc b/libsanitizer/tsan/tsan_platform_linux.cc
index fe69430..49f5270 100644
--- a/libsanitizer/tsan/tsan_platform_linux.cc
+++ b/libsanitizer/tsan/tsan_platform_linux.cc
@@ -351,7 +351,7 @@ bool IsGlobalVar(uptr addr) {
// closes within glibc. The code is a pure hack.
int ExtractResolvFDs(void *state, int *fds, int nfd) {
int cnt = 0;
- __res_state *statp = (__res_state*)state;
+ struct __res_state *statp = (struct __res_state*)state;
for (int i = 0; i < MAXNS && cnt < nfd; i++) {
if (statp->_u._ext.nsaddrs[i] && statp->_u._ext.nssocks[i] != -1)
fds[cnt++] = statp->_u._ext.nssocks[i];

View File

@ -0,0 +1,13 @@
error: 'SIGSEGV' was not declared in this scope
diff --git a/libsanitizer/asan/asan_linux.cc b/libsanitizer/asan/asan_linux.cc
index 0692eb1..472f734 100644
--- a/libsanitizer/asan/asan_linux.cc
+++ b/libsanitizer/asan/asan_linux.cc
@@ -26,6 +26,7 @@
#include <sys/types.h>
#include <fcntl.h>
#include <pthread.h>
+#include <signal.h>
#include <stdio.h>
#include <unistd.h>
#include <unwind.h>

View File

@ -0,0 +1,78 @@
hand-resolved trivial conflicts for 4.9 from the upstream patch
72edc2c02f8b4768ad660f46a1c7e2400c0a8e06
diff --git a/libsanitizer/sanitizer_common/sanitizer_linux.cc b/libsanitizer/sanitizer_common/sanitizer_linux.cc
index 69c9c10..8e53673 100644
--- a/libsanitizer/sanitizer_common/sanitizer_linux.cc
+++ b/libsanitizer/sanitizer_common/sanitizer_linux.cc
@@ -599,8 +599,7 @@ uptr internal_prctl(int option, uptr arg2, uptr arg3, uptr arg4, uptr arg5) {
return internal_syscall(__NR_prctl, option, arg2, arg3, arg4, arg5);
}
-uptr internal_sigaltstack(const struct sigaltstack *ss,
- struct sigaltstack *oss) {
+uptr internal_sigaltstack(const void *ss, void *oss) {
return internal_syscall(__NR_sigaltstack, (uptr)ss, (uptr)oss);
}
diff --git a/libsanitizer/sanitizer_common/sanitizer_linux.h b/libsanitizer/sanitizer_common/sanitizer_linux.h
index 6422df1..8e111d1 100644
--- a/libsanitizer/sanitizer_common/sanitizer_linux.h
+++ b/libsanitizer/sanitizer_common/sanitizer_linux.h
@@ -18,7 +18,6 @@
#include "sanitizer_platform_limits_posix.h"
struct link_map; // Opaque type returned by dlopen().
-struct sigaltstack;
namespace __sanitizer {
// Dirent structure for getdents(). Note that this structure is different from
@@ -28,8 +27,7 @@ struct linux_dirent;
// Syscall wrappers.
uptr internal_getdents(fd_t fd, struct linux_dirent *dirp, unsigned int count);
uptr internal_prctl(int option, uptr arg2, uptr arg3, uptr arg4, uptr arg5);
-uptr internal_sigaltstack(const struct sigaltstack* ss,
- struct sigaltstack* oss);
+uptr internal_sigaltstack(const void* ss, void* oss);
uptr internal_sigaction(int signum, const __sanitizer_kernel_sigaction_t *act,
__sanitizer_kernel_sigaction_t *oldact);
uptr internal_sigprocmask(int how, __sanitizer_kernel_sigset_t *set,
diff --git a/libsanitizer/sanitizer_common/sanitizer_stoptheworld_linux_libcdep.cc b/libsanitizer/sanitizer_common/sanitizer_stoptheworld_linux_libcdep.cc
index 891386dc..234e8c6 100644
--- a/libsanitizer/sanitizer_common/sanitizer_stoptheworld_linux_libcdep.cc
+++ b/libsanitizer/sanitizer_common/sanitizer_stoptheworld_linux_libcdep.cc
@@ -273,7 +273,7 @@ static int TracerThread(void* argument) {
// Alternate stack for signal handling.
InternalScopedBuffer<char> handler_stack_memory(kHandlerStackSize);
- struct sigaltstack handler_stack;
+ stack_t handler_stack;
internal_memset(&handler_stack, 0, sizeof(handler_stack));
handler_stack.ss_sp = handler_stack_memory.data();
handler_stack.ss_size = kHandlerStackSize;
diff --git a/libsanitizer/tsan/tsan_platform_linux.cc b/libsanitizer/tsan/tsan_platform_linux.cc
index 2ed5718..6f972ab 100644
--- a/libsanitizer/tsan/tsan_platform_linux.cc
+++ b/libsanitizer/tsan/tsan_platform_linux.cc
@@ -287,7 +287,7 @@ void InitializePlatform() {
int ExtractResolvFDs(void *state, int *fds, int nfd) {
#if SANITIZER_LINUX && !SANITIZER_ANDROID
int cnt = 0;
- __res_state *statp = (__res_state*)state;
+ struct __res_state *statp = (struct __res_state*)state;
for (int i = 0; i < MAXNS && cnt < nfd; i++) {
if (statp->_u._ext.nsaddrs[i] && statp->_u._ext.nssocks[i] != -1)
fds[cnt++] = statp->_u._ext.nssocks[i];
error: 'SIGSEGV' was not declared in this scope
diff --git a/libsanitizer/asan/asan_linux.cc b/libsanitizer/asan/asan_linux.cc
index 0692eb1..472f734 100644
--- a/libsanitizer/asan/asan_linux.cc
+++ b/libsanitizer/asan/asan_linux.cc
@@ -26,6 +26,7 @@
#include <sys/types.h>
#include <fcntl.h>
#include <pthread.h>
+#include <signal.h>
#include <stdio.h>
#include <unistd.h>
#include <unwind.h>

View File

@ -0,0 +1,87 @@
From 72edc2c02f8b4768ad660f46a1c7e2400c0a8e06 Mon Sep 17 00:00:00 2001
From: jakub <jakub@138bc75d-0d04-0410-961f-82ee72b054a4>
Date: Mon, 17 Jul 2017 19:41:08 +0000
Subject: [PATCH] Backported from mainline 2017-07-14 Jakub
Jelinek <jakub@redhat.com>
PR sanitizer/81066
* sanitizer_common/sanitizer_linux.h: Cherry-pick upstream r307969.
* sanitizer_common/sanitizer_linux.cc: Likewise.
* sanitizer_common/sanitizer_stoptheworld_linux_libcdep.cc: Likewise.
* tsan/tsan_platform_linux.cc: Likewise.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/branches/gcc-7-branch@250287 138bc75d-0d04-0410-961f-82ee72b054a4
---
libsanitizer/ChangeLog (REMOVED) | 11 +++++++++++
libsanitizer/sanitizer_common/sanitizer_linux.cc | 3 +--
libsanitizer/sanitizer_common/sanitizer_linux.h | 4 +---
.../sanitizer_common/sanitizer_stoptheworld_linux_libcdep.cc | 2 +-
libsanitizer/tsan/tsan_platform_linux.cc | 2 +-
5 files changed, 15 insertions(+), 7 deletions(-)
diff --git a/libsanitizer/sanitizer_common/sanitizer_linux.cc b/libsanitizer/sanitizer_common/sanitizer_linux.cc
index 806fcd5..5b6f186 100644
--- a/libsanitizer/sanitizer_common/sanitizer_linux.cc
+++ b/libsanitizer/sanitizer_common/sanitizer_linux.cc
@@ -605,8 +605,7 @@ uptr internal_prctl(int option, uptr arg2, uptr arg3, uptr arg4, uptr arg5) {
}
#endif
-uptr internal_sigaltstack(const struct sigaltstack *ss,
- struct sigaltstack *oss) {
+uptr internal_sigaltstack(const void *ss, void *oss) {
return internal_syscall(SYSCALL(sigaltstack), (uptr)ss, (uptr)oss);
}
diff --git a/libsanitizer/sanitizer_common/sanitizer_linux.h b/libsanitizer/sanitizer_common/sanitizer_linux.h
index 895bfc1..a42df57 100644
--- a/libsanitizer/sanitizer_common/sanitizer_linux.h
+++ b/libsanitizer/sanitizer_common/sanitizer_linux.h
@@ -19,7 +19,6 @@
#include "sanitizer_platform_limits_posix.h"
struct link_map; // Opaque type returned by dlopen().
-struct sigaltstack;
namespace __sanitizer {
// Dirent structure for getdents(). Note that this structure is different from
@@ -28,8 +27,7 @@ struct linux_dirent;
// Syscall wrappers.
uptr internal_getdents(fd_t fd, struct linux_dirent *dirp, unsigned int count);
-uptr internal_sigaltstack(const struct sigaltstack* ss,
- struct sigaltstack* oss);
+uptr internal_sigaltstack(const void* ss, void* oss);
uptr internal_sigprocmask(int how, __sanitizer_sigset_t *set,
__sanitizer_sigset_t *oldset);
diff --git a/libsanitizer/sanitizer_common/sanitizer_stoptheworld_linux_libcdep.cc b/libsanitizer/sanitizer_common/sanitizer_stoptheworld_linux_libcdep.cc
index 891386dc..234e8c6 100644
--- a/libsanitizer/sanitizer_common/sanitizer_stoptheworld_linux_libcdep.cc
+++ b/libsanitizer/sanitizer_common/sanitizer_stoptheworld_linux_libcdep.cc
@@ -273,7 +273,7 @@ static int TracerThread(void* argument) {
// Alternate stack for signal handling.
InternalScopedBuffer<char> handler_stack_memory(kHandlerStackSize);
- struct sigaltstack handler_stack;
+ stack_t handler_stack;
internal_memset(&handler_stack, 0, sizeof(handler_stack));
handler_stack.ss_sp = handler_stack_memory.data();
handler_stack.ss_size = kHandlerStackSize;
diff --git a/libsanitizer/tsan/tsan_platform_linux.cc b/libsanitizer/tsan/tsan_platform_linux.cc
index 2ed5718..6f972ab 100644
--- a/libsanitizer/tsan/tsan_platform_linux.cc
+++ b/libsanitizer/tsan/tsan_platform_linux.cc
@@ -287,7 +287,7 @@ void InitializePlatform() {
int ExtractResolvFDs(void *state, int *fds, int nfd) {
#if SANITIZER_LINUX && !SANITIZER_ANDROID
int cnt = 0;
- __res_state *statp = (__res_state*)state;
+ struct __res_state *statp = (struct __res_state*)state;
for (int i = 0; i < MAXNS && cnt < nfd; i++) {
if (statp->_u._ext.nsaddrs[i] && statp->_u._ext.nssocks[i] != -1)
fds[cnt++] = statp->_u._ext.nssocks[i];
--
2.9.3

View File

@ -0,0 +1,107 @@
Trivally backported the upstream commit
b685411208e0aaa79190d54faf945763514706b8
(different directory, some files not present, etc.)
We only really use x86* from those, probably, so I didn't bother much.
diff --git a/gcc/config/alpha/linux-unwind.h b/gcc/config/alpha/linux-unwind.h
index bdbba4a..e84812e 100644
--- a/gcc/config/alpha/linux-unwind.h
+++ b/gcc/config/alpha/linux-unwind.h
@@ -51,7 +51,7 @@ alpha_fallback_frame_state (struct _Unwind_Context *context,
{
struct rt_sigframe {
siginfo_t info;
- struct ucontext uc;
+ ucontext_t uc;
} *rt_ = context->cfa;
sc = &rt_->uc.uc_mcontext;
}
diff --git a/gcc/config/bfin/linux-unwind.h b/gcc/config/bfin/linux-unwind.h
index 77b7c23..8bf5e82 100644
--- a/gcc/config/bfin/linux-unwind.h
+++ b/gcc/config/bfin/linux-unwind.h
@@ -52,7 +52,7 @@ bfin_fallback_frame_state (struct _Unwind_Context *context,
void *puc;
char retcode[8];
siginfo_t info;
- struct ucontext uc;
+ ucontext_t uc;
} *rt_ = context->cfa;
/* The void * cast is necessary to avoid an aliasing warning.
diff --git a/gcc/config/i386/linux-unwind.h b/gcc/config/i386/linux-unwind.h
index 540a0a2..29efbe3 100644
--- a/gcc/config/i386/linux-unwind.h
+++ b/gcc/config/i386/linux-unwind.h
@@ -58,7 +58,7 @@ x86_64_fallback_frame_state (struct _Unwind_Context *context,
if (*(unsigned char *)(pc+0) == 0x48
&& *(unsigned long long *)(pc+1) == RT_SIGRETURN_SYSCALL)
{
- struct ucontext *uc_ = context->cfa;
+ ucontext_t *uc_ = context->cfa;
/* The void * cast is necessary to avoid an aliasing warning.
The aliasing warning is correct, but should not be a problem
because it does not alias anything. */
@@ -138,7 +138,7 @@ x86_fallback_frame_state (struct _Unwind_Context *context,
siginfo_t *pinfo;
void *puc;
siginfo_t info;
- struct ucontext uc;
+ ucontext_t uc;
} *rt_ = context->cfa;
/* The void * cast is necessary to avoid an aliasing warning.
The aliasing warning is correct, but should not be a problem
diff --git a/gcc/config/m68k/linux-unwind.h b/gcc/config/m68k/linux-unwind.h
index 75b7cf7..f964e24 100644
--- a/gcc/config/m68k/linux-unwind.h
+++ b/gcc/config/m68k/linux-unwind.h
@@ -33,7 +33,7 @@ see the files COPYING3 and COPYING.RUNTIME respectively. If not, see
/* <sys/ucontext.h> is unfortunately broken right now. */
struct uw_ucontext {
unsigned long uc_flags;
- struct ucontext *uc_link;
+ ucontext_t *uc_link;
stack_t uc_stack;
mcontext_t uc_mcontext;
unsigned long uc_filler[80];
diff --git a/gcc/config/pa/linux-unwind.h b/gcc/config/pa/linux-unwind.h
index 9a2657f..e47493d 100644
--- a/gcc/config/pa/linux-unwind.h
+++ b/gcc/config/pa/linux-unwind.h
@@ -80,7 +80,7 @@ pa32_fallback_frame_state (struct _Unwind_Context *context,
struct sigcontext *sc;
struct rt_sigframe {
siginfo_t info;
- struct ucontext uc;
+ ucontext_t uc;
} *frame;
/* rt_sigreturn trampoline:
diff --git a/gcc/config/sh/linux-unwind.h b/gcc/config/sh/linux-unwind.h
index e389cac..0bf43ba 100644
--- a/gcc/config/sh/linux-unwind.h
+++ b/gcc/config/sh/linux-unwind.h
@@ -180,7 +180,7 @@ sh_fallback_frame_state (struct _Unwind_Context *context,
{
struct rt_sigframe {
siginfo_t info;
- struct ucontext uc;
+ ucontext_t uc;
} *rt_ = context->cfa;
/* The void * cast is necessary to avoid an aliasing warning.
The aliasing warning is correct, but should not be a problem
diff --git a/gcc/config/xtensa/linux-unwind.h b/gcc/config/xtensa/linux-unwind.h
index 9872492..586a9d4 100644
--- a/gcc/config/xtensa/linux-unwind.h
+++ b/gcc/config/xtensa/linux-unwind.h
@@ -67,7 +67,7 @@ xtensa_fallback_frame_state (struct _Unwind_Context *context,
struct rt_sigframe {
siginfo_t info;
- struct ucontext uc;
+ ucontext_t uc;
} *rt_;
/* movi a2, __NR_rt_sigreturn; syscall */
--
2.9.3

View File

@ -0,0 +1,177 @@
From b685411208e0aaa79190d54faf945763514706b8 Mon Sep 17 00:00:00 2001
From: jsm28 <jsm28@138bc75d-0d04-0410-961f-82ee72b054a4>
Date: Tue, 4 Jul 2017 10:23:57 +0000
Subject: [PATCH] Use ucontext_t not struct ucontext in linux-unwind.h files.
Current glibc no longer gives the ucontext_t type the tag struct
ucontext, to conform with POSIX namespace rules. This requires
various linux-unwind.h files in libgcc, that were previously using
struct ucontext, to be fixed to use ucontext_t instead. This is
similar to the removal of the struct siginfo tag from siginfo_t some
years ago.
This patch changes those files to use ucontext_t instead. As the
standard name that should be unconditionally safe, so this is not
restricted to architectures supported by glibc, or conditioned on the
glibc version.
Tested compilation together with current glibc with glibc's
build-many-glibcs.py.
* config/aarch64/linux-unwind.h (aarch64_fallback_frame_state),
config/alpha/linux-unwind.h (alpha_fallback_frame_state),
config/bfin/linux-unwind.h (bfin_fallback_frame_state),
config/i386/linux-unwind.h (x86_64_fallback_frame_state,
x86_fallback_frame_state), config/m68k/linux-unwind.h (struct
uw_ucontext), config/nios2/linux-unwind.h (struct nios2_ucontext),
config/pa/linux-unwind.h (pa32_fallback_frame_state),
config/sh/linux-unwind.h (sh_fallback_frame_state),
config/tilepro/linux-unwind.h (tile_fallback_frame_state),
config/xtensa/linux-unwind.h (xtensa_fallback_frame_state): Use
ucontext_t instead of struct ucontext.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/branches/gcc-6-branch@249957 138bc75d-0d04-0410-961f-82ee72b054a4
---
libgcc/ChangeLog (REMOVED) | 14 ++++++++++++++
libgcc/config/aarch64/linux-unwind.h | 2 +-
libgcc/config/alpha/linux-unwind.h | 2 +-
libgcc/config/bfin/linux-unwind.h | 2 +-
libgcc/config/i386/linux-unwind.h | 4 ++--
libgcc/config/m68k/linux-unwind.h | 2 +-
libgcc/config/nios2/linux-unwind.h | 2 +-
libgcc/config/pa/linux-unwind.h | 2 +-
libgcc/config/sh/linux-unwind.h | 2 +-
libgcc/config/tilepro/linux-unwind.h | 2 +-
libgcc/config/xtensa/linux-unwind.h | 2 +-
11 files changed, 25 insertions(+), 11 deletions(-)
diff --git a/libgcc/config/aarch64/linux-unwind.h b/libgcc/config/aarch64/linux-unwind.h
index 4512efb..06de45a 100644
--- a/libgcc/config/aarch64/linux-unwind.h
+++ b/libgcc/config/aarch64/linux-unwind.h
@@ -52,7 +52,7 @@ aarch64_fallback_frame_state (struct _Unwind_Context *context,
struct rt_sigframe
{
siginfo_t info;
- struct ucontext uc;
+ ucontext_t uc;
};
struct rt_sigframe *rt_;
diff --git a/libgcc/config/alpha/linux-unwind.h b/libgcc/config/alpha/linux-unwind.h
index bdbba4a..e84812e 100644
--- a/libgcc/config/alpha/linux-unwind.h
+++ b/libgcc/config/alpha/linux-unwind.h
@@ -51,7 +51,7 @@ alpha_fallback_frame_state (struct _Unwind_Context *context,
{
struct rt_sigframe {
siginfo_t info;
- struct ucontext uc;
+ ucontext_t uc;
} *rt_ = context->cfa;
sc = &rt_->uc.uc_mcontext;
}
diff --git a/libgcc/config/bfin/linux-unwind.h b/libgcc/config/bfin/linux-unwind.h
index 77b7c23..8bf5e82 100644
--- a/libgcc/config/bfin/linux-unwind.h
+++ b/libgcc/config/bfin/linux-unwind.h
@@ -52,7 +52,7 @@ bfin_fallback_frame_state (struct _Unwind_Context *context,
void *puc;
char retcode[8];
siginfo_t info;
- struct ucontext uc;
+ ucontext_t uc;
} *rt_ = context->cfa;
/* The void * cast is necessary to avoid an aliasing warning.
diff --git a/libgcc/config/i386/linux-unwind.h b/libgcc/config/i386/linux-unwind.h
index 540a0a2..29efbe3 100644
--- a/libgcc/config/i386/linux-unwind.h
+++ b/libgcc/config/i386/linux-unwind.h
@@ -58,7 +58,7 @@ x86_64_fallback_frame_state (struct _Unwind_Context *context,
if (*(unsigned char *)(pc+0) == 0x48
&& *(unsigned long long *)(pc+1) == RT_SIGRETURN_SYSCALL)
{
- struct ucontext *uc_ = context->cfa;
+ ucontext_t *uc_ = context->cfa;
/* The void * cast is necessary to avoid an aliasing warning.
The aliasing warning is correct, but should not be a problem
because it does not alias anything. */
@@ -138,7 +138,7 @@ x86_fallback_frame_state (struct _Unwind_Context *context,
siginfo_t *pinfo;
void *puc;
siginfo_t info;
- struct ucontext uc;
+ ucontext_t uc;
} *rt_ = context->cfa;
/* The void * cast is necessary to avoid an aliasing warning.
The aliasing warning is correct, but should not be a problem
diff --git a/libgcc/config/m68k/linux-unwind.h b/libgcc/config/m68k/linux-unwind.h
index 75b7cf7..f964e24 100644
--- a/libgcc/config/m68k/linux-unwind.h
+++ b/libgcc/config/m68k/linux-unwind.h
@@ -33,7 +33,7 @@ see the files COPYING3 and COPYING.RUNTIME respectively. If not, see
/* <sys/ucontext.h> is unfortunately broken right now. */
struct uw_ucontext {
unsigned long uc_flags;
- struct ucontext *uc_link;
+ ucontext_t *uc_link;
stack_t uc_stack;
mcontext_t uc_mcontext;
unsigned long uc_filler[80];
diff --git a/libgcc/config/pa/linux-unwind.h b/libgcc/config/pa/linux-unwind.h
index 9a2657f..e47493d 100644
--- a/libgcc/config/pa/linux-unwind.h
+++ b/libgcc/config/pa/linux-unwind.h
@@ -80,7 +80,7 @@ pa32_fallback_frame_state (struct _Unwind_Context *context,
struct sigcontext *sc;
struct rt_sigframe {
siginfo_t info;
- struct ucontext uc;
+ ucontext_t uc;
} *frame;
/* rt_sigreturn trampoline:
diff --git a/libgcc/config/sh/linux-unwind.h b/libgcc/config/sh/linux-unwind.h
index e389cac..0bf43ba 100644
--- a/libgcc/config/sh/linux-unwind.h
+++ b/libgcc/config/sh/linux-unwind.h
@@ -180,7 +180,7 @@ sh_fallback_frame_state (struct _Unwind_Context *context,
{
struct rt_sigframe {
siginfo_t info;
- struct ucontext uc;
+ ucontext_t uc;
} *rt_ = context->cfa;
/* The void * cast is necessary to avoid an aliasing warning.
The aliasing warning is correct, but should not be a problem
diff --git a/libgcc/config/tilepro/linux-unwind.h b/libgcc/config/tilepro/linux-unwind.h
index 796e976..75f8890 100644
--- a/libgcc/config/tilepro/linux-unwind.h
+++ b/libgcc/config/tilepro/linux-unwind.h
@@ -61,7 +61,7 @@ tile_fallback_frame_state (struct _Unwind_Context *context,
struct rt_sigframe {
unsigned char save_area[C_ABI_SAVE_AREA_SIZE];
siginfo_t info;
- struct ucontext uc;
+ ucontext_t uc;
} *rt_;
/* Return if this is not a signal handler. */
diff --git a/libgcc/config/xtensa/linux-unwind.h b/libgcc/config/xtensa/linux-unwind.h
index 9872492..586a9d4 100644
--- a/libgcc/config/xtensa/linux-unwind.h
+++ b/libgcc/config/xtensa/linux-unwind.h
@@ -67,7 +67,7 @@ xtensa_fallback_frame_state (struct _Unwind_Context *context,
struct rt_sigframe {
siginfo_t info;
- struct ucontext uc;
+ ucontext_t uc;
} *rt_;
/* movi a2, __NR_rt_sigreturn; syscall */
--
2.9.3

View File

@ -0,0 +1,190 @@
From b685411208e0aaa79190d54faf945763514706b8 Mon Sep 17 00:00:00 2001
From: jsm28 <jsm28@138bc75d-0d04-0410-961f-82ee72b054a4>
Date: Tue, 4 Jul 2017 10:23:57 +0000
Subject: [PATCH] Use ucontext_t not struct ucontext in linux-unwind.h files.
Current glibc no longer gives the ucontext_t type the tag struct
ucontext, to conform with POSIX namespace rules. This requires
various linux-unwind.h files in libgcc, that were previously using
struct ucontext, to be fixed to use ucontext_t instead. This is
similar to the removal of the struct siginfo tag from siginfo_t some
years ago.
This patch changes those files to use ucontext_t instead. As the
standard name that should be unconditionally safe, so this is not
restricted to architectures supported by glibc, or conditioned on the
glibc version.
Tested compilation together with current glibc with glibc's
build-many-glibcs.py.
* config/aarch64/linux-unwind.h (aarch64_fallback_frame_state),
config/alpha/linux-unwind.h (alpha_fallback_frame_state),
config/bfin/linux-unwind.h (bfin_fallback_frame_state),
config/i386/linux-unwind.h (x86_64_fallback_frame_state,
x86_fallback_frame_state), config/m68k/linux-unwind.h (struct
uw_ucontext), config/nios2/linux-unwind.h (struct nios2_ucontext),
config/pa/linux-unwind.h (pa32_fallback_frame_state),
config/sh/linux-unwind.h (sh_fallback_frame_state),
config/tilepro/linux-unwind.h (tile_fallback_frame_state),
config/xtensa/linux-unwind.h (xtensa_fallback_frame_state): Use
ucontext_t instead of struct ucontext.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/branches/gcc-6-branch@249957 138bc75d-0d04-0410-961f-82ee72b054a4
---
libgcc/ChangeLog (REMOVED) | 14 ++++++++++++++
libgcc/config/aarch64/linux-unwind.h | 2 +-
libgcc/config/alpha/linux-unwind.h | 2 +-
libgcc/config/bfin/linux-unwind.h | 2 +-
libgcc/config/i386/linux-unwind.h | 4 ++--
libgcc/config/m68k/linux-unwind.h | 2 +-
libgcc/config/nios2/linux-unwind.h | 2 +-
libgcc/config/pa/linux-unwind.h | 2 +-
libgcc/config/sh/linux-unwind.h | 2 +-
libgcc/config/tilepro/linux-unwind.h | 2 +-
libgcc/config/xtensa/linux-unwind.h | 2 +-
11 files changed, 25 insertions(+), 11 deletions(-)
diff --git a/libgcc/config/aarch64/linux-unwind.h b/libgcc/config/aarch64/linux-unwind.h
index 4512efb..06de45a 100644
--- a/libgcc/config/aarch64/linux-unwind.h
+++ b/libgcc/config/aarch64/linux-unwind.h
@@ -52,7 +52,7 @@ aarch64_fallback_frame_state (struct _Unwind_Context *context,
struct rt_sigframe
{
siginfo_t info;
- struct ucontext uc;
+ ucontext_t uc;
};
struct rt_sigframe *rt_;
diff --git a/libgcc/config/alpha/linux-unwind.h b/libgcc/config/alpha/linux-unwind.h
index bdbba4a..e84812e 100644
--- a/libgcc/config/alpha/linux-unwind.h
+++ b/libgcc/config/alpha/linux-unwind.h
@@ -51,7 +51,7 @@ alpha_fallback_frame_state (struct _Unwind_Context *context,
{
struct rt_sigframe {
siginfo_t info;
- struct ucontext uc;
+ ucontext_t uc;
} *rt_ = context->cfa;
sc = &rt_->uc.uc_mcontext;
}
diff --git a/libgcc/config/bfin/linux-unwind.h b/libgcc/config/bfin/linux-unwind.h
index 77b7c23..8bf5e82 100644
--- a/libgcc/config/bfin/linux-unwind.h
+++ b/libgcc/config/bfin/linux-unwind.h
@@ -52,7 +52,7 @@ bfin_fallback_frame_state (struct _Unwind_Context *context,
void *puc;
char retcode[8];
siginfo_t info;
- struct ucontext uc;
+ ucontext_t uc;
} *rt_ = context->cfa;
/* The void * cast is necessary to avoid an aliasing warning.
diff --git a/libgcc/config/i386/linux-unwind.h b/libgcc/config/i386/linux-unwind.h
index 540a0a2..29efbe3 100644
--- a/libgcc/config/i386/linux-unwind.h
+++ b/libgcc/config/i386/linux-unwind.h
@@ -58,7 +58,7 @@ x86_64_fallback_frame_state (struct _Unwind_Context *context,
if (*(unsigned char *)(pc+0) == 0x48
&& *(unsigned long long *)(pc+1) == RT_SIGRETURN_SYSCALL)
{
- struct ucontext *uc_ = context->cfa;
+ ucontext_t *uc_ = context->cfa;
/* The void * cast is necessary to avoid an aliasing warning.
The aliasing warning is correct, but should not be a problem
because it does not alias anything. */
@@ -138,7 +138,7 @@ x86_fallback_frame_state (struct _Unwind_Context *context,
siginfo_t *pinfo;
void *puc;
siginfo_t info;
- struct ucontext uc;
+ ucontext_t uc;
} *rt_ = context->cfa;
/* The void * cast is necessary to avoid an aliasing warning.
The aliasing warning is correct, but should not be a problem
diff --git a/libgcc/config/m68k/linux-unwind.h b/libgcc/config/m68k/linux-unwind.h
index 75b7cf7..f964e24 100644
--- a/libgcc/config/m68k/linux-unwind.h
+++ b/libgcc/config/m68k/linux-unwind.h
@@ -33,7 +33,7 @@ see the files COPYING3 and COPYING.RUNTIME respectively. If not, see
/* <sys/ucontext.h> is unfortunately broken right now. */
struct uw_ucontext {
unsigned long uc_flags;
- struct ucontext *uc_link;
+ ucontext_t *uc_link;
stack_t uc_stack;
mcontext_t uc_mcontext;
unsigned long uc_filler[80];
diff --git a/libgcc/config/nios2/linux-unwind.h b/libgcc/config/nios2/linux-unwind.h
index 2304142..30f25ea 100644
--- a/libgcc/config/nios2/linux-unwind.h
+++ b/libgcc/config/nios2/linux-unwind.h
@@ -38,7 +38,7 @@ struct nios2_mcontext {
struct nios2_ucontext {
unsigned long uc_flags;
- struct ucontext *uc_link;
+ ucontext_t *uc_link;
stack_t uc_stack;
struct nios2_mcontext uc_mcontext;
sigset_t uc_sigmask; /* mask last for extensibility */
diff --git a/libgcc/config/pa/linux-unwind.h b/libgcc/config/pa/linux-unwind.h
index 9a2657f..e47493d 100644
--- a/libgcc/config/pa/linux-unwind.h
+++ b/libgcc/config/pa/linux-unwind.h
@@ -80,7 +80,7 @@ pa32_fallback_frame_state (struct _Unwind_Context *context,
struct sigcontext *sc;
struct rt_sigframe {
siginfo_t info;
- struct ucontext uc;
+ ucontext_t uc;
} *frame;
/* rt_sigreturn trampoline:
diff --git a/libgcc/config/sh/linux-unwind.h b/libgcc/config/sh/linux-unwind.h
index e389cac..0bf43ba 100644
--- a/libgcc/config/sh/linux-unwind.h
+++ b/libgcc/config/sh/linux-unwind.h
@@ -180,7 +180,7 @@ sh_fallback_frame_state (struct _Unwind_Context *context,
{
struct rt_sigframe {
siginfo_t info;
- struct ucontext uc;
+ ucontext_t uc;
} *rt_ = context->cfa;
/* The void * cast is necessary to avoid an aliasing warning.
The aliasing warning is correct, but should not be a problem
diff --git a/libgcc/config/tilepro/linux-unwind.h b/libgcc/config/tilepro/linux-unwind.h
index 796e976..75f8890 100644
--- a/libgcc/config/tilepro/linux-unwind.h
+++ b/libgcc/config/tilepro/linux-unwind.h
@@ -61,7 +61,7 @@ tile_fallback_frame_state (struct _Unwind_Context *context,
struct rt_sigframe {
unsigned char save_area[C_ABI_SAVE_AREA_SIZE];
siginfo_t info;
- struct ucontext uc;
+ ucontext_t uc;
} *rt_;
/* Return if this is not a signal handler. */
diff --git a/libgcc/config/xtensa/linux-unwind.h b/libgcc/config/xtensa/linux-unwind.h
index 9872492..586a9d4 100644
--- a/libgcc/config/xtensa/linux-unwind.h
+++ b/libgcc/config/xtensa/linux-unwind.h
@@ -67,7 +67,7 @@ xtensa_fallback_frame_state (struct _Unwind_Context *context,
struct rt_sigframe {
siginfo_t info;
- struct ucontext uc;
+ ucontext_t uc;
} *rt_;
/* movi a2, __NR_rt_sigreturn; syscall */
--
2.9.3

View File

@ -1,5 +1,6 @@
{ stdenv
, fetch
, fetchpatch
, perl
, groff
, cmake
@ -45,6 +46,18 @@ in stdenv.mkDerivation rec {
# those always succeed has the net effect of disabling all bindings.
prePatch = ''
substituteInPlace cmake/config-ix.cmake --replace "if(WIN32)" "if(1)"
''
+ stdenv.lib.optionalString (stdenv ? glibc) ''
(
cd projects/compiler-rt
patch -p1 < ${
fetchpatch {
name = "sigaltstack.patch"; # for glibc-2.26
url = https://github.com/llvm-mirror/compiler-rt/commit/8a5e425a68d.diff;
sha256 = "0h4y5vl74qaa7dl54b1fcyqalvlpd8zban2d1jxfkxpzyi7m8ifi";
}
}
)
'';
# hacky fix: created binaries need to be run before installation

View File

@ -1,5 +1,6 @@
{ stdenv
, fetch
, fetchpatch
, perl
, groff
, cmake
@ -49,6 +50,18 @@ in stdenv.mkDerivation rec {
substituteInPlace CMakeLists.txt \
--replace 'set(CMAKE_INSTALL_NAME_DIR "@rpath")' "set(CMAKE_INSTALL_NAME_DIR "$out/lib")" \
--replace 'set(CMAKE_INSTALL_RPATH "@executable_path/../lib")' ""
''
+ stdenv.lib.optionalString (stdenv ? glibc) ''
(
cd projects/compiler-rt
patch -p1 < ${
fetchpatch {
name = "sigaltstack.patch"; # for glibc-2.26
url = https://github.com/llvm-mirror/compiler-rt/commit/8a5e425a68d.diff;
sha256 = "0h4y5vl74qaa7dl54b1fcyqalvlpd8zban2d1jxfkxpzyi7m8ifi";
}
}
)
'';
# hacky fix: created binaries need to be run before installation

View File

@ -91,6 +91,20 @@ in stdenv.mkDerivation rec {
+ stdenv.lib.optionalString (enableSharedLibraries) ''
substitute '${./llvm-outputs.patch}' ./llvm-outputs.patch --subst-var lib
patch -p1 < ./llvm-outputs.patch
''
+ stdenv.lib.optionalString (stdenv ? glibc) ''
(
cd projects/compiler-rt
patch -p1 < ${
fetchpatch {
name = "sigaltstack.patch"; # for glibc-2.26
url = https://github.com/llvm-mirror/compiler-rt/commit/8a5e425a68d.diff;
sha256 = "0h4y5vl74qaa7dl54b1fcyqalvlpd8zban2d1jxfkxpzyi7m8ifi";
}
}
substituteInPlace lib/esan/esan_sideline_linux.cpp \
--replace 'struct sigaltstack' 'stack_t'
)
'';
# hacky fix: created binaries need to be run before installation

View File

@ -67,6 +67,20 @@ in stdenv.mkDerivation rec {
+ stdenv.lib.optionalString (enableSharedLibraries) ''
substitute '${./llvm-outputs.patch}' ./llvm-outputs.patch --subst-var lib
patch -p1 < ./llvm-outputs.patch
''
+ stdenv.lib.optionalString (stdenv ? glibc) ''
(
cd projects/compiler-rt
patch -p1 < ${
fetchpatch {
name = "sigaltstack.patch"; # for glibc-2.26
url = https://github.com/llvm-mirror/compiler-rt/commit/8a5e425a68d.diff;
sha256 = "0h4y5vl74qaa7dl54b1fcyqalvlpd8zban2d1jxfkxpzyi7m8ifi";
}
}
substituteInPlace lib/esan/esan_sideline_linux.cpp \
--replace 'struct sigaltstack' 'stack_t'
)
'';
# hacky fix: created binaries need to be run before installation

View File

@ -2,13 +2,13 @@
stdenv.mkDerivation rec {
name = "pony-stable-${version}";
version = "0.0.1";
version = "0.1.1";
src = fetchFromGitHub {
owner = "ponylang";
repo = "pony-stable";
rev = version;
sha256 = "0q05135mnzzdwam7cnmxq34clqhmc83yp2gi63sx20c74rcw3p6v";
sha256 = "0v4039iijjv93m89s3dsikcbp1y0hml6g1agj44s6w2g4m8kiiw3";
};
buildInputs = [ ponyc ];

View File

@ -22,10 +22,12 @@ let
enableParallelBuilding = true;
nativeBuildInputs = [ pkgconfig ];
nativeBuildInputs = [ pkgconfig ];
buildInputs = [ flex bison ]
++ lib.optional stdenv.isLinux systemd;
CXXFLAGS = lib.optional stdenv.cc.isClang "-std=c++11";
flags = {
# much left to do here...

View File

@ -2,6 +2,7 @@
, openglSupport ? false, mesa_noglu
, alsaSupport ? true, alsaLib
, x11Support ? true, libICE, libXi, libXScrnSaver, libXcursor, libXinerama, libXext, libXxf86vm, libXrandr
, waylandSupport ? true, wayland, wayland-protocols, libxkbcommon
, dbusSupport ? false, dbus
, udevSupport ? false, udev
, ibusSupport ? false, ibus
@ -17,7 +18,7 @@ assert openglSupport -> (stdenv.isDarwin || mesa_noglu != null && x11Support);
let
configureFlagsFun = attrs: [
"--disable-oss" "--disable-x11-shared"
"--disable-oss" "--disable-x11-shared" "--disable-wayland-shared"
"--disable-pulseaudio-shared" "--disable-alsa-shared"
] ++ lib.optional alsaSupport "--with-alsa-prefix=${attrs.alsaLib.out}/lib"
++ lib.optional (!x11Support) "--without-x";
@ -39,6 +40,7 @@ stdenv.mkDerivation rec {
# Since `libpulse*.la' contain `-lgdbm', PulseAudio must be propagated.
propagatedBuildInputs = lib.optionals x11Support [ libICE libXi libXScrnSaver libXcursor libXinerama libXext libXrandr libXxf86vm ] ++
lib.optionals waylandSupport [ wayland wayland-protocols libxkbcommon ] ++
lib.optional pulseaudioSupport libpulseaudio;
buildInputs = [ audiofile ] ++

View File

@ -1,11 +1,11 @@
{ stdenv, fetchpatch, fetchurl }:
stdenv.mkDerivation rec {
name = "expat-2.2.4";
name = "expat-2.2.5";
src = fetchurl {
url = "mirror://sourceforge/expat/${name}.tar.bz2";
sha256 = "17h1fb9zvqvf0sr78j211bngc6jpql5wzar8fg9b52jzjvdqbb83";
sha256 = "1xpd78sp7m34jqrw5x13bz7kgz0n6aj15wn4zj4gfx3ypbpk5p6r";
};
outputs = [ "out" "dev" ]; # TODO: fix referrers

View File

@ -0,0 +1,33 @@
{ stdenv, fetchFromGitHub, cmake, pkgconfig, python
, zlib, libssh2, openssl, http-parser, curl, libiconv
}:
stdenv.mkDerivation (rec {
version = "0.25.1";
name = "libgit2-${version}";
src = fetchFromGitHub {
owner = "libgit2";
repo = "libgit2";
rev = "v${version}";
sha256 = "1jhikg0gqpdzfzhgv44ybdpm24lvgkc7ki4306lc5lvmj1s2nylj";
};
cmakeFlags = "-DTHREADSAFE=ON";
nativeBuildInputs = [ cmake python pkgconfig ];
buildInputs = [ zlib libssh2 openssl http-parser curl ];
enableParallelBuilding = true;
meta = {
description = "The Git linkable library";
homepage = https://libgit2.github.com/;
license = stdenv.lib.licenses.gpl2;
platforms = with stdenv.lib.platforms; all;
};
} // stdenv.lib.optionalAttrs (!stdenv.isLinux) {
NIX_LDFLAGS = "-liconv";
propagatedBuildInputs = [ libiconv ];
})

View File

@ -1,35 +1,30 @@
{ stdenv, fetchurl, pkgconfig, cmake, zlib, python, libssh2, openssl, curl, http-parser, libiconv }:
{ stdenv, fetchFromGitHub, pkgconfig, cmake, zlib, python, libssh2, openssl, curl, http-parser, libiconv }:
stdenv.mkDerivation (rec {
version = "0.25.1";
name = "libgit2-${version}";
version = "0.26.0";
# keep the version in sync with pythonPackages.pygit2 and gnome3.libgit2-glib
src = fetchurl {
name = "${name}.tar.gz";
url = "https://github.com/libgit2/libgit2/tarball/v${version}";
sha256 = "100bah8picqjzyhpw4wd7z5vyidcb8aggin50bhbpn607h8n8bml";
src = fetchFromGitHub {
owner = "libgit2";
repo = "libgit2";
rev = "v${version}";
sha256 = "0zrrmfkfhd2xb4879z5khjb6xsdklrm01f1lscrs2ks68v25fk78";
};
# TODO: `cargo` (rust's package manager) surfaced a serious bug in
# libgit2 when the `Security.framework` transport is used on Darwin.
# The upstream issue is tracked at
# https://github.com/libgit2/libgit2/issues/3885 - feel free to
# remove this patch as soon as it's resolved (i.E. when cargo is
# working fine without this patch)
patches = stdenv.lib.optionals stdenv.isDarwin [
./disable-security.framework.patch
];
cmakeFlags = "-DTHREADSAFE=ON";
nativeBuildInputs = [ cmake python pkgconfig ];
buildInputs = [ zlib libssh2 openssl http-parser curl ];
meta = {
enableParallelBuilding = true;
meta = with stdenv.lib; {
description = "The Git linkable library";
homepage = https://libgit2.github.com/;
license = stdenv.lib.licenses.gpl2;
platforms = with stdenv.lib.platforms; all;
license = licenses.gpl2;
platforms = with platforms; all;
};
} // stdenv.lib.optionalAttrs (!stdenv.isLinux) {
NIX_LDFLAGS = "-liconv";

View File

@ -1,58 +0,0 @@
From fbc2ea65406236a740b8734dd41dc5ddbc24f8c9 Mon Sep 17 00:00:00 2001
From: mulrich <mulrich@entwicklerheld.local>
Date: Mon, 8 Aug 2016 15:36:07 +0200
Subject: [PATCH] disable security.framework
---
CMakeLists.txt | 7 +++----
src/curl_stream.c | 9 ++++++++-
2 files changed, 11 insertions(+), 5 deletions(-)
diff --git a/CMakeLists.txt b/CMakeLists.txt
index 93a9e47..331e148 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -49,7 +49,8 @@ ENDIF()
IF(${CMAKE_SYSTEM_NAME} MATCHES "Darwin")
SET( USE_ICONV ON )
- FIND_PACKAGE(Security)
+ # FIND_PACKAGE(Security)
+ SET(SECURITY_FOUND "NO")
FIND_PACKAGE(CoreFoundation REQUIRED)
ENDIF()
@@ -87,9 +88,7 @@ IF(MSVC)
OPTION(MSVC_CRTDBG "Enable CRTDBG memory leak reporting" OFF)
ENDIF()
-IF (NOT ${CMAKE_SYSTEM_NAME} MATCHES "Darwin")
- OPTION( USE_OPENSSL "Link with and use openssl library" ON )
-ENDIF()
+OPTION( USE_OPENSSL "Link with and use openssl library" ON )
CHECK_STRUCT_HAS_MEMBER ("struct stat" st_mtim "sys/types.h;sys/stat.h"
HAVE_STRUCT_STAT_ST_MTIM LANGUAGE C)
diff --git a/src/curl_stream.c b/src/curl_stream.c
index 98de187..a8a9f4c 100644
--- a/src/curl_stream.c
+++ b/src/curl_stream.c
@@ -309,7 +309,14 @@ int git_curl_stream_new(git_stream **out, const char *host, const char *port)
curl_easy_setopt(handle, CURLOPT_HTTPPROXYTUNNEL, 1);
curl_easy_setopt(handle, CURLOPT_PROXYAUTH, CURLAUTH_ANY);
- /* curl_easy_setopt(handle, CURLOPT_VERBOSE, 1); */
+ const char* cainfo = getenv("SSL_CERT_FILE");
+ if(cainfo != NULL) {
+ curl_easy_setopt(handle, CURLOPT_CAINFO, cainfo);
+ }
+
+ /*
+ curl_easy_setopt(handle, CURLOPT_VERBOSE, 1);
+ */
st->parent.version = GIT_STREAM_VERSION;
st->parent.encrypted = 0; /* we don't encrypt ourselves */
--
2.3.8 (Apple Git-58)

Binary file not shown.

View File

@ -19,9 +19,9 @@
} @ args:
let
version = "2.25";
patchSuffix = "-49";
sha256 = "067bd9bb3390e79aa45911537d13c3721f1d9d3769931a30c2681bfee66f23a0";
version = "2.26";
patchSuffix = "-75";
sha256 = "1ggnj1hzjym7sn93rbwydcqd562q73lsb7g7kd199g6j9j9hlkp5";
cross = if buildPlatform != hostPlatform then hostPlatform else null;
in
@ -46,7 +46,7 @@ stdenv.mkDerivation ({
glibc-2.25-49-gbc5ace67fe
$ git show --reverse glibc-2.25..release/2.25/master | gzip -n -9 --rsyncable - > 2.25-49.patch.gz
*/
./2.25-49.patch.gz
./2.26-75.patch.gz
/* Have rpcgen(1) look for cpp(1) in $PATH. */
./rpcgen-path.patch
@ -100,15 +100,12 @@ stdenv.mkDerivation ({
(if profilingLibraries
then "--enable-profile"
else "--disable-profile")
] ++ lib.optionals (cross == null && withLinuxHeaders) [
"--enable-kernel=2.6.32"
] ++ lib.optionals withLinuxHeaders [
"--enable-kernel=3.2.0" # can't get below with glibc >= 2.26
] ++ lib.optionals (cross != null) [
(if cross.withTLS then "--with-tls" else "--without-tls")
(if cross ? float && cross.float == "soft" then "--without-fp" else "--with-fp")
] ++ lib.optionals (cross != null
&& cross.platform ? kernelMajor
&& cross.platform.kernelMajor == "2.6") [
"--enable-kernel=2.6.0"
] ++ lib.optionals (cross != null) [
"--with-__thread"
] ++ lib.optionals (cross == null && stdenv.isArm) [
"--host=arm-linux-gnueabi"

View File

@ -25,6 +25,11 @@ stdenv.mkDerivation {
echo Source root reset to ''${sourceRoot}
'';
# https://sourceware.org/glibc/wiki/Release/2.26#Removal_of_.27xlocale.h.27
postPatch = if stdenv ? glibc
then "substituteInPlace i18n/digitlst.cpp --replace '<xlocale.h>' '<locale.h>'"
else null; # won't find locale_t on darwin
inherit patchFlags patches;
preConfigure = ''

View File

@ -1,17 +1,14 @@
{ stdenv, fetchFromGitHub }:
let
inherit (stdenv.lib) optional;
in stdenv.mkDerivation rec {
stdenv.mkDerivation rec {
name = "iniparser-${version}";
version = "4.0";
version = "4.1";
src = fetchFromGitHub {
owner = "ndevilla";
repo = "iniparser";
rev = "v${version}";
sha256 = "0339qa0qxa5z02xjcs5my8v91v0r9jm4piswrl1sa29kwyxgv5nb";
sha256 = "0dhab6pad6wh816lr7r3jb6z273njlgw2vpw8kcfnmi7ijaqhnr5";
};
patches = ./no-usr.patch;
@ -19,9 +16,6 @@ in stdenv.mkDerivation rec {
doCheck = true;
preCheck = "patchShebangs test/make-tests.sh";
# TODO: Build dylib on Darwin
buildFlags = (if stdenv.isDarwin then [ "libiniparser.a" ] else [ "libiniparser.so" ]) ++ [ "CC=cc" ];
installPhase = ''
mkdir -p $out/lib
@ -34,17 +28,16 @@ in stdenv.mkDerivation rec {
done;
cp -r html $out/share/doc/${name}
'' + (if stdenv.isDarwin then ''
cp libiniparser.a $out/lib
'' else ''
cp libiniparser.so.0 $out/lib
ln -s libiniparser.so.0 $out/lib/libiniparser.so
'');
cp libiniparser.so.1 $out/lib
ln -s libiniparser.so.1 $out/lib/libiniparser.so
'';
meta = {
meta = with stdenv.lib; {
inherit (src.meta) homepage;
description = "Free standalone ini file parsing library";
license = stdenv.lib.licenses.mit;
platforms = stdenv.lib.platforms.unix;
license = licenses.mit;
platforms = platforms.unix;
maintainers = [ maintainers.primeos ];
};
}

View File

@ -0,0 +1,24 @@
{ stdenv, fetchFromGitHub, autoreconfHook, libtirpc, pkgconfig }:
stdenv.mkDerivation rec {
name = "libnsl-${version}";
version = "1.1.0";
src = fetchFromGitHub {
owner = "thkukuk";
repo = "libnsl";
rev = "libnsl-${version}";
sha256 = "0h8br0gmgw3fp5fmy6bfbj1qlk9hry1ssg25ssjgxbd8spczpscs";
};
nativeBuildInputs = [ autoreconfHook pkgconfig ];
buildInputs = [ libtirpc ];
meta = with stdenv.lib; {
description = "Client interface library for NIS(YP) and NIS+";
homepage = https://github.com/thkukuk/libnsl;
license = licenses.lgpl21;
maintainers = [ maintainers.dezgeg ];
platforms = platforms.linux;
};
}

View File

@ -12,7 +12,12 @@ stdenv.mkDerivation {
sha256 = "02z2f8z5cy0ajnh9pgar40lsxdknfw5cbyw52138hxnpr6adrvak";
};
postPatch = "sed 's,/bin/rm,rm,g' -i genMakefiles";
postPatch = "sed 's,/bin/rm,rm,g' -i genMakefiles"
+ stdenv.lib.optionalString (stdenv ? glibc) ''
substituteInPlace liveMedia/include/Locale.hh \
--replace '<xlocale.h>' '<locale.h>'
'';
configurePhase = ''
sed \

View File

@ -8,6 +8,10 @@ stdenv.mkDerivation rec {
sha256 = "1xchbxy0xql7yl7z4n1icj8r7dmly46i22fvm00vdjq64zlmqg3j";
};
postPatch = ''
sed '1i#include <stdint.h>' -i src/xdr_sizeof.c
'';
nativeBuildInputs = [ autoreconfHook ];
propagatedBuildInputs = [ libkrb5 ];

View File

@ -24,6 +24,8 @@ in stdenv.mkDerivation rec {
++ stdenv.lib.optionals (stdenv.system == "x86_64-linux")
[ "-DCMAKE_CXX_FLAGS=-fPIC" "-DCMAKE_C_FLAGS=-fPIC" ];
enableParallelBuilding = true;
meta = with stdenv.lib; {
description = "Novel computer vision C++ library with customizable algorithms and data structures";
homepage = http://hci.iwr.uni-heidelberg.de/vigra;

View File

@ -3,8 +3,8 @@
let param =
if stdenv.lib.versionAtLeast ocaml.version "4.02" then
{
version = "1.5";
sha256 = "1nq884cxl1k4daa549bk7bxarwivbpp51k4blbiwyxwfhs29xgfr";
version = "1.6";
sha256 = "00hhxcjf3bj3w2qm8nzs9x6vrqkadf4i0277s5whzy2rmiknj63v";
buildInputs = [ jbuilder ];
extra = {
buildPhase = "jbuilder build -p zed";

View File

@ -0,0 +1,21 @@
{ stdenv, buildPythonPackage, fetchPypi
, betamax, requests_toolbelt }:
buildPythonPackage rec {
pname = "betamax-matchers";
version = "0.4.0";
src = fetchPypi {
inherit pname version;
sha256 = "07qpwjyq2i2aqhz5iwghnj4pqr2ys5n45v1vmpcfx9r5mhwrsq43";
};
buildInputs = [ betamax requests_toolbelt ];
meta = with stdenv.lib; {
homepage = https://github.com/sigmavirus24/betamax_matchers;
description = "A group of experimental matchers for Betamax";
license = licenses.asl20;
maintainers = with maintainers; [ pSub ];
};
}

View File

@ -0,0 +1,20 @@
{ stdenv, buildPythonPackage, fetchPypi
, betamax, pyyaml }:
buildPythonPackage rec {
pname = "betamax-serializers";
version = "0.2.0";
src = fetchPypi {
inherit pname version;
sha256 = "1yqzwx204m4lxlpg04cwv6iwzmcpdzr19wvj97vvxchp0g4qg83d";
};
buildInputs = [ betamax pyyaml ];
meta = with stdenv.lib; {
homepage = https://gitlab.com/betamax/serializers;
description = "A set of third-party serializers for Betamax";
license = licenses.asl20;
};
}

View File

@ -14,6 +14,8 @@ with pythonPackages;buildPythonPackage rec {
checkInputs = [ pytest ];
checkPhase = ''
# Don't know why this test is failing!
substituteInPlace testing/test_request.py --replace "test_env" "noop_test_env"
py.test
'';

View File

@ -0,0 +1,22 @@
{ stdenv, buildPythonPackage, python, fetchurl }:
buildPythonPackage rec {
name = "fastimport-${version}";
version = "0.9.6";
src = fetchurl {
url = "mirror://pypi/f/fastimport/${name}.tar.gz";
sha256 = "1aqjsin4rmqm7ln4j0p73fzxifws6c6ikgyhav7r137m2ixsxl43";
};
checkPhase = ''
${python.interpreter} -m unittest discover
'';
meta = with stdenv.lib; {
homepage = https://launchpad.net/python-fastimport;
description = "VCS fastimport/fastexport parser";
maintainers = with maintainers; [ koral ];
license = licenses.gpl2Plus;
};
}

View File

@ -0,0 +1,21 @@
{ stdenv, buildPythonPackage, fetchPypi
, enum34, hpack, hyperframe }:
buildPythonPackage rec {
name = "${pname}-${version}";
pname = "h2";
version = "3.0.1";
src = fetchPypi {
inherit pname version;
sha256 = "0r3f43r0v7sqgdjjg5ngw0dndk2v6cyd0jncpwya54m37y42z5mj";
};
propagatedBuildInputs = [ enum34 hpack hyperframe ];
meta = with stdenv.lib; {
description = "HTTP/2 State-Machine based protocol implementation";
homepage = "http://hyper.rtfd.org/";
license = licenses.mit;
};
}

View File

@ -0,0 +1,17 @@
{ stdenv, buildPythonPackage, fetchPypi }:
buildPythonPackage rec {
name = "${pname}-${version}";
pname = "hyperframe";
version = "5.1.0";
src = fetchPypi {
inherit pname version;
sha256 = "017vjbb1xjak1pxcvihhilzjnmpfvhapk7k88wp6lvdkkm9l8nd2";
};
meta = with stdenv.lib; {
description = "HTTP/2 framing layer for Python";
homepage = "http://hyper.rtfd.org/";
license = licenses.mit;
};
}

View File

@ -0,0 +1,18 @@
{ stdenv, kaitaistruct, buildPythonPackage, fetchPypi }:
buildPythonPackage rec {
name = "${pname}-${version}";
pname = "kaitaistruct";
version = "0.7";
src = fetchPypi {
inherit pname version;
sha256 = "19j3snmr0qbd48f7yd3cc21ffv13dahf8ys591dnalbhvnkar71i";
};
meta = with stdenv.lib; {
description = "Kaitai Struct: runtime library for Python";
homepage = "https://github.com/kaitai-io/kaitai_struct_python_runtime";
license = licenses.mit;
};
}

View File

@ -1,21 +1,25 @@
{ stdenv, fetchPypi, buildPythonPackage, ecdsa
, mnemonic, protobuf, hidapi }:
{ stdenv, fetchFromGitHub, buildPythonPackage, pytest
, ecdsa , mnemonic, protobuf, hidapi, trezor }:
buildPythonPackage rec {
name = "${pname}-${version}";
pname = "keepkey";
version = "4.0.0";
src = fetchPypi {
inherit pname version;
sha256 = "95c8d5127919f9fc4bb0120b05f92efc8f526d4a68122ac18e63509571ac45a2";
src = fetchFromGitHub {
owner = "keepkey";
repo = "python-keepkey";
rev = "v${version}";
sha256 = "144awjkc169z2n1ffirs697y6m97izh3pbh3sjhy3nji7jszh592";
};
propagatedBuildInputs = [ protobuf hidapi ];
propagatedBuildInputs = [ protobuf hidapi trezor ];
buildInputs = [ ecdsa mnemonic ];
# There are no actual tests: "ImportError: No module named tests"
checkInputs = [ pytest ];
# tests requires hardware
doCheck = false;
# Remove impossible dependency constraint

View File

@ -0,0 +1,24 @@
{ stdenv, fetchPypi, buildPythonPackage, gssapi, pyasn1 }:
buildPythonPackage rec {
version = "2.3";
pname = "ldap3";
name = "${pname}-${version}";
src = fetchPypi {
inherit pname version;
sha256 = "1b36lwil4iflk2ay8gi663abpnfm8id7qg4n3jkmmqbnc1sv6mn0";
};
buildInputs = [ gssapi ];
propagatedBuildInputs = [ pyasn1 ];
doCheck = false; # requires network
meta = with stdenv.lib; {
homepage = https://pypi.python.org/pypi/ldap3;
description = "A strictly RFC 4510 conforming LDAP V3 pure Python client library";
license = licenses.lgpl3;
};
}

View File

@ -1,5 +1,5 @@
{ stdenv, fetchPypi, buildPythonPackage, ed25519, ecdsa
, semver, keepkey, trezor, mnemonic, ledgerblue
, semver, keepkey, trezor, mnemonic, ledgerblue, unidecode, mock, pytest
}:
buildPythonPackage rec {
@ -17,6 +17,14 @@ buildPythonPackage rec {
trezor mnemonic ledgerblue
];
propagatedBuildInputs = [ unidecode ];
checkInputs = [ mock pytest ];
checkPhase = ''
py.test libagent/tests
'';
meta = with stdenv.lib; {
description = "Using hardware wallets as SSH/GPG agent";
homepage = https://github.com/romanz/trezor-agent;

View File

@ -0,0 +1,43 @@
{ stdenv, buildPythonPackage, fetchFromGitHub
, requests, decorator, flake8, mock, six, update_checker, pytestrunner, prawcore
, pytest, betamax, betamax-serializers, betamax-matchers, requests_toolbelt
}:
buildPythonPackage rec {
pname = "praw";
version = "5.2.0";
src = fetchFromGitHub {
owner = "praw-dev";
repo = "praw";
rev = "v${version}";
sha256 = "0nwfadczxa1fyq65zc3sfv8g2r4w3xrx3bdi5fv9xpn97wh2ifgw";
};
propagatedBuildInputs = [
requests
decorator
flake8
mock
six
update_checker
pytestrunner
prawcore
];
checkInputs = [
pytest
betamax
betamax-serializers
betamax-matchers
requests_toolbelt
];
meta = with stdenv.lib; {
description = "Python Reddit API wrapper";
homepage = http://praw.readthedocs.org/;
license = licenses.gpl3;
platforms = platforms.all;
maintainers = with maintainers; [ jgeerds ];
};
}

View File

@ -0,0 +1,38 @@
{ stdenv, buildPythonPackage, fetchFromGitHub
, requests
, testfixtures, mock, requests_toolbelt
, betamax, betamax-serializers, betamax-matchers
}:
buildPythonPackage rec {
pname = "prawcore";
version = "0.12.0";
src = fetchFromGitHub {
owner = "praw-dev";
repo = "prawcore";
rev = "v${version}";
sha256 = "1z5fz6v4bv6xw84l4q3rpw3j63bb2dldl0fd6ckz8wqlpb2l45br";
};
propagatedBuildInputs = [
requests
];
checkInputs = [
testfixtures
mock
betamax
betamax-serializers
betamax-matchers
requests_toolbelt
];
meta = with stdenv.lib; {
description = "Low-level communication layer for PRAW";
homepage = http://praw.readthedocs.org/;
license = licenses.gpl3;
platforms = platforms.all;
maintainers = with maintainers; [ jgeerds ];
};
}

View File

@ -0,0 +1,22 @@
{ stdenv, buildPythonPackage, fetchPypi, pyasn1, isPyPy }:
buildPythonPackage rec {
name = "${pname}-${version}";
pname = "pyasn1-modules";
version = "0.1.5";
disabled = isPyPy;
src = fetchPypi {
inherit pname version;
sha256 = "1239h6h67vg0wazg2qgv6m3hdim2gs66pl89lbnayk55bbnkwc0x";
};
propagatedBuildInputs = [ pyasn1 ];
meta = with stdenv.lib; {
description = "A collection of ASN.1-based protocols modules";
homepage = https://pypi.python.org/pypi/pyasn1-modules;
license = licenses.bsd3;
platforms = platforms.unix; # same as pyasn1
};
}

View File

@ -0,0 +1,19 @@
{ stdenv, buildPythonPackage, fetchPypi, }:
buildPythonPackage rec {
name = "${pname}-${version}";
pname = "pyasn1";
version = "0.3.4";
src = fetchPypi {
inherit pname version;
sha256 = "06hhy38jhwh95gpn8f03cr439273fsfsh4vhd5024r86nh5gyiir";
};
meta = with stdenv.lib; {
description = "ASN.1 tools for Python";
homepage = http://pyasn1.sourceforge.net/;
license = "mBSD";
platforms = platforms.unix; # arbitrary choice
};
}

View File

@ -1,23 +0,0 @@
{ stdenv, buildPythonPackage, fetchurl
, xe }:
buildPythonPackage rec {
url = "http://www.blarg.net/%7Esteveha/pyfeed-0.7.4.tar.gz";
name = stdenv.lib.nameFromURL url ".tar";
src = fetchurl {
inherit url;
sha256 = "1h4msq573m7wm46h3cqlx4rsn99f0l11rhdqgf50lv17j8a8vvy1";
};
propagatedBuildInputs = [ xe ];
# error: invalid command 'test'
doCheck = false;
meta = with stdenv.lib; {
homepage = "http://home.blarg.net/~steveha/pyfeed.html";
description = "Tools for syndication feeds";
};
}

View File

@ -0,0 +1,31 @@
{ stdenv, lib, buildPythonPackage, fetchPypi, isPyPy, libgit2, six, cffi }:
buildPythonPackage rec {
name = "${pname}-${version}";
pname = "pygit2";
version = "0.26.0";
src = fetchPypi {
inherit pname version;
sha256 = "1cbc488ra3kg7r3qky17ms0szi3cda2d96qfkv1l9djsy9hnvw57";
};
preConfigure = lib.optionalString stdenv.isDarwin ''
export DYLD_LIBRARY_PATH="${libgit2}/lib"
'';
propagatedBuildInputs = [ libgit2 six ] ++ lib.optional (!isPyPy) cffi;
preCheck = ''
# disable tests that require networking
rm test/test_repository.py
rm test/test_credentials.py
rm test/test_submodule.py
'';
meta = with lib; {
description = "A set of Python bindings to the libgit2 shared library";
homepage = https://pypi.python.org/pypi/pygit2;
license = licenses.gpl2;
};
}

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