Merge remote-tracking branch 'upstream/master' into HEAD

This commit is contained in:
Frederik Rietdijk 2018-01-07 09:14:41 +01:00
commit 4e6a9f04db
49 changed files with 674 additions and 323 deletions

View File

@ -272,8 +272,37 @@ startAll;
</listitem> </listitem>
</varlistentry> </varlistentry>
<varlistentry>
<term><methodname>systemctl</methodname></term>
<listitem>
<para>Runs <literal>systemctl</literal> commands with optional support for
<literal>systemctl --user</literal></para>
<para>
<programlisting>
$machine->systemctl("list-jobs --no-pager"); // runs `systemctl list-jobs --no-pager`
$machine->systemctl("list-jobs --no-pager", "any-user"); // spawns a shell for `any-user` and runs `systemctl --user list-jobs --no-pager`
</programlisting>
</para>
</listitem>
</varlistentry>
</variablelist> </variablelist>
</para> </para>
<para>
To test user units declared by <literal>systemd.user.services</literal> the optional <literal>$user</literal>
argument can be used:
<programlisting>
$machine->start;
$machine->waitForX;
$machine->waitForUnit("xautolock.service", "x-session-user");
</programlisting>
This applies to <literal>systemctl</literal>, <literal>getUnitInfo</literal>,
<literal>waitForUnit</literal>, <literal>startJob</literal>
and <literal>stopJob</literal>.
</para>
</section> </section>

View File

@ -11,10 +11,24 @@ a USB stick. You can use the <command>dd</command> utility to write the image:
<command>dd if=<replaceable>path-to-image</replaceable> <command>dd if=<replaceable>path-to-image</replaceable>
of=<replaceable>/dev/sdb</replaceable></command>. Be careful about specifying the of=<replaceable>/dev/sdb</replaceable></command>. Be careful about specifying the
correct drive; you can use the <command>lsblk</command> command to get a list of correct drive; you can use the <command>lsblk</command> command to get a list of
block devices. If you're on macOS you can run <command>diskutil list</command> block devices.</para>
to see the list of devices; the device you'll use for the USB must be ejected
before writing the image.</para>
<para>On macOS:
<programlisting>
$ diskutil list
[..]
/dev/diskN (external, physical):
#: TYPE NAME SIZE IDENTIFIER
[..]
$ diskutil unmountDisk diskN
Unmount of all volumes on diskN was successful
$ sudo dd bs=1m if=nix.iso of=/dev/rdiskN
</programlisting>
Using the 'raw' <command>rdiskN</command> device instead of <command>diskN</command>
completes in minutes instead of hours. After <command>dd</command> completes, a GUI
dialog "The disk you inserted was not readable by this computer" will pop up, which
can be ignored.</para>
<para>The <command>dd</command> utility will write the image verbatim to the drive, <para>The <command>dd</command> utility will write the image verbatim to the drive,
making it the recommended option for both UEFI and non-UEFI installations. For making it the recommended option for both UEFI and non-UEFI installations. For
non-UEFI installations, you can alternatively use non-UEFI installations, you can alternatively use

View File

@ -234,6 +234,13 @@ following incompatible changes:</para>
to your <literal>configuration.nix</literal>. to your <literal>configuration.nix</literal>.
</para> </para>
</listitem> </listitem>
<listitem>
<para>
The NixOS test driver supports user services declared by <literal>systemd.user.services</literal>.
The methods <literal>waitForUnit</literal>, <literal>getUnitInfo</literal>, <literal>startJob</literal>
and <literal>stopJob</literal> provide an optional <literal>$user</literal> argument for that purpose.
</para>
</listitem>
</itemizedlist> </itemizedlist>
</section> </section>

View File

@ -245,6 +245,7 @@
./services/hardware/udev.nix ./services/hardware/udev.nix
./services/hardware/udisks2.nix ./services/hardware/udisks2.nix
./services/hardware/upower.nix ./services/hardware/upower.nix
./services/hardware/usbmuxd.nix
./services/hardware/thermald.nix ./services/hardware/thermald.nix
./services/logging/SystemdJournal2Gelf.nix ./services/logging/SystemdJournal2Gelf.nix
./services/logging/awstats.nix ./services/logging/awstats.nix

View File

@ -0,0 +1,74 @@
{ config, lib, pkgs, ... }:
with lib;
let
defaultUserGroup = "usbmux";
apple = "05ac";
cfg = config.services.usbmuxd;
in
{
options.services.usbmuxd = {
enable = mkOption {
type = types.bool;
default = false;
description = ''
Enable the usbmuxd ("USB multiplexing daemon") service. This daemon is
in charge of multiplexing connections over USB to an iOS device. This is
needed for transferring data from and to iOS devices (see ifuse). Also
this may enable plug-n-play tethering for iPhones.
'';
};
user = mkOption {
type = types.str;
default = defaultUserGroup;
description = ''
The user usbmuxd should use to run after startup.
'';
};
group = mkOption {
type = types.str;
default = defaultUserGroup;
description = ''
The group usbmuxd should use to run after startup.
'';
};
};
config = mkIf cfg.enable {
users.extraUsers = optional (cfg.user == defaultUserGroup) {
name = cfg.user;
description = "usbmuxd user";
group = cfg.group;
};
users.extraGroups = optional (cfg.group == defaultUserGroup) {
name = cfg.group;
};
# Give usbmuxd permission for Apple devices
services.udev.extraRules = ''
SUBSYSTEM=="usb", ATTR{idVendor}=="${apple}", GROUP="${cfg.group}"
'';
systemd.services.usbmuxd = {
description = "usbmuxd";
wantedBy = [ "multi-user.target" ];
unitConfig.Documentation = "man:usbmuxd(8)";
serviceConfig = {
# Trigger the udev rule manually. This doesn't require replugging the
# device when first enabling the option to get it to work
ExecStartPre = "${pkgs.libudev}/bin/udevadm trigger -s usb -a idVendor=${apple}";
ExecStart = "${pkgs.usbmuxd}/bin/usbmuxd -U ${cfg.user} -f";
};
};
};
}

View File

@ -29,8 +29,12 @@ let
gitalyToml = pkgs.writeText "gitaly.toml" '' gitalyToml = pkgs.writeText "gitaly.toml" ''
socket_path = "${lib.escape ["\""] gitalySocket}" socket_path = "${lib.escape ["\""] gitalySocket}"
bin_dir = "${cfg.packages.gitaly}/bin"
prometheus_listen_addr = "localhost:9236" prometheus_listen_addr = "localhost:9236"
[git]
bin_path = "${pkgs.git}/bin/git"
[gitaly-ruby] [gitaly-ruby]
dir = "${cfg.packages.gitaly.ruby}" dir = "${cfg.packages.gitaly.ruby}"
@ -104,6 +108,7 @@ let
ldap.enabled = false; ldap.enabled = false;
omniauth.enabled = false; omniauth.enabled = false;
shared.path = "${cfg.statePath}/shared"; shared.path = "${cfg.statePath}/shared";
gitaly.client_path = "${cfg.packages.gitaly}/bin";
backup.path = "${cfg.backupPath}"; backup.path = "${cfg.backupPath}";
gitlab_shell = { gitlab_shell = {
path = "${cfg.packages.gitlab-shell}"; path = "${cfg.packages.gitlab-shell}";
@ -117,8 +122,6 @@ let
}; };
git = { git = {
bin_path = "git"; bin_path = "git";
max_size = 20971520; # 20MB
timeout = 10;
}; };
monitoring = { monitoring = {
ip_whitelist = [ "127.0.0.0/8" "::1/128" ]; ip_whitelist = [ "127.0.0.0/8" "::1/128" ];
@ -489,7 +492,9 @@ in {
after = [ "network.target" "gitlab.service" ]; after = [ "network.target" "gitlab.service" ];
wantedBy = [ "multi-user.target" ]; wantedBy = [ "multi-user.target" ];
environment.HOME = gitlabEnv.HOME; environment.HOME = gitlabEnv.HOME;
path = with pkgs; [ gitAndTools.git cfg.packages.gitaly.rubyEnv ]; environment.GEM_HOME = "${cfg.packages.gitaly.rubyEnv}/${ruby.gemPath}";
environment.GITLAB_SHELL_CONFIG_PATH = gitlabEnv.GITLAB_SHELL_CONFIG_PATH;
path = with pkgs; [ gitAndTools.git cfg.packages.gitaly.rubyEnv ruby ];
serviceConfig = { serviceConfig = {
#PermissionsStartOnly = true; # preStart must be run as root #PermissionsStartOnly = true; # preStart must be run as root
Type = "simple"; Type = "simple";

View File

@ -97,8 +97,8 @@ in
systemd.services.clamav-daemon = optionalAttrs cfg.daemon.enable { systemd.services.clamav-daemon = optionalAttrs cfg.daemon.enable {
description = "ClamAV daemon (clamd)"; description = "ClamAV daemon (clamd)";
after = mkIf cfg.updater.enable [ "clamav-freshclam.service" ]; after = optional cfg.updater.enable "clamav-freshclam.service";
requires = mkIf cfg.updater.enable [ "clamav-freshclam.service" ]; requires = optional cfg.updater.enable "clamav-freshclam.service";
wantedBy = [ "multi-user.target" ]; wantedBy = [ "multi-user.target" ];
restartTriggers = [ clamdConfigFile ]; restartTriggers = [ clamdConfigFile ];

View File

@ -197,7 +197,7 @@ in
"mmc_block" "mmc_block"
# Support USB keyboards, in case the boot fails and we only have # Support USB keyboards, in case the boot fails and we only have
# a USB keyboard. # a USB keyboard, or for LUKS passphrase prompt.
"uhci_hcd" "uhci_hcd"
"ehci_hcd" "ehci_hcd"
"ehci_pci" "ehci_pci"
@ -206,7 +206,7 @@ in
"xhci_hcd" "xhci_hcd"
"xhci_pci" "xhci_pci"
"usbhid" "usbhid"
"hid_generic" "hid_lenovo" "hid_apple" "hid_roccat" "hid_generic" "hid_lenovo" "hid_apple" "hid_roccat" "hid_logitech_hidpp"
# Misc. keyboard stuff. # Misc. keyboard stuff.
"pcips2" "atkbd" "i8042" "pcips2" "atkbd" "i8042"

View File

@ -1,4 +1,4 @@
{ stdenv, fetchFromGitHub, fetchpatch { stdenv, fetchFromGitHub
, cmake, pkgconfig , cmake, pkgconfig
# Transport # Transport
, curl , curl
@ -15,6 +15,7 @@
, libappindicator-gtk3 , libappindicator-gtk3
, libnotify , libnotify
, libxdg_basedir , libxdg_basedir
, wxGTK
# GStreamer # GStreamer
, gst_all_1 , gst_all_1
# User-agent info # User-agent info
@ -39,13 +40,13 @@ let
in in
stdenv.mkDerivation rec { stdenv.mkDerivation rec {
name = "radiotray-ng-${version}"; name = "radiotray-ng-${version}";
version = "0.1.7"; version = "0.2.0";
src = fetchFromGitHub { src = fetchFromGitHub {
owner = "ebruck"; owner = "ebruck";
repo = "radiotray-ng"; repo = "radiotray-ng";
rev = "v${version}"; rev = "v${version}";
sha256 = "1m853gzh9r249crn0xyrq22x154r005j58b0kq3nsrgi5cps2zdv"; sha256 = "12mhi0q137cjdpmpczvrcr7szq1ja1r8bm0gh03b925y8xyrqp5z";
}; };
nativeBuildInputs = [ cmake pkgconfig wrapGAppsHook makeWrapper ]; nativeBuildInputs = [ cmake pkgconfig wrapGAppsHook makeWrapper ];
@ -56,6 +57,7 @@ stdenv.mkDerivation rec {
glibmm hicolor_icon_theme gnome3.gsettings_desktop_schemas libappindicator-gtk3 libnotify glibmm hicolor_icon_theme gnome3.gsettings_desktop_schemas libappindicator-gtk3 libnotify
libxdg_basedir libxdg_basedir
lsb-release lsb-release
wxGTK
] ++ stdenv.lib.optional doCheck gmock ] ++ stdenv.lib.optional doCheck gmock
++ gstInputs ++ gstInputs
++ pythonInputs; ++ pythonInputs;
@ -65,15 +67,13 @@ stdenv.mkDerivation rec {
--replace /usr $out --replace /usr $out
substituteInPlace include/radiotray-ng/common.hpp \ substituteInPlace include/radiotray-ng/common.hpp \
--replace /usr $out --replace /usr $out
'';
patches = [ # We don't find the radiotray-ng-notification icon otherwise
(fetchpatch { substituteInPlace data/radiotray-ng.desktop \
# Fix menu separators and minor touchup to 'version' --replace radiotray-ng-notification radiotray-ng-on
url = "https://github.com/ebruck/radiotray-ng/commit/827e9f1baaa03ab4d8a5fb3aab043e72950eb965.patch"; substituteInPlace data/rtng-bookmark-editor.desktop \
sha256 = "1aykl6lq4pga34xg5r9mc616gxnd63q6gr8qzg57w6874cj3csrr"; --replace radiotray-ng-notification radiotray-ng-on
}) '';
];
enableParallelBuilding = true; enableParallelBuilding = true;

View File

@ -27,9 +27,9 @@ in rec {
preview = mkStudio { preview = mkStudio {
pname = "android-studio-preview"; pname = "android-studio-preview";
version = "3.1.0.5"; # "Android Studio 3.1 Canary 6" version = "3.1.0.6"; # "Android Studio 3.1 Canary 7"
build = "173.4506631"; build = "173.4524538";
sha256Hash = "10yw27rxv6pfvyl9w18ch63lm85ykj7ssrv87pchvwkmsscaw2zn"; sha256Hash = "0rj7swychriznylrr09g0rnj12rymms925xbry85ba72hj1jjf6w";
meta = stable.meta // { meta = stable.meta // {
description = "The Official IDE for Android (preview version)"; description = "The Official IDE for Android (preview version)";

View File

@ -424,16 +424,16 @@ rec {
spotbugs = buildEclipsePlugin rec { spotbugs = buildEclipsePlugin rec {
name = "spotbugs-${version}"; name = "spotbugs-${version}";
version = "3.1.0.r201710241414-11c9895"; version = "3.1.1.r201712011030-903b7a0";
srcFeature = fetchurl { srcFeature = fetchurl {
url = "https://spotbugs.github.io/eclipse/features/com.github.spotbugs.plugin.eclipse_${version}.jar"; url = "https://spotbugs.github.io/eclipse/features/com.github.spotbugs.plugin.eclipse_${version}.jar";
sha256 = "084dj2bid5issh28j32hi5w9vx5xs829h7d5lbz5hqj1fyn9h6bs"; sha256 = "12z5dbs10h5k567wbmwz1w4pnidmqsls52qcfdb3zlgr0rqvz072";
}; };
srcPlugin = fetchurl { srcPlugin = fetchurl {
url = "https://spotbugs.github.io/eclipse/plugins/com.github.spotbugs.plugin.eclipse_${version}.jar"; url = "https://spotbugs.github.io/eclipse/plugins/com.github.spotbugs.plugin.eclipse_${version}.jar";
sha256 = "1mqpl3gx06f54w13jm01qd8fbniab3x989mi3lysx078vrp23jas"; sha256 = "0dnkp2alymvyyql7g8w79i27b3c64inhdvpxx1v014ng9liv54xb";
}; };
meta = with stdenv.lib; { meta = with stdenv.lib; {

View File

@ -2,11 +2,11 @@
stdenv.mkDerivation rec { stdenv.mkDerivation rec {
name = "josm-${version}"; name = "josm-${version}";
version = "13053"; version = "13265";
src = fetchurl { src = fetchurl {
url = "https://josm.openstreetmap.de/download/josm-snapshot-${version}.jar"; url = "https://josm.openstreetmap.de/download/josm-snapshot-${version}.jar";
sha256 = "0czsmx0gsml3vqzx6940jw2xpmh16idypydw0d4147k4fi9gzyz6"; sha256 = "0mmpxmf17lw1j1m1gfz2jrm3qj2416zgbwgcy7xbvn6qcd8k7dr5";
}; };
buildInputs = [ jre8 makeWrapper ]; buildInputs = [ jre8 makeWrapper ];

View File

@ -37,7 +37,7 @@
let let
mirror = https://get.geo.opera.com/pub/opera/desktop; mirror = https://get.geo.opera.com/pub/opera/desktop;
version = "48.0.2685.52"; version = "50.0.2762.45";
rpath = stdenv.lib.makeLibraryPath [ rpath = stdenv.lib.makeLibraryPath [
@ -89,7 +89,7 @@ in stdenv.mkDerivation {
src = fetchurl { src = fetchurl {
url = "${mirror}/${version}/linux/opera-stable_${version}_amd64.deb"; url = "${mirror}/${version}/linux/opera-stable_${version}_amd64.deb";
sha256 = "027njqh2as4d0xsnvzamqiplghb8cxqnc19y0vqkvjnsw57v828p"; sha256 = "1ajdr6yzqc9xkvdcgkps6j5996n60ibjhj518gmminx90da6x5dy";
}; };
unpackCmd = "${dpkg}/bin/dpkg-deb -x $curSrc ."; unpackCmd = "${dpkg}/bin/dpkg-deb -x $curSrc .";

View File

@ -1,12 +1,12 @@
{ stdenv, fetchurl, pkgconfig, ncurses, glib, openssl, perl, libintlOrEmpty }: { stdenv, fetchurl, pkgconfig, ncurses, glib, openssl, perl, libintlOrEmpty }:
stdenv.mkDerivation rec { stdenv.mkDerivation rec {
version = "1.0.5"; version = "1.0.6";
name = "irssi-${version}"; name = "irssi-${version}";
src = fetchurl { src = fetchurl {
url = "https://github.com/irssi/irssi/releases/download/${version}/${name}.tar.gz"; url = "https://github.com/irssi/irssi/releases/download/${version}/${name}.tar.gz";
sha256 = "1lasb8flic4qc1sd3pvfg9aig5skcxlyx6iy9bk73147r8vzaq75"; sha256 = "0iiz0x698bdlpssbj357ln5f7ccjwc1m1550xzy1g7kwcvdpp4mb";
}; };
nativeBuildInputs = [ pkgconfig ]; nativeBuildInputs = [ pkgconfig ];

View File

@ -1,8 +1,10 @@
source 'https://rubygems.org' source 'https://rubygems.org'
gem 'github-linguist', '~> 4.7.0', require: 'linguist' gem 'github-linguist', '~> 4.7.0', require: 'linguist'
gem 'gitaly-proto', '~> 0.37.0', require: 'gitaly' gem 'gitaly-proto', '~> 0.59.0', require: 'gitaly'
gem 'activesupport' gem 'activesupport'
gem 'gollum-lib', '~> 4.2', require: false
gem 'gollum-rugged_adapter', '~> 0.4.4', require: false
group :development, :test do group :development, :test do
gem 'gitlab-styles', '~> 2.0.0', require: false gem 'gitlab-styles', '~> 2.0.0', require: false

View File

@ -11,10 +11,13 @@ GEM
ast (2.3.0) ast (2.3.0)
charlock_holmes (0.7.5) charlock_holmes (0.7.5)
concurrent-ruby (1.0.5) concurrent-ruby (1.0.5)
diff-lcs (1.3)
escape_utils (1.1.1) escape_utils (1.1.1)
faraday (0.12.2) faraday (0.12.2)
multipart-post (>= 1.2, < 3) multipart-post (>= 1.2, < 3)
gitaly-proto (0.37.0) gemojione (3.3.0)
json
gitaly-proto (0.59.0)
google-protobuf (~> 3.1) google-protobuf (~> 3.1)
grpc (~> 1.0) grpc (~> 1.0)
github-linguist (4.7.6) github-linguist (4.7.6)
@ -22,10 +25,29 @@ GEM
escape_utils (~> 1.1.0) escape_utils (~> 1.1.0)
mime-types (>= 1.19) mime-types (>= 1.19)
rugged (>= 0.23.0b) rugged (>= 0.23.0b)
github-markup (1.6.1)
gitlab-grit (2.8.2)
charlock_holmes (~> 0.6)
diff-lcs (~> 1.1)
mime-types (>= 1.16)
posix-spawn (~> 0.3)
gitlab-styles (2.0.0) gitlab-styles (2.0.0)
rubocop (~> 0.49) rubocop (~> 0.49)
rubocop-gitlab-security (~> 0.1.0) rubocop-gitlab-security (~> 0.1.0)
rubocop-rspec (~> 1.15) rubocop-rspec (~> 1.15)
gollum-grit_adapter (1.0.1)
gitlab-grit (~> 2.7, >= 2.7.1)
gollum-lib (4.2.7)
gemojione (~> 3.2)
github-markup (~> 1.6)
gollum-grit_adapter (~> 1.0)
nokogiri (>= 1.6.1, < 2.0)
rouge (~> 2.1)
sanitize (~> 2.1)
stringex (~> 2.6)
gollum-rugged_adapter (0.4.4)
mime-types (>= 1.15)
rugged (~> 0.25)
google-protobuf (3.4.0.2) google-protobuf (3.4.0.2)
googleauth (0.5.3) googleauth (0.5.3)
faraday (~> 0.12) faraday (~> 0.12)
@ -39,6 +61,7 @@ GEM
google-protobuf (~> 3.1) google-protobuf (~> 3.1)
googleauth (~> 0.5.1) googleauth (~> 0.5.1)
i18n (0.8.1) i18n (0.8.1)
json (2.1.0)
jwt (1.5.6) jwt (1.5.6)
little-plugger (1.1.4) little-plugger (1.1.4)
logging (2.2.2) logging (2.2.2)
@ -48,18 +71,23 @@ GEM
mime-types (3.1) mime-types (3.1)
mime-types-data (~> 3.2015) mime-types-data (~> 3.2015)
mime-types-data (3.2016.0521) mime-types-data (3.2016.0521)
mini_portile2 (2.3.0)
minitest (5.9.1) minitest (5.9.1)
multi_json (1.12.1) multi_json (1.12.1)
multipart-post (2.0.0) multipart-post (2.0.0)
nokogiri (1.8.1)
mini_portile2 (~> 2.3.0)
os (0.9.6) os (0.9.6)
parallel (1.12.0) parallel (1.12.0)
parser (2.4.0.0) parser (2.4.0.0)
ast (~> 2.2) ast (~> 2.2)
posix-spawn (0.3.13)
powerpack (0.1.1) powerpack (0.1.1)
public_suffix (2.0.5) public_suffix (2.0.5)
rainbow (2.2.2) rainbow (2.2.2)
rake rake
rake (12.1.0) rake (12.1.0)
rouge (2.2.1)
rubocop (0.50.0) rubocop (0.50.0)
parallel (~> 1.10) parallel (~> 1.10)
parser (>= 2.3.3.1, < 3.0) parser (>= 2.3.3.1, < 3.0)
@ -73,11 +101,14 @@ GEM
rubocop (>= 0.50.0) rubocop (>= 0.50.0)
ruby-progressbar (1.8.3) ruby-progressbar (1.8.3)
rugged (0.26.0) rugged (0.26.0)
sanitize (2.1.0)
nokogiri (>= 1.4.4)
signet (0.7.3) signet (0.7.3)
addressable (~> 2.3) addressable (~> 2.3)
faraday (~> 0.9) faraday (~> 0.9)
jwt (~> 1.5) jwt (~> 1.5)
multi_json (~> 1.10) multi_json (~> 1.10)
stringex (2.7.1)
thread_safe (0.3.6) thread_safe (0.3.6)
tzinfo (1.2.2) tzinfo (1.2.2)
thread_safe (~> 0.1) thread_safe (~> 0.1)
@ -88,9 +119,11 @@ PLATFORMS
DEPENDENCIES DEPENDENCIES
activesupport activesupport
gitaly-proto (~> 0.37.0) gitaly-proto (~> 0.59.0)
github-linguist (~> 4.7.0) github-linguist (~> 4.7.0)
gitlab-styles (~> 2.0.0) gitlab-styles (~> 2.0.0)
gollum-lib (~> 4.2)
gollum-rugged_adapter (~> 0.4.4)
BUNDLED WITH BUNDLED WITH
1.15.4 1.16.0

View File

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

View File

@ -41,6 +41,14 @@
}; };
version = "1.0.5"; version = "1.0.5";
}; };
diff-lcs = {
source = {
remotes = ["https://rubygems.org"];
sha256 = "18w22bjz424gzafv6nzv98h0aqkwz3d9xhm7cbr1wfbyas8zayza";
type = "gem";
};
version = "1.3";
};
escape_utils = { escape_utils = {
source = { source = {
remotes = ["https://rubygems.org"]; remotes = ["https://rubygems.org"];
@ -58,14 +66,23 @@
}; };
version = "0.12.2"; version = "0.12.2";
}; };
gemojione = {
dependencies = ["json"];
source = {
remotes = ["https://rubygems.org"];
sha256 = "0ayk8r147k1s38nj18pwk76npx1p7jhi86silk800nj913pjvrhj";
type = "gem";
};
version = "3.3.0";
};
gitaly-proto = { gitaly-proto = {
dependencies = ["google-protobuf" "grpc"]; dependencies = ["google-protobuf" "grpc"];
source = { source = {
remotes = ["https://rubygems.org"]; remotes = ["https://rubygems.org"];
sha256 = "1nqp9ib00q55ig8zf1r6ldf3xkqw0874ra1mbcsm8sl46l84lx11"; sha256 = "0s86126iqhbmkix6zs357ixlc1syyxmwk2blaimsav7f0x9swy82";
type = "gem"; type = "gem";
}; };
version = "0.37.0"; version = "0.59.0";
}; };
github-linguist = { github-linguist = {
dependencies = ["charlock_holmes" "escape_utils" "mime-types" "rugged"]; dependencies = ["charlock_holmes" "escape_utils" "mime-types" "rugged"];
@ -76,6 +93,23 @@
}; };
version = "4.7.6"; version = "4.7.6";
}; };
github-markup = {
source = {
remotes = ["https://rubygems.org"];
sha256 = "1nyb9ck2c9z5qi86n7r52w0m126qpnvc93yh35cn8bwsnkjqx0iq";
type = "gem";
};
version = "1.6.1";
};
gitlab-grit = {
dependencies = ["charlock_holmes" "diff-lcs" "mime-types" "posix-spawn"];
source = {
remotes = ["https://rubygems.org"];
sha256 = "0xgs3l81ghlc5nm75n0pz7b2cj3hpscfq5iy27c483nnjn2v5mc4";
type = "gem";
};
version = "2.8.2";
};
gitlab-styles = { gitlab-styles = {
dependencies = ["rubocop" "rubocop-gitlab-security" "rubocop-rspec"]; dependencies = ["rubocop" "rubocop-gitlab-security" "rubocop-rspec"];
source = { source = {
@ -85,6 +119,33 @@
}; };
version = "2.0.0"; version = "2.0.0";
}; };
gollum-grit_adapter = {
dependencies = ["gitlab-grit"];
source = {
remotes = ["https://rubygems.org"];
sha256 = "0fcibm63v1afc0fj5rki0mm51m7nndil4cjcjjvkh3yigfn4nr4b";
type = "gem";
};
version = "1.0.1";
};
gollum-lib = {
dependencies = ["gemojione" "github-markup" "gollum-grit_adapter" "nokogiri" "rouge" "sanitize" "stringex"];
source = {
remotes = ["https://rubygems.org"];
sha256 = "1filwvjfj5q2m6w4q274ai36d6f0mrsv2l2khhk4bv1q6pqby2fq";
type = "gem";
};
version = "4.2.7";
};
gollum-rugged_adapter = {
dependencies = ["mime-types" "rugged"];
source = {
remotes = ["https://rubygems.org"];
sha256 = "0khfmakp65frlaj7ajs6ihqg4xi7yc9z96kpsf1b7giqi3fqhhv4";
type = "gem";
};
version = "0.4.4";
};
google-protobuf = { google-protobuf = {
source = { source = {
remotes = ["https://rubygems.org"]; remotes = ["https://rubygems.org"];
@ -119,6 +180,14 @@
}; };
version = "0.8.1"; version = "0.8.1";
}; };
json = {
source = {
remotes = ["https://rubygems.org"];
sha256 = "01v6jjpvh3gnq6sgllpfqahlgxzj50ailwhj9b3cd20hi2dx0vxp";
type = "gem";
};
version = "2.1.0";
};
jwt = { jwt = {
source = { source = {
remotes = ["https://rubygems.org"]; remotes = ["https://rubygems.org"];
@ -169,6 +238,14 @@
}; };
version = "3.2016.0521"; version = "3.2016.0521";
}; };
mini_portile2 = {
source = {
remotes = ["https://rubygems.org"];
sha256 = "13d32jjadpjj6d2wdhkfpsmy68zjx90p49bgf8f7nkpz86r1fr11";
type = "gem";
};
version = "2.3.0";
};
minitest = { minitest = {
source = { source = {
remotes = ["https://rubygems.org"]; remotes = ["https://rubygems.org"];
@ -193,6 +270,15 @@
}; };
version = "2.0.0"; version = "2.0.0";
}; };
nokogiri = {
dependencies = ["mini_portile2"];
source = {
remotes = ["https://rubygems.org"];
sha256 = "105xh2zkr8nsyfaj2izaisarpnkrrl9000y3nyflg9cbzrfxv021";
type = "gem";
};
version = "1.8.1";
};
os = { os = {
source = { source = {
remotes = ["https://rubygems.org"]; remotes = ["https://rubygems.org"];
@ -218,6 +304,14 @@
}; };
version = "2.4.0.0"; version = "2.4.0.0";
}; };
posix-spawn = {
source = {
remotes = ["https://rubygems.org"];
sha256 = "1pmxmpins57qrbr31bs3bm7gidhaacmrp4md6i962gvpq4gyfcjw";
type = "gem";
};
version = "0.3.13";
};
powerpack = { powerpack = {
source = { source = {
remotes = ["https://rubygems.org"]; remotes = ["https://rubygems.org"];
@ -251,6 +345,14 @@
}; };
version = "12.1.0"; version = "12.1.0";
}; };
rouge = {
source = {
remotes = ["https://rubygems.org"];
sha256 = "02kpahk5nkc33yxnn75649kzxaz073wvazr2zyg491nndykgnvcs";
type = "gem";
};
version = "2.2.1";
};
rubocop = { rubocop = {
dependencies = ["parallel" "parser" "powerpack" "rainbow" "ruby-progressbar" "unicode-display_width"]; dependencies = ["parallel" "parser" "powerpack" "rainbow" "ruby-progressbar" "unicode-display_width"];
source = { source = {
@ -294,6 +396,15 @@
}; };
version = "0.26.0"; version = "0.26.0";
}; };
sanitize = {
dependencies = ["nokogiri"];
source = {
remotes = ["https://rubygems.org"];
sha256 = "0xsv6xqrlz91rd8wifjknadbl3z5h6qphmxy0hjb189qbdghggn3";
type = "gem";
};
version = "2.1.0";
};
signet = { signet = {
dependencies = ["addressable" "faraday" "jwt" "multi_json"]; dependencies = ["addressable" "faraday" "jwt" "multi_json"];
source = { source = {
@ -303,6 +414,14 @@
}; };
version = "0.7.3"; version = "0.7.3";
}; };
stringex = {
source = {
remotes = ["https://rubygems.org"];
sha256 = "1zc93v00av643lc6njl09wwki7h5yqayhh1din8zqfylw814l1dv";
type = "gem";
};
version = "2.7.1";
};
thread_safe = { thread_safe = {
source = { source = {
remotes = ["https://rubygems.org"]; remotes = ["https://rubygems.org"];

View File

@ -1,19 +1,17 @@
{ stdenv, ruby, bundler, fetchFromGitLab, go }: { stdenv, ruby, bundler, fetchFromGitLab, go }:
stdenv.mkDerivation rec { stdenv.mkDerivation rec {
version = "5.9.3"; version = "5.10.2";
name = "gitlab-shell-${version}"; name = "gitlab-shell-${version}";
srcs = fetchFromGitLab { srcs = fetchFromGitLab {
owner = "gitlab-org"; owner = "gitlab-org";
repo = "gitlab-shell"; repo = "gitlab-shell";
rev = "v${version}"; rev = "v${version}";
sha256 = "12iil8ap9lbd7skj7xr2v6lsyjdd97svbmyj0n2j8m819fv0x27p"; sha256 = "16lwnzsppql7pkf8fka6cwkghdr57g225zvln9ii29w7nzz1hvaf";
}; };
buildInputs = [ buildInputs = [ ruby bundler go ];
ruby bundler go
];
patches = [ ./remove-hardcoded-locations.patch ./fixes.patch ]; patches = [ ./remove-hardcoded-locations.patch ./fixes.patch ];

View File

@ -25,3 +25,16 @@ index e7d0254..181ec8a 100644
end end
def api def api
diff --git a/go/internal/config/config.go b/go/internal/config/config.go
index c57b4de..88cfc95 100644
--- a/go/internal/config/config.go
+++ b/go/internal/config/config.go
@@ -27,7 +27,7 @@ func New() (*Config, error) {
}
cfg.RootDir = dir
- configBytes, err := ioutil.ReadFile(path.Join(cfg.RootDir, configFile))
+ configBytes, err := ioutil.ReadFile(os.Getenv("GITLAB_SHELL_CONFIG_PATH"))
if err != nil {
return nil, err
}

View File

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

View File

@ -1,6 +1,6 @@
source 'https://rubygems.org' source 'https://rubygems.org'
gem 'rails', '4.2.8' gem 'rails', '4.2.10'
gem 'rails-deprecated_sanitizer', '~> 1.0.3' gem 'rails-deprecated_sanitizer', '~> 1.0.3'
# Responders respond_to and respond_with # Responders respond_to and respond_with
@ -90,7 +90,7 @@ gem 'kaminari', '~> 1.0'
gem 'hamlit', '~> 2.6.1' gem 'hamlit', '~> 2.6.1'
# Files attachments # Files attachments
gem 'carrierwave', '~> 1.1' gem 'carrierwave', '~> 1.2'
# Drag and Drop UI # Drag and Drop UI
gem 'dropzonejs-rails', '~> 0.7.1' gem 'dropzonejs-rails', '~> 0.7.1'
@ -102,7 +102,7 @@ gem 'fog-google', '~> 0.5'
gem 'fog-local', '~> 0.3' gem 'fog-local', '~> 0.3'
gem 'fog-openstack', '~> 0.1' gem 'fog-openstack', '~> 0.1'
gem 'fog-rackspace', '~> 0.1.1' gem 'fog-rackspace', '~> 0.1.1'
gem 'fog-aliyun', '~> 0.1.0' gem 'fog-aliyun', '~> 0.2.0'
# for Google storage # for Google storage
gem 'google-api-client', '~> 0.13.6' gem 'google-api-client', '~> 0.13.6'
@ -111,7 +111,7 @@ gem 'google-api-client', '~> 0.13.6'
gem 'unf', '~> 0.1.4' gem 'unf', '~> 0.1.4'
# Seed data # Seed data
gem 'seed-fu', '~> 2.3.5' gem 'seed-fu', '2.3.6' # Upgrade to > 2.3.7 once https://github.com/mbleigh/seed-fu/issues/123 is solved
# Markdown and HTML processing # Markdown and HTML processing
gem 'html-pipeline', '~> 1.11.0' gem 'html-pipeline', '~> 1.11.0'
@ -171,7 +171,7 @@ gem 're2', '~> 1.1.1'
gem 'version_sorter', '~> 2.1.0' gem 'version_sorter', '~> 2.1.0'
# Cache # Cache
gem 'redis-rails', '~> 5.0.1' gem 'redis-rails', '~> 5.0.2'
# Redis # Redis
gem 'redis', '~> 3.2' gem 'redis', '~> 3.2'
@ -245,7 +245,7 @@ gem 'font-awesome-rails', '~> 4.7'
gem 'gemojione', '~> 3.3' gem 'gemojione', '~> 3.3'
gem 'gon', '~> 6.1.0' gem 'gon', '~> 6.1.0'
gem 'jquery-atwho-rails', '~> 1.3.2' gem 'jquery-atwho-rails', '~> 1.3.2'
gem 'jquery-rails', '~> 4.1.0' gem 'jquery-rails', '~> 4.3.1'
gem 'request_store', '~> 1.3' gem 'request_store', '~> 1.3'
gem 'select2-rails', '~> 3.5.9' gem 'select2-rails', '~> 3.5.9'
gem 'virtus', '~> 1.0.1' gem 'virtus', '~> 1.0.1'
@ -263,6 +263,8 @@ gem 'gettext_i18n_rails', '~> 1.8.0'
gem 'gettext_i18n_rails_js', '~> 1.2.0' gem 'gettext_i18n_rails_js', '~> 1.2.0'
gem 'gettext', '~> 3.2.2', require: false, group: :development gem 'gettext', '~> 3.2.2', require: false, group: :development
gem 'batch-loader'
# Perf bar # Perf bar
gem 'peek', '~> 1.0.1' gem 'peek', '~> 1.0.1'
gem 'peek-gc', '~> 0.0.2' gem 'peek-gc', '~> 0.0.2'
@ -281,7 +283,7 @@ group :metrics do
gem 'influxdb', '~> 0.2', require: false gem 'influxdb', '~> 0.2', require: false
# Prometheus # Prometheus
gem 'prometheus-client-mmap', '~>0.7.0.beta18' gem 'prometheus-client-mmap', '~> 0.7.0.beta43'
gem 'raindrops', '~> 0.18' gem 'raindrops', '~> 0.18'
end end
@ -324,9 +326,9 @@ group :development, :test do
# Generate Fake data # Generate Fake data
gem 'ffaker', '~> 2.4' gem 'ffaker', '~> 2.4'
gem 'capybara', '~> 2.15.0' gem 'capybara', '~> 2.15'
gem 'capybara-screenshot', '~> 1.0.0' gem 'capybara-screenshot', '~> 1.0.0'
gem 'poltergeist', '~> 1.9.0' gem 'selenium-webdriver', '~> 3.5'
gem 'spring', '~> 2.0.0' gem 'spring', '~> 2.0.0'
gem 'spring-commands-rspec', '~> 1.0.4' gem 'spring-commands-rspec', '~> 1.0.4'
@ -343,7 +345,7 @@ group :development, :test do
gem 'benchmark-ips', '~> 2.3.0', require: false gem 'benchmark-ips', '~> 2.3.0', require: false
gem 'license_finder', '~> 2.1.0', require: false gem 'license_finder', '~> 3.1', require: false
gem 'knapsack', '~> 1.11.0' gem 'knapsack', '~> 1.11.0'
gem 'activerecord_sane_schema_dumper', '0.2' gem 'activerecord_sane_schema_dumper', '0.2'
@ -398,7 +400,7 @@ group :ed25519 do
end end
# Gitaly GRPC client # Gitaly GRPC client
gem 'gitaly-proto', '~> 0.39.0', require: 'gitaly' gem 'gitaly-proto', '~> 0.59.0', require: 'gitaly'
gem 'toml-rb', '~> 0.3.15', require: false gem 'toml-rb', '~> 0.3.15', require: false

View File

@ -4,40 +4,40 @@ GEM
RedCloth (4.3.2) RedCloth (4.3.2)
abstract_type (0.0.7) abstract_type (0.0.7)
ace-rails-ap (4.1.2) ace-rails-ap (4.1.2)
actionmailer (4.2.8) actionmailer (4.2.10)
actionpack (= 4.2.8) actionpack (= 4.2.10)
actionview (= 4.2.8) actionview (= 4.2.10)
activejob (= 4.2.8) activejob (= 4.2.10)
mail (~> 2.5, >= 2.5.4) mail (~> 2.5, >= 2.5.4)
rails-dom-testing (~> 1.0, >= 1.0.5) rails-dom-testing (~> 1.0, >= 1.0.5)
actionpack (4.2.8) actionpack (4.2.10)
actionview (= 4.2.8) actionview (= 4.2.10)
activesupport (= 4.2.8) activesupport (= 4.2.10)
rack (~> 1.6) rack (~> 1.6)
rack-test (~> 0.6.2) rack-test (~> 0.6.2)
rails-dom-testing (~> 1.0, >= 1.0.5) rails-dom-testing (~> 1.0, >= 1.0.5)
rails-html-sanitizer (~> 1.0, >= 1.0.2) rails-html-sanitizer (~> 1.0, >= 1.0.2)
actionview (4.2.8) actionview (4.2.10)
activesupport (= 4.2.8) activesupport (= 4.2.10)
builder (~> 3.1) builder (~> 3.1)
erubis (~> 2.7.0) erubis (~> 2.7.0)
rails-dom-testing (~> 1.0, >= 1.0.5) rails-dom-testing (~> 1.0, >= 1.0.5)
rails-html-sanitizer (~> 1.0, >= 1.0.3) rails-html-sanitizer (~> 1.0, >= 1.0.3)
activejob (4.2.8) activejob (4.2.10)
activesupport (= 4.2.8) activesupport (= 4.2.10)
globalid (>= 0.3.0) globalid (>= 0.3.0)
activemodel (4.2.8) activemodel (4.2.10)
activesupport (= 4.2.8) activesupport (= 4.2.10)
builder (~> 3.1) builder (~> 3.1)
activerecord (4.2.8) activerecord (4.2.10)
activemodel (= 4.2.8) activemodel (= 4.2.10)
activesupport (= 4.2.8) activesupport (= 4.2.10)
arel (~> 6.0) arel (~> 6.0)
activerecord-nulldb-adapter (0.3.7) activerecord-nulldb-adapter (0.3.7)
activerecord (>= 2.0.0) activerecord (>= 2.0.0)
activerecord_sane_schema_dumper (0.2) activerecord_sane_schema_dumper (0.2)
rails (>= 4, < 5) rails (>= 4, < 5)
activesupport (4.2.8) activesupport (4.2.10)
i18n (~> 0.7) i18n (~> 0.7)
minitest (~> 5.1) minitest (~> 5.1)
thread_safe (~> 0.3, >= 0.3.4) thread_safe (~> 0.3, >= 0.3.4)
@ -75,6 +75,7 @@ GEM
thread_safe (~> 0.3, >= 0.3.1) thread_safe (~> 0.3, >= 0.3.1)
babosa (1.0.2) babosa (1.0.2)
base32 (0.3.2) base32 (0.3.2)
batch-loader (1.1.1)
bcrypt (3.1.11) bcrypt (3.1.11)
bcrypt_pbkdf (1.0.0) bcrypt_pbkdf (1.0.0)
benchmark-ips (2.3.0) benchmark-ips (2.3.0)
@ -85,6 +86,7 @@ GEM
bindata (2.4.1) bindata (2.4.1)
binding_of_caller (0.7.2) binding_of_caller (0.7.2)
debug_inspector (>= 0.0.1) debug_inspector (>= 0.0.1)
blankslate (2.1.2.4)
bootstrap-sass (3.3.6) bootstrap-sass (3.3.6)
autoprefixer-rails (>= 5.2.1) autoprefixer-rails (>= 5.2.1)
sass (>= 3.3.4) sass (>= 3.3.4)
@ -109,18 +111,19 @@ GEM
capybara-screenshot (1.0.14) capybara-screenshot (1.0.14)
capybara (>= 1.0, < 3) capybara (>= 1.0, < 3)
launchy launchy
carrierwave (1.1.0) carrierwave (1.2.1)
activemodel (>= 4.0.0) activemodel (>= 4.0.0)
activesupport (>= 4.0.0) activesupport (>= 4.0.0)
mime-types (>= 1.16) mime-types (>= 1.16)
cause (0.1) cause (0.1)
charlock_holmes (0.7.5) charlock_holmes (0.7.5)
childprocess (0.7.0)
ffi (~> 1.0, >= 1.0.11)
chronic (0.10.2) chronic (0.10.2)
chronic_duration (0.10.6) chronic_duration (0.10.6)
numerizer (~> 0.1.1) numerizer (~> 0.1.1)
chunky_png (1.3.5) chunky_png (1.3.5)
citrus (3.0.2) citrus (3.0.2)
cliver (0.3.2)
coderay (1.1.1) coderay (1.1.1)
coercible (1.0.0) coercible (1.0.0)
descendants_tracker (~> 0.0.1) descendants_tracker (~> 0.0.1)
@ -216,7 +219,7 @@ GEM
flowdock (0.7.1) flowdock (0.7.1)
httparty (~> 0.7) httparty (~> 0.7)
multi_json multi_json
fog-aliyun (0.1.0) fog-aliyun (0.2.0)
fog-core (~> 1.27) fog-core (~> 1.27)
fog-json (~> 1.0) fog-json (~> 1.0)
ipaddress (~> 0.8) ipaddress (~> 0.8)
@ -275,7 +278,7 @@ GEM
po_to_json (>= 1.0.0) po_to_json (>= 1.0.0)
rails (>= 3.2.0) rails (>= 3.2.0)
gherkin-ruby (0.3.2) gherkin-ruby (0.3.2)
gitaly-proto (0.39.0) gitaly-proto (0.59.0)
google-protobuf (~> 3.1) google-protobuf (~> 3.1)
grpc (~> 1.0) grpc (~> 1.0)
github-linguist (4.7.6) github-linguist (4.7.6)
@ -293,14 +296,14 @@ GEM
diff-lcs (~> 1.1) diff-lcs (~> 1.1)
mime-types (>= 1.16) mime-types (>= 1.16)
posix-spawn (~> 0.3) posix-spawn (~> 0.3)
gitlab-markup (1.6.2) gitlab-markup (1.6.3)
gitlab_omniauth-ldap (2.0.4) gitlab_omniauth-ldap (2.0.4)
net-ldap (~> 0.16) net-ldap (~> 0.16)
omniauth (~> 1.3) omniauth (~> 1.3)
pyu-ruby-sasl (>= 0.0.3.3, < 0.1) pyu-ruby-sasl (>= 0.0.3.3, < 0.1)
rubyntlm (~> 0.5) rubyntlm (~> 0.5)
globalid (0.3.7) globalid (0.4.1)
activesupport (>= 4.1.0) activesupport (>= 4.2.0)
gollum-grit_adapter (1.0.1) gollum-grit_adapter (1.0.1)
gitlab-grit (~> 2.7, >= 2.7.1) gitlab-grit (~> 2.7, >= 2.7.1)
gollum-lib (4.2.7) gollum-lib (4.2.7)
@ -326,7 +329,7 @@ GEM
mime-types (~> 3.0) mime-types (~> 3.0)
representable (~> 3.0) representable (~> 3.0)
retriable (>= 2.0, < 4.0) retriable (>= 2.0, < 4.0)
google-protobuf (3.4.0.2) google-protobuf (3.4.1.1)
googleauth (0.5.3) googleauth (0.5.3)
faraday (~> 0.12) faraday (~> 0.12)
jwt (~> 1.4) jwt (~> 1.4)
@ -353,7 +356,7 @@ GEM
rake rake
grape_logging (1.7.0) grape_logging (1.7.0)
grape grape
grpc (1.6.0) grpc (1.4.5)
google-protobuf (~> 3.1) google-protobuf (~> 3.1)
googleauth (~> 0.5.1) googleauth (~> 0.5.1)
haml (4.0.7) haml (4.0.7)
@ -396,7 +399,8 @@ GEM
json (~> 1.8) json (~> 1.8)
multi_xml (>= 0.5.2) multi_xml (>= 0.5.2)
httpclient (2.8.2) httpclient (2.8.2)
i18n (0.8.6) i18n (0.9.1)
concurrent-ruby (~> 1.0)
ice_nine (0.11.2) ice_nine (0.11.2)
influxdb (0.2.3) influxdb (0.2.3)
cause cause
@ -407,7 +411,7 @@ GEM
multipart-post multipart-post
oauth (~> 0.5, >= 0.5.0) oauth (~> 0.5, >= 0.5.0)
jquery-atwho-rails (1.3.2) jquery-atwho-rails (1.3.2)
jquery-rails (4.1.1) jquery-rails (4.3.1)
rails-dom-testing (>= 1, < 3) rails-dom-testing (>= 1, < 3)
railties (>= 4.2.0) railties (>= 4.2.0)
thor (>= 0.14, < 2.0) thor (>= 0.14, < 2.0)
@ -449,11 +453,13 @@ GEM
actionmailer (>= 3.2) actionmailer (>= 3.2)
letter_opener (~> 1.0) letter_opener (~> 1.0)
railties (>= 3.2) railties (>= 3.2)
license_finder (2.1.0) license_finder (3.1.1)
bundler bundler
httparty httparty
rubyzip rubyzip
thor thor
toml (= 0.1.2)
with_env (> 1.0)
xml-simple xml-simple
licensee (8.7.0) licensee (8.7.0)
rugged (~> 0.24) rugged (~> 0.24)
@ -468,8 +474,8 @@ GEM
railties (>= 4, < 5.2) railties (>= 4, < 5.2)
loofah (2.0.3) loofah (2.0.3)
nokogiri (>= 1.5.9) nokogiri (>= 1.5.9)
mail (2.6.6) mail (2.7.0)
mime-types (>= 1.16, < 4) mini_mime (>= 0.1.1)
mail_room (0.9.1) mail_room (0.9.1)
memoist (0.16.0) memoist (0.16.0)
memoizable (0.4.2) memoizable (0.4.2)
@ -482,7 +488,6 @@ GEM
mini_mime (0.1.4) mini_mime (0.1.4)
mini_portile2 (2.3.0) mini_portile2 (2.3.0)
minitest (5.7.0) minitest (5.7.0)
mmap2 (2.2.7)
mousetrap-rails (1.4.6) mousetrap-rails (1.4.6)
multi_json (1.12.2) multi_json (1.12.2)
multi_xml (0.6.0) multi_xml (0.6.0)
@ -567,8 +572,10 @@ GEM
parallel (1.12.0) parallel (1.12.0)
paranoia (2.3.1) paranoia (2.3.1)
activerecord (>= 4.0, < 5.2) activerecord (>= 4.0, < 5.2)
parser (2.4.0.0) parser (2.4.0.2)
ast (~> 2.2) ast (~> 2.3)
parslet (1.5.0)
blankslate (~> 2.0)
path_expander (1.0.1) path_expander (1.0.1)
peek (1.0.1) peek (1.0.1)
concurrent-ruby (>= 0.9.0) concurrent-ruby (>= 0.9.0)
@ -603,11 +610,6 @@ GEM
pg (0.18.4) pg (0.18.4)
po_to_json (1.0.1) po_to_json (1.0.1)
json (>= 1.6.0) json (>= 1.6.0)
poltergeist (1.9.0)
capybara (~> 2.1)
cliver (~> 0.3.1)
multi_json (~> 1.0)
websocket-driver (>= 0.2.0)
posix-spawn (0.3.13) posix-spawn (0.3.13)
powerpack (0.1.1) powerpack (0.1.1)
premailer (1.10.4) premailer (1.10.4)
@ -622,8 +624,7 @@ GEM
parser parser
unparser unparser
procto (0.0.3) procto (0.0.3)
prometheus-client-mmap (0.7.0.beta18) prometheus-client-mmap (0.7.0.beta43)
mmap2 (~> 2.2, >= 2.2.7)
pry (0.10.4) pry (0.10.4)
coderay (~> 1.1.0) coderay (~> 1.1.0)
method_source (~> 0.8.1) method_source (~> 0.8.1)
@ -653,16 +654,16 @@ GEM
rack rack
rack-test (0.6.3) rack-test (0.6.3)
rack (>= 1.0) rack (>= 1.0)
rails (4.2.8) rails (4.2.10)
actionmailer (= 4.2.8) actionmailer (= 4.2.10)
actionpack (= 4.2.8) actionpack (= 4.2.10)
actionview (= 4.2.8) actionview (= 4.2.10)
activejob (= 4.2.8) activejob (= 4.2.10)
activemodel (= 4.2.8) activemodel (= 4.2.10)
activerecord (= 4.2.8) activerecord (= 4.2.10)
activesupport (= 4.2.8) activesupport (= 4.2.10)
bundler (>= 1.3.0, < 2.0) bundler (>= 1.3.0, < 2.0)
railties (= 4.2.8) railties (= 4.2.10)
sprockets-rails sprockets-rails
rails-deprecated_sanitizer (1.0.3) rails-deprecated_sanitizer (1.0.3)
activesupport (>= 4.2.0.alpha) activesupport (>= 4.2.0.alpha)
@ -675,15 +676,15 @@ GEM
rails-i18n (4.0.9) rails-i18n (4.0.9)
i18n (~> 0.7) i18n (~> 0.7)
railties (~> 4.0) railties (~> 4.0)
railties (4.2.8) railties (4.2.10)
actionpack (= 4.2.8) actionpack (= 4.2.10)
activesupport (= 4.2.8) activesupport (= 4.2.10)
rake (>= 0.8.7) rake (>= 0.8.7)
thor (>= 0.18.1, < 2.0) thor (>= 0.18.1, < 2.0)
rainbow (2.2.2) rainbow (2.2.2)
rake rake
raindrops (0.18.0) raindrops (0.18.0)
rake (12.1.0) rake (12.3.0)
rblineprof (0.3.6) rblineprof (0.3.6)
debugger-ruby_core_source (~> 1.3) debugger-ruby_core_source (~> 1.3)
rbnacl (4.0.2) rbnacl (4.0.2)
@ -698,24 +699,24 @@ GEM
recursive-open-struct (1.0.0) recursive-open-struct (1.0.0)
redcarpet (3.4.0) redcarpet (3.4.0)
redis (3.3.3) redis (3.3.3)
redis-actionpack (5.0.1) redis-actionpack (5.0.2)
actionpack (>= 4.0, < 6) actionpack (>= 4.0, < 6)
redis-rack (>= 1, < 3) redis-rack (>= 1, < 3)
redis-store (>= 1.1.0, < 1.4.0) redis-store (>= 1.1.0, < 2)
redis-activesupport (5.0.1) redis-activesupport (5.0.4)
activesupport (>= 3, < 6) activesupport (>= 3, < 6)
redis-store (~> 1.2.0) redis-store (>= 1.3, < 2)
redis-namespace (1.5.2) redis-namespace (1.5.2)
redis (~> 3.0, >= 3.0.4) redis (~> 3.0, >= 3.0.4)
redis-rack (1.6.0) redis-rack (2.0.4)
rack (~> 1.5) rack (>= 1.5, < 3)
redis-store (~> 1.2.0) redis-store (>= 1.2, < 2)
redis-rails (5.0.1) redis-rails (5.0.2)
redis-actionpack (~> 5.0.0) redis-actionpack (>= 5.0, < 6)
redis-activesupport (~> 5.0.0) redis-activesupport (>= 5.0, < 6)
redis-store (~> 1.2.0) redis-store (>= 1.2, < 2)
redis-store (1.2.0) redis-store (1.4.1)
redis (>= 2.2) redis (>= 2.2, < 5)
representable (3.0.4) representable (3.0.4)
declarative (< 0.1.0) declarative (< 0.1.0)
declarative-option (< 0.2.0) declarative-option (< 0.2.0)
@ -817,6 +818,9 @@ GEM
activesupport (>= 3.1) activesupport (>= 3.1)
select2-rails (3.5.9.3) select2-rails (3.5.9.3)
thor (~> 0.14) thor (~> 0.14)
selenium-webdriver (3.5.0)
childprocess (~> 0.5)
rubyzip (~> 1.0)
sentry-raven (2.5.3) sentry-raven (2.5.3)
faraday (>= 0.7.6, < 1.0) faraday (>= 0.7.6, < 1.0)
settingslogic (2.0.9) settingslogic (2.0.9)
@ -867,7 +871,7 @@ GEM
sprockets (3.7.1) sprockets (3.7.1)
concurrent-ruby (~> 1.0) concurrent-ruby (~> 1.0)
rack (> 1, < 3) rack (> 1, < 3)
sprockets-rails (3.2.0) sprockets-rails (3.2.1)
actionpack (>= 4.0) actionpack (>= 4.0)
activesupport (>= 4.0) activesupport (>= 4.0)
sprockets (>= 3.0.0) sprockets (>= 3.0.0)
@ -898,12 +902,14 @@ GEM
tilt (2.0.6) tilt (2.0.6)
timecop (0.8.1) timecop (0.8.1)
timfel-krb5-auth (0.8.3) timfel-krb5-auth (0.8.3)
toml (0.1.2)
parslet (~> 1.5.0)
toml-rb (0.3.15) toml-rb (0.3.15)
citrus (~> 3.0, > 3.0) citrus (~> 3.0, > 3.0)
truncato (0.7.10) truncato (0.7.10)
htmlentities (~> 4.3.1) htmlentities (~> 4.3.1)
nokogiri (~> 1.8.0, >= 1.7.0) nokogiri (~> 1.8.0, >= 1.7.0)
tzinfo (1.2.3) tzinfo (1.2.4)
thread_safe (~> 0.1) thread_safe (~> 0.1)
u2f (0.2.1) u2f (0.2.1)
uber (0.1.0) uber (0.1.0)
@ -948,13 +954,11 @@ GEM
hashdiff hashdiff
webpack-rails (0.9.10) webpack-rails (0.9.10)
railties (>= 3.2.0) railties (>= 3.2.0)
websocket-driver (0.6.3)
websocket-extensions (>= 0.1.0)
websocket-extensions (0.1.2)
wikicloth (0.8.1) wikicloth (0.8.1)
builder builder
expression_parser expression_parser
rinku rinku
with_env (1.1.0)
xml-simple (1.1.5) xml-simple (1.1.5)
xpath (2.1.0) xpath (2.1.0)
nokogiri (~> 1.3) nokogiri (~> 1.3)
@ -978,6 +982,7 @@ DEPENDENCIES
awesome_print (~> 1.2.0) awesome_print (~> 1.2.0)
babosa (~> 1.0.2) babosa (~> 1.0.2)
base32 (~> 0.3.0) base32 (~> 0.3.0)
batch-loader
bcrypt_pbkdf (~> 1.0) bcrypt_pbkdf (~> 1.0)
benchmark-ips (~> 2.3.0) benchmark-ips (~> 2.3.0)
better_errors (~> 2.1.0) better_errors (~> 2.1.0)
@ -988,9 +993,9 @@ DEPENDENCIES
browser (~> 2.2) browser (~> 2.2)
bullet (~> 5.5.0) bullet (~> 5.5.0)
bundler-audit (~> 0.5.0) bundler-audit (~> 0.5.0)
capybara (~> 2.15.0) capybara (~> 2.15)
capybara-screenshot (~> 1.0.0) capybara-screenshot (~> 1.0.0)
carrierwave (~> 1.1) carrierwave (~> 1.2)
charlock_holmes (~> 0.7.5) charlock_holmes (~> 0.7.5)
chronic (~> 0.10.2) chronic (~> 0.10.2)
chronic_duration (~> 0.10.6) chronic_duration (~> 0.10.6)
@ -1015,7 +1020,7 @@ DEPENDENCIES
flay (~> 2.8.0) flay (~> 2.8.0)
flipper (~> 0.10.2) flipper (~> 0.10.2)
flipper-active_record (~> 0.10.2) flipper-active_record (~> 0.10.2)
fog-aliyun (~> 0.1.0) fog-aliyun (~> 0.2.0)
fog-aws (~> 1.4) fog-aws (~> 1.4)
fog-core (~> 1.44) fog-core (~> 1.44)
fog-google (~> 0.5) fog-google (~> 0.5)
@ -1030,7 +1035,7 @@ DEPENDENCIES
gettext (~> 3.2.2) gettext (~> 3.2.2)
gettext_i18n_rails (~> 1.8.0) gettext_i18n_rails (~> 1.8.0)
gettext_i18n_rails_js (~> 1.2.0) gettext_i18n_rails_js (~> 1.2.0)
gitaly-proto (~> 0.39.0) gitaly-proto (~> 0.59.0)
github-linguist (~> 4.7.0) github-linguist (~> 4.7.0)
gitlab-flowdock-git-hook (~> 1.0.1) gitlab-flowdock-git-hook (~> 1.0.1)
gitlab-markup (~> 1.6.2) gitlab-markup (~> 1.6.2)
@ -1055,14 +1060,14 @@ DEPENDENCIES
influxdb (~> 0.2) influxdb (~> 0.2)
jira-ruby (~> 1.4) jira-ruby (~> 1.4)
jquery-atwho-rails (~> 1.3.2) jquery-atwho-rails (~> 1.3.2)
jquery-rails (~> 4.1.0) jquery-rails (~> 4.3.1)
json-schema (~> 2.8.0) json-schema (~> 2.8.0)
jwt (~> 1.5.6) jwt (~> 1.5.6)
kaminari (~> 1.0) kaminari (~> 1.0)
knapsack (~> 1.11.0) knapsack (~> 1.11.0)
kubeclient (~> 2.2.0) kubeclient (~> 2.2.0)
letter_opener_web (~> 1.3.0) letter_opener_web (~> 1.3.0)
license_finder (~> 2.1.0) license_finder (~> 3.1)
licensee (~> 8.7.0) licensee (~> 8.7.0)
lograge (~> 0.5) lograge (~> 0.5)
loofah (~> 2.0.3) loofah (~> 2.0.3)
@ -1104,16 +1109,15 @@ DEPENDENCIES
peek-redis (~> 1.2.0) peek-redis (~> 1.2.0)
peek-sidekiq (~> 1.0.3) peek-sidekiq (~> 1.0.3)
pg (~> 0.18.2) pg (~> 0.18.2)
poltergeist (~> 1.9.0)
premailer-rails (~> 1.9.7) premailer-rails (~> 1.9.7)
prometheus-client-mmap (~> 0.7.0.beta18) prometheus-client-mmap (~> 0.7.0.beta43)
pry-byebug (~> 3.4.1) pry-byebug (~> 3.4.1)
pry-rails (~> 0.3.4) pry-rails (~> 0.3.4)
rack-attack (~> 4.4.1) rack-attack (~> 4.4.1)
rack-cors (~> 0.4.0) rack-cors (~> 0.4.0)
rack-oauth2 (~> 1.2.1) rack-oauth2 (~> 1.2.1)
rack-proxy (~> 0.6.0) rack-proxy (~> 0.6.0)
rails (= 4.2.8) rails (= 4.2.10)
rails-deprecated_sanitizer (~> 1.0.3) rails-deprecated_sanitizer (~> 1.0.3)
rails-i18n (~> 4.0.9) rails-i18n (~> 4.0.9)
rainbow (~> 2.2) rainbow (~> 2.2)
@ -1127,7 +1131,7 @@ DEPENDENCIES
redcarpet (~> 3.4) redcarpet (~> 3.4)
redis (~> 3.2) redis (~> 3.2)
redis-namespace (~> 1.5.2) redis-namespace (~> 1.5.2)
redis-rails (~> 5.0.1) redis-rails (~> 5.0.2)
request_store (~> 1.3) request_store (~> 1.3)
responders (~> 2.0) responders (~> 2.0)
rouge (~> 2.0) rouge (~> 2.0)
@ -1148,8 +1152,9 @@ DEPENDENCIES
sanitize (~> 2.0) sanitize (~> 2.0)
sass-rails (~> 5.0.6) sass-rails (~> 5.0.6)
scss_lint (~> 0.54.0) scss_lint (~> 0.54.0)
seed-fu (~> 2.3.5) seed-fu (= 2.3.6)
select2-rails (~> 3.5.9) select2-rails (~> 3.5.9)
selenium-webdriver (~> 3.5)
sentry-raven (~> 2.5.3) sentry-raven (~> 2.5.3)
settingslogic (~> 2.0.9) settingslogic (~> 2.0.9)
sham_rack (~> 1.3.6) sham_rack (~> 1.3.6)
@ -1189,4 +1194,4 @@ DEPENDENCIES
wikicloth (= 0.8.1) wikicloth (= 0.8.1)
BUNDLED WITH BUNDLED WITH
1.15.4 1.16.0

View File

@ -18,11 +18,11 @@ let
}; };
}; };
version = "10.1.1"; version = "10.3.3";
gitlabDeb = fetchurl { gitlabDeb = fetchurl {
url = "https://packages.gitlab.com/gitlab/gitlab-ce/packages/debian/jessie/gitlab-ce_${version}-ce.0_amd64.deb/download"; url = "https://packages.gitlab.com/gitlab/gitlab-ce/packages/debian/jessie/gitlab-ce_${version}-ce.0_amd64.deb/download";
sha256 = "0xvzxcygy6ffqm24rk6v9gs6g9r744vpwwvk9d00wjla7hwmq3w2"; sha256 = "0bnafl7mpm3vjhfkqwgf5ff1y1iixfdfvv25zmpl0yjd70fwx2aq";
}; };
in in
@ -30,17 +30,17 @@ in
stdenv.mkDerivation rec { stdenv.mkDerivation rec {
name = "gitlab-${version}"; name = "gitlab-${version}";
buildInputs = [
rubyEnv ruby bundler tzdata git procps dpkg nettools
];
src = fetchFromGitHub { src = fetchFromGitHub {
owner = "gitlabhq"; owner = "gitlabhq";
repo = "gitlabhq"; repo = "gitlabhq";
rev = "v${version}"; rev = "v${version}";
sha256 = "0p118msad6l12pd4q3vkvjggiiasbkh6pnl94riqyb5zkb7yrb1a"; sha256 = "1fhjijs8rvxrgx43fc7vp6f3vwshwq74gjwk41fi2yam8bri8p6k";
}; };
buildInputs = [
rubyEnv ruby bundler tzdata git procps dpkg nettools
];
patches = [ patches = [
./remove-hardcoded-locations.patch ./remove-hardcoded-locations.patch
./nulladapter.patch ./nulladapter.patch
@ -74,7 +74,11 @@ stdenv.mkDerivation rec {
buildPhase = '' buildPhase = ''
mv config/gitlab.yml.example config/gitlab.yml mv config/gitlab.yml.example config/gitlab.yml
dpkg -x ${gitlabDeb} . # work around unpacking deb containing binary with suid bit
ar p ${gitlabDeb} data.tar.gz | gunzip > gitlab-deb-data.tar
tar -f gitlab-deb-data.tar --delete ./opt/gitlab/embedded/bin/ksu
tar -xf gitlab-deb-data.tar
mv -v opt/gitlab/embedded/service/gitlab-rails/public/assets public mv -v opt/gitlab/embedded/service/gitlab-rails/public/assets public
rm -rf opt rm -rf opt

View File

@ -19,55 +19,55 @@
dependencies = ["actionpack" "actionview" "activejob" "mail" "rails-dom-testing"]; dependencies = ["actionpack" "actionview" "activejob" "mail" "rails-dom-testing"];
source = { source = {
remotes = ["https://rubygems.org"]; remotes = ["https://rubygems.org"];
sha256 = "0pr3cmr0bpgg5d0f6wy1z6r45n14r9yin8jnr4hi3ssf402xpc0q"; sha256 = "1ivyjsapqgn1xfb2p8yqjrg2jldqm5r7hxrjxq6kdr05gk4fsg59";
type = "gem"; type = "gem";
}; };
version = "4.2.8"; version = "4.2.10";
}; };
actionpack = { actionpack = {
dependencies = ["actionview" "activesupport" "rack" "rack-test" "rails-dom-testing" "rails-html-sanitizer"]; dependencies = ["actionview" "activesupport" "rack" "rack-test" "rails-dom-testing" "rails-html-sanitizer"];
source = { source = {
remotes = ["https://rubygems.org"]; remotes = ["https://rubygems.org"];
sha256 = "09fbazl0ja80na2wadfp3fzmdmdy1lsb4wd2yg7anbj0zk0ap7a9"; sha256 = "0l6agrxdaishxjx2zc2x8md95plfp39bfskzgs6v9gsdp2y2arpx";
type = "gem"; type = "gem";
}; };
version = "4.2.8"; version = "4.2.10";
}; };
actionview = { actionview = {
dependencies = ["activesupport" "builder" "erubis" "rails-dom-testing" "rails-html-sanitizer"]; dependencies = ["activesupport" "builder" "erubis" "rails-dom-testing" "rails-html-sanitizer"];
source = { source = {
remotes = ["https://rubygems.org"]; remotes = ["https://rubygems.org"];
sha256 = "1mg4a8143q2wjhjq4mngl69jkv249z5jvg0jkdribdv4zkg586rp"; sha256 = "1jrx2pmkywk70z7n17gw3jrcdw3n03wdzvg45bnq8wxshl1lmbhv";
type = "gem"; type = "gem";
}; };
version = "4.2.8"; version = "4.2.10";
}; };
activejob = { activejob = {
dependencies = ["activesupport" "globalid"]; dependencies = ["activesupport" "globalid"];
source = { source = {
remotes = ["https://rubygems.org"]; remotes = ["https://rubygems.org"];
sha256 = "0kazbpfgzz6cdmwjnlb9m671ps4qgggwv2hy8y9xi4h96djyyfqz"; sha256 = "10jsa5pqklcsd2npicqxr5abjlwi53di2brpzgz35k557fkpc1z8";
type = "gem"; type = "gem";
}; };
version = "4.2.8"; version = "4.2.10";
}; };
activemodel = { activemodel = {
dependencies = ["activesupport" "builder"]; dependencies = ["activesupport" "builder"];
source = { source = {
remotes = ["https://rubygems.org"]; remotes = ["https://rubygems.org"];
sha256 = "11vhh7zmp92880s5sx8r32v2p0b7xg039mfr92pjynpkz4q901ld"; sha256 = "0c4vj9xajxa906bqbcjpni74nya6rh2nbb15gl8xm0vl9zf3ll9v";
type = "gem"; type = "gem";
}; };
version = "4.2.8"; version = "4.2.10";
}; };
activerecord = { activerecord = {
dependencies = ["activemodel" "activesupport" "arel"]; dependencies = ["activemodel" "activesupport" "arel"];
source = { source = {
remotes = ["https://rubygems.org"]; remotes = ["https://rubygems.org"];
sha256 = "1kk4dhn8jfhqfsf1dmb3a183gix6k46xr6cjkxj0rp51w2za1ns0"; sha256 = "1lws9y4p9c2vnmv3ddfpv8jh6azlddppl3fi31vahaz14ifxjk5s";
type = "gem"; type = "gem";
}; };
version = "4.2.8"; version = "4.2.10";
}; };
activerecord-nulldb-adapter = { activerecord-nulldb-adapter = {
dependencies = ["activerecord"]; dependencies = ["activerecord"];
@ -91,10 +91,10 @@
dependencies = ["i18n" "minitest" "thread_safe" "tzinfo"]; dependencies = ["i18n" "minitest" "thread_safe" "tzinfo"];
source = { source = {
remotes = ["https://rubygems.org"]; remotes = ["https://rubygems.org"];
sha256 = "0wibdzd2f5l5rlsw1a1y3j3fhw2imrrbkxggdraa6q9qbdnc66hi"; sha256 = "0s12j8vl8vrxfngkdlz9g8bpz9akq1z42d57mx5r537b2pji8nr7";
type = "gem"; type = "gem";
}; };
version = "4.2.8"; version = "4.2.10";
}; };
acts-as-taggable-on = { acts-as-taggable-on = {
dependencies = ["activerecord"]; dependencies = ["activerecord"];
@ -248,6 +248,14 @@
}; };
version = "0.3.2"; version = "0.3.2";
}; };
batch-loader = {
source = {
remotes = ["https://rubygems.org"];
sha256 = "1w4ysjfh74612wsgdnnaq3xqw25hzsr6ajb5syiv1ix7fi15y8bv";
type = "gem";
};
version = "1.1.1";
};
bcrypt = { bcrypt = {
source = { source = {
remotes = ["https://rubygems.org"]; remotes = ["https://rubygems.org"];
@ -298,6 +306,14 @@
}; };
version = "0.7.2"; version = "0.7.2";
}; };
blankslate = {
source = {
remotes = ["https://rubygems.org"];
sha256 = "0jnnq5q5dwy2rbfcl769vd9bk1yn0242f6yjlb9mnqdm9627cdcx";
type = "gem";
};
version = "2.1.2.4";
};
bootstrap-sass = { bootstrap-sass = {
dependencies = ["autoprefixer-rails" "sass"]; dependencies = ["autoprefixer-rails" "sass"];
source = { source = {
@ -387,10 +403,10 @@
dependencies = ["activemodel" "activesupport" "mime-types"]; dependencies = ["activemodel" "activesupport" "mime-types"];
source = { source = {
remotes = ["https://rubygems.org"]; remotes = ["https://rubygems.org"];
sha256 = "0nms4w6vkm7djghdxwi9qzykhc2ynjwblgqwk87w61fhispqlq2c"; sha256 = "012b5jks7hxis1agiy7rbra5h4zhmwhy95gck3kr22nwdxfk71ii";
type = "gem"; type = "gem";
}; };
version = "1.1.0"; version = "1.2.1";
}; };
cause = { cause = {
source = { source = {
@ -408,6 +424,15 @@
}; };
version = "0.7.5"; version = "0.7.5";
}; };
childprocess = {
dependencies = ["ffi"];
source = {
remotes = ["https://rubygems.org"];
sha256 = "0rqf595gv0bb48awck2cvipk78jy5pj08p1r4xbrfpd0i60jb9hd";
type = "gem";
};
version = "0.7.0";
};
chronic = { chronic = {
source = { source = {
remotes = ["https://rubygems.org"]; remotes = ["https://rubygems.org"];
@ -441,14 +466,6 @@
}; };
version = "3.0.2"; version = "3.0.2";
}; };
cliver = {
source = {
remotes = ["https://rubygems.org"];
sha256 = "096f4rj7virwvqxhkavy0v55rax10r4jqf8cymbvn4n631948xc7";
type = "gem";
};
version = "0.3.2";
};
coderay = { coderay = {
source = { source = {
remotes = ["https://rubygems.org"]; remotes = ["https://rubygems.org"];
@ -894,10 +911,10 @@
dependencies = ["fog-core" "fog-json" "ipaddress" "xml-simple"]; dependencies = ["fog-core" "fog-json" "ipaddress" "xml-simple"];
source = { source = {
remotes = ["https://rubygems.org"]; remotes = ["https://rubygems.org"];
sha256 = "1i76g8sdskyfc0gcnd6n9i757s7dmwg3wf6spcr2xh8wzyxkm1pj"; sha256 = "0x66xyrw4ahyr6f9masiqmz5q6h8scv46y59crnfp8dj7r52hw8m";
type = "gem"; type = "gem";
}; };
version = "0.1.0"; version = "0.2.0";
}; };
fog-aws = { fog-aws = {
dependencies = ["fog-core" "fog-json" "fog-xml" "ipaddress"]; dependencies = ["fog-core" "fog-json" "fog-xml" "ipaddress"];
@ -1071,10 +1088,10 @@
dependencies = ["google-protobuf" "grpc"]; dependencies = ["google-protobuf" "grpc"];
source = { source = {
remotes = ["https://rubygems.org"]; remotes = ["https://rubygems.org"];
sha256 = "0irc3yfyr5li2ki6w03znsklnk0qx3srk4wrb7jav042c4kw325k"; sha256 = "0s86126iqhbmkix6zs357ixlc1syyxmwk2blaimsav7f0x9swy82";
type = "gem"; type = "gem";
}; };
version = "0.39.0"; version = "0.59.0";
}; };
github-linguist = { github-linguist = {
dependencies = ["charlock_holmes" "escape_utils" "mime-types" "rugged"]; dependencies = ["charlock_holmes" "escape_utils" "mime-types" "rugged"];
@ -1114,10 +1131,10 @@
gitlab-markup = { gitlab-markup = {
source = { source = {
remotes = ["https://rubygems.org"]; remotes = ["https://rubygems.org"];
sha256 = "114jfbyyfwad609k1l1fcmbzszb3frdchh83gdwndkglllvprhjz"; sha256 = "1pvx257azpr00yvb74lgjpgnj72nwyd29l9a18280rgmp4cjniki";
type = "gem"; type = "gem";
}; };
version = "1.6.2"; version = "1.6.3";
}; };
gitlab_omniauth-ldap = { gitlab_omniauth-ldap = {
dependencies = ["net-ldap" "omniauth" "pyu-ruby-sasl" "rubyntlm"]; dependencies = ["net-ldap" "omniauth" "pyu-ruby-sasl" "rubyntlm"];
@ -1132,10 +1149,10 @@
dependencies = ["activesupport"]; dependencies = ["activesupport"];
source = { source = {
remotes = ["https://rubygems.org"]; remotes = ["https://rubygems.org"];
sha256 = "11plkgyl3w9k4y2scc1igvpgwyz4fnmsr63h2q4j8wkb48nlnhak"; sha256 = "02smrgdi11kziqi9zhnsy9i6yr2fnxrqlv3lllsvdjki3cd4is38";
type = "gem"; type = "gem";
}; };
version = "0.3.7"; version = "0.4.1";
}; };
gollum-grit_adapter = { gollum-grit_adapter = {
dependencies = ["gitlab-grit"]; dependencies = ["gitlab-grit"];
@ -1185,10 +1202,10 @@
google-protobuf = { google-protobuf = {
source = { source = {
remotes = ["https://rubygems.org"]; remotes = ["https://rubygems.org"];
sha256 = "1jh8axm5m75rvdf2i3s24pmi7p613armh9vk3p1d0ryfx159mqkl"; sha256 = "1l9b2f4msp1gkay2mqjbjs7kfhchf916zh1y365singiysrwn2i6";
type = "gem"; type = "gem";
}; };
version = "3.4.0.2"; version = "3.4.1.1";
}; };
googleauth = { googleauth = {
dependencies = ["faraday" "jwt" "logging" "memoist" "multi_json" "os" "signet"]; dependencies = ["faraday" "jwt" "logging" "memoist" "multi_json" "os" "signet"];
@ -1248,10 +1265,10 @@
dependencies = ["google-protobuf" "googleauth"]; dependencies = ["google-protobuf" "googleauth"];
source = { source = {
remotes = ["https://rubygems.org"]; remotes = ["https://rubygems.org"];
sha256 = "056ipqai887x5jpbgcc215kdi0lfqjzcjbx3hx11cjrfww01zc52"; sha256 = "1zhci260088zlghpaz6ania1blz1dd7lgklsjnqk1vcymhpr6b38";
type = "gem"; type = "gem";
}; };
version = "1.6.0"; version = "1.4.5";
}; };
haml = { haml = {
dependencies = ["tilt"]; dependencies = ["tilt"];
@ -1401,12 +1418,13 @@
version = "2.8.2"; version = "2.8.2";
}; };
i18n = { i18n = {
dependencies = ["concurrent-ruby"];
source = { source = {
remotes = ["https://rubygems.org"]; remotes = ["https://rubygems.org"];
sha256 = "1i3aqvzfsj786kwjj70jsjpxm6ffw5pwhalzr2abjfv2bdc7k9kw"; sha256 = "032wbfixfpwa67c893x5sn02ab0928vfqfshcs02bwkkxpqy9x8s";
type = "gem"; type = "gem";
}; };
version = "0.8.6"; version = "0.9.1";
}; };
ice_nine = { ice_nine = {
source = { source = {
@ -1454,10 +1472,10 @@
dependencies = ["rails-dom-testing" "railties" "thor"]; dependencies = ["rails-dom-testing" "railties" "thor"];
source = { source = {
remotes = ["https://rubygems.org"]; remotes = ["https://rubygems.org"];
sha256 = "1asbrr9hqf43q9qbjf87f5lm7fp12pndh76z89ks6jwxf1350fj1"; sha256 = "02ii77vwxc49f2lrkbdzww2168bp5nihwzakc9mqyrsbw394w7ki";
type = "gem"; type = "gem";
}; };
version = "4.1.1"; version = "4.3.1";
}; };
json = { json = {
source = { source = {
@ -1582,13 +1600,13 @@
version = "1.3.0"; version = "1.3.0";
}; };
license_finder = { license_finder = {
dependencies = ["httparty" "rubyzip" "thor" "xml-simple"]; dependencies = ["httparty" "rubyzip" "thor" "toml" "with_env" "xml-simple"];
source = { source = {
remotes = ["https://rubygems.org"]; remotes = ["https://rubygems.org"];
sha256 = "092rwf1yjq1l63zbqanmbnbky8g5pj7c3g30mcqbyppbqrsflx80"; sha256 = "12p18a34q8dgzjwi2plgv889kxnxqnnmrqhvjs3ng2z26hv2zfag";
type = "gem"; type = "gem";
}; };
version = "2.1.0"; version = "3.1.1";
}; };
licensee = { licensee = {
dependencies = ["rugged"]; dependencies = ["rugged"];
@ -1643,13 +1661,13 @@
version = "2.0.3"; version = "2.0.3";
}; };
mail = { mail = {
dependencies = ["mime-types"]; dependencies = ["mini_mime"];
source = { source = {
remotes = ["https://rubygems.org"]; remotes = ["https://rubygems.org"];
sha256 = "0d7lhj2dw52ycls6xigkfz6zvfhc6qggply9iycjmcyj9760yvz9"; sha256 = "10dyifazss9mgdzdv08p47p344wmphp5pkh5i73s7c04ra8y6ahz";
type = "gem"; type = "gem";
}; };
version = "2.6.6"; version = "2.7.0";
}; };
mail_room = { mail_room = {
source = { source = {
@ -1733,14 +1751,6 @@
}; };
version = "5.7.0"; version = "5.7.0";
}; };
mmap2 = {
source = {
remotes = ["https://rubygems.org"];
sha256 = "1rgf4zhqa6632nbqj585hc0x69iz21s5c91mpijcr9i5wpj9p1s6";
type = "gem";
};
version = "2.2.7";
};
mousetrap-rails = { mousetrap-rails = {
source = { source = {
remotes = ["https://rubygems.org"]; remotes = ["https://rubygems.org"];
@ -2081,10 +2091,19 @@
dependencies = ["ast"]; dependencies = ["ast"];
source = { source = {
remotes = ["https://rubygems.org"]; remotes = ["https://rubygems.org"];
sha256 = "130rfk8a2ws2fyq52hmi1n0xakylw39wv4x1qhai4z17x2b0k9cq"; sha256 = "0bqc29xx4zwlshvi6krrd0sl82d7xjfhcrxvgf38wvdqcl3b7ck3";
type = "gem"; type = "gem";
}; };
version = "2.4.0.0"; version = "2.4.0.2";
};
parslet = {
dependencies = ["blankslate"];
source = {
remotes = ["https://rubygems.org"];
sha256 = "0qp1m8n3m6k6g22nn1ivcfkvccq5jmbkw53vvcjw5xssq179l9z3";
type = "gem";
};
version = "1.5.0";
}; };
path_expander = { path_expander = {
source = { source = {
@ -2192,15 +2211,6 @@
}; };
version = "1.0.1"; version = "1.0.1";
}; };
poltergeist = {
dependencies = ["capybara" "cliver" "multi_json" "websocket-driver"];
source = {
remotes = ["https://rubygems.org"];
sha256 = "1fnkly1ks31nf5cdks9jd5c5vynbanrr8pwp801qq2i8bg78rwc0";
type = "gem";
};
version = "1.9.0";
};
posix-spawn = { posix-spawn = {
source = { source = {
remotes = ["https://rubygems.org"]; remotes = ["https://rubygems.org"];
@ -2253,13 +2263,12 @@
version = "0.0.3"; version = "0.0.3";
}; };
prometheus-client-mmap = { prometheus-client-mmap = {
dependencies = ["mmap2"];
source = { source = {
remotes = ["https://rubygems.org"]; remotes = ["https://rubygems.org"];
sha256 = "1fgkilpiha338mvfkj5rwhny3vld0nb3v1vgbrlxbhnvch26wakh"; sha256 = "1wpk9zfbr7c1asvnq1v6jmc3ydbl8y17v24cj4vyhy3nkpds0cij";
type = "gem"; type = "gem";
}; };
version = "0.7.0.beta18"; version = "0.7.0.beta43";
}; };
pry = { pry = {
dependencies = ["coderay" "method_source" "slop"]; dependencies = ["coderay" "method_source" "slop"];
@ -2378,10 +2387,10 @@
dependencies = ["actionmailer" "actionpack" "actionview" "activejob" "activemodel" "activerecord" "activesupport" "railties" "sprockets-rails"]; dependencies = ["actionmailer" "actionpack" "actionview" "activejob" "activemodel" "activerecord" "activesupport" "railties" "sprockets-rails"];
source = { source = {
remotes = ["https://rubygems.org"]; remotes = ["https://rubygems.org"];
sha256 = "0dpbf3ybzbhqqkwg5vi60121860cr8fybvchrxk5wy3f2jcj0mch"; sha256 = "15vbdlkmlh470g7msqhmcmhxhi4finv3cjg595x9viafvphnf40l";
type = "gem"; type = "gem";
}; };
version = "4.2.8"; version = "4.2.10";
}; };
rails-deprecated_sanitizer = { rails-deprecated_sanitizer = {
dependencies = ["activesupport"]; dependencies = ["activesupport"];
@ -2423,10 +2432,10 @@
dependencies = ["actionpack" "activesupport" "rake" "thor"]; dependencies = ["actionpack" "activesupport" "rake" "thor"];
source = { source = {
remotes = ["https://rubygems.org"]; remotes = ["https://rubygems.org"];
sha256 = "0bavl4hj7bnl3ryqi9rvykm410kflplgingkcxasfv1gdilddh4g"; sha256 = "0snymfqj2cql0gp51i6a44avcirdridc15yggnxjj9raa9f3229p";
type = "gem"; type = "gem";
}; };
version = "4.2.8"; version = "4.2.10";
}; };
rainbow = { rainbow = {
dependencies = ["rake"]; dependencies = ["rake"];
@ -2448,10 +2457,10 @@
rake = { rake = {
source = { source = {
remotes = ["https://rubygems.org"]; remotes = ["https://rubygems.org"];
sha256 = "0mfqgpp3m69s5v1rd51lfh5qpjwyia5p4rg337pw8c8wzm6pgfsw"; sha256 = "190p7cs8zdn07mjj6xwwsdna3g0r98zs4crz7jh2j2q5b0nbxgjf";
type = "gem"; type = "gem";
}; };
version = "12.1.0"; version = "12.3.0";
}; };
rblineprof = { rblineprof = {
dependencies = ["debugger-ruby_core_source"]; dependencies = ["debugger-ruby_core_source"];
@ -2542,19 +2551,19 @@
dependencies = ["actionpack" "redis-rack" "redis-store"]; dependencies = ["actionpack" "redis-rack" "redis-store"];
source = { source = {
remotes = ["https://rubygems.org"]; remotes = ["https://rubygems.org"];
sha256 = "0gnkqi7cji2q5yfwm8b752k71pqrb3dqksv983yrf23virqnjfjr"; sha256 = "15k41gz7nygd4yydk2yd25gghya1j7q6zifk4mdrra6bwnwjbm63";
type = "gem"; type = "gem";
}; };
version = "5.0.1"; version = "5.0.2";
}; };
redis-activesupport = { redis-activesupport = {
dependencies = ["activesupport" "redis-store"]; dependencies = ["activesupport" "redis-store"];
source = { source = {
remotes = ["https://rubygems.org"]; remotes = ["https://rubygems.org"];
sha256 = "0i0r23rv32k25jqwbr4cb73alyaxwvz9crdaw3gv26h1zjrdjisd"; sha256 = "0rq5dhrzc1l8c7f5gx9r7mvnsk5206dfwih3yv5si5rf42nx2ay5";
type = "gem"; type = "gem";
}; };
version = "5.0.1"; version = "5.0.4";
}; };
redis-namespace = { redis-namespace = {
dependencies = ["redis"]; dependencies = ["redis"];
@ -2569,28 +2578,28 @@
dependencies = ["rack" "redis-store"]; dependencies = ["rack" "redis-store"];
source = { source = {
remotes = ["https://rubygems.org"]; remotes = ["https://rubygems.org"];
sha256 = "0fbxl5gv8krjf6n88gvn44xbzhfnsysnzawz7zili298ak98lsb3"; sha256 = "0px0wv8zripc6lrn3k0k61j6nlxda145q8sz50yvnig17wlk36gb";
type = "gem"; type = "gem";
}; };
version = "1.6.0"; version = "2.0.4";
}; };
redis-rails = { redis-rails = {
dependencies = ["redis-actionpack" "redis-activesupport" "redis-store"]; dependencies = ["redis-actionpack" "redis-activesupport" "redis-store"];
source = { source = {
remotes = ["https://rubygems.org"]; remotes = ["https://rubygems.org"];
sha256 = "04l2y26k4v30p3dx0pqf9gz257q73qzgrfqf3qv6bxwyv8z9f5hm"; sha256 = "0hjvkyaw5hgz7v6fgwdk8pb966z44h1gv8jarmb0gwhkqmjnsh40";
type = "gem"; type = "gem";
}; };
version = "5.0.1"; version = "5.0.2";
}; };
redis-store = { redis-store = {
dependencies = ["redis"]; dependencies = ["redis"];
source = { source = {
remotes = ["https://rubygems.org"]; remotes = ["https://rubygems.org"];
sha256 = "1da15wr3wc1d4hqy7h7smdc2k2jpfac3waa9d65si6f4dmqymkkq"; sha256 = "00yh8rhv91vxjlqs4ylic99m9npjxmgib2vjj8hgzk1174y6vcmq";
type = "gem"; type = "gem";
}; };
version = "1.2.0"; version = "1.4.1";
}; };
representable = { representable = {
dependencies = ["declarative" "declarative-option" "uber"]; dependencies = ["declarative" "declarative-option" "uber"];
@ -2954,6 +2963,15 @@
}; };
version = "3.5.9.3"; version = "3.5.9.3";
}; };
selenium-webdriver = {
dependencies = ["childprocess" "rubyzip"];
source = {
remotes = ["https://rubygems.org"];
sha256 = "0w6r0k1w7hpk853qfw18lipyzxs0r0d6xr70zqsjfdn2dwr0rb30";
type = "gem";
};
version = "3.5.0";
};
sentry-raven = { sentry-raven = {
dependencies = ["faraday"]; dependencies = ["faraday"];
source = { source = {
@ -3141,10 +3159,10 @@
dependencies = ["actionpack" "activesupport" "sprockets"]; dependencies = ["actionpack" "activesupport" "sprockets"];
source = { source = {
remotes = ["https://rubygems.org"]; remotes = ["https://rubygems.org"];
sha256 = "1zr9vk2vn44wcn4265hhnnnsciwlmqzqc6bnx78if1xcssxj6x44"; sha256 = "0ab42pm8p5zxpv3sfraq45b9lj39cz9mrpdirm30vywzrwwkm5p1";
type = "gem"; type = "gem";
}; };
version = "3.2.0"; version = "3.2.1";
}; };
sqlite3 = { sqlite3 = {
source = { source = {
@ -3295,6 +3313,15 @@
}; };
version = "0.8.3"; version = "0.8.3";
}; };
toml = {
dependencies = ["parslet"];
source = {
remotes = ["https://rubygems.org"];
sha256 = "1wnvi1g8id1sg6776fvzf98lhfbscchgiy1fp5pvd58a8ds2fq9v";
type = "gem";
};
version = "0.1.2";
};
toml-rb = { toml-rb = {
dependencies = ["citrus"]; dependencies = ["citrus"];
source = { source = {
@ -3317,10 +3344,10 @@
dependencies = ["thread_safe"]; dependencies = ["thread_safe"];
source = { source = {
remotes = ["https://rubygems.org"]; remotes = ["https://rubygems.org"];
sha256 = "05r81lk7q7275rdq7xipfm0yxgqyd2ggh73xpc98ypngcclqcscl"; sha256 = "09dpbrih054mn42flbbcdpzk2727mzfvjrgqb12zdafhx7p9rrzp";
type = "gem"; type = "gem";
}; };
version = "1.2.3"; version = "1.2.4";
}; };
u2f = { u2f = {
source = { source = {
@ -3476,23 +3503,6 @@
}; };
version = "0.9.10"; version = "0.9.10";
}; };
websocket-driver = {
dependencies = ["websocket-extensions"];
source = {
remotes = ["https://rubygems.org"];
sha256 = "1v39w1ig6ps8g55xhz6x1w53apl17ii6kpy0jg9249akgpdvb0k9";
type = "gem";
};
version = "0.6.3";
};
websocket-extensions = {
source = {
remotes = ["https://rubygems.org"];
sha256 = "07qnsafl6203a2zclxl20hy4jq11c471cgvd0bj5r9fx1qqw06br";
type = "gem";
};
version = "0.1.2";
};
wikicloth = { wikicloth = {
dependencies = ["builder" "expression_parser" "rinku"]; dependencies = ["builder" "expression_parser" "rinku"];
source = { source = {
@ -3502,6 +3512,14 @@
}; };
version = "0.8.1"; version = "0.8.1";
}; };
with_env = {
source = {
remotes = ["https://rubygems.org"];
sha256 = "1r5ns064mbb99hf1dyxsk9183hznc5i7mn3bi86zka6dlvqf9csh";
type = "gem";
};
version = "1.1.0";
};
xml-simple = { xml-simple = {
source = { source = {
remotes = ["https://rubygems.org"]; remotes = ["https://rubygems.org"];
@ -3519,4 +3537,4 @@
}; };
version = "2.1.0"; version = "2.1.0";
}; };
} }

View File

@ -7,7 +7,7 @@ index 4861171ef5..f6e701c548 100644
+gem 'activerecord-nulldb-adapter' +gem 'activerecord-nulldb-adapter'
+ +
gem 'rails', '4.2.8' gem 'rails', '4.2.10'
gem 'rails-deprecated_sanitizer', '~> 1.0.3' gem 'rails-deprecated_sanitizer', '~> 1.0.3'
diff --git a/Gemfile.lock b/Gemfile.lock diff --git a/Gemfile.lock b/Gemfile.lock

View File

@ -62,24 +62,15 @@ diff --git a/lib/gitlab/logger.rb b/lib/gitlab/logger.rb
index 59b21149a9..4f4a39a06c 100644 index 59b21149a9..4f4a39a06c 100644
--- a/lib/gitlab/logger.rb --- a/lib/gitlab/logger.rb
+++ b/lib/gitlab/logger.rb +++ b/lib/gitlab/logger.rb
@@ -13,7 +13,7 @@ @@ -26,7 +26,7 @@
end end
def self.read_latest def self.full_log_path
- path = Rails.root.join("log", file_name) - Rails.root.join("log", file_name)
+ path = File.join(ENV["GITLAB_LOG_PATH"], file_name) + File.join(ENV["GITLAB_LOG_PATH"], file_name)
return [] unless File.readable?(path)
@@ -22,7 +22,7 @@
end end
def self.build def self.cache_key
- new(Rails.root.join("log", file_name))
+ new(File.join(ENV["GITLAB_LOG_PATH"], file_name))
end
end
end
diff --git a/lib/gitlab/uploads_transfer.rb b/lib/gitlab/uploads_transfer.rb diff --git a/lib/gitlab/uploads_transfer.rb b/lib/gitlab/uploads_transfer.rb
index b5f4124052..f72c556983 100644 index b5f4124052..f72c556983 100644
--- a/lib/gitlab/uploads_transfer.rb --- a/lib/gitlab/uploads_transfer.rb

View File

@ -1,4 +1,6 @@
{ stdenv, fetchurl, meson, ninja, glib, pkgconfig, gnome3, appstream-glib, gettext }: { stdenv, fetchurl, meson, ninja, glib, pkgconfig, gnome3, appstream-glib
, gettext, gobjectIntrospection
}:
stdenv.mkDerivation rec { stdenv.mkDerivation rec {
name = "nautilus-sendto-${version}"; name = "nautilus-sendto-${version}";
@ -10,7 +12,7 @@ stdenv.mkDerivation rec {
sha256 = "164d7c6e8bae29c4579bcc67a7bf50d783662b1545b62f3008e7ea3c0410e04d"; sha256 = "164d7c6e8bae29c4579bcc67a7bf50d783662b1545b62f3008e7ea3c0410e04d";
}; };
nativeBuildInputs = [ meson ninja pkgconfig appstream-glib gettext ]; nativeBuildInputs = [ meson ninja pkgconfig appstream-glib gettext gobjectIntrospection ];
buildInputs = [ glib ]; buildInputs = [ glib ];
meta = with stdenv.lib; { meta = with stdenv.lib; {

View File

@ -18,8 +18,8 @@ buildFHSUserEnv {
python27Packages.setuptools python27Packages.setuptools
python27Packages.pip python27Packages.pip
python27Packages.bottle python27Packages.bottle
zlib
python27Packages.platformio python27Packages.platformio
zlib
]); ]);
meta = with stdenv.lib; { meta = with stdenv.lib; {
@ -30,5 +30,9 @@ buildFHSUserEnv {
platforms = with platforms; linux; platforms = with platforms; linux;
}; };
extraInstallCommands = ''
ln -s $out/bin/platformio $out/bin/pio
'';
runScript = "platformio"; runScript = "platformio";
} }

View File

@ -102,6 +102,7 @@ let
withPackages = packages: buildPackages.callPackage ./with-packages-wrapper.nix { withPackages = packages: buildPackages.callPackage ./with-packages-wrapper.nix {
inherit (self) llvmPackages; inherit (self) llvmPackages;
inherit ghc;
inherit packages; inherit packages;
}; };

View File

@ -1,4 +1,4 @@
{ stdenv, fetchurl }: { stdenv, fetchurl, fetchpatch }:
stdenv.mkDerivation rec { stdenv.mkDerivation rec {
name = "jemalloc-${version}"; name = "jemalloc-${version}";
@ -19,6 +19,13 @@ stdenv.mkDerivation rec {
++ stdenv.lib.optional stdenv.isArm "--disable-thp"; ++ stdenv.lib.optional stdenv.isArm "--disable-thp";
doCheck = true; doCheck = true;
patches = stdenv.lib.optional stdenv.isAarch64 (fetchpatch {
url = "https://patch-diff.githubusercontent.com/raw/jemalloc/jemalloc/pull/1035.patch";
sha256 = "02y0q3dp253bipxv4r954nqipbjbj92p6ww9bx5bk3d8pa81wkqq";
});
enableParallelBuilding = true;
meta = with stdenv.lib; { meta = with stdenv.lib; {
homepage = http://jemalloc.net; homepage = http://jemalloc.net;
description = "General purpose malloc(3) implementation"; description = "General purpose malloc(3) implementation";

View File

@ -0,0 +1,11 @@
--- a/common/slp_xmalloc.c
+++ b/common/slp_xmalloc.c
@@ -206,7 +206,7 @@ void * _xrealloc(const char * file, int line, void * ptr, size_t size)
if (newptr == 0)
return 0;
memcpy(newptr, ptr, x->size);
- _xfree(file, line, x);
+ _xfree(file, line, ptr);
}
return newptr;
}

View File

@ -19,6 +19,7 @@ stdenv.mkDerivation {
url = "https://src.fedoraproject.org/cgit/rpms/openslp.git/plain/openslp-2.0.0-cve-2016-7567.patch"; url = "https://src.fedoraproject.org/cgit/rpms/openslp.git/plain/openslp-2.0.0-cve-2016-7567.patch";
sha256 = "0zp61axx93b7nrbsyhn2x4dnw7n9y6g4rys21hyqxk4khrnc2yr9"; sha256 = "0zp61axx93b7nrbsyhn2x4dnw7n9y6g4rys21hyqxk4khrnc2yr9";
}) })
./CVE-2016-4912.patch
]; ];
meta = with stdenv.lib; { meta = with stdenv.lib; {

View File

@ -15,6 +15,5 @@ stdenv.mkDerivation rec {
meta = { meta = {
description = "Client implementation of the Smart HTTP Git protocol in pure OCaml"; description = "Client implementation of the Smart HTTP Git protocol in pure OCaml";
inherit (git.meta) homepage license maintainers platforms; inherit (git.meta) homepage license maintainers platforms;
broken = true;
}; };
} }

View File

@ -3,14 +3,14 @@
}: }:
stdenv.mkDerivation rec { stdenv.mkDerivation rec {
version = "1.11.2"; version = "1.11.4";
name = "ocaml${ocaml.version}-git-${version}"; name = "ocaml${ocaml.version}-git-${version}";
src = fetchFromGitHub { src = fetchFromGitHub {
owner = "mirage"; owner = "mirage";
repo = "ocaml-git"; repo = "ocaml-git";
rev = version; rev = version;
sha256 = "1z5b0g4vck1sh1w076i2p3ppxrmb9h30q3nip5snw2r9prkm6y1j"; sha256 = "182b6shcfcq50r5snm01hwalnmck43x1xgdd4fvjb6q78pbwag2x";
}; };
buildInputs = [ ocaml findlib jbuilder ]; buildInputs = [ ocaml findlib jbuilder ];

View File

@ -8,12 +8,12 @@ buildPythonPackage rec {
disabled = isPy3k || isPyPy; disabled = isPy3k || isPyPy;
pname = "platformio"; pname = "platformio";
version="3.4.1"; version="3.5.0";
name = "${pname}-${version}"; name = "${pname}-${version}";
src = fetchPypi { src = fetchPypi {
inherit pname version; inherit pname version;
sha256 = "1b4lba672l851sv1xwc320xbh46x7hx4ms6whc0k37hxkxj0nwm2"; sha256 = "0gy13cwp0i97lgjd8hh8kh9cswxh53x4cx2sq5b7d7vv8kd7bh6c";
}; };
propagatedBuildInputs = [ propagatedBuildInputs = [

View File

@ -6,13 +6,13 @@ assert qtbase != null -> qt4 == null;
stdenv.mkDerivation rec { stdenv.mkDerivation rec {
name = "snowman-${version}"; name = "snowman-${version}";
version = "2017-08-13"; version = "2017-11-19";
src = fetchFromGitHub { src = fetchFromGitHub {
owner = "yegord"; owner = "yegord";
repo = "snowman"; repo = "snowman";
rev = "cd9edcddf873fc40d7bcb1bb1eae815faedd3a03"; rev = "d03c2d6ffbf262c0011584df59d6bd69c020e08e";
sha256 = "10f3kd5m5xw7hqh92ba7dcczwbznxvk1qxg0yycqz7y9mfr2282n"; sha256 = "0bzqp3zc100dzvybf57bj4dvnybvds0lmn1w2xjb19wkzm9liskn";
}; };
nativeBuildInputs = [ cmake ]; nativeBuildInputs = [ cmake ];

View File

@ -21,11 +21,18 @@ stdenv.mkDerivation rec {
src = [ arcanist libphutil ]; src = [ arcanist libphutil ];
buildInputs = [ php makeWrapper flex ]; buildInputs = [ php makeWrapper flex ];
unpackPhase = "true"; unpackPhase = ''
buildPhase = ''
cp -R ${libphutil} libphutil cp -R ${libphutil} libphutil
cp -R ${arcanist} arcanist cp -R ${arcanist} arcanist
chmod +w -R libphutil arcanist chmod +w -R libphutil arcanist
'';
postPatch = stdenv.lib.optionalString stdenv.isAarch64 ''
substituteInPlace libphutil/support/xhpast/Makefile \
--replace "-minline-all-stringops" ""
'';
buildPhase = ''
( (
cd libphutil/support/xhpast cd libphutil/support/xhpast
make clean all install make clean all install

View File

@ -2,12 +2,12 @@
python2.pkgs.buildPythonApplication rec { python2.pkgs.buildPythonApplication rec {
pname = "lit"; pname = "lit";
version = "0.5.0"; version = "0.5.1";
name = "${pname}-${version}"; name = "${pname}-${version}";
src = python2.pkgs.fetchPypi { src = python2.pkgs.fetchPypi {
inherit pname version; inherit pname version;
sha256 = "3ea4251e78ebeb2e07be2feb33243d1f8931d956efc96ccc2b0846ced212b58c"; sha256 = "0z651m3vkbk85y41larnsjxrszkbi58x9gzml3lb6ga7qwcrsg97";
}; };
# Non-standard test suite. Needs custom checkPhase. # Non-standard test suite. Needs custom checkPhase.

View File

@ -3,9 +3,9 @@
with stdenv.lib; with stdenv.lib;
let let
version = "4.14.11"; version = "4.14.12";
revision = "a"; revision = "a";
sha256 = "05180jqxama1n0bi650sm9ing222gs2ks13cnpwamr415f01ws9c"; sha256 = "002a3c177fix472wqc89zrpfzwk60l7dn76l869ivgnd60n6wqb2";
# modVersion needs to be x.y.z, will automatically add .0 if needed # modVersion needs to be x.y.z, will automatically add .0 if needed
modVersion = concatStrings (intersperse "." (take 3 (splitString "." "${version}.0"))); modVersion = concatStrings (intersperse "." (take 3 (splitString "." "${version}.0")));

View File

@ -4,11 +4,11 @@
, http2Support ? true, nghttp2 , http2Support ? true, nghttp2
, ldapSupport ? true, openldap , ldapSupport ? true, openldap
, libxml2Support ? true, libxml2 , libxml2Support ? true, libxml2
, brotliSupport ? true, brotli
, luaSupport ? false, lua5 , luaSupport ? false, lua5
}: }:
let optional = stdenv.lib.optional; let inherit (stdenv.lib) optional optionalString;
optionalString = stdenv.lib.optionalString;
in in
assert sslSupport -> aprutil.sslSupport && openssl != null; assert sslSupport -> aprutil.sslSupport && openssl != null;
@ -29,6 +29,7 @@ stdenv.mkDerivation rec {
setOutputFlags = false; # it would move $out/modules, etc. setOutputFlags = false; # it would move $out/modules, etc.
buildInputs = [perl] ++ buildInputs = [perl] ++
optional brotliSupport brotli ++
optional sslSupport openssl ++ optional sslSupport openssl ++
optional ldapSupport openldap ++ # there is no --with-ldap flag optional ldapSupport openldap ++ # there is no --with-ldap flag
optional libxml2Support libxml2 ++ optional libxml2Support libxml2 ++
@ -58,6 +59,7 @@ stdenv.mkDerivation rec {
--enable-cern-meta --enable-cern-meta
--enable-imagemap --enable-imagemap
--enable-cgi --enable-cgi
${optionalString brotliSupport "--enable-brotli --with-brotli=${brotli}"}
${optionalString proxySupport "--enable-proxy"} ${optionalString proxySupport "--enable-proxy"}
${optionalString sslSupport "--enable-ssl"} ${optionalString sslSupport "--enable-ssl"}
${optionalString http2Support "--enable-http2 --with-nghttp2"} ${optionalString http2Support "--enable-http2 --with-nghttp2"}

View File

@ -15,18 +15,18 @@ mariadb = everything // {
}; };
common = rec { # attributes common to both builds common = rec { # attributes common to both builds
version = "10.2.11"; version = "10.2.12";
src = fetchurl { src = fetchurl {
url = "https://downloads.mariadb.org/f/mariadb-${version}/source/mariadb-${version}.tar.gz/from/http%3A//ftp.hosteurope.de/mirror/archive.mariadb.org/?serve"; url = "https://downloads.mariadb.org/f/mariadb-${version}/source/mariadb-${version}.tar.gz";
sha256 = "1s53ravbrxcc8ixvkm56rwgs3cfifzngc56pidd1f1dr1n0mlmb3"; sha256 = "1v21sc1y5qndwdbr921da1s009bkn6pshwcgw47w7aygp9zjvcia";
name = "mariadb-${version}.tar.gz"; name = "mariadb-${version}.tar.gz";
}; };
nativeBuildInputs = [ cmake pkgconfig ]; nativeBuildInputs = [ cmake pkgconfig ];
buildInputs = [ buildInputs = [
ncurses openssl zlib pcre jemalloc ncurses openssl zlib pcre jemalloc libiconv
] ++ stdenv.lib.optionals stdenv.isLinux [ libaio systemd ] ] ++ stdenv.lib.optionals stdenv.isLinux [ libaio systemd ]
++ stdenv.lib.optionals stdenv.isDarwin [ perl fixDarwinDylibNames cctools CoreServices ]; ++ stdenv.lib.optionals stdenv.isDarwin [ perl fixDarwinDylibNames cctools CoreServices ];
@ -122,8 +122,7 @@ everything = stdenv.mkDerivation (common // {
buildInputs = common.buildInputs ++ [ buildInputs = common.buildInputs ++ [
xz lzo lz4 bzip2 snappy xz lzo lz4 bzip2 snappy
libxml2 boost judy libevent cracklib libxml2 boost judy libevent cracklib
] ++ optional (stdenv.isLinux && !stdenv.isArm) numactl ] ++ optional (stdenv.isLinux && !stdenv.isArm) numactl;
++ optional stdenv.isDarwin libiconv;
cmakeFlags = common.cmakeFlags ++ [ cmakeFlags = common.cmakeFlags ++ [
"-DMYSQL_DATADIR=/var/lib/mysql" "-DMYSQL_DATADIR=/var/lib/mysql"
@ -183,8 +182,7 @@ connector-c = stdenv.mkDerivation rec {
nativeBuildInputs = [ cmake ]; nativeBuildInputs = [ cmake ];
propagatedBuildInputs = [ openssl zlib ]; propagatedBuildInputs = [ openssl zlib ];
# FIXME: move libiconv outside isDarwin on staging. buildInputs = [ libiconv ];
buildInputs = stdenv.lib.optional stdenv.isDarwin libiconv;
enableParallelBuilding = true; enableParallelBuilding = true;

View File

@ -2,12 +2,12 @@
stdenv.mkDerivation rec { stdenv.mkDerivation rec {
name = "abcMIDI-${version}"; name = "abcMIDI-${version}";
version = "2017.12.20"; version = "2018.01.02";
# You can find new releases on http://ifdo.ca/~seymour/runabc/top.html # You can find new releases on http://ifdo.ca/~seymour/runabc/top.html
src = fetchzip { src = fetchzip {
url = "http://ifdo.ca/~seymour/runabc/${name}.zip"; url = "http://ifdo.ca/~seymour/runabc/${name}.zip";
sha256 = "0lkbwrh701djbyqmybvx860p8csy25i6p3p7hr0cpndpa496nm07"; sha256 = "0s8wm637dgzgpgdxba3a6fh06i0c4iwvv9cdghh8msnx428k68iw";
}; };
# There is also a file called "makefile" which seems to be preferred by the standard build phase # There is also a file called "makefile" which seems to be preferred by the standard build phase

View File

@ -1,4 +1,4 @@
{ stdenv, fetchFromGitHub, fetchurl, makeWrapper { stdenv, fetchFromGitHub, makeWrapper
, perl, pandoc, python2Packages, git , perl, pandoc, python2Packages, git
, par2cmdline ? null, par2Support ? true , par2cmdline ? null, par2Support ? true
}: }:
@ -19,7 +19,12 @@ stdenv.mkDerivation rec {
sha256 = "0wdr399jf64zzzsdvldhrwvnh5xpbghjvslr1j2cwr5y4i36znxf"; sha256 = "0wdr399jf64zzzsdvldhrwvnh5xpbghjvslr1j2cwr5y4i36znxf";
}; };
buildInputs = [ git python2Packages.python ]; buildInputs = [
git
(python2Packages.python.withPackages
(p: with p; [ setuptools tornado ]
++ stdenv.lib.optionals (!stdenv.isDarwin) [ pyxattr pylibacl fuse ]))
];
nativeBuildInputs = [ pandoc perl makeWrapper ]; nativeBuildInputs = [ pandoc perl makeWrapper ];
postPatch = '' postPatch = ''
@ -41,11 +46,7 @@ stdenv.mkDerivation rec {
postInstall = '' postInstall = ''
wrapProgram $out/bin/bup \ wrapProgram $out/bin/bup \
--prefix PATH : ${git}/bin \ --prefix PATH : ${git}/bin
--prefix PYTHONPATH : ${concatStringsSep ":" (map (x: "$(toPythonPath ${x})")
(with python2Packages;
[ setuptools tornado ]
++ stdenv.lib.optionals (!stdenv.isDarwin) [ pyxattr pylibacl fuse ]))}
''; '';
meta = { meta = {

View File

@ -1,19 +1,17 @@
{ stdenv, fetchFromGitHub, rustPlatform }: { stdenv, fetchFromGitHub, rustPlatform }:
with rustPlatform; rustPlatform.buildRustPackage rec {
buildRustPackage rec {
name = "svgcleaner-${version}"; name = "svgcleaner-${version}";
version = "0.9.1"; version = "0.9.2";
src = fetchFromGitHub { src = fetchFromGitHub {
owner = "RazrFalcon"; owner = "RazrFalcon";
repo = "svgcleaner"; repo = "svgcleaner";
rev = "v${version}"; rev = "v${version}";
sha256 = "0l75a2kqh2syl14pmywrkxhr19fcnfpzjj9gj3503aw0r800g16m"; sha256 = "1jpnqsln37kkxz98vj7gly3c2170v6zamd876nc9nfl9vns41s0f";
}; };
cargoSha256 = "1hl04wqdgspajf2w664i00vgp13yi0sxvjjpfs5vfhm641z3j69y"; cargoSha256 = "0d5jlq301s55xgdg9mv26hbj75pkjkyxfny7vbiqp9igj128lza3";
meta = with stdenv.lib; { meta = with stdenv.lib; {
description = "A tool for tidying and optimizing SVGs"; description = "A tool for tidying and optimizing SVGs";

View File

@ -1,7 +1,9 @@
{ stdenv, fetchurl, iproute, lzo, openssl, pam, systemd, pkgconfig { stdenv, fetchurl, iproute, lzo, openssl, pam, pkgconfig
, useSystemd ? stdenv.isLinux, systemd ? null
, pkcs11Support ? false, pkcs11helper ? null, , pkcs11Support ? false, pkcs11helper ? null,
}: }:
assert useSystemd -> (systemd != null);
assert pkcs11Support -> (pkcs11helper != null); assert pkcs11Support -> (pkcs11helper != null);
with stdenv.lib; with stdenv.lib;
@ -17,13 +19,14 @@ stdenv.mkDerivation rec {
nativeBuildInputs = [ pkgconfig ]; nativeBuildInputs = [ pkgconfig ];
buildInputs = [ lzo openssl ] buildInputs = [ lzo openssl ]
++ optionals stdenv.isLinux [ pam systemd iproute ] ++ optionals stdenv.isLinux [ pam iproute ]
++ optional useSystemd systemd
++ optional pkcs11Support pkcs11helper; ++ optional pkcs11Support pkcs11helper;
configureFlags = optionals stdenv.isLinux [ configureFlags = optionals stdenv.isLinux [
"--enable-systemd"
"--enable-iproute2" "--enable-iproute2"
"IPROUTE=${iproute}/sbin/ip" ] "IPROUTE=${iproute}/sbin/ip" ]
++ optional useSystemd "--enable-systemd"
++ optional pkcs11Support "--enable-pkcs11" ++ optional pkcs11Support "--enable-pkcs11"
++ optional stdenv.isDarwin "--disable-plugin-auth-pam"; ++ optional stdenv.isDarwin "--disable-plugin-auth-pam";

View File

@ -3,7 +3,7 @@
buildGoPackage rec { buildGoPackage rec {
name = "browserpass-${version}"; name = "browserpass-${version}";
version = "2.0.7"; version = "2.0.10";
goPackagePath = "github.com/dannyvankooten/browserpass"; goPackagePath = "github.com/dannyvankooten/browserpass";
@ -13,7 +13,7 @@ buildGoPackage rec {
repo = "browserpass"; repo = "browserpass";
owner = "dannyvankooten"; owner = "dannyvankooten";
rev = version; rev = version;
sha256 = "1dbp5za5qh6xmgh3w2cx5fbw13mh1szgj2y7ilmq0jh2ik09fbnd"; sha256 = "0clkalw2wz2zs0p5hsq57iqp2bdp7y17zf5l2d0y7xfddff9sd82";
}; };
postInstall = '' postInstall = ''

View File

@ -14,8 +14,8 @@
fetch = { fetch = {
type = "git"; type = "git";
url = "https://github.com/mattn/go-zglob"; url = "https://github.com/mattn/go-zglob";
rev = "4b74c24375b3b1ee226867156e01996f4e19a8d6"; rev = "4959821b481786922ac53e7ef25c61ae19fb7c36";
sha256 = "1qc502an4q3wgvrd9zw6zprgm28d90d2f98bdamdf4js03jj22xn"; sha256 = "0rwkdw143kphpmingsrw1zp030zf3p08f64h347jpdm4lz8z5449";
}; };
} }
{ {

View File

@ -16688,7 +16688,9 @@ with pkgs;
renoise = callPackage ../applications/audio/renoise {}; renoise = callPackage ../applications/audio/renoise {};
radiotray-ng = callPackage ../applications/audio/radiotray-ng { }; radiotray-ng = callPackage ../applications/audio/radiotray-ng {
wxGTK = wxGTK30;
};
rapcad = libsForQt56.callPackage ../applications/graphics/rapcad { boost = boost159; }; rapcad = libsForQt56.callPackage ../applications/graphics/rapcad { boost = boost159; };