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

This commit is contained in:
Tuomas Tynkkynen 2018-03-22 09:54:10 +02:00
commit 809b0d26bd
229 changed files with 2602 additions and 2278 deletions

13
.gitattributes vendored Normal file
View File

@ -0,0 +1,13 @@
**/deps.nix linguist-generated
**/node-packages.nix linguist-generated
pkgs/applications/editors/emacs-modes/*-generated.nix linguist-generated
pkgs/development/r-modules/*-packages.nix linguist-generated
pkgs/development/haskell-modules/hackage-packages.nix linguist-generated
pkgs/development/beam-modules/hex-packages.nix linguist-generated
doc/** linguist-documentation
doc/default.nix linguist-documentation=false
nixos/doc/** linguist-documentation
nixos/doc/default.nix linguist-documentation=false

View File

@ -871,8 +871,10 @@ Executing `python setup.py bdist_wheel` in a `nix-shell `fails with
```
ValueError: ZIP does not support timestamps before 1980
```
This is because files are included that depend on items in the Nix store which have a timestamp of, that is, it corresponds to January the 1st, 1970 at 00:00:00. And as the error informs you, ZIP does not support that.
The command `bdist_wheel` takes into account `SOURCE_DATE_EPOCH`, and `nix-shell` sets this to 1. By setting it to a value corresponding to 1980 or later, or by unsetting it, it is possible to build wheels.
This is because files from the Nix store (which have a timestamp of the UNIX epoch of January 1, 1970) are included in the .ZIP, but .ZIP archives follow the DOS convention of counting timestamps from 1980.
The command `bdist_wheel` reads the `SOURCE_DATE_EPOCH` environment variable, which `nix-shell` sets to 1. Unsetting this variable or giving it a value corresponding to 1980 or later enables building wheels.
Use 1980 as timestamp:
```shell
@ -882,7 +884,7 @@ or the current time:
```shell
nix-shell --run "SOURCE_DATE_EPOCH=$(date +%s) python3 setup.py bdist_wheel"
```
or unset:
or unset `SOURCE_DATE_EPOCH`:
```shell
nix-shell --run "unset SOURCE_DATE_EPOCH; python3 setup.py bdist_wheel"
```

View File

@ -25,14 +25,14 @@ let
loginCfgFile = optional cfg.ssh.enable
{ source = pkgs.writeText "login_duo.conf" configFile;
mode = "0600";
uid = config.ids.uids.sshd;
user = "sshd";
target = "duo/login_duo.conf";
};
pamCfgFile = optional cfg.pam.enable
{ source = pkgs.writeText "pam_duo.conf" configFile;
mode = "0600";
uid = config.ids.uids.sshd;
user = "sshd";
target = "duo/pam_duo.conf";
};
in

View File

@ -141,7 +141,7 @@ in
JAVA_HOME = jre;
GRAYLOG_CONF = "${confFile}";
};
path = [ pkgs.openjdk8 pkgs.which pkgs.procps ];
path = [ pkgs.jre_headless pkgs.which pkgs.procps ];
preStart = ''
mkdir -p /var/lib/graylog -m 755

View File

@ -1,205 +1,69 @@
# The following was taken from github.com/crohr/syslogger and is BSD
# licensed.
require 'syslog'
require 'logger'
require 'thread'
class Syslogger
VERSION = "1.6.0"
attr_reader :level, :ident, :options, :facility, :max_octets
attr_accessor :formatter
MAPPING = {
Logger::DEBUG => Syslog::LOG_DEBUG,
Logger::INFO => Syslog::LOG_INFO,
Logger::WARN => Syslog::LOG_WARNING,
Logger::ERROR => Syslog::LOG_ERR,
Logger::FATAL => Syslog::LOG_CRIT,
Logger::UNKNOWN => Syslog::LOG_ALERT
}
#
# Initializes default options for the logger
# <tt>ident</tt>:: the name of your program [default=$0].
# <tt>options</tt>:: syslog options [default=<tt>Syslog::LOG_PID | Syslog::LOG_CONS</tt>].
# Correct values are:
# LOG_CONS : writes the message on the console if an error occurs when sending the message;
# LOG_NDELAY : no delay before sending the message;
# LOG_PERROR : messages will also be written on STDERR;
# LOG_PID : adds the process number to the message (just after the program name)
# <tt>facility</tt>:: the syslog facility [default=nil] Correct values include:
# Syslog::LOG_DAEMON
# Syslog::LOG_USER
# Syslog::LOG_SYSLOG
# Syslog::LOG_LOCAL2
# Syslog::LOG_NEWS
# etc.
#
# Usage:
# logger = Syslogger.new("my_app", Syslog::LOG_PID | Syslog::LOG_CONS, Syslog::LOG_LOCAL0)
# logger.level = Logger::INFO # use Logger levels
# logger.warn "warning message"
# logger.debug "debug message"
#
def initialize(ident = $0, options = Syslog::LOG_PID | Syslog::LOG_CONS, facility = nil)
@ident = ident
@options = options || (Syslog::LOG_PID | Syslog::LOG_CONS)
@facility = facility
@level = Logger::INFO
@mutex = Mutex.new
@formatter = Logger::Formatter.new
end
%w{debug info warn error fatal unknown}.each do |logger_method|
# Accepting *args as message could be nil.
# Default params not supported in ruby 1.8.7
define_method logger_method.to_sym do |*args, &block|
return true if @level > Logger.const_get(logger_method.upcase)
message = args.first || block && block.call
add(Logger.const_get(logger_method.upcase), message)
end
unless logger_method == 'unknown'
define_method "#{logger_method}?".to_sym do
@level <= Logger.const_get(logger_method.upcase)
end
end
end
# Log a message at the Logger::INFO level. Useful for use with Rack::CommonLogger
def write(msg)
add(Logger::INFO, msg)
end
# Logs a message at the Logger::INFO level.
def <<(msg)
add(Logger::INFO, msg)
end
# Low level method to add a message.
# +severity+:: the level of the message. One of Logger::DEBUG, Logger::INFO, Logger::WARN, Logger::ERROR, Logger::FATAL, Logger::UNKNOWN
# +message+:: the message string.
# If nil, the method will call the block and use the result as the message string.
# If both are nil or no block is given, it will use the progname as per the behaviour of both the standard Ruby logger, and the Rails BufferedLogger.
# +progname+:: optionally, overwrite the program name that appears in the log message.
def add(severity, message = nil, progname = nil, &block)
if message.nil? && block.nil? && !progname.nil?
message, progname = progname, nil
end
progname ||= @ident
@mutex.synchronize do
Syslog.open(progname, @options, @facility) do |s|
s.mask = Syslog::LOG_UPTO(MAPPING[@level])
communication = clean(message || block && block.call)
if self.max_octets
buffer = "#{tags_text}"
communication.bytes do |byte|
buffer.concat(byte)
# if the last byte we added is potentially part of an escape, we'll go ahead and add another byte
if buffer.bytesize >= self.max_octets && !['%'.ord,'\\'.ord].include?(byte)
s.log(MAPPING[severity],buffer)
buffer = ""
end
end
s.log(MAPPING[severity],buffer) unless buffer.empty?
else
s.log(MAPPING[severity],"#{tags_text}#{communication}")
end
end
end
end
# Set the max octets of the messages written to the log
def max_octets=(max_octets)
@max_octets = max_octets
end
# Sets the minimum level for messages to be written in the log.
# +level+:: one of <tt>Logger::DEBUG</tt>, <tt>Logger::INFO</tt>, <tt>Logger::WARN</tt>, <tt>Logger::ERROR</tt>, <tt>Logger::FATAL</tt>, <tt>Logger::UNKNOWN</tt>
def level=(level)
level = Logger.const_get(level.to_s.upcase) if level.is_a?(Symbol)
unless level.is_a?(Fixnum)
raise ArgumentError.new("Invalid logger level `#{level.inspect}`")
end
@level = level
end
# Sets the ident string passed along to Syslog
def ident=(ident)
@ident = ident
end
# Tagging code borrowed from ActiveSupport gem
def tagged(*tags)
new_tags = push_tags(*tags)
yield self
ensure
pop_tags(new_tags.size)
end
def push_tags(*tags)
tags.flatten.reject{ |i| i.respond_to?(:empty?) ? i.empty? : !i }.tap do |new_tags|
current_tags.concat new_tags
end
end
def pop_tags(size = 1)
current_tags.pop size
end
def clear_tags!
current_tags.clear
end
protected
# Borrowed from SyslogLogger.
def clean(message)
message = message.to_s.dup
message.strip! # remove whitespace
message.gsub!(/\n/, '\\n') # escape newlines
message.gsub!(/%/, '%%') # syslog(3) freaks on % (printf)
message.gsub!(/\e\[[^m]*m/, '') # remove useless ansi color codes
message
end
private
def tags_text
tags = current_tags
if tags.any?
tags.collect { |tag| "[#{tag}] " }.join
end
end
def current_tags
Thread.current[:syslogger_tagged_logging_tags] ||= []
end
end
worker_processes 2
working_directory ENV["GITLAB_PATH"]
pid ENV["UNICORN_PATH"] + "/tmp/pids/unicorn.pid"
worker_processes 3
listen ENV["UNICORN_PATH"] + "/tmp/sockets/gitlab.socket", :backlog => 1024
listen "/run/gitlab/gitlab.socket", :backlog => 1024
working_directory ENV["GITLAB_PATH"]
pid ENV["UNICORN_PATH"] + "/tmp/pids/unicorn.pid"
timeout 60
logger Syslogger.new
# combine Ruby 2.0.0dev or REE with "preload_app true" for memory savings
# http://rubyenterpriseedition.com/faq.html#adapt_apps_for_cow
preload_app true
GC.respond_to?(:copy_on_write_friendly=) and
GC.copy_on_write_friendly = true
check_client_connection false
before_fork do |server, worker|
# the following is highly recommended for Rails + "preload_app true"
# as there's no need for the master process to hold a connection
defined?(ActiveRecord::Base) and
ActiveRecord::Base.connection.disconnect!
# The following is only recommended for memory/DB-constrained
# installations. It is not needed if your system can house
# twice as many worker_processes as you have configured.
#
# This allows a new master process to incrementally
# phase out the old master process with SIGTTOU to avoid a
# thundering herd (especially in the "preload_app false" case)
# when doing a transparent upgrade. The last worker spawned
# will then kill off the old master process with a SIGQUIT.
old_pid = "#{server.config[:pid]}.oldbin"
if old_pid != server.pid
begin
sig = (worker.nr + 1) >= server.worker_processes ? :QUIT : :TTOU
Process.kill(sig, File.read(old_pid).to_i)
rescue Errno::ENOENT, Errno::ESRCH
end
end
# Throttle the master from forking too quickly by sleeping. Due
# to the implementation of standard Unix signal handlers, this
# helps (but does not completely) prevent identical, repeated signals
# from being lost when the receiving process is busy.
# sleep 1
end
after_fork do |server, worker|
# per-process listener ports for debugging/admin/migrations
# addr = "127.0.0.1:#{9293 + worker.nr}"
# server.listen(addr, :tries => -1, :delay => 5, :tcp_nopush => true)
# the following is *required* for Rails + "preload_app true",
defined?(ActiveRecord::Base) and
ActiveRecord::Base.establish_connection
# reset prometheus client, this will cause any opened metrics files to be closed
defined?(::Prometheus::Client.reinitialize_on_pid_change) &&
Prometheus::Client.reinitialize_on_pid_change
# if preload_app is true, then you may also want to check and
# restart any other shared sockets/descriptors such as Memcached,
# and Redis. TokyoCabinet file handles are safe to reuse
# between any number of forked children (assuming your kernel
# correctly implements pread()/pwrite() system calls)
end

View File

@ -143,6 +143,7 @@ let
GITLAB_PATH = "${cfg.packages.gitlab}/share/gitlab/";
GITLAB_STATE_PATH = "${cfg.statePath}";
GITLAB_UPLOADS_PATH = "${cfg.statePath}/uploads";
SCHEMA = "${cfg.statePath}/db/schema.rb";
GITLAB_LOG_PATH = "${cfg.statePath}/log";
GITLAB_SHELL_PATH = "${cfg.packages.gitlab-shell}";
GITLAB_SHELL_CONFIG_PATH = "${cfg.statePath}/shell/config.yml";
@ -500,7 +501,7 @@ in {
Type = "simple";
User = cfg.user;
Group = cfg.group;
TimeoutSec = "300";
TimeoutSec = "infinity";
Restart = "on-failure";
WorkingDirectory = gitlabEnv.HOME;
ExecStart = "${cfg.packages.gitaly}/bin/gitaly ${gitalyToml}";
@ -566,6 +567,7 @@ in {
mkdir -p ${cfg.statePath}/tmp/pids
mkdir -p ${cfg.statePath}/tmp/sockets
mkdir -p ${cfg.statePath}/shell
mkdir -p ${cfg.statePath}/db
rm -rf ${cfg.statePath}/config ${cfg.statePath}/shell/hooks
mkdir -p ${cfg.statePath}/config
@ -580,6 +582,7 @@ in {
ln -sf ${cfg.statePath}/log /run/gitlab/log
ln -sf ${cfg.statePath}/uploads /run/gitlab/uploads
ln -sf ${cfg.statePath}/tmp /run/gitlab/tmp
ln -sf $GITLAB_SHELL_CONFIG_PATH /run/gitlab/shell-config.yml
chown -R ${cfg.user}:${cfg.group} /run/gitlab
# Prepare home directory
@ -587,6 +590,7 @@ in {
touch ${gitlabEnv.HOME}/.ssh/authorized_keys
chown -R ${cfg.user}:${cfg.group} ${gitlabEnv.HOME}/
cp -rf ${cfg.packages.gitlab}/share/gitlab/db/* ${cfg.statePath}/db
cp -rf ${cfg.packages.gitlab}/share/gitlab/config.dist/* ${cfg.statePath}/config
${optionalString cfg.smtp.enable ''
ln -sf ${smtpSettings} ${cfg.statePath}/config/initializers/smtp_settings.rb

View File

@ -46,6 +46,8 @@ rec {
litecoin = callPackage ./litecoin.nix { withGui = true; };
litecoind = callPackage ./litecoin.nix { withGui = false; };
masari = callPackage ./masari.nix { };
memorycoin = callPackage ./memorycoin.nix { boost = boost165; withGui = true; };
memorycoind = callPackage ./memorycoin.nix { boost = boost165; withGui = false; };

View File

@ -0,0 +1,27 @@
{ lib, stdenv, fetchFromGitHub, cmake, pkgconfig, unbound, openssl, boost
, lmdb, miniupnpc, readline }:
stdenv.mkDerivation rec {
name = "masari-${version}";
version = "0.1.4.0";
src = fetchFromGitHub {
owner = "masari-project";
repo = "masari";
rev = "v${version}";
sha256 = "0l6i21wkq5f6z8xr756i7vqgkzk7lixaa31ydy34fkfcqxppgxz3";
};
nativeBuildInputs = [ cmake pkgconfig ];
buildInputs = [ boost miniupnpc openssl lmdb unbound readline ];
enableParallelBuilding = true;
meta = with lib; {
description = "scalability-focused, untraceable, secure, and fungible cryptocurrency using the RingCT protocol";
homepage = "https://www.getmasari.org/";
license = licenses.bsd3;
maintainers = with maintainers; [ fpletz ];
platforms = platforms.linux;
};
}

View File

@ -47,11 +47,6 @@ stdenv.mkDerivation rec {
postFixup = ''
# Unwrap accidentally wrapped library
mv $out/libexec/deja-dup/tools/.libduplicity.so-wrapped $out/libexec/deja-dup/tools/libduplicity.so
# Patched meson does not add internal libraries to rpath
for elf in "$out/bin/.deja-dup-wrapped" "$out/libexec/deja-dup/.deja-dup-monitor-wrapped" "$out/libexec/deja-dup/tools/libduplicity.so"; do
patchelf --set-rpath "$(patchelf --print-rpath "$elf"):$out/lib/deja-dup" "$elf"
done
'';
meta = with stdenv.lib; {

View File

@ -234,12 +234,12 @@ in
clion = buildClion rec {
name = "clion-${version}";
version = "2017.3.3"; /* updated by script */
version = "2017.3.4"; /* updated by script */
description = "C/C++ IDE. New. Intelligent. Cross-platform";
license = stdenv.lib.licenses.unfree;
src = fetchurl {
url = "https://download.jetbrains.com/cpp/CLion-${version}.tar.gz";
sha256 = "0j090863y68ppw34qkldm8h4lpbhalhqn70gb0ifj9bglf17503d"; /* updated by script */
sha256 = "1yxjvsp89mkk7gghbz5lqh7bbqi6l1ihg876c60bhqg0f5m98zcg"; /* updated by script */
};
wmClass = "jetbrains-clion";
update-channel = "CLion_Release"; # channel's id as in http://www.jetbrains.com/updates/updates.xml
@ -247,12 +247,12 @@ in
datagrip = buildDataGrip rec {
name = "datagrip-${version}";
version = "2017.3.5"; /* updated by script */
version = "2017.3.7"; /* updated by script */
description = "Your Swiss Army Knife for Databases and SQL";
license = stdenv.lib.licenses.unfree;
src = fetchurl {
url = "https://download.jetbrains.com/datagrip/${name}.tar.gz";
sha256 = "1hfy0mxdsvydjjklh8fwdz6f6qxajhngmcmyyzw0gdfhw6ldrv9c"; /* updated by script */
sha256 = "1pmkv1yd8xwqa4kdffg0vvk3whmnvrs9js7vnq4ilm39zzksqmpa"; /* updated by script */
};
wmClass = "jetbrains-datagrip";
update-channel = "datagrip_2017_3";
@ -260,12 +260,12 @@ in
goland = buildGoland rec {
name = "goland-${version}";
version = "2017.3.2"; /* updated by script */
version = "2017.3.3"; /* updated by script */
description = "Up and Coming Go IDE";
license = stdenv.lib.licenses.unfree;
src = fetchurl {
url = "https://download.jetbrains.com/go/${name}.tar.gz";
sha256 = "0bhvj1xqlpy58yq2s5nrhhaw53i913zpr135b1f6r5s22nvkigvm"; /* updated by script */
sha256 = "073wwhg58hkd8w4jazvwngl78gbhnmilm63jhpirr98jk7i7a4mq"; /* updated by script */
};
wmClass = "jetbrains-goland";
update-channel = "goland_release";
@ -273,12 +273,12 @@ in
idea-community = buildIdea rec {
name = "idea-community-${version}";
version = "2017.3.4"; /* updated by script */
version = "2017.3.5"; /* updated by script */
description = "Integrated Development Environment (IDE) by Jetbrains, community edition";
license = stdenv.lib.licenses.asl20;
src = fetchurl {
url = "https://download.jetbrains.com/idea/ideaIC-${version}.tar.gz";
sha256 = "15qsfirzmmjhwzkhx36zr4n0z5lhs021n2n3wim01g309ymr4gl9"; /* updated by script */
sha256 = "124rzc46f4bqyhllwyb26lkavh7zwbj62axrwhif34rayl2rcmpm"; /* updated by script */
};
wmClass = "jetbrains-idea-ce";
update-channel = "IDEA_Release";
@ -286,12 +286,12 @@ in
idea-ultimate = buildIdea rec {
name = "idea-ultimate-${version}";
version = "2017.3.4"; /* updated by script */
version = "2017.3.5"; /* updated by script */
description = "Integrated Development Environment (IDE) by Jetbrains, requires paid license";
license = stdenv.lib.licenses.unfree;
src = fetchurl {
url = "https://download.jetbrains.com/idea/ideaIU-${version}-no-jdk.tar.gz";
sha256 = "0f937s6zc1sv0gdlxf9kkc8l8rg78a5mxsfr2laab0g37rfy8c99"; /* updated by script */
sha256 = "10r3z37mhr8daxi14k011bhx3pxpx3lsj7jvikwll4wjlv1znhiw"; /* updated by script */
};
wmClass = "jetbrains-idea";
update-channel = "IDEA_Release";
@ -299,12 +299,12 @@ in
phpstorm = buildPhpStorm rec {
name = "phpstorm-${version}";
version = "2017.3.4"; /* updated by script */
version = "2017.3.5"; /* updated by script */
description = "Professional IDE for Web and PHP developers";
license = stdenv.lib.licenses.unfree;
src = fetchurl {
url = "https://download.jetbrains.com/webide/PhpStorm-${version}.tar.gz";
sha256 = "1hxkn0p0lp021bbysypwn8s69iggb76iwq38jv5a1ql7v5r1nwvd"; /* updated by script */
sha256 = "1mcq8n7rd074aghmiyqf1yg3qvs28w97kk4dygj2a46y3s1ha4cd"; /* updated by script */
};
wmClass = "jetbrains-phpstorm";
update-channel = "PS2017.3";
@ -312,12 +312,12 @@ in
pycharm-community = buildPycharm rec {
name = "pycharm-community-${version}";
version = "2017.3.3"; /* updated by script */
version = "2017.3.4"; /* updated by script */
description = "PyCharm Community Edition";
license = stdenv.lib.licenses.asl20;
src = fetchurl {
url = "https://download.jetbrains.com/python/${name}.tar.gz";
sha256 = "1j9pp8lfy62d9l3953d5mpij60s6sqyv3bcjimgy85hsrw570x3r"; /* updated by script */
sha256 = "027w73qrrj7aml2kdj3sx890q7jyj2jfnsg0pivi7i4kh8i11204"; /* updated by script */
};
wmClass = "jetbrains-pycharm-ce";
update-channel = "PyCharm_Release";
@ -325,12 +325,12 @@ in
pycharm-professional = buildPycharm rec {
name = "pycharm-professional-${version}";
version = "2017.3.3"; /* updated by script */
version = "2017.3.4"; /* updated by script */
description = "PyCharm Professional Edition";
license = stdenv.lib.licenses.unfree;
src = fetchurl {
url = "https://download.jetbrains.com/python/${name}.tar.gz";
sha256 = "180cwva49air4j7g409algrm4svvmcbapspf9als3djhazqmczgr"; /* updated by script */
sha256 = "0040ryx7kj64vwc10gvns43f1c97dvrgnwlmdm1m1506ldvaw0si"; /* updated by script */
};
wmClass = "jetbrains-pycharm";
update-channel = "PyCharm_Release";
@ -351,12 +351,12 @@ in
ruby-mine = buildRubyMine rec {
name = "ruby-mine-${version}";
version = "2017.3.2"; /* updated by script */
version = "2017.3.3"; /* updated by script */
description = "The Most Intelligent Ruby and Rails IDE";
license = stdenv.lib.licenses.unfree;
src = fetchurl {
url = "https://download.jetbrains.com/ruby/RubyMine-${version}.tar.gz";
sha256 = "1dc14k7i0nfhkzi0j53hysqzxcls29j487jr9kv1aqp81k544bdy"; /* updated by script */
sha256 = "1b0y8pcg8wwprm1swrl4laajnmx2c359bi7ahsyfjfprlzwx7wck"; /* updated by script */
};
wmClass = "jetbrains-rubymine";
update-channel = "rm2017.3";
@ -364,12 +364,12 @@ in
webstorm = buildWebStorm rec {
name = "webstorm-${version}";
version = "2017.3.4"; /* updated by script */
version = "2017.3.5"; /* updated by script */
description = "Professional IDE for Web and JavaScript development";
license = stdenv.lib.licenses.unfree;
src = fetchurl {
url = "https://download.jetbrains.com/webstorm/WebStorm-${version}.tar.gz";
sha256 = "0d5whqa6c76l6g5yj0yq8a3k1x6d9kxwnac1dwsiy5dbr5jk0cyj"; /* updated by script */
sha256 = "123v4m8p7acndj8p8frn1bjvycijlx904pa84ka9pv18c90qiym9"; /* updated by script */
};
wmClass = "jetbrains-webstorm";
update-channel = "WS_Release";

View File

@ -3,11 +3,11 @@
assert fltk.glSupport;
stdenv.mkDerivation {
name ="openexr_viewers-2.2.0";
name ="openexr_viewers-2.2.1";
src = fetchurl {
url = "mirror://savannah/openexr/openexr_viewers-2.2.0.tar.gz";
sha256 = "1s84vnas12ybx8zz0jcmpfbk9m4ab5bg2d3cglqwk3wys7jf4gzp";
url = "mirror://savannah/openexr/openexr_viewers-2.2.1.tar.gz";
sha256 = "1ixx2wbjp4rvsf7h3bkja010gl1ihjrcjzy7h20jnn47ikg12vj8";
};
configurePhase = ''

View File

@ -3,13 +3,13 @@
stdenv.mkDerivation rec {
name = "goxel-${version}";
version = "0.7.2";
version = "0.7.3";
src = fetchFromGitHub {
owner = "guillaumechereau";
repo = "goxel";
rev = "v${version}";
sha256 = "1d6waj8zz9iq3ddbi9wbpcnh200ajjy9x53xrj5bij01pb8jwskv";
sha256 = "114s1pbv3ixc2gzkg7n927hffd6ly5gg59izw4z6drgjcdhd7xj9";
};
nativeBuildInputs = [ scons pkgconfig wrapGAppsHook ];

View File

@ -1,23 +1,23 @@
{ fetchurl, stdenv, meson, ninja, gtk3, libexif, libgphoto2, libsoup, libxml2, vala, sqlite
, webkitgtk, pkgconfig, gnome3, gst_all_1, libgudev, libraw, glib, json-glib
, gettext, desktop-file-utils, gdk_pixbuf, librsvg, wrapGAppsHook
, itstool, libgdata }:
, gobjectIntrospection, itstool, libgdata }:
# for dependencies see https://wiki.gnome.org/Apps/Shotwell/BuildingAndInstalling
let
pname = "shotwell";
version = "0.27.4";
version = "0.28.0";
in stdenv.mkDerivation rec {
name = "${pname}-${version}";
src = fetchurl {
url = "mirror://gnome/sources/${pname}/${gnome3.versionBranch version}/${name}.tar.xz";
sha256 = "0g2vphhpxrljpy9sryfsgaayix807i1i9plj9bay72dk0zphqab2";
sha256 = "1d797nmlz9gs6ri0h65b76s40ss6ma6h6405xqx03lhg5xni3kmg";
};
nativeBuildInputs = [
meson ninja vala pkgconfig itstool gettext desktop-file-utils wrapGAppsHook
meson ninja vala pkgconfig itstool gettext desktop-file-utils wrapGAppsHook gobjectIntrospection
];
buildInputs = [

View File

@ -4,13 +4,13 @@
stdenv.mkDerivation rec {
name = "CopyQ-${version}";
version = "3.1.2";
version = "3.3.0";
src = fetchFromGitHub {
owner = "hluk";
repo = "CopyQ";
rev = "v${version}";
sha256 = "0gdx1bqqqr4fk6wcrxqm9li6z48j1w84wjwyjpzp2cjzg96bp6bl";
sha256 = "0j46h87ifinkydi0m725p422m9svk3dpcz8dnrci4mxx0inn6qs3";
};
nativeBuildInputs = [ cmake ];

View File

@ -7,14 +7,14 @@ let
in
python3Packages.buildPythonApplication rec {
version = "3.1.2";
version = "3.1.6";
name = "electron-cash-${version}";
src = fetchurl {
url = "https://electroncash.org/downloads/${version}/win-linux/ElectronCash-${version}.tar.gz";
# Verified using official SHA-1 and signature from
# https://github.com/fyookball/keys-n-hashes
sha256 = "18h44jfbc2ksj34hdzgszvvq82xi28schl3wp3lkq9fjp7ny0mf3";
sha256 = "062k5iw0jcp10zxrffvgiyfg51c5xzs7gmm638icx01yy67d58dm";
};
propagatedBuildInputs = with python3Packages; [

View File

@ -0,0 +1,37 @@
{ stdenv, fetchurl, meson, ninja, pkgconfig, vala, gettext
, libxml2, desktop-file-utils, wrapGAppsHook
, glib, gtk3, libgtop, gnome3 }:
let
pname = "gnome-usage";
version = "3.28.0";
in stdenv.mkDerivation rec {
name = "${pname}-${version}";
src = fetchurl {
url = "mirror://gnome/sources/${pname}/${gnome3.versionBranch version}/${name}.tar.xz";
sha256 = "0130bwinpkz307nalw6ndi5mk38k5g6jna4gbw2916d54df6a4nq";
};
nativeBuildInputs = [ meson ninja pkgconfig vala gettext libxml2 desktop-file-utils wrapGAppsHook ];
buildInputs = [ glib gtk3 libgtop gnome3.defaultIconTheme ];
postPatch = ''
chmod +x build-aux/meson/postinstall.sh
patchShebangs build-aux/meson/postinstall.sh
'';
passthru = {
updateScript = gnome3.updateScript {
packageName = pname;
};
};
meta = with stdenv.lib; {
description = "";
license = licenses.gpl3;
platforms = platforms.linux;
maintainers = gnome3.maintainers;
};
}

View File

@ -8,13 +8,13 @@ assert pulseaudioSupport -> libpulseaudio != null;
stdenv.mkDerivation rec {
name = "gqrx-${version}";
version = "2.10";
version = "2.11.1";
src = fetchFromGitHub {
owner = "csete";
repo = "gqrx";
rev = "v${version}";
sha256 = "1qc944sn1kjdnhdhcsdc39764vqcryk86808xxl49vy8sznqr0mf";
sha256 = "06l90m3lx05290lvgghrgqrcg6732p69dvv3bsyw7cyxy3fvdhm6";
};
nativeBuildInputs = [ cmake ];

View File

@ -10,7 +10,7 @@
with lib;
let
pname = "orca";
version = "3.26.0";
version = "3.27.91";
in buildPythonApplication rec {
name = "${pname}-${version}";
@ -18,7 +18,7 @@ in buildPythonApplication rec {
src = fetchurl {
url = "mirror://gnome/sources/${pname}/${gnome3.versionBranch version}/${name}.tar.xz";
sha256 = "0xk5k9cbswymma60nrfj00dl97wypx59c107fb1hwi75gm0i07a7";
sha256 = "0phlkn6ffqncvsg7ph3l4xw388baddav9s4pbkvqqa8myca9g4wg";
};
patches = [

View File

@ -1,23 +0,0 @@
From a79d2dcd1b6275904193454fb9d68614813929f3 Mon Sep 17 00:00:00 2001
From: Sam Parkinson <sam@sam.today>
Date: Mon, 27 Nov 2017 11:17:35 +1100
Subject: [PATCH] Remove post install script - handle in nix config instead
---
meson.build | 2 --
1 file changed, 2 deletions(-)
diff --git a/meson.build b/meson.build
index fc45296..2227f1f 100644
--- a/meson.build
+++ b/meson.build
@@ -53,5 +53,3 @@ configure_file(
configuration: conf,
install_dir: bindir
)
-
-meson.add_install_script('meson_post_install.py')
--
2.15.0

View File

@ -1,5 +1,5 @@
{ stdenv, fetchgit, intltool, itstool, meson, ninja, pkgconfig, wrapGAppsHook
, git, glib, glib-networking, gsettings-desktop-schemas, gst_all_1, gtk3
, glib, glib-networking, gsettings-desktop-schemas, gst_all_1, gtk3, gobjectIntrospection
, gtkspell3, libsecret, python36, python36Packages, webkitgtk }:
stdenv.mkDerivation rec {
@ -7,7 +7,7 @@ stdenv.mkDerivation rec {
version = "0.9.16";
src = fetchgit {
url = "https://gitlab.gnome.org/gnumdk/eolie";
url = https://gitlab.gnome.org/gnumdk/eolie;
rev = version;
sha256 = "0mvhr6hy4nx7xaq9r9qp5rb0y293kjjryw5ykzb473cr3iwzk25b";
};
@ -19,10 +19,11 @@ stdenv.mkDerivation rec {
ninja
pkgconfig
wrapGAppsHook
gobjectIntrospection
];
buildInputs = [
git # required to download ad blocking DB
glib
glib-networking
gsettings-desktop-schemas
gst_all_1.gstreamer
@ -47,20 +48,18 @@ stdenv.mkDerivation rec {
wrapPrefixVariables = [ "PYTHONPATH" ];
enableParallelBuilding = true;
postInstall = ''
${glib.dev}/bin/glib-compile-schemas $out/share/glib-2.0/schemas
postPatch = ''
chmod +x meson_post_install.py # patchShebangs requires executable file
patchShebangs meson_post_install.py
'';
patches = [
./0001-Remove-post-install-script-handle-in-nix-config-inst.patch
./0001-Extend-the-python-path-rather-than-replacing-it.patch
];
meta = with stdenv.lib; {
description = "A new GNOME web browser";
homepage = https://gitlab.gnome.org/gnumdk/eolie;
homepage = https://wiki.gnome.org/Apps/Eolie;
license = licenses.gpl3;
maintainers = [ maintainers.samdroid-apps ];
platforms = platforms.linux;

View File

@ -1,5 +1,5 @@
{ stdenv, fetchFromGitHub, gtk3, json-glib, sqlite, libsoup, gettext, vala_0_32
, automake, autoconf, libtool, pkgconfig, gnome3, gst_all_1, wrapGAppsHook
{ stdenv, fetchFromGitHub, glib, gtk3, json-glib, sqlite, libsoup, gettext, vala_0_40
, meson, ninja, pkgconfig, gnome3, gst_all_1, wrapGAppsHook, gobjectIntrospection
, glib-networking }:
stdenv.mkDerivation rec {
@ -13,20 +13,24 @@ stdenv.mkDerivation rec {
sha256 = "0qjffsmg1hm64dgsbkfwzbzy9q4xa1q4fh4h8ni8a2b1p3h80x7n";
};
preConfigure = ''
./autogen.sh
'';
nativeBuildInputs = [ automake autoconf libtool pkgconfig wrapGAppsHook ];
nativeBuildInputs = [
meson ninja vala_0_40 pkgconfig wrapGAppsHook
gobjectIntrospection # for setup hook
];
buildInputs = [
gtk3 json-glib sqlite libsoup gettext vala_0_32 gnome3.dconf gnome3.gspell glib-networking
glib gtk3 json-glib sqlite libsoup gettext gnome3.dconf gnome3.gspell glib-networking
] ++ (with gst_all_1; [ gstreamer gst-plugins-base gst-plugins-good (gst-plugins-bad.override { gtkSupport = true; }) gst-libav ]);
postPatch = ''
chmod +x data/meson_post_install.py # patchShebangs requires executable file
patchShebangs data/meson_post_install.py
'';
meta = {
description = "Native Gtk+ Twitter client for the Linux desktop";
longDescription = "Corebird is a modern, easy and fun Twitter client.";
homepage = http://corebird.baedert.org;
homepage = https://corebird.baedert.org/;
license = stdenv.lib.licenses.gpl3;
platforms = stdenv.lib.platforms.linux;
maintainers = [ stdenv.lib.maintainers.jonafato ];

View File

@ -6,10 +6,16 @@ in {
stable = true;
version = "1.2.6";
sha256Hash = "15g0m2wwqfp13wd7j31p8cx1kpylx5m8ljaksnsqdkgyr9l1ar8w";
# svn log svn://svn.archlinux.org/community/telegram-desktop/trunk
archPatchesRevision = "283641";
archPatchesHash = "0v4213vrabfa2dmwnqgb8n6hl54938mw9glaim3amyslxphmdrfb";
};
preview = mkTelegram {
stable = false;
version = "1.2.12";
sha256Hash = "1b9qc4a14jqjl30z4bjh1zbqsmgl25kdp0hj8p7xbj34zlkzfw5m";
# svn ls -v --depth empty svn://svn.archlinux.org/community/telegram-desktop/trunk
archPatchesRevision = "308775";
archPatchesHash = "0ggx64kdadrbd4bw5z0wi0fdg6hni7n9nxz9dp56p8hlw1wgpsls";
};
}

View File

@ -1,6 +1,6 @@
{ stable, version, sha256Hash }:
{ stable, version, sha256Hash, archPatchesRevision, archPatchesHash }:
{ mkDerivation, lib, fetchgit, fetchpatch
{ mkDerivation, lib, fetchgit, fetchsvn
, pkgconfig, pythonPackages, cmake, makeWrapper
, qtbase, qtimageformats, gtk3, libappindicator-gtk3, libnotify
, dee, ffmpeg, openalSoft, minizip, libopus, alsaLib, libpulseaudio, range-v3
@ -12,7 +12,7 @@ mkDerivation rec {
name = "telegram-desktop-${version}";
inherit version;
# Submodules
# Telegram-Desktop with submodules
src = fetchgit {
url = "git://github.com/telegramdesktop/tdesktop";
rev = "v${version}";
@ -20,29 +20,21 @@ mkDerivation rec {
fetchSubmodules = true;
};
# TODO: Not active anymore.
tgaur = fetchgit {
url = "https://aur.archlinux.org/telegram-desktop-systemqt.git";
rev = "1ed27ce40913b9e6e87faf7a2310660c2790b98e";
sha256 = "1i7ipqgisaw54g1nbg2cvpbx89g9gyjjb3sak1486pxsasp1qhyc";
# Arch patches (svn export telegram-desktop/trunk)
archPatches = fetchsvn {
url = "svn://svn.archlinux.org/community/telegram-desktop/trunk";
rev = archPatchesRevision;
sha256 = archPatchesHash;
};
patches = [ (if stable
then (fetchpatch {
name = "tdesktop.patch";
url = "https://git.archlinux.org/svntogit/community.git/plain/repos/community-x86_64/tdesktop.patch?h=packages/telegram-desktop&id=f0eefac36f529295f8b065a14b6d5f1a51d7614d";
sha256 = "1a4wap5xnp6zn4913r3zdpy6hvkcfxcy4zzimy7fwzp7iwy20iqa";
})
else (fetchpatch {
name = "tdesktop.patch";
url = "https://git.archlinux.org/svntogit/community.git/plain/repos/community-x86_64/tdesktop.patch?h=packages/telegram-desktop&id=59ca8bd4428cf2fb3f02d7f1e1a5558545a4c075";
sha256 = "0jj2kifzx83f9nhk30csy2373avpyx0ci70a8bc7j2dm3wxym50l";
}))
];
# TODO: libtgvoip.patch no-gtk2.patch
patches = [ "${archPatches}/tdesktop.patch" ];
postPatch = ''
substituteInPlace Telegram/SourceFiles/platform/linux/linux_libs.cpp --replace '"appindicator"' '"${libappindicator-gtk3}/lib/libappindicator3.so"'
substituteInPlace Telegram/SourceFiles/platform/linux/linux_libnotify.cpp --replace '"notify"' '"${libnotify}/lib/libnotify.so"'
substituteInPlace Telegram/SourceFiles/platform/linux/linux_libs.cpp \
--replace '"appindicator"' '"${libappindicator-gtk3}/lib/libappindicator3.so"'
substituteInPlace Telegram/SourceFiles/platform/linux/linux_libnotify.cpp \
--replace '"notify"' '"${libnotify}/lib/libnotify.so"'
'';
nativeBuildInputs = [ pkgconfig pythonPackages.gyp cmake makeWrapper ];
@ -61,8 +53,8 @@ mkDerivation rec {
];
NIX_CFLAGS_COMPILE = [
"-DTDESKTOP_DISABLE_AUTOUPDATE"
"-DTDESKTOP_DISABLE_CRASH_REPORTS"
"-DTDESKTOP_DISABLE_AUTOUPDATE"
"-DTDESKTOP_DISABLE_REGISTER_CUSTOM_SCHEME"
"-I${minizip}/include/minizip"
# See Telegram/gyp/qt.gypi
@ -74,13 +66,12 @@ mkDerivation rec {
"-I${getDev libopus}/include/opus"
"-I${getDev alsaLib}/include/alsa"
"-I${getDev libpulseaudio}/include/pulse"
]) [ "QtCore" "QtGui" "QtDBus" ];
]) [ "QtCore" "QtGui" "QtDBus" ];
CPPFLAGS = NIX_CFLAGS_COMPILE;
preConfigure = ''
pushd "Telegram/ThirdParty/libtgvoip"
patch -Np1 -i "${tgaur}/libtgvoip.patch"
patch -Np1 -i "${archPatches}/libtgvoip.patch"
popd
sed -i Telegram/gyp/telegram_linux.gypi \
@ -102,22 +93,23 @@ mkDerivation rec {
--depth=Telegram/gyp \
--generator-output=../.. \
-Goutput_dir=out \
--format=cmake \
--format=cmake \
Telegram/gyp/Telegram.gyp
cd out/Release
NUM=$((`wc -l < CMakeLists.txt` - 2))
sed -i "$NUM r $tgaur/CMakeLists.inj" CMakeLists.txt
sed -i "$NUM r $archPatches/CMakeLists.inj" CMakeLists.txt
export ASM=$(type -p gcc)
'';
installPhase = ''
install -Dm755 Telegram $out/bin/telegram-desktop
mkdir -p $out/share/applications $out/share/kde4/services
sed "s,/usr/bin,$out/bin,g" $tgaur/telegram-desktop.desktop > $out/share/applications/telegram-desktop.desktop
sed "s,/usr/bin,$out/bin,g" $tgaur/tg.protocol > $out/share/kde4/services/tg.protocol
install -m444 "$src/lib/xdg/telegramdesktop.desktop" "$out/share/applications/telegram-desktop.desktop"
sed "s,/usr/bin,$out/bin,g" $archPatches/tg.protocol > $out/share/kde4/services/tg.protocol
for icon_size in 16 32 48 64 128 256 512; do
install -Dm644 "../../../Telegram/Resources/art/icon''${icon_size}.png" "$out/share/icons/hicolor/''${icon_size}x''${icon_size}/apps/telegram-desktop.png"
done

View File

@ -18,7 +18,7 @@ buildPythonApplication rec {
];
buildInputs = [
gtk3 (librsvg.override { enableIntrospection = true; })
gtk3 librsvg
libnotify
# Schemas with proxy configuration
gnome3.gsettings-desktop-schemas

View File

@ -1,10 +1,10 @@
{stdenv, fetchurl, gfortran, openblas}:
stdenv.mkDerivation rec {
name = "JAGS-4.1.0";
name = "JAGS-4.3.0";
src = fetchurl {
url = "mirror://sourceforge/mcmc-jags/${name}.tar.gz";
sha256 = "08pmrnbwibc0brgn5cx860jcl0s2xaw4amw7g45649r1bcdz7v25";
sha256 = "1z3icccg2ic56vmhyrpinlsvpq7kcaflk1731rgpvz9bk1bxvica";
};
buildInputs = [gfortran openblas];
configureFlags = [ "--with-blas=-lopenblas" "--with-lapack=-lopenblas" ];

View File

@ -1,11 +1,18 @@
source 'https://rubygems.org'
gem 'github-linguist', '~> 4.7.0', require: 'linguist'
gem 'gitaly-proto', '~> 0.59.0', require: 'gitaly'
gem 'activesupport'
gem 'gitlab-markup', '~> 1.6.2'
gem 'gitaly-proto', '~> 0.83.0', require: 'gitaly'
gem 'activesupport', '~> 5.0.2'
gem 'rdoc', '~> 4.2'
gem 'gollum-lib', '~> 4.2', require: false
gem 'gollum-rugged_adapter', '~> 0.4.4', require: false
gem 'grpc', '~> 1.8.0'
# Locked until https://github.com/google/protobuf/issues/4210 is closed
gem 'google-protobuf', '= 3.5.1'
group :development, :test do
gem 'gitlab-styles', '~> 2.0.0', require: false
gem 'rspec', require: false
end

View File

@ -1,23 +1,23 @@
GEM
remote: https://rubygems.org/
specs:
activesupport (5.0.0.1)
activesupport (5.0.6)
concurrent-ruby (~> 1.0, >= 1.0.2)
i18n (~> 0.7)
minitest (~> 5.1)
tzinfo (~> 1.1)
addressable (2.5.1)
public_suffix (~> 2.0, >= 2.0.2)
addressable (2.5.2)
public_suffix (>= 2.0.2, < 4.0)
ast (2.3.0)
charlock_holmes (0.7.5)
concurrent-ruby (1.0.5)
diff-lcs (1.3)
escape_utils (1.1.1)
faraday (0.12.2)
faraday (0.14.0)
multipart-post (>= 1.2, < 3)
gemojione (3.3.0)
json
gitaly-proto (0.59.0)
gitaly-proto (0.83.0)
google-protobuf (~> 3.1)
grpc (~> 1.0)
github-linguist (4.7.6)
@ -31,6 +31,7 @@ GEM
diff-lcs (~> 1.1)
mime-types (>= 1.16)
posix-spawn (~> 0.3)
gitlab-markup (1.6.3)
gitlab-styles (2.0.0)
rubocop (~> 0.49)
rubocop-gitlab-security (~> 0.1.0)
@ -48,21 +49,24 @@ GEM
gollum-rugged_adapter (0.4.4)
mime-types (>= 1.15)
rugged (~> 0.25)
google-protobuf (3.4.0.2)
googleauth (0.5.3)
google-protobuf (3.5.1)
googleapis-common-protos-types (1.0.1)
google-protobuf (~> 3.0)
googleauth (0.6.2)
faraday (~> 0.12)
jwt (~> 1.4)
jwt (>= 1.4, < 3.0)
logging (~> 2.0)
memoist (~> 0.12)
multi_json (~> 1.11)
os (~> 0.9)
signet (~> 0.7)
grpc (1.6.0)
grpc (1.8.7)
google-protobuf (~> 3.1)
googleauth (~> 0.5.1)
googleapis-common-protos-types (~> 1.0.0)
googleauth (>= 0.5.1, < 0.7)
i18n (0.8.1)
json (2.1.0)
jwt (1.5.6)
jwt (2.1.0)
little-plugger (1.1.4)
logging (2.2.2)
little-plugger (~> 1.1)
@ -73,7 +77,7 @@ GEM
mime-types-data (3.2016.0521)
mini_portile2 (2.3.0)
minitest (5.9.1)
multi_json (1.12.1)
multi_json (1.13.1)
multipart-post (2.0.0)
nokogiri (1.8.1)
mini_portile2 (~> 2.3.0)
@ -83,11 +87,25 @@ GEM
ast (~> 2.2)
posix-spawn (0.3.13)
powerpack (0.1.1)
public_suffix (2.0.5)
public_suffix (3.0.1)
rainbow (2.2.2)
rake
rake (12.1.0)
rdoc (4.3.0)
rouge (2.2.1)
rspec (3.6.0)
rspec-core (~> 3.6.0)
rspec-expectations (~> 3.6.0)
rspec-mocks (~> 3.6.0)
rspec-core (3.6.0)
rspec-support (~> 3.6.0)
rspec-expectations (3.6.0)
diff-lcs (>= 1.2.0, < 2.0)
rspec-support (~> 3.6.0)
rspec-mocks (3.6.0)
diff-lcs (>= 1.2.0, < 2.0)
rspec-support (~> 3.6.0)
rspec-support (3.6.0)
rubocop (0.50.0)
parallel (~> 1.10)
parser (>= 2.3.3.1, < 3.0)
@ -103,10 +121,10 @@ GEM
rugged (0.26.0)
sanitize (2.1.0)
nokogiri (>= 1.4.4)
signet (0.7.3)
signet (0.8.1)
addressable (~> 2.3)
faraday (~> 0.9)
jwt (~> 1.5)
jwt (>= 1.5, < 3.0)
multi_json (~> 1.10)
stringex (2.7.1)
thread_safe (0.3.6)
@ -118,12 +136,17 @@ PLATFORMS
ruby
DEPENDENCIES
activesupport
gitaly-proto (~> 0.59.0)
activesupport (~> 5.0.2)
gitaly-proto (~> 0.83.0)
github-linguist (~> 4.7.0)
gitlab-markup (~> 1.6.2)
gitlab-styles (~> 2.0.0)
gollum-lib (~> 4.2)
gollum-rugged_adapter (~> 0.4.4)
google-protobuf (= 3.5.1)
grpc (~> 1.8.0)
rdoc (~> 4.2)
rspec
BUNDLED WITH
1.16.0
1.16.1

View File

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

View File

@ -3,19 +3,19 @@
dependencies = ["concurrent-ruby" "i18n" "minitest" "tzinfo"];
source = {
remotes = ["https://rubygems.org"];
sha256 = "1vgjr48yiynwf9rh2nsxa8w134na0805l40chf9g9scii9k70rj9";
sha256 = "0g85lqq0smj71g8a2dxb54ajjzw59c9snana4p61knryc83q3yg6";
type = "gem";
};
version = "5.0.0.1";
version = "5.0.6";
};
addressable = {
dependencies = ["public_suffix"];
source = {
remotes = ["https://rubygems.org"];
sha256 = "1i8q32a4gr0zghxylpyy7jfqwxvwrivsxflg9mks6kx92frh75mh";
sha256 = "0viqszpkggqi8hq87pqp0xykhvz60g99nwmkwsb0v45kc2liwxvk";
type = "gem";
};
version = "2.5.1";
version = "2.5.2";
};
ast = {
source = {
@ -61,10 +61,10 @@
dependencies = ["multipart-post"];
source = {
remotes = ["https://rubygems.org"];
sha256 = "157c4cmb5g1b3ny6k9qf9z57rfijl54fcq3hnqqf6g31g1m096b2";
sha256 = "1c3x3s8vb5nf7inyfvhdxwa4q3swmnacpxby6pish5fgmhws7zrr";
type = "gem";
};
version = "0.12.2";
version = "0.14.0";
};
gemojione = {
dependencies = ["json"];
@ -79,10 +79,10 @@
dependencies = ["google-protobuf" "grpc"];
source = {
remotes = ["https://rubygems.org"];
sha256 = "0s86126iqhbmkix6zs357ixlc1syyxmwk2blaimsav7f0x9swy82";
sha256 = "0z3asy104q36sshq9zhmgcm32sg8qr8jvy0mi19nakkq7prrkwqv";
type = "gem";
};
version = "0.59.0";
version = "0.83.0";
};
github-linguist = {
dependencies = ["charlock_holmes" "escape_utils" "mime-types" "rugged"];
@ -110,6 +110,14 @@
};
version = "2.8.2";
};
gitlab-markup = {
source = {
remotes = ["https://rubygems.org"];
sha256 = "1pvx257azpr00yvb74lgjpgnj72nwyd29l9a18280rgmp4cjniki";
type = "gem";
};
version = "1.6.3";
};
gitlab-styles = {
dependencies = ["rubocop" "rubocop-gitlab-security" "rubocop-rspec"];
source = {
@ -149,28 +157,37 @@
google-protobuf = {
source = {
remotes = ["https://rubygems.org"];
sha256 = "1jh8axm5m75rvdf2i3s24pmi7p613armh9vk3p1d0ryfx159mqkl";
sha256 = "0s8ijd9wdrkqwsb6nasrsv7f9i5im2nyax7f7jlb5y9vh8nl98qi";
type = "gem";
};
version = "3.4.0.2";
version = "3.5.1";
};
googleapis-common-protos-types = {
dependencies = ["google-protobuf"];
source = {
remotes = ["https://rubygems.org"];
sha256 = "0yf10s7w8wpa49hc86z7z2fkn9yz7j2njz0n8xmqb24ji090z4ck";
type = "gem";
};
version = "1.0.1";
};
googleauth = {
dependencies = ["faraday" "jwt" "logging" "memoist" "multi_json" "os" "signet"];
source = {
remotes = ["https://rubygems.org"];
sha256 = "1xpmvrzhczak25nm0k3r9aa083lmfnzi94mir3g1xyrgzz66vxli";
sha256 = "08z4zfj9cwry13y8c2w5p4xylyslxxjq4wahd95bk1ddl5pknd4f";
type = "gem";
};
version = "0.5.3";
version = "0.6.2";
};
grpc = {
dependencies = ["google-protobuf" "googleauth"];
dependencies = ["google-protobuf" "googleapis-common-protos-types" "googleauth"];
source = {
remotes = ["https://rubygems.org"];
sha256 = "056ipqai887x5jpbgcc215kdi0lfqjzcjbx3hx11cjrfww01zc52";
sha256 = "02b80pyg4rgkiafyh1jqnfh6xp9abpd1x0a9c2h98f0851scw28b";
type = "gem";
};
version = "1.6.0";
version = "1.8.7";
};
i18n = {
source = {
@ -191,10 +208,10 @@
jwt = {
source = {
remotes = ["https://rubygems.org"];
sha256 = "124zz1142bi2if7hl5pcrcamwchv4icyr5kaal9m2q6wqbdl6aw4";
sha256 = "1w0kaqrbl71cq9sbnixc20x5lqah3hs2i93xmhlfdg2y3by7yzky";
type = "gem";
};
version = "1.5.6";
version = "2.1.0";
};
little-plugger = {
source = {
@ -257,10 +274,10 @@
multi_json = {
source = {
remotes = ["https://rubygems.org"];
sha256 = "1wpc23ls6v2xbk3l1qncsbz16npvmw8p0b38l8czdzri18mp51xk";
sha256 = "1rl0qy4inf1mp8mybfk56dfga0mvx97zwpmq5xmiwl5r770171nv";
type = "gem";
};
version = "1.12.1";
version = "1.13.1";
};
multipart-post = {
source = {
@ -323,10 +340,10 @@
public_suffix = {
source = {
remotes = ["https://rubygems.org"];
sha256 = "040jf98jpp6w140ghkhw2hvc1qx41zvywx5gj7r2ylr1148qnj7q";
sha256 = "0mvzd9ycjw8ydb9qy3daq3kdzqs2vpqvac4dqss6ckk4rfcjc637";
type = "gem";
};
version = "2.0.5";
version = "3.0.1";
};
rainbow = {
dependencies = ["rake"];
@ -345,6 +362,14 @@
};
version = "12.1.0";
};
rdoc = {
source = {
remotes = ["https://rubygems.org"];
sha256 = "13ba2mhqqcsp3k97x3iz9x29xk26rv4561lfzzzibcy41vvj1n4c";
type = "gem";
};
version = "4.3.0";
};
rouge = {
source = {
remotes = ["https://rubygems.org"];
@ -353,6 +378,50 @@
};
version = "2.2.1";
};
rspec = {
dependencies = ["rspec-core" "rspec-expectations" "rspec-mocks"];
source = {
remotes = ["https://rubygems.org"];
sha256 = "1nd50hycab2a2vdah9lxi585g8f63jxjvmzmxqyln51grxwx9hzb";
type = "gem";
};
version = "3.6.0";
};
rspec-core = {
dependencies = ["rspec-support"];
source = {
remotes = ["https://rubygems.org"];
sha256 = "18np8wyw2g79waclpaacba6nd7x60ixg07ncya0j0qj1z9b37grd";
type = "gem";
};
version = "3.6.0";
};
rspec-expectations = {
dependencies = ["diff-lcs" "rspec-support"];
source = {
remotes = ["https://rubygems.org"];
sha256 = "028ifzf9mqp3kxx40q1nbwj40g72g9zk0wr78l146phblkv96w0a";
type = "gem";
};
version = "3.6.0";
};
rspec-mocks = {
dependencies = ["diff-lcs" "rspec-support"];
source = {
remotes = ["https://rubygems.org"];
sha256 = "0nv6jkxy24sag1i9w9wi3850k6skk2fm6yhcrgnmlz6vmwxvizp8";
type = "gem";
};
version = "3.6.0";
};
rspec-support = {
source = {
remotes = ["https://rubygems.org"];
sha256 = "050paqqpsml8w88nf4a15zbbj3vvm471zpv73sjfdnz7w21wnypb";
type = "gem";
};
version = "3.6.0";
};
rubocop = {
dependencies = ["parallel" "parser" "powerpack" "rainbow" "ruby-progressbar" "unicode-display_width"];
source = {
@ -409,10 +478,10 @@
dependencies = ["addressable" "faraday" "jwt" "multi_json"];
source = {
remotes = ["https://rubygems.org"];
sha256 = "149668991xqibvm8kvl10kzy891yd6f994b4gwlx6c3vl24v5jq6";
sha256 = "0js81lxqirdza8gf2f6avh11fny49ygmxfi1qx7jp8l9wrhznbkv";
type = "gem";
};
version = "0.7.3";
version = "0.8.1";
};
stringex = {
source = {

View File

@ -1,14 +1,14 @@
{ stdenv, ruby, bundler, fetchFromGitLab, go }:
stdenv.mkDerivation rec {
version = "5.10.2";
version = "6.0.3";
name = "gitlab-shell-${version}";
srcs = fetchFromGitLab {
owner = "gitlab-org";
repo = "gitlab-shell";
rev = "v${version}";
sha256 = "16lwnzsppql7pkf8fka6cwkghdr57g225zvln9ii29w7nzz1hvaf";
sha256 = "073y41d9sqy6l6dxbiml6c13fq98qcb0jf86w9slld1mcw19cmrk";
};
buildInputs = [ ruby bundler go ];
@ -30,29 +30,9 @@ stdenv.mkDerivation rec {
# code by default which doesn't work in nixos because it's a
# read-only filesystem
postPatch = ''
substituteInPlace lib/gitlab_config.rb --replace\
"File.join(ROOT_PATH, 'config.yml')"\
"ENV['GITLAB_SHELL_CONFIG_PATH']"
# Note that we're running gitlab-shell from current-system/sw
# because otherwise updating gitlab-shell won't be reflected in
# the hardcoded path of the authorized-keys file:
substituteInPlace lib/gitlab_keys.rb --replace\
"\"#{ROOT_PATH}/bin/gitlab-shell"\
"\"GITLAB_SHELL_CONFIG_PATH=#{ENV['GITLAB_SHELL_CONFIG_PATH']} /run/current-system/sw/bin/gitlab-shell"
# We're setting GITLAB_SHELL_CONFIG_PATH in the ssh authorized key
# environment because we need it in gitlab_configrb
# . unsetenv_others will remove that so we're not doing it for
# now.
#
# TODO: Are there any security implications? The commit adding
# unsetenv_others didn't mention anything...
#
# Kernel::exec({'PATH' => ENV['PATH'], 'LD_LIBRARY_PATH' => ENV['LD_LIBRARY_PATH'], 'GL_ID' => ENV['GL_ID']}, *args, unsetenv_others: true)
substituteInPlace lib/gitlab_shell.rb --replace\
" *args, unsetenv_others: true)"\
" *args)"
substituteInPlace lib/gitlab_config.rb --replace \
"File.join(ROOT_PATH, 'config.yml')" \
"'/run/gitlab/shell-config.yml'"
'';
meta = with stdenv.lib; {

View File

@ -1,12 +1,11 @@
diff --git a/support/go_build.rb b/support/go_build.rb
index 82f94d2..40ba35e 100644
index 30a6b71..46b4dfa 100644
--- a/support/go_build.rb
+++ b/support/go_build.rb
@@ -25,9 +25,8 @@ module GoBuild
def run!(env, cmd)
@@ -26,8 +26,8 @@ module GoBuild
raise "env must be a hash" unless env.is_a?(Hash)
raise "cmd must be an array" unless cmd.is_a?(Array)
-
- if !system(env, *cmd)
- abort "command failed: #{env.inspect} #{cmd.join(' ')}"
- end

View File

@ -1,30 +1,3 @@
diff --git a/lib/gitlab_projects.rb b/lib/gitlab_projects.rb
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_metrics'
class GitlabProjects
- GLOBAL_HOOKS_DIRECTORY = File.join(ROOT_PATH, 'hooks')
+ GLOBAL_HOOKS_DIRECTORY = ENV['GITLAB_SHELL_HOOKS_PATH'] || File.join(ROOT_PATH, 'hooks')
# Project name is a directory name for repository with .git at the end
# It may be namespaced or not. Like repo.git or gitlab/repo.git
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
@@ -188,7 +188,8 @@ class GitlabShell
end
# We use 'chdir: ROOT_PATH' to let the next executable know where config.yml is.
- Kernel::exec(env, *args, unsetenv_others: true, chdir: ROOT_PATH)
+ # Except we don't, because we're already in the right directory on nixos !
+ Kernel::exec(env, *args, unsetenv_others: true)
end
def api
diff --git a/go/internal/config/config.go b/go/internal/config/config.go
index c57b4de..88cfc95 100644
--- a/go/internal/config/config.go
@ -34,7 +7,21 @@ index c57b4de..88cfc95 100644
cfg.RootDir = dir
- configBytes, err := ioutil.ReadFile(path.Join(cfg.RootDir, configFile))
+ configBytes, err := ioutil.ReadFile(os.Getenv("GITLAB_SHELL_CONFIG_PATH"))
+ configBytes, err := ioutil.ReadFile("/run/gitlab/shell-config.yml")
if err != nil {
return nil, err
}
diff --git a/lib/gitlab_shell.rb b/lib/gitlab_shell.rb
index 1452f95..2b40327 100644
--- a/lib/gitlab_shell.rb
+++ b/lib/gitlab_shell.rb
@@ -180,7 +180,8 @@ class GitlabShell
end
# We use 'chdir: ROOT_PATH' to let the next executable know where config.yml is.
- Kernel::exec(env, *args, unsetenv_others: true, chdir: ROOT_PATH)
+ # Except we don't, because we're already in the right directory on nixos!
+ Kernel::exec(env, *args, unsetenv_others: true)
end
def api

View File

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

View File

@ -12,7 +12,7 @@ gem 'sprockets', '~> 3.7.0'
gem 'default_value_for', '~> 3.0.0'
# Supported DBs
gem 'mysql2', '~> 0.4.5', group: :mysql
gem 'mysql2', '~> 0.4.10', group: :mysql
gem 'pg', '~> 0.18.2', group: :postgres
gem 'rugged', '~> 0.26.0'
@ -25,7 +25,7 @@ gem 'devise', '~> 4.2'
gem 'doorkeeper', '~> 4.2.0'
gem 'doorkeeper-openid_connect', '~> 1.2.0'
gem 'omniauth', '~> 1.4.2'
gem 'omniauth-auth0', '~> 1.4.1'
gem 'omniauth-auth0', '~> 2.0.0'
gem 'omniauth-azure-oauth2', '~> 0.0.9'
gem 'omniauth-cas3', '~> 1.1.4'
gem 'omniauth-facebook', '~> 4.0.0'
@ -69,7 +69,15 @@ gem 'net-ldap'
# Git Wiki
# Required manually in config/initializers/gollum.rb to control load order
# Before updating this gem, check if
# https://github.com/gollum/gollum-lib/pull/292 has been merged.
# If it has, then remove the monkey patch for update_page, rename_page and raw_data_in_committer
# in config/initializers/gollum.rb
gem 'gollum-lib', '~> 4.2', require: false
# Before updating this gem, check if
# https://github.com/gollum/rugged_adapter/pull/28 has been merged.
# If it has, then remove the monkey patch for tree_entry in config/initializers/gollum.rb
gem 'gollum-rugged_adapter', '~> 0.4.4', require: false
# Language detection
@ -78,7 +86,7 @@ gem 'github-linguist', '~> 4.7.0', require: 'linguist'
# API
gem 'grape', '~> 1.0'
gem 'grape-entity', '~> 0.6.0'
gem 'rack-cors', '~> 0.4.0', require: 'rack/cors'
gem 'rack-cors', '~> 1.0.0', require: 'rack/cors'
# Disable strong_params so that Mash does not respond to :permitted?
gem 'hashie-forbidden_attributes'
@ -111,7 +119,7 @@ gem 'google-api-client', '~> 0.13.6'
gem 'unf', '~> 0.1.4'
# Seed data
gem 'seed-fu', '2.3.6' # Upgrade to > 2.3.7 once https://github.com/mbleigh/seed-fu/issues/123 is solved
gem 'seed-fu', '~> 2.3.7'
# Markdown and HTML processing
gem 'html-pipeline', '~> 1.11.0'
@ -128,7 +136,7 @@ gem 'asciidoctor-plantuml', '0.0.7'
gem 'rouge', '~> 2.0'
gem 'truncato', '~> 0.7.9'
gem 'bootstrap_form', '~> 2.7.0'
gem 'nokogiri', '~> 1.8.1'
gem 'nokogiri', '~> 1.8.2'
# Diffs
gem 'diffy', '~> 3.1.0'
@ -229,6 +237,9 @@ gem 'charlock_holmes', '~> 0.7.5'
# Faster JSON
gem 'oj', '~> 2.17.4'
# Faster blank
gem 'fast_blank'
# Parse time & duration
gem 'chronic', '~> 0.10.2'
gem 'chronic_duration', '~> 0.10.6'
@ -263,7 +274,7 @@ gem 'gettext_i18n_rails', '~> 1.8.0'
gem 'gettext_i18n_rails_js', '~> 1.2.0'
gem 'gettext', '~> 3.2.2', require: false, group: :development
gem 'batch-loader'
gem 'batch-loader', '~> 1.2.1'
# Perf bar
gem 'peek', '~> 1.0.1'
@ -283,7 +294,7 @@ group :metrics do
gem 'influxdb', '~> 0.2', require: false
# Prometheus
gem 'prometheus-client-mmap', '~> 0.7.0.beta43'
gem 'prometheus-client-mmap', '~> 0.9.1'
gem 'raindrops', '~> 0.18'
end
@ -311,14 +322,14 @@ group :development, :test do
gem 'fuubar', '~> 2.2.0'
gem 'database_cleaner', '~> 1.5.0'
gem 'factory_girl_rails', '~> 4.7.0'
gem 'factory_bot_rails', '~> 4.8.2'
gem 'rspec-rails', '~> 3.6.0'
gem 'rspec-retry', '~> 0.4.5'
gem 'spinach-rails', '~> 0.2.1'
gem 'spinach-rerun-reporter', '~> 0.0.2'
gem 'rspec_profiling', '~> 0.0.5'
gem 'rspec-set', '~> 0.1.3'
gem 'rspec-parameterized'
gem 'rspec-parameterized', require: false
# Prevent occasions where minitest is not bundled in packaged versions of ruby (see #3826)
gem 'minitest', '~> 5.7.0'
@ -334,13 +345,15 @@ group :development, :test do
gem 'spring-commands-rspec', '~> 1.0.4'
gem 'spring-commands-spinach', '~> 1.1.0'
gem 'rubocop', '~> 0.49.1', require: false
gem 'rubocop-rspec', '~> 1.15.1', require: false
gem 'rubocop-gitlab-security', '~> 0.1.0', require: false
gem 'scss_lint', '~> 0.54.0', require: false
gem 'gitlab-styles', '~> 2.3', require: false
# Pin these dependencies, otherwise a new rule could break the CI pipelines
gem 'rubocop', '~> 0.52.1'
gem 'rubocop-rspec', '~> 1.22.1'
gem 'scss_lint', '~> 0.56.0', require: false
gem 'haml_lint', '~> 0.26.0', require: false
gem 'simplecov', '~> 0.14.0', require: false
gem 'flay', '~> 2.8.0', require: false
gem 'flay', '~> 2.10.0', require: false
gem 'bundler-audit', '~> 0.5.0', require: false
gem 'benchmark-ips', '~> 2.3.0', require: false
@ -379,9 +392,6 @@ gem 'ruby-prof', '~> 0.16.2'
# OAuth
gem 'oauth2', '~> 1.4'
# Soft deletion
gem 'paranoia', '~> 2.3.1'
# Health check
gem 'health_check', '~> 2.6.0'
@ -400,16 +410,20 @@ group :ed25519 do
end
# Gitaly GRPC client
gem 'gitaly-proto', '~> 0.59.0', require: 'gitaly'
gem 'gitaly-proto', '~> 0.84.0', require: 'gitaly'
# Locked until https://github.com/google/protobuf/issues/4210 is closed
gem 'google-protobuf', '= 3.5.1'
gem 'toml-rb', '~> 0.3.15', require: false
# Feature toggles
gem 'flipper', '~> 0.10.2'
gem 'flipper-active_record', '~> 0.10.2'
gem 'flipper', '~> 0.11.0'
gem 'flipper-active_record', '~> 0.11.0'
gem 'flipper-active_support_cache_store', '~> 0.11.0'
# Structured logging
gem 'lograge', '~> 0.5'
gem 'grape_logging', '~> 1.7'
gem 'activerecord-nulldb-adapter'
# Asset synchronization
gem 'asset_sync', '~> 2.2.0'

View File

@ -33,8 +33,6 @@ GEM
activemodel (= 4.2.10)
activesupport (= 4.2.10)
arel (~> 6.0)
activerecord-nulldb-adapter (0.3.7)
activerecord (>= 2.0.0)
activerecord_sane_schema_dumper (0.2)
rails (>= 4, < 5)
activesupport (4.2.10)
@ -60,6 +58,11 @@ GEM
asciidoctor (1.5.3)
asciidoctor-plantuml (0.0.7)
asciidoctor (~> 1.5)
asset_sync (2.2.0)
activemodel (>= 4.1.0)
fog-core
mime-types (>= 2.99)
unf
ast (2.3.0)
atomic (1.1.99)
attr_encrypted (3.0.3)
@ -75,7 +78,7 @@ GEM
thread_safe (~> 0.3, >= 0.3.1)
babosa (1.0.2)
base32 (0.3.2)
batch-loader (1.1.1)
batch-loader (1.2.1)
bcrypt (3.1.11)
bcrypt_pbkdf (1.0.0)
benchmark-ips (2.3.0)
@ -192,10 +195,10 @@ GEM
excon (0.57.1)
execjs (2.6.0)
expression_parser (0.9.0)
factory_girl (4.7.0)
factory_bot (4.8.2)
activesupport (>= 3.0.0)
factory_girl_rails (4.7.0)
factory_girl (~> 4.7.0)
factory_bot_rails (4.8.2)
factory_bot (~> 4.8.2)
railties (>= 3.0.0)
faraday (0.12.2)
multipart-post (>= 1.2, < 3)
@ -204,18 +207,22 @@ GEM
faraday_middleware-multi_json (0.0.6)
faraday_middleware
multi_json
fast_blank (1.0.0)
fast_gettext (1.4.0)
ffaker (2.4.0)
ffi (1.9.18)
flay (2.8.1)
flay (2.10.0)
erubis (~> 2.7.0)
path_expander (~> 1.0)
ruby_parser (~> 3.0)
sexp_processor (~> 4.0)
flipper (0.10.2)
flipper-active_record (0.10.2)
flipper (0.11.0)
flipper-active_record (0.11.0)
activerecord (>= 3.2, < 6)
flipper (~> 0.10.2)
flipper (~> 0.11.0)
flipper-active_support_cache_store (0.11.0)
activesupport (>= 3.2, < 6)
flipper (~> 0.11.0)
flowdock (0.7.1)
httparty (~> 0.7)
multi_json
@ -278,7 +285,7 @@ GEM
po_to_json (>= 1.0.0)
rails (>= 3.2.0)
gherkin-ruby (0.3.2)
gitaly-proto (0.59.0)
gitaly-proto (0.84.0)
google-protobuf (~> 3.1)
grpc (~> 1.0)
github-linguist (4.7.6)
@ -297,6 +304,10 @@ GEM
mime-types (>= 1.16)
posix-spawn (~> 0.3)
gitlab-markup (1.6.3)
gitlab-styles (2.3.2)
rubocop (~> 0.51)
rubocop-gitlab-security (~> 0.1.0)
rubocop-rspec (~> 1.19)
gitlab_omniauth-ldap (2.0.4)
net-ldap (~> 0.16)
omniauth (~> 1.3)
@ -329,7 +340,9 @@ GEM
mime-types (~> 3.0)
representable (~> 3.0)
retriable (>= 2.0, < 4.0)
google-protobuf (3.4.1.1)
google-protobuf (3.5.1)
googleapis-common-protos-types (1.0.1)
google-protobuf (~> 3.0)
googleauth (0.5.3)
faraday (~> 0.12)
jwt (~> 1.4)
@ -356,9 +369,10 @@ GEM
rake
grape_logging (1.7.0)
grape
grpc (1.4.5)
grpc (1.8.3)
google-protobuf (~> 3.1)
googleauth (~> 0.5.1)
googleapis-common-protos-types (~> 1.0.0)
googleauth (>= 0.5.1, < 0.7)
haml (4.0.7)
tilt
haml_lint (0.26.0)
@ -495,11 +509,11 @@ GEM
mustermann (1.0.0)
mustermann-grape (1.0.0)
mustermann (~> 1.0.0)
mysql2 (0.4.5)
mysql2 (0.4.10)
net-ldap (0.16.0)
net-ssh (4.1.0)
netrc (0.11.0)
nokogiri (1.8.1)
nokogiri (1.8.2)
mini_portile2 (~> 2.3.0)
numerizer (0.1.1)
oauth (0.5.1)
@ -515,8 +529,8 @@ GEM
omniauth (1.4.2)
hashie (>= 1.2, < 4)
rack (>= 1.0, < 3)
omniauth-auth0 (1.4.1)
omniauth-oauth2 (~> 1.1)
omniauth-auth0 (2.0.0)
omniauth-oauth2 (~> 1.4)
omniauth-authentiq (0.3.1)
omniauth-oauth2 (~> 1.3, >= 1.3.1)
omniauth-azure-oauth2 (0.0.9)
@ -569,14 +583,12 @@ GEM
rubypants (~> 0.2)
orm_adapter (0.5.0)
os (0.9.6)
parallel (1.12.0)
paranoia (2.3.1)
activerecord (>= 4.0, < 5.2)
parallel (1.12.1)
parser (2.4.0.2)
ast (~> 2.3)
parslet (1.5.0)
blankslate (~> 2.0)
path_expander (1.0.1)
path_expander (1.0.2)
peek (1.0.1)
concurrent-ruby (>= 0.9.0)
concurrent-ruby-ext (>= 0.9.0)
@ -624,7 +636,7 @@ GEM
parser
unparser
procto (0.0.3)
prometheus-client-mmap (0.7.0.beta43)
prometheus-client-mmap (0.9.1)
pry (0.10.4)
coderay (~> 1.1.0)
method_source (~> 0.8.1)
@ -641,7 +653,7 @@ GEM
rack (>= 0.4)
rack-attack (4.4.1)
rack
rack-cors (0.4.0)
rack-cors (1.0.2)
rack-oauth2 (1.2.3)
activesupport (>= 2.3)
attr_required (>= 0.0.5)
@ -685,6 +697,9 @@ GEM
rake
raindrops (0.18.0)
rake (12.3.0)
rb-fsevent (0.10.2)
rb-inotify (0.9.10)
ffi (>= 0.5.0, < 2)
rblineprof (0.3.6)
debugger-ruby_core_source (~> 1.3)
rbnacl (4.0.2)
@ -698,7 +713,7 @@ GEM
json
recursive-open-struct (1.0.0)
redcarpet (3.4.0)
redis (3.3.3)
redis (3.3.5)
redis-actionpack (5.0.2)
actionpack (>= 4.0, < 6)
redis-rack (>= 1, < 3)
@ -771,21 +786,21 @@ GEM
pg
rails
sqlite3
rubocop (0.49.1)
rubocop (0.52.1)
parallel (~> 1.10)
parser (>= 2.3.3.1, < 3.0)
parser (>= 2.4.0.2, < 3.0)
powerpack (~> 0.1)
rainbow (>= 1.99.1, < 3.0)
rainbow (>= 2.2.2, < 4.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.15.1)
rubocop (>= 0.42.0)
rubocop-gitlab-security (0.1.1)
rubocop (>= 0.51)
rubocop-rspec (1.22.1)
rubocop (>= 0.52.1)
ruby-fogbugz (0.2.1)
crack (~> 0.4)
ruby-prof (0.16.2)
ruby-progressbar (1.8.1)
ruby-progressbar (1.9.0)
ruby-saml (1.4.1)
nokogiri (>= 1.5.10)
ruby_parser (3.9.0)
@ -799,7 +814,11 @@ GEM
safe_yaml (1.0.4)
sanitize (2.1.0)
nokogiri (>= 1.4.4)
sass (3.4.22)
sass (3.5.5)
sass-listen (~> 4.0.0)
sass-listen (4.0.0)
rb-fsevent (~> 0.9, >= 0.9.4)
rb-inotify (~> 0.9, >= 0.9.7)
sass-rails (5.0.6)
railties (>= 4.0.0, < 6)
sass (~> 3.1)
@ -809,11 +828,11 @@ GEM
sawyer (0.8.1)
addressable (>= 2.3.5, < 2.6)
faraday (~> 0.8, < 1.0)
scss_lint (0.54.0)
scss_lint (0.56.0)
rake (>= 0.9, < 13)
sass (~> 3.4.20)
sass (~> 3.5.3)
securecompare (1.0.0)
seed-fu (2.3.6)
seed-fu (2.3.7)
activerecord (>= 3.1)
activesupport (>= 3.1)
select2-rails (3.5.9.3)
@ -829,11 +848,11 @@ GEM
rack
shoulda-matchers (3.1.2)
activesupport (>= 4.0.0)
sidekiq (5.0.4)
sidekiq (5.0.5)
concurrent-ruby (~> 1.0)
connection_pool (~> 2.2, >= 2.2.0)
rack-protection (>= 1.5.0)
redis (~> 3.3, >= 3.3.3)
redis (>= 3.3.4, < 5)
sidekiq-cron (0.6.0)
rufus-scheduler (>= 3.3.0)
sidekiq (>= 4.2.1)
@ -969,7 +988,6 @@ 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.5.2)
@ -978,11 +996,12 @@ DEPENDENCIES
asana (~> 0.6.0)
asciidoctor (~> 1.5.2)
asciidoctor-plantuml (= 0.0.7)
asset_sync (~> 2.2.0)
attr_encrypted (~> 3.0.0)
awesome_print (~> 1.2.0)
babosa (~> 1.0.2)
base32 (~> 0.3.0)
batch-loader
batch-loader (~> 1.2.1)
bcrypt_pbkdf (~> 1.0)
benchmark-ips (~> 2.3.0)
better_errors (~> 2.1.0)
@ -1014,12 +1033,14 @@ DEPENDENCIES
dropzonejs-rails (~> 0.7.1)
email_reply_trimmer (~> 0.1)
email_spec (~> 1.6.0)
factory_girl_rails (~> 4.7.0)
factory_bot_rails (~> 4.8.2)
faraday (~> 0.12)
fast_blank
ffaker (~> 2.4)
flay (~> 2.8.0)
flipper (~> 0.10.2)
flipper-active_record (~> 0.10.2)
flay (~> 2.10.0)
flipper (~> 0.11.0)
flipper-active_record (~> 0.11.0)
flipper-active_support_cache_store (~> 0.11.0)
fog-aliyun (~> 0.2.0)
fog-aws (~> 1.4)
fog-core (~> 1.44)
@ -1035,15 +1056,17 @@ DEPENDENCIES
gettext (~> 3.2.2)
gettext_i18n_rails (~> 1.8.0)
gettext_i18n_rails_js (~> 1.2.0)
gitaly-proto (~> 0.59.0)
gitaly-proto (~> 0.84.0)
github-linguist (~> 4.7.0)
gitlab-flowdock-git-hook (~> 1.0.1)
gitlab-markup (~> 1.6.2)
gitlab-styles (~> 2.3)
gitlab_omniauth-ldap (~> 2.0.4)
gollum-lib (~> 4.2)
gollum-rugged_adapter (~> 0.4.4)
gon (~> 6.1.0)
google-api-client (~> 0.13.6)
google-protobuf (= 3.5.1)
gpgme
grape (~> 1.0)
grape-entity (~> 0.6.0)
@ -1075,15 +1098,15 @@ DEPENDENCIES
method_source (~> 0.8)
minitest (~> 5.7.0)
mousetrap-rails (~> 1.4.6)
mysql2 (~> 0.4.5)
mysql2 (~> 0.4.10)
net-ldap
net-ssh (~> 4.1.0)
nokogiri (~> 1.8.1)
nokogiri (~> 1.8.2)
oauth2 (~> 1.4)
octokit (~> 4.6.2)
oj (~> 2.17.4)
omniauth (~> 1.4.2)
omniauth-auth0 (~> 1.4.1)
omniauth-auth0 (~> 2.0.0)
omniauth-authentiq (~> 0.3.1)
omniauth-azure-oauth2 (~> 0.0.9)
omniauth-cas3 (~> 1.1.4)
@ -1098,7 +1121,6 @@ DEPENDENCIES
omniauth-twitter (~> 1.2.0)
omniauth_crowd (~> 2.2.0)
org-ruby (~> 0.9.12)
paranoia (~> 2.3.1)
peek (~> 1.0.1)
peek-gc (~> 0.0.2)
peek-host (~> 1.0.0)
@ -1110,11 +1132,11 @@ DEPENDENCIES
peek-sidekiq (~> 1.0.3)
pg (~> 0.18.2)
premailer-rails (~> 1.9.7)
prometheus-client-mmap (~> 0.7.0.beta43)
prometheus-client-mmap (~> 0.9.1)
pry-byebug (~> 3.4.1)
pry-rails (~> 0.3.4)
rack-attack (~> 4.4.1)
rack-cors (~> 0.4.0)
rack-cors (~> 1.0.0)
rack-oauth2 (~> 1.2.1)
rack-proxy (~> 0.6.0)
rails (= 4.2.10)
@ -1141,9 +1163,8 @@ DEPENDENCIES
rspec-retry (~> 0.4.5)
rspec-set (~> 0.1.3)
rspec_profiling (~> 0.0.5)
rubocop (~> 0.49.1)
rubocop-gitlab-security (~> 0.1.0)
rubocop-rspec (~> 1.15.1)
rubocop (~> 0.52.1)
rubocop-rspec (~> 1.22.1)
ruby-fogbugz (~> 0.2.1)
ruby-prof (~> 0.16.2)
ruby_parser (~> 3.8)
@ -1151,8 +1172,8 @@ DEPENDENCIES
rugged (~> 0.26.0)
sanitize (~> 2.0)
sass-rails (~> 5.0.6)
scss_lint (~> 0.54.0)
seed-fu (= 2.3.6)
scss_lint (~> 0.56.0)
seed-fu (~> 2.3.7)
select2-rails (~> 3.5.9)
selenium-webdriver (~> 3.5)
sentry-raven (~> 2.5.3)
@ -1194,4 +1215,4 @@ DEPENDENCIES
wikicloth (= 0.8.1)
BUNDLED WITH
1.16.0
1.16.1

View File

@ -18,11 +18,11 @@ let
};
};
version = "10.3.4";
version = "10.5.6";
gitlabDeb = fetchurl {
url = "https://packages.gitlab.com/gitlab/gitlab-ce/packages/debian/jessie/gitlab-ce_${version}-ce.0_amd64.deb/download";
sha256 = "0b6508hcahvhfpxyrqs05kz9a7c1wv658asm6a7ccish6hnwcica";
sha256 = "1kml7iz4q9g5gcfqqarivlnkmkmq9250wgm95yi4rgzynb5jndd0";
};
in
@ -34,7 +34,7 @@ stdenv.mkDerivation rec {
owner = "gitlabhq";
repo = "gitlabhq";
rev = "v${version}";
sha256 = "0cvp4wwkc04qffsq738867j31igwzj7zlmahdl24yddbmpa5x8r1";
sha256 = "059h63jn552fcir2dgsjv85zv1ihbyiwzws4h2j15mwj2cdpjkh0";
};
buildInputs = [
@ -43,7 +43,6 @@ stdenv.mkDerivation rec {
patches = [
./remove-hardcoded-locations.patch
./nulladapter.patch
./fix-36783.patch
];
@ -59,6 +58,8 @@ stdenv.mkDerivation rec {
substituteInPlace app/controllers/admin/background_jobs_controller.rb \
--replace "ps -U" "${procps}/bin/ps -U"
sed -i '/ask_to_continue/d' lib/tasks/gitlab/two_factor.rake
# required for some gems:
cat > config/database.yml <<EOF
production:

View File

@ -69,15 +69,6 @@
};
version = "4.2.10";
};
activerecord-nulldb-adapter = {
dependencies = ["activerecord"];
source = {
remotes = ["https://rubygems.org"];
sha256 = "1dxk26drn3s0mpyk8ir30k1pg5fqndrnsdjkkncn0acylq4ja27z";
type = "gem";
};
version = "0.3.7";
};
activerecord_sane_schema_dumper = {
dependencies = ["rails"];
source = {
@ -173,6 +164,15 @@
};
version = "0.0.7";
};
asset_sync = {
dependencies = ["activemodel" "fog-core" "mime-types" "unf"];
source = {
remotes = ["https://rubygems.org"];
sha256 = "044nqqnbib1bpld33j5jxcql06d6fr6zmhq8hlm69zqd0xd509p0";
type = "gem";
};
version = "2.2.0";
};
ast = {
source = {
remotes = ["https://rubygems.org"];
@ -251,10 +251,10 @@
batch-loader = {
source = {
remotes = ["https://rubygems.org"];
sha256 = "1w4ysjfh74612wsgdnnaq3xqw25hzsr6ajb5syiv1ix7fi15y8bv";
sha256 = "1nvmwzn8q6dkp2n8wz47z7gldj3yrj7h6syy0cwrkzi19bfvxba2";
type = "gem";
};
version = "1.1.1";
version = "1.2.1";
};
bcrypt = {
source = {
@ -803,23 +803,23 @@
};
version = "0.9.0";
};
factory_girl = {
factory_bot = {
dependencies = ["activesupport"];
source = {
remotes = ["https://rubygems.org"];
sha256 = "1xzl4z9z390fsnyxp10c9if2n46zan3n6zwwpfnwc33crv4s410i";
sha256 = "0r975ba6y0mcy3aya099gpnjn5gf1h6fbw8f3smmjay5zvin3nwx";
type = "gem";
};
version = "4.7.0";
version = "4.8.2";
};
factory_girl_rails = {
dependencies = ["factory_girl" "railties"];
factory_bot_rails = {
dependencies = ["factory_bot" "railties"];
source = {
remotes = ["https://rubygems.org"];
sha256 = "0hzpirb33xdqaz44i1mbcfv0icjrghhgaz747llcfsflljd4pa4r";
sha256 = "0cdbp12ih2w77l331frv8gv6bv9dinn1663dy1jn0gb9ss1hwvs2";
type = "gem";
};
version = "4.7.0";
version = "4.8.2";
};
faraday = {
dependencies = ["multipart-post"];
@ -848,6 +848,14 @@
};
version = "0.0.6";
};
fast_blank = {
source = {
remotes = ["https://rubygems.org"];
sha256 = "16s1ilyvwzmkcgmklbrn0c2pch5n02vf921njx0bld4crgdr6z56";
type = "gem";
};
version = "1.0.0";
};
fast_gettext = {
source = {
remotes = ["https://rubygems.org"];
@ -876,27 +884,36 @@
dependencies = ["erubis" "path_expander" "ruby_parser" "sexp_processor"];
source = {
remotes = ["https://rubygems.org"];
sha256 = "1x563gyx292ka3awps6h6hmswqf71zdxnzw0pfv6p2mhd2zwxaba";
sha256 = "0rzggr9w6z2jvs3mv0bp7d64yjivpp93ww9g4j9azzcfjqnh9hn3";
type = "gem";
};
version = "2.8.1";
version = "2.10.0";
};
flipper = {
source = {
remotes = ["https://rubygems.org"];
sha256 = "1gbvd4j0rkr7qc3mnjdw4r9p6lffnwv7rvm1cyr8a0avjky34n8p";
sha256 = "0j3zn54x0a6vvjmyhggl992df7zpcrhzv9ibr6af5gkcx502pg87";
type = "gem";
};
version = "0.10.2";
version = "0.11.0";
};
flipper-active_record = {
dependencies = ["activerecord" "flipper"];
source = {
remotes = ["https://rubygems.org"];
sha256 = "053lq791z8bf3xv6kb14nq3yrzjpmlyhzq3kvys978dc8yw78ld7";
sha256 = "0bm1wh1nrl6zbrcqk1nyqbrpddd5fvi72jyqv1j7y2df5sqwfj91";
type = "gem";
};
version = "0.10.2";
version = "0.11.0";
};
flipper-active_support_cache_store = {
dependencies = ["activesupport" "flipper"];
source = {
remotes = ["https://rubygems.org"];
sha256 = "18w11dmby55cyd4azic1nsb7h632y6nx3ka8ndlrd1g6g28afvfb";
type = "gem";
};
version = "0.11.0";
};
flowdock = {
dependencies = ["httparty" "multi_json"];
@ -1088,10 +1105,10 @@
dependencies = ["google-protobuf" "grpc"];
source = {
remotes = ["https://rubygems.org"];
sha256 = "0s86126iqhbmkix6zs357ixlc1syyxmwk2blaimsav7f0x9swy82";
sha256 = "05ql75gbcw8px03y4pjvbnfy272mh68777f4m3sfajr1jjjp4lw8";
type = "gem";
};
version = "0.59.0";
version = "0.84.0";
};
github-linguist = {
dependencies = ["charlock_holmes" "escape_utils" "mime-types" "rugged"];
@ -1136,6 +1153,15 @@
};
version = "1.6.3";
};
gitlab-styles = {
dependencies = ["rubocop" "rubocop-gitlab-security" "rubocop-rspec"];
source = {
remotes = ["https://rubygems.org"];
sha256 = "0m0ihbp7kjis03pcdx5310j7nzsxh22hfailnz0j467zab9jiap0";
type = "gem";
};
version = "2.3.2";
};
gitlab_omniauth-ldap = {
dependencies = ["net-ldap" "omniauth" "pyu-ruby-sasl" "rubyntlm"];
source = {
@ -1202,10 +1228,19 @@
google-protobuf = {
source = {
remotes = ["https://rubygems.org"];
sha256 = "1l9b2f4msp1gkay2mqjbjs7kfhchf916zh1y365singiysrwn2i6";
sha256 = "0s8ijd9wdrkqwsb6nasrsv7f9i5im2nyax7f7jlb5y9vh8nl98qi";
type = "gem";
};
version = "3.4.1.1";
version = "3.5.1";
};
googleapis-common-protos-types = {
dependencies = ["google-protobuf"];
source = {
remotes = ["https://rubygems.org"];
sha256 = "0yf10s7w8wpa49hc86z7z2fkn9yz7j2njz0n8xmqb24ji090z4ck";
type = "gem";
};
version = "1.0.1";
};
googleauth = {
dependencies = ["faraday" "jwt" "logging" "memoist" "multi_json" "os" "signet"];
@ -1262,13 +1297,13 @@
version = "1.7.0";
};
grpc = {
dependencies = ["google-protobuf" "googleauth"];
dependencies = ["google-protobuf" "googleapis-common-protos-types" "googleauth"];
source = {
remotes = ["https://rubygems.org"];
sha256 = "1zhci260088zlghpaz6ania1blz1dd7lgklsjnqk1vcymhpr6b38";
sha256 = "0fpbxzqacmc78m7whbv3vyfsfyk3cnfbppsy4789mwrlnbnfnp1j";
type = "gem";
};
version = "1.4.5";
version = "1.8.3";
};
haml = {
dependencies = ["tilt"];
@ -1803,10 +1838,10 @@
mysql2 = {
source = {
remotes = ["https://rubygems.org"];
sha256 = "1kh96xp396swyaddz5l2zqjxi3cvyqv62scak9b3f98j14ynfscl";
sha256 = "0qjd97w6a0w9aldsrhb2y6jrc4wnnlbj5j8kcl7pp7vviwa0r5iq";
type = "gem";
};
version = "0.4.5";
version = "0.4.10";
};
net-ldap = {
source = {
@ -1836,10 +1871,10 @@
dependencies = ["mini_portile2"];
source = {
remotes = ["https://rubygems.org"];
sha256 = "105xh2zkr8nsyfaj2izaisarpnkrrl9000y3nyflg9cbzrfxv021";
sha256 = "05fm3xh462glvs0rwnfmc1spmgl4ljg2giifynbmwwqvl42zaaiq";
type = "gem";
};
version = "1.8.1";
version = "1.8.2";
};
numerizer = {
source = {
@ -1896,10 +1931,10 @@
dependencies = ["omniauth-oauth2"];
source = {
remotes = ["https://rubygems.org"];
sha256 = "0dhfl01519q1cp4w0ml481j1cg05g7qvam0x4ia9jhdz8yx6npfs";
sha256 = "0id5gn14av81kh41cq4q6c9knyvzl7vc4rs3m4pmpd43g2z6jdw2";
type = "gem";
};
version = "1.4.1";
version = "2.0.0";
};
omniauth-authentiq = {
dependencies = ["omniauth-oauth2"];
@ -2073,19 +2108,10 @@
parallel = {
source = {
remotes = ["https://rubygems.org"];
sha256 = "0qv2yj4sxr36ga6xdxvbq9h05hn10bwcbkqv6j6q1fiixhsdnnzd";
sha256 = "01hj8v1qnyl5ndrs33g8ld8ibk0rbcqdpkpznr04gkbxd11pqn67";
type = "gem";
};
version = "1.12.0";
};
paranoia = {
dependencies = ["activerecord"];
source = {
remotes = ["https://rubygems.org"];
sha256 = "1ibdga0a0px8rf82qnmgm59z3z4s27r11i2i24087f0yh8z8bd7z";
type = "gem";
};
version = "2.3.1";
version = "1.12.1";
};
parser = {
dependencies = ["ast"];
@ -2108,10 +2134,10 @@
path_expander = {
source = {
remotes = ["https://rubygems.org"];
sha256 = "0hklnfb0br6mx6l25zknz2zj6r152i0jiy6fn6ki220x0l5m2h59";
sha256 = "0wsymhprfjazdkmfv02kski3iwjjkciwxqjg9brh56sbymcgk34a";
type = "gem";
};
version = "1.0.1";
version = "1.0.2";
};
peek = {
dependencies = ["concurrent-ruby" "concurrent-ruby-ext" "railties"];
@ -2265,10 +2291,10 @@
prometheus-client-mmap = {
source = {
remotes = ["https://rubygems.org"];
sha256 = "1wpk9zfbr7c1asvnq1v6jmc3ydbl8y17v24cj4vyhy3nkpds0cij";
sha256 = "1p3xkk9zal95di5v999mk7sq02fk0fimg633ixvhvv70ph6c8dhn";
type = "gem";
};
version = "0.7.0.beta43";
version = "0.9.1";
};
pry = {
dependencies = ["coderay" "method_source" "slop"];
@ -2342,10 +2368,10 @@
rack-cors = {
source = {
remotes = ["https://rubygems.org"];
sha256 = "1sz9d9gjmv2vjl3hddzk269hb1k215k8sp37gicphx82h3chk1kw";
sha256 = "1j27vy1bmhbqcyzhxg8d07qassmax769xjalfwcwz6qfiq8cf013";
type = "gem";
};
version = "0.4.0";
version = "1.0.2";
};
rack-oauth2 = {
dependencies = ["activesupport" "attr_required" "httpclient" "multi_json" "rack"];
@ -2462,6 +2488,23 @@
};
version = "12.3.0";
};
rb-fsevent = {
source = {
remotes = ["https://rubygems.org"];
sha256 = "1fbpmjypwxkb8r7y1kmhmyp6gawa4byw0yb3jc3dn9ly4ld9lizf";
type = "gem";
};
version = "0.10.2";
};
rb-inotify = {
dependencies = ["ffi"];
source = {
remotes = ["https://rubygems.org"];
sha256 = "0yfsgw5n7pkpyky6a9wkf1g9jafxb0ja7gz0qw0y14fd2jnzfh71";
type = "gem";
};
version = "0.9.10";
};
rblineprof = {
dependencies = ["debugger-ruby_core_source"];
source = {
@ -2542,10 +2585,10 @@
redis = {
source = {
remotes = ["https://rubygems.org"];
sha256 = "0kdj7511l6kqvqmaiw7kw604c83pk6f4b540gdsq1bf7yxm6qx6g";
sha256 = "0i415x8gi0c5vsiy6ikvx5js6fhc4x80a5lqv8iidy2iymd20irv";
type = "gem";
};
version = "3.3.3";
version = "3.3.5";
};
redis-actionpack = {
dependencies = ["actionpack" "redis-rack" "redis-store"];
@ -2778,28 +2821,28 @@
dependencies = ["parallel" "parser" "powerpack" "rainbow" "ruby-progressbar" "unicode-display_width"];
source = {
remotes = ["https://rubygems.org"];
sha256 = "1mqyylfzch0967w7nfnqza84sqhljijd9y4bnq8hcmrscch75cxw";
sha256 = "0d22rr1jnjfkw10rbnqb8plyd7kzf553nm3sbv14xil65s4mkijf";
type = "gem";
};
version = "0.49.1";
version = "0.52.1";
};
rubocop-gitlab-security = {
dependencies = ["rubocop"];
source = {
remotes = ["https://rubygems.org"];
sha256 = "0aw9qmyc6xj6fi0jxp8m4apk358rd91z492ragn6jp4rghkqj5cy";
sha256 = "0v0040kpx46fxz3p7dsdjgvsx89qjhwy17n8vxnqg9a7g1rfvxln";
type = "gem";
};
version = "0.1.0";
version = "0.1.1";
};
rubocop-rspec = {
dependencies = ["rubocop"];
source = {
remotes = ["https://rubygems.org"];
sha256 = "16qgakivl2vqbx82fm78999cximbb10jbz3ix1ga4a2rns5xxlf3";
sha256 = "18rd3w2q07vkfdk9nl8apkpyjfw1478qg82zgfnd4hn3r40jkbcx";
type = "gem";
};
version = "1.15.1";
version = "1.22.1";
};
ruby-fogbugz = {
dependencies = ["crack"];
@ -2821,10 +2864,10 @@
ruby-progressbar = {
source = {
remotes = ["https://rubygems.org"];
sha256 = "1qzc7s7r21bd7ah06kskajc2bjzkr9y0v5q48y0xwh2l55axgplm";
sha256 = "1igh1xivf5h5g3y5m9b4i4j2mhz2r43kngh4ww3q1r80ch21nbfk";
type = "gem";
};
version = "1.8.1";
version = "1.9.0";
};
ruby-saml = {
dependencies = ["nokogiri"];
@ -2903,12 +2946,22 @@
version = "2.1.0";
};
sass = {
dependencies = ["sass-listen"];
source = {
remotes = ["https://rubygems.org"];
sha256 = "0dkj6v26fkg1g0majqswwmhxva7cd6p3psrhdlx93qal72dssywy";
sha256 = "10401m2xlv6vaxfwzy4xxmk51ddcnkvwi918cw3jkki0qqdl7d8v";
type = "gem";
};
version = "3.4.22";
version = "3.5.5";
};
sass-listen = {
dependencies = ["rb-fsevent" "rb-inotify"];
source = {
remotes = ["https://rubygems.org"];
sha256 = "0xw3q46cmahkgyldid5hwyiwacp590zj2vmswlll68ryvmvcp7df";
type = "gem";
};
version = "4.0.0";
};
sass-rails = {
dependencies = ["railties" "sass" "sprockets" "sprockets-rails" "tilt"];
@ -2932,10 +2985,10 @@
dependencies = ["rake" "sass"];
source = {
remotes = ["https://rubygems.org"];
sha256 = "01lwbrz7637j79jkm6yaq4wsd4cqgzn0r74whn85v7j9dir73l98";
sha256 = "01bfkrjn1i0hfg1ifwn1rs7vqwdbdw158krwr5fm6iasd9zgl10g";
type = "gem";
};
version = "0.54.0";
version = "0.56.0";
};
securecompare = {
source = {
@ -2949,10 +3002,10 @@
dependencies = ["activerecord" "activesupport"];
source = {
remotes = ["https://rubygems.org"];
sha256 = "1nkp1pvkdydclbl2v4qf9cixmiycvlqnrgxd61sv9r85spb01z3p";
sha256 = "0x6gclryl0hds3zms095d2iyafcvm2kfrm7362vrkxws7r2775pi";
type = "gem";
};
version = "2.3.6";
version = "2.3.7";
};
select2-rails = {
dependencies = ["thor"];
@ -3019,10 +3072,10 @@
dependencies = ["concurrent-ruby" "connection_pool" "rack-protection" "redis"];
source = {
remotes = ["https://rubygems.org"];
sha256 = "0nazi3a9aq7c7cxk749qz9ilp7dv39r9n3zsbjg4frc96bb85s9w";
sha256 = "0mmmv6k4l5rd74zw4xmwsadi0pbbcyzk1cm73zd8fzwra6nfz7sh";
type = "gem";
};
version = "5.0.4";
version = "5.0.5";
};
sidekiq-cron = {
dependencies = ["rufus-scheduler" "sidekiq"];
@ -3537,4 +3590,4 @@
};
version = "2.1.0";
};
}
}

View File

@ -1,33 +0,0 @@
diff --git a/Gemfile b/Gemfile
index 4861171ef5..f6e701c548 100644
--- a/Gemfile
+++ b/Gemfile
@@ -1,5 +1,7 @@
source 'https://rubygems.org'
+gem 'activerecord-nulldb-adapter'
+
gem 'rails', '4.2.10'
gem 'rails-deprecated_sanitizer', '~> 1.0.3'
diff --git a/Gemfile.lock b/Gemfile.lock
index 38944248f9..08ce4486ba 100644
--- a/Gemfile.lock
+++ b/Gemfile.lock
@@ -33,6 +33,8 @@ GEM
activemodel (= 4.2.8)
activesupport (= 4.2.8)
arel (~> 6.0)
+ activerecord-nulldb-adapter (0.3.7)
+ activerecord (>= 2.0.0)
activerecord_sane_schema_dumper (0.2)
rails (>= 4, < 5)
activesupport (4.2.8)
@@ -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.5.2)

View File

@ -1,8 +1,8 @@
diff --git a/config/environments/production.rb b/config/environments/production.rb
index c5cbfcf64c..e40f10e25f 100644
index c5cbfcf64c..4d01f6fab8 100644
--- a/config/environments/production.rb
+++ b/config/environments/production.rb
@@ -70,14 +70,16 @@ Rails.application.configure do
@@ -70,10 +70,10 @@ Rails.application.configure do
config.action_mailer.delivery_method = :sendmail
# Defaults to:
@ -11,23 +11,17 @@ index c5cbfcf64c..e40f10e25f 100644
- # # arguments: '-i -t'
- # # }
+ config.action_mailer.sendmail_settings = {
+ location: '/run/wrappers/bin/sendmail',
+ location: '/usr/sbin/sendmail',
+ arguments: '-i -t'
+ }
config.action_mailer.perform_deliveries = true
config.action_mailer.raise_delivery_errors = true
config.eager_load = true
config.allow_concurrency = false
+
+ config.active_record.dump_schema_after_migration = false
end
diff --git a/config/gitlab.yml.example b/config/gitlab.yml.example
index 0b33783869..cd4e41d9bd 100644
index bd696a7f2c..44e3863736 100644
--- a/config/gitlab.yml.example
+++ b/config/gitlab.yml.example
@@ -574,7 +574,7 @@ production: &base
@@ -590,7 +590,7 @@ production: &base
# CAUTION!
# Use the default values unless you really know what you are doing
git:
@ -37,10 +31,10 @@ index 0b33783869..cd4e41d9bd 100644
## 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
index 0bea8a4f4b..290248547b 100644
--- a/config/initializers/1_settings.rb
+++ b/config/initializers/1_settings.rb
@@ -252,7 +252,7 @@ Settings.gitlab['user'] ||= 'git'
@@ -255,7 +255,7 @@ Settings.gitlab['user'] ||= 'git'
Settings.gitlab['user_home'] ||= begin
Etc.getpwnam(Settings.gitlab['user']).dir
rescue ArgumentError # no user configured
@ -49,7 +43,7 @@ index 8ddf8e4d2e..559cf9adf7 100644
end
Settings.gitlab['time_zone'] ||= nil
Settings.gitlab['signup_enabled'] ||= true if Settings.gitlab['signup_enabled'].nil?
@@ -491,7 +491,7 @@ Settings.backup['upload']['storage_class'] ||= nil
@@ -507,7 +507,7 @@ Settings.backup['upload']['storage_class'] ||= nil
# Git
#
Settings['git'] ||= Settingslogic.new({})
@ -58,29 +52,42 @@ index 8ddf8e4d2e..559cf9adf7 100644
# Important: keep the satellites.path setting until GitLab 9.0 at
# least. This setting is fed to 'rm -rf' in
diff --git a/lib/api/api.rb b/lib/api/api.rb
index e953f3d2ec..3a8d9f076b 100644
--- a/lib/api/api.rb
+++ b/lib/api/api.rb
@@ -2,7 +2,7 @@ module API
class API < Grape::API
include APIGuard
- LOG_FILENAME = Rails.root.join("log", "api_json.log")
+ LOG_FILENAME = File.join(ENV["GITLAB_LOG_PATH"], "api_json.log")
NO_SLASH_URL_PART_REGEX = %r{[^/]+}
PROJECT_ENDPOINT_REQUIREMENTS = { id: NO_SLASH_URL_PART_REGEX }.freeze
diff --git a/lib/gitlab/logger.rb b/lib/gitlab/logger.rb
index 59b21149a9..4f4a39a06c 100644
index a42e312b5d..ccaab9229e 100644
--- a/lib/gitlab/logger.rb
+++ b/lib/gitlab/logger.rb
@@ -26,7 +26,7 @@
@@ -26,7 +26,7 @@ module Gitlab
end
def self.full_log_path
- Rails.root.join("log", file_name)
+ File.join(ENV["GITLAB_LOG_PATH"], file_name)
+ File.join(ENV["GITLAB_LOG_PATH"], file_name)
end
def self.cache_key
diff --git a/lib/gitlab/uploads_transfer.rb b/lib/gitlab/uploads_transfer.rb
index b5f4124052..f72c556983 100644
index 7d7400bdab..cb25211d44 100644
--- a/lib/gitlab/uploads_transfer.rb
+++ b/lib/gitlab/uploads_transfer.rb
@@ -1,7 +1,7 @@
module Gitlab
class UploadsTransfer < ProjectTransfer
def root_dir
- File.join(CarrierWave.root, FileUploader.base_dir)
+ ENV['GITLAB_UPLOADS_PATH'] || File.join(CarrierWave.root, FileUploader.base_dir)
- FileUploader.root
+ ENV['GITLAB_UPLOADS_PATH'] || FileUploader.root
end
end
end
@ -98,7 +105,7 @@ index 3e0c436d6e..28cefc5514 100644
end
end
diff --git a/lib/system_check/app/uploads_directory_exists_check.rb b/lib/system_check/app/uploads_directory_exists_check.rb
index 7026d0ba07..6d88b8b9fb 100644
index 7026d0ba07..c56e1f7ed9 100644
--- a/lib/system_check/app/uploads_directory_exists_check.rb
+++ b/lib/system_check/app/uploads_directory_exists_check.rb
@@ -4,12 +4,13 @@ module SystemCheck
@ -113,7 +120,7 @@ index 7026d0ba07..6d88b8b9fb 100644
+ uploads_dir = ENV['GITLAB_UPLOADS_PATH'] || Rails.root.join('public/uploads')
try_fixing_it(
- "sudo -u #{gitlab_user} mkdir #{Rails.root}/public/uploads"
+ "sudo -u #{gitlab_user} mkdir #{uploads_dir}"
+ "sudo -u #{gitlab_user} mkdir #{uploads_dir}"
)
for_more_information(
see_installation_guide_section 'GitLab'
@ -143,14 +150,3 @@ index b276a81eac..070e3ebd81 100644
end
end
end
--- a/lib/api/api.rb 1970-01-01 01:00:01.000000000 +0100
+++ b/lib/api/api.rb 2017-09-28 19:37:24.953605705 +0200
@@ -2,7 +2,7 @@
class API < Grape::API
include APIGuard
- LOG_FILENAME = Rails.root.join("log", "api_json.log")
+ LOG_FILENAME = File.join(ENV["GITLAB_LOG_PATH"], "api_json.log")
use GrapeLogging::Middleware::RequestLogger,
logger: Logger.new(LOG_FILENAME),

View File

@ -8,13 +8,13 @@
with stdenv.lib;
stdenv.mkDerivation rec {
name = "libopenshot-${version}";
version = "0.1.7";
version = "0.1.9";
src = fetchFromGitHub {
owner = "OpenShot";
repo = "libopenshot";
rev = "v${version}";
sha256 = "1dk40qild8d3s99p2kkm0mjvxfxrz2wns7ij1brzqmcdnaxqdhlp";
sha256 = "0c7q5cfnp481ysyvgzznvix7j4licq9knwrb83g3xqs4cx573xr3";
};
patchPhase = ''

View File

@ -1,4 +1,4 @@
{ stdenv, fetchurl, pkgconfig, gnome3, gtk3, wrapGAppsHook
{ stdenv, fetchurl, pkgconfig, gnome3, gtk3, wrapGAppsHook, gobjectIntrospection
, itstool, libxml2, python3Packages, at-spi2-core
, dbus, intltool, libwnck3 }:
@ -11,7 +11,10 @@ stdenv.mkDerivation rec {
sha256 = "883306274442c7ecc076b24afca5190c835c40871ded1b9790da69347e9ca3c5";
};
nativeBuildInputs = [ pkgconfig wrapGAppsHook itstool intltool ];
nativeBuildInputs = [
pkgconfig wrapGAppsHook itstool intltool
gobjectIntrospection # For setup hook
];
buildInputs = [
gtk3 libxml2 python3Packages.python python3Packages.pyatspi
python3Packages.pygobject3 python3Packages.ipython

View File

@ -6,11 +6,11 @@
stdenv.mkDerivation rec {
name = "cheese-${version}";
version = "3.26.0";
version = "3.28.0";
src = fetchurl {
url = "mirror://gnome/sources/cheese/${gnome3.versionBranch version}/${name}.tar.xz";
sha256 = "8ef52fc41de1817c4e4274e23eb7c29d28b64ae0f0d1fec52e184e99aea6c605";
sha256 = "06da5qc5hdvwwd5vkbgbx8pjx1l3mvr07yrnnv3v1hfc3wp7l7jw";
};
passthru = {

View File

@ -5,13 +5,13 @@
, libcanberra-gtk3, bogofilter, gst_all_1, procps, p11-kit, openldap }:
let
version = "3.26.6";
version = "3.28.0";
in stdenv.mkDerivation rec {
name = "evolution-${version}";
src = fetchurl {
url = "mirror://gnome/sources/evolution/${gnome3.versionBranch version}/${name}.tar.xz";
sha256 = "1adqh5f5aijkj5cnj1qprig8cd594m0qb0mzxn0zx44k0b6z5m1p";
sha256 = "0b6yw664jdfc8ppd78akmrl36iximh7ipknf5mlzgga6lr6pl2nf";
};
propagatedUserEnvPkgs = [ gnome3.evolution-data-server ];
@ -24,7 +24,7 @@ in stdenv.mkDerivation rec {
gst_all_1.gstreamer gst_all_1.gst-plugins-base p11-kit
nss nspr libnotify procps highlight gnome3.libgweather
gnome3.gsettings-desktop-schemas
gnome3.libgnome-keyring gnome3.glib-networking openldap
gnome3.glib-networking openldap
];
nativeBuildInputs = [ cmake ninja intltool itstool libxml2 pkgconfig wrapGAppsHook ];

View File

@ -1,30 +1,39 @@
{ stdenv, fetchurl, glib, pkgconfig, gnome3, intltool, itstool, libxml2, libarchive
, attr, bzip2, acl, wrapGAppsHook, librsvg, gdk_pixbuf, libnotify, nautilus }:
{ stdenv, fetchurl, glib, gtk, meson, ninja, pkgconfig, gnome3, gettext, itstool, libxml2, libarchive
, file, json-glib, wrapGAppsHook, desktop-file-utils, libnotify, nautilus, glibcLocales }:
stdenv.mkDerivation rec {
name = "file-roller-${version}";
version = "3.26.2";
version = "3.28.0";
src = fetchurl {
url = "mirror://gnome/sources/file-roller/${gnome3.versionBranch version}/${name}.tar.xz";
sha256 = "3e677b8e1c2f19aead69cf4fc419a19fc3373aaf5d7bf558b4f077f10bbba8a5";
sha256 = "15pn2m80x45bzibig4zrqybnbr0n1f9wpqx7f2p6difldns3jwf1";
};
LANG = "en_US.UTF-8"; # postinstall.py
nativeBuildInputs = [ meson ninja gettext itstool pkgconfig libxml2 wrapGAppsHook glibcLocales desktop-file-utils ];
buildInputs = [ glib gtk json-glib libarchive file gnome3.defaultIconTheme libnotify nautilus ];
PKG_CONFIG_LIBNAUTILUS_EXTENSION_EXTENSIONDIR = "${placeholder "out"}/lib/nautilus/extensions-3.0";
postPatch = ''
chmod +x postinstall.py # patchShebangs requires executable file
patchShebangs postinstall.py
'';
passthru = {
updateScript = gnome3.updateScript { packageName = "file-roller"; attrPath = "gnome3.file-roller"; };
updateScript = gnome3.updateScript {
packageName = "file-roller";
attrPath = "gnome3.file-roller";
};
};
nativeBuildInputs = [ pkgconfig wrapGAppsHook ];
buildInputs = [ glib gnome3.gtk intltool itstool libxml2 libarchive
gnome3.defaultIconTheme attr bzip2 acl gdk_pixbuf librsvg
gnome3.dconf libnotify nautilus ];
installFlags = [ "nautilus_extensiondir=$(out)/lib/nautilus/extensions-3.0" ];
meta = with stdenv.lib; {
homepage = https://wiki.gnome.org/Apps/FileRoller;
description = "Archive manager for the GNOME desktop environment";
license = licenses.gpl2Plus;
platforms = platforms.linux;
maintainers = gnome3.maintainers;
};

View File

@ -5,11 +5,11 @@
stdenv.mkDerivation rec {
name = "gedit-${version}";
version = "3.22.1";
version = "3.28.0";
src = fetchurl {
url = "mirror://gnome/sources/gedit/${gnome3.versionBranch version}/${name}.tar.xz";
sha256 = "aa7bc3618fffa92fdb7daf2f57152e1eb7962e68561a9c92813d7bbb7fc9492b";
sha256 = "0pyam0zi44xq776x20ycqnvmf86l98jns8ldv4m81gnp9wnhmycv";
};
passthru = {

View File

@ -5,11 +5,11 @@
stdenv.mkDerivation rec {
name = "glade-${version}";
version = "3.20.4";
version = "3.22.0";
src = fetchurl {
url = "mirror://gnome/sources/glade/${gnome3.versionBranch version}/${name}.tar.xz";
sha256 = "1n9m4s81jd9fi60mrxsvlk4fi2vqrqmp95azsxp9jnqn6pkdz0jb";
sha256 = "1j7kpy4jisz4nkd3yb5af4vd4bapyqchvp2gvq6ypfw3b0x88rkc";
};
passthru = {

View File

@ -1,51 +1,57 @@
{ stdenv, fetchurl, makeWrapper, pkgconfig, gettext, itstool, libvirt-glib
{ stdenv, fetchurl, meson, ninja, wrapGAppsHook, pkgconfig, gettext, itstool, libvirt-glib
, glib, gobjectIntrospection, libxml2, gtk3, gtkvnc, libvirt, spice-gtk
, spice-protocol, libsoup, libosinfo, systemd, tracker, tracker-miners, vala
, libcap, yajl, gmp, gdbm, cyrus_sasl, gnome3, librsvg, desktop-file-utils
, mtools, cdrkit, libcdio, libusb, libarchive, acl, libgudev, qemu, libsecret
, libcap_ng, numactl, xen, libapparmor
, libcap_ng, numactl, xen, libapparmor, json-glib, webkitgtk
}:
# TODO: ovirt (optional)
stdenv.mkDerivation rec {
let
version = "3.27.92";
in stdenv.mkDerivation rec {
name = "gnome-boxes-${version}";
version = "3.26.2";
src = fetchurl {
url = "mirror://gnome/sources/gnome-boxes/${gnome3.versionBranch version}/${name}.tar.xz";
sha256 = "d00fc083182963dc1bbdee5e743ceb28ba03fbf5a9ea87c78d29dca5fb5b9210";
sha256 = "1v1br4zh2w3w70np5imi31md6lnqamabiin521f806rdrxsnyggq";
};
passthru = {
updateScript = gnome3.updateScript { packageName = "gnome-boxes"; attrPath = "gnome3.gnome-boxes"; };
};
enableParallelBuilding = true;
doCheck = true;
nativeBuildInputs = [
makeWrapper pkgconfig gettext
meson ninja vala pkgconfig gettext itstool wrapGAppsHook gobjectIntrospection desktop-file-utils
];
buildInputs = [
itstool libvirt-glib glib gobjectIntrospection libxml2 gtk3 gtkvnc
libvirt spice-gtk spice-protocol libsoup libosinfo systemd
tracker tracker-miners vala libcap yajl gmp gdbm cyrus_sasl libusb libarchive
gnome3.defaultIconTheme librsvg desktop-file-utils acl libgudev libsecret
libvirt-glib glib gtk3 gtkvnc libxml2
libvirt spice-gtk spice-protocol libsoup json-glib webkitgtk libosinfo systemd
tracker tracker-miners libcap yajl gmp gdbm cyrus_sasl libusb libarchive
gnome3.defaultIconTheme librsvg acl libgudev libsecret
libcap_ng numactl xen libapparmor
];
preFixup = ''
for prog in "$out/bin/"*; do
wrapProgram "$prog" \
--set GDK_PIXBUF_MODULE_FILE "$GDK_PIXBUF_MODULE_FILE" \
--prefix XDG_DATA_DIRS : "${gnome3.gnome-themes-standard}/share:$XDG_ICON_DIRS:$GSETTINGS_SCHEMAS_PATH" \
--prefix PATH : "${stdenv.lib.makeBinPath [ mtools cdrkit libcdio qemu ]}"
done
gappsWrapperArgs+=(--prefix PATH : "${stdenv.lib.makeBinPath [ mtools cdrkit libcdio qemu ]}")
'';
mesonFlags = [
"-Dovirt=false"
];
postPatch = ''
chmod +x build-aux/post_install.py # patchShebangs requires executable file
patchShebangs build-aux/post_install.py
'';
passthru = {
updateScript = gnome3.updateScript {
packageName = "gnome-boxes";
attrPath = "gnome3.gnome-boxes";
};
};
meta = with stdenv.lib; {
description = "Simple GNOME 3 application to access remote or virtual systems";
homepage = https://wiki.gnome.org/action/show/Apps/Boxes;

View File

@ -1,25 +1,28 @@
{ stdenv, fetchurl, meson, ninja, pkgconfig, wrapGAppsHook
{ stdenv, fetchurl, meson, ninja, pkgconfig, wrapGAppsHook, libdazzle, libgweather, geoclue2, geocode-glib
, gettext, libxml2, gnome3, gtk, evolution-data-server, libsoup
, glib, gnome-online-accounts, gsettings-desktop-schemas }:
stdenv.mkDerivation rec {
name = "gnome-calendar-${version}";
version = "3.26.3";
let
pname = "gnome-calendar";
version = "3.28.0";
in stdenv.mkDerivation rec {
name = "${pname}-${version}";
src = fetchurl {
url = "mirror://gnome/sources/gnome-calendar/${gnome3.versionBranch version}/${name}.tar.xz";
sha256 = "1clnfvvsaqw9vpxrs6qrxzmgpaw9x2nkjik2x2vwvm07pdvhddxn";
url = "mirror://gnome/sources/${pname}/${gnome3.versionBranch version}/${name}.tar.xz";
sha256 = "1y5d6rgw7j5hy147i3ff73q9kkwj3nbyms7j705nfhri3s1ypqgs";
};
passthru = {
updateScript = gnome3.updateScript { packageName = "gnome-calendar"; attrPath = "gnome3.gnome-calendar"; };
updateScript = gnome3.updateScript {
packageName = pname;
attrPath = "gnome3.${pname}";
};
};
NIX_CFLAGS_COMPILE = "-I${gnome3.glib.dev}/include/gio-unix-2.0";
nativeBuildInputs = [ meson ninja pkgconfig gettext libxml2 wrapGAppsHook ];
buildInputs = [
gtk evolution-data-server libsoup glib gnome-online-accounts
gtk evolution-data-server libsoup glib gnome-online-accounts libdazzle libgweather geoclue2 geocode-glib
gsettings-desktop-schemas gnome3.defaultIconTheme
];

View File

@ -1,23 +1,32 @@
{ stdenv, fetchurl, pkgconfig, gnome3, gtk3, wrapGAppsHook
, intltool, gobjectIntrospection, gjs, gdk_pixbuf, librsvg }:
{ stdenv, fetchurl, meson, ninja, pkgconfig, gettext, gnome3, glib, gtk3, pango, wrapGAppsHook
, gobjectIntrospection, gjs, gdk_pixbuf, librsvg, libunistring }:
stdenv.mkDerivation rec {
name = "gnome-characters-${version}";
version = "3.26.2";
version = "3.28.0";
src = fetchurl {
url = "mirror://gnome/sources/gnome-characters/${gnome3.versionBranch version}/${name}.tar.xz";
sha256 = "69d0218b4ce16451bef0e6ee9f9f18f5b7851aa3a758b13315d592b077374f7b";
sha256 = "14q92ysg7krawxlwv6ymgsxz2plk81wgfz6knlma7lm13jsczmf0";
};
postPatch = ''
chmod +x meson_post_install.py # patchShebangs requires executable file
patchShebangs meson_post_install.py
'';
passthru = {
updateScript = gnome3.updateScript { packageName = "gnome-characters"; attrPath = "gnome3.gnome-characters"; };
updateScript = gnome3.updateScript {
packageName = "gnome-characters";
attrPath = "gnome3.gnome-characters";
};
};
nativeBuildInputs = [ pkgconfig wrapGAppsHook intltool ];
buildInputs = [
gtk3 gjs gdk_pixbuf gobjectIntrospection
librsvg gnome3.gsettings-desktop-schemas gnome3.defaultIconTheme
nativeBuildInputs = [ meson ninja pkgconfig gettext wrapGAppsHook gobjectIntrospection ];
buildInputs = [ glib gtk3 gjs pango gnome3.gsettings-desktop-schemas gnome3.defaultIconTheme libunistring ];
mesonFlags = [
"-Ddbus_service_dir=${placeholder "out"}/share/dbus-1/services"
];
meta = with stdenv.lib; {

View File

@ -1,33 +1,35 @@
{ stdenv, fetchurl
, meson, ninja, gettext, pkgconfig, wrapGAppsHook, itstool, desktop-file-utils
, vala, gtk3, glib, gsound
, vala, gobjectIntrospection, libxml2, gtk3, glib, gsound
, gnome3, gdk_pixbuf, geoclue2, libgweather }:
stdenv.mkDerivation rec {
name = "gnome-clocks-${version}";
version = "3.26.1";
version = "3.28.0";
src = fetchurl {
url = "mirror://gnome/sources/gnome-clocks/${gnome3.versionBranch version}/${name}.tar.xz";
sha256 = "2bd8d8df1d6aa0feddd4afc15d84b1308202fda59a3c3be42e3bce7e9ccd11f7";
sha256 = "1dd739vchb592mck1dia2hkywn4213cpramyqzgmlmwv8z80p3nl";
};
passthru = {
updateScript = gnome3.updateScript { packageName = "gnome-clocks"; attrPath = "gnome3.gnome-clocks"; };
updateScript = gnome3.updateScript {
packageName = "gnome-clocks";
attrPath = "gnome3.gnome-clocks";
};
};
doCheck = true;
nativeBuildInputs = [
vala meson ninja pkgconfig gettext itstool wrapGAppsHook desktop-file-utils
vala meson ninja pkgconfig gettext itstool wrapGAppsHook desktop-file-utils libxml2
gobjectIntrospection # for finding vapi files
];
buildInputs = [
gtk3 glib gnome3.gsettings-desktop-schemas gdk_pixbuf gnome3.defaultIconTheme
gnome3.gnome-desktop gnome3.geocode-glib geoclue2 libgweather gsound
];
prePatch = "patchShebangs build-aux/";
meta = with stdenv.lib; {
homepage = https://wiki.gnome.org/Apps/Clocks;
description = "Clock application designed for GNOME 3";

View File

@ -1,43 +1,52 @@
{ stdenv, gettext, fetchurl, evince, gjs
{ stdenv, meson, ninja, gettext, fetchurl, evince, gjs
, pkgconfig, gtk3, glib, tracker, tracker-miners
, itstool, libxslt, webkitgtk
, itstool, libxslt, webkitgtk, libgdata, gnome-online-accounts
, gnome-desktop, libzapojit, libgepub
, gnome3, librsvg, gdk_pixbuf, libsoup, docbook_xsl
, gobjectIntrospection, json-glib, inkscape, poppler_utils
, gmp, desktop-file-utils, wrapGAppsHook }:
stdenv.mkDerivation rec {
name = "gnome-documents-${version}";
version = "3.26.2";
version = "3.28.0";
src = fetchurl {
url = "mirror://gnome/sources/gnome-documents/${gnome3.versionBranch version}/${name}.tar.xz";
sha256 = "0q7bp0mvmhqmsvm5sjavm46y7sz43na62d1hrl62vg19hdqr9ir4";
};
passthru = {
updateScript = gnome3.updateScript { packageName = "gnome-documents"; attrPath = "gnome3.gnome-documents"; };
sha256 = "174q59gk9j0083bvv8sd2k66xrd4lydy2rcqbwsbzsy22fbhwcha";
};
doCheck = true;
configureFlags = [ "--enable-getting-started" ];
mesonFlags = [ "-Dgetting-started=true" ];
nativeBuildInputs = [ pkgconfig gettext itstool libxslt desktop-file-utils docbook_xsl wrapGAppsHook ];
buildInputs = [ gtk3 glib inkscape poppler_utils
gnome3.gsettings-desktop-schemas gmp
gdk_pixbuf gnome3.defaultIconTheme librsvg evince
libsoup webkitgtk gjs gobjectIntrospection gnome3.rest
tracker tracker-miners gnome3.libgdata gnome3.gnome-online-accounts
gnome3.gnome-desktop gnome3.libzapojit json-glib gnome3.libgepub ];
nativeBuildInputs = [
meson ninja pkgconfig gettext itstool libxslt desktop-file-utils docbook_xsl wrapGAppsHook
inkscape poppler_utils # building getting started
];
buildInputs = [
gtk3 glib gnome3.gsettings-desktop-schemas
gdk_pixbuf gnome3.defaultIconTheme evince
libsoup webkitgtk gjs gobjectIntrospection
tracker tracker-miners libgdata
gnome-desktop libzapojit libgepub
];
enableParallelBuilding = true;
postPatch = ''
chmod +x meson_post_install.py # patchShebangs requires executable file
patchShebangs meson_post_install.py
'';
preFixup = ''
substituteInPlace $out/bin/gnome-documents --replace gapplication "${glib.dev}/bin/gapplication"
gappsWrapperArgs+=(--run 'if [ -z "$XDG_CACHE_DIR" ]; then XDG_CACHE_DIR=$HOME/.cache; fi; if [ -w "$XDG_CACHE_DIR/.." ]; then mkdir -p "$XDG_CACHE_DIR/gnome-documents"; fi')
'';
passthru = {
updateScript = gnome3.updateScript {
packageName = "gnome-documents";
attrPath = "gnome3.gnome-documents";
};
};
meta = with stdenv.lib; {
homepage = https://wiki.gnome.org/Apps/Documents;
description = "Document manager application designed to work with GNOME 3";

View File

@ -2,11 +2,11 @@
stdenv.mkDerivation rec {
name = "gnome-getting-started-docs-${version}";
version = "3.26.2";
version = "3.28.0";
src = fetchurl {
url = "mirror://gnome/sources/gnome-getting-started-docs/${gnome3.versionBranch version}/${name}.tar.xz";
sha256 = "34f45f6b5759a46547e834f1b706ae7485fd94e1af5354154420d8910ec67775";
sha256 = "09khgzrbvcqvgjkqh8rp609bx818v5c8gzq61nxy5582s8habg8g";
};
passthru = {

View File

@ -1,26 +1,26 @@
{ stdenv, fetchurl, pkgconfig, gnome3, gtk3, wrapGAppsHook
, intltool, itstool, libxml2, systemd }:
, gettext, itstool, libxml2, libxslt, docbook_xsl, docbook_xml_dtd_43, systemd }:
stdenv.mkDerivation rec {
name = "gnome-logs-${version}";
version = "3.26.3";
version = "3.28.0";
src = fetchurl {
url = "mirror://gnome/sources/gnome-logs/${gnome3.versionBranch version}/${name}.tar.xz";
sha256 = "0cbzl38haz1m6y7gcbvvab0jcrva781izhp8xv2dzmma4xlzdw0k";
};
passthru = {
updateScript = gnome3.updateScript { packageName = "gnome-logs"; attrPath = "gnome3.gnome-logs"; };
sha256 = "0j3wkbz7c2snmx4kjmh767175nf2lqxx2p8b8xa2qslknxc3gq6b";
};
configureFlags = [ "--disable-tests" ];
nativeBuildInputs = [ pkgconfig ];
buildInputs = [
gtk3 wrapGAppsHook intltool itstool libxml2
systemd gnome3.gsettings-desktop-schemas gnome3.defaultIconTheme
];
nativeBuildInputs = [ pkgconfig wrapGAppsHook gettext itstool libxml2 libxslt docbook_xsl docbook_xml_dtd_43 ];
buildInputs = [ gtk3 systemd gnome3.gsettings-desktop-schemas gnome3.defaultIconTheme ];
passthru = {
updateScript = gnome3.updateScript {
packageName = "gnome-logs";
attrPath = "gnome3.gnome-logs";
};
};
meta = with stdenv.lib; {
homepage = https://wiki.gnome.org/Apps/Logs;

View File

@ -1,31 +1,31 @@
{ stdenv, fetchurl, intltool, pkgconfig, gnome3, gtk3
, gobjectIntrospection, gdk_pixbuf, librsvg, libgweather, autoreconfHook
, geoclue2, wrapGAppsHook, folks, libchamplain, gfbgraph, file, libsoup
, webkitgtk }:
, webkitgtk, gjs, libgee, geocode-glib, evolution-data-server, gnome-online-accounts }:
stdenv.mkDerivation rec {
name = "gnome-maps-${version}";
version = "3.26.2";
let
pname = "gnome-maps";
version = "3.28.0";
in stdenv.mkDerivation rec {
name = "${pname}-${version}";
src = fetchurl {
url = "mirror://gnome/sources/gnome-maps/${gnome3.versionBranch version}/${name}.tar.xz";
sha256 = "031d5c4a1aa79f1fbaf87f01fb790f7aab1d8dcd5d061cb5daf0fa96eaa18050";
};
passthru = {
updateScript = gnome3.updateScript { packageName = "gnome-maps"; attrPath = "gnome3.gnome-maps"; };
url = "mirror://gnome/sources/${pname}/${gnome3.versionBranch version}/${name}.tar.xz";
sha256 = "1imcgw67cw1qkfz8m2my0f4qmss11fbqqqi4w7afcfq9p0rplgy0";
};
doCheck = true;
nativeBuildInputs = [ pkgconfig ];
buildInputs = [ intltool gobjectIntrospection wrapGAppsHook
gtk3 geoclue2 gnome3.gjs gnome3.libgee folks gfbgraph
gnome3.geocode-glib libchamplain file libsoup
gdk_pixbuf librsvg libgweather autoreconfHook
gnome3.gsettings-desktop-schemas gnome3.evolution-data-server
gnome3.gnome-online-accounts gnome3.defaultIconTheme
webkitgtk ];
nativeBuildInputs = [ intltool wrapGAppsHook file autoreconfHook pkgconfig ];
buildInputs = [
gobjectIntrospection
gtk3 geoclue2 gjs libgee folks gfbgraph
geocode-glib libchamplain libsoup
gdk_pixbuf librsvg libgweather
gnome3.gsettings-desktop-schemas evolution-data-server
gnome-online-accounts gnome3.defaultIconTheme
webkitgtk
];
# The .service file isn't wrapped with the correct environment
# so misses GIR files when started. By re-pointing from the gjs
@ -37,6 +37,13 @@ stdenv.mkDerivation rec {
"Exec=$out/bin/gnome-maps"
'';
passthru = {
updateScript = gnome3.updateScript {
packageName = pname;
attrPath = "gnome3.${pname}";
};
};
meta = with stdenv.lib; {
homepage = https://wiki.gnome.org/Apps/Maps;
description = "A map application for GNOME 3";

View File

@ -1,36 +1,47 @@
{ stdenv, intltool, fetchurl, gdk_pixbuf, tracker, tracker-miners
, libxml2, python3Packages, libnotify, wrapGAppsHook
, pkgconfig, gtk3, glib, cairo
, makeWrapper, itstool, gnome3, librsvg, gst_all_1 }:
{ stdenv, meson, ninja, gettext, fetchurl, gdk_pixbuf, tracker
, libxml2, python3, libnotify, wrapGAppsHook, libmediaart
, gobjectIntrospection, gnome-online-accounts, grilo, grilo-plugins
, pkgconfig, gtk3, glib, cairo, desktop-file-utils, appstream-glib
, itstool, gnome3, gst_all_1 }:
stdenv.mkDerivation rec {
name = "gnome-music-${version}";
version = "3.26.2";
python3.pkgs.buildPythonApplication rec {
pname = "gnome-music";
version = "3.28.0.1";
format = "other";
src = fetchurl {
url = "mirror://gnome/sources/gnome-music/${gnome3.versionBranch version}/${name}.tar.xz";
sha256 = "0mam7d0lzl7ljd9lym9gkvqwvddic122sdmcgpjir58pmmg9bx8b";
url = "mirror://gnome/sources/${pname}/${gnome3.versionBranch version}/${pname}-${version}.tar.xz";
sha256 = "0yyysmxwmk167n8wghcbmxz73kgl1y1j9js3mgkjjqsmkd9brk65";
};
nativeBuildInputs = [ meson ninja gettext itstool pkgconfig libxml2 wrapGAppsHook desktop-file-utils appstream-glib gobjectIntrospection ];
buildInputs = with gst_all_1; [
gtk3 glib libmediaart gnome-online-accounts
gdk_pixbuf gnome3.defaultIconTheme python3
grilo grilo-plugins libnotify
gnome3.gsettings-desktop-schemas tracker
gstreamer gst-plugins-base gst-plugins-good gst-plugins-bad
];
propagatedBuildInputs = with python3.pkgs; [ pycairo dbus-python requests pygobject3 ];
postPatch = ''
for f in meson_post_conf.py meson_post_install.py; do
chmod +x $f
patchShebangs $f
done
'';
doCheck = false;
passthru = {
updateScript = gnome3.updateScript { packageName = "gnome-music"; attrPath = "gnome3.gnome-music"; };
updateScript = gnome3.updateScript {
packageName = pname;
attrPath = "gnome3.${pname}";
};
};
propagatedUserEnvPkgs = [ gnome3.gnome-themes-standard ];
nativeBuildInputs = [ pkgconfig ];
buildInputs = [ gtk3 glib intltool itstool gnome3.libmediaart
gdk_pixbuf gnome3.defaultIconTheme librsvg python3Packages.python
gnome3.grilo gnome3.grilo-plugins gnome3.totem-pl-parser libxml2 libnotify
python3Packages.pycairo python3Packages.dbus-python python3Packages.requests
python3Packages.pygobject3 gst_all_1.gstreamer gst_all_1.gst-plugins-base
gst_all_1.gst-plugins-good gst_all_1.gst-plugins-bad wrapGAppsHook
gnome3.gsettings-desktop-schemas makeWrapper tracker tracker-miners ];
wrapPrefixVariables = [ "PYTHONPATH" ];
enableParallelBuilding = true;
meta = with stdenv.lib; {
homepage = https://wiki.gnome.org/Apps/Music;
description = "Music player and management application for the GNOME desktop environment";

View File

@ -1,43 +1,48 @@
{ stdenv, intltool, fetchurl, exempi, libxml2
{ stdenv, gettext, fetchurl, libxml2, libgdata
, pkgconfig, gtk3, glib, tracker, tracker-miners
, makeWrapper, itstool, gegl, babl, lcms2
, desktop-file-utils, gmp, libmediaart, wrapGAppsHook
, gnome3, librsvg, gdk_pixbuf, libexif, gexiv2, geocode-glib
, itstool, gegl, babl, libdazzle, gfbgraph, grilo-plugins
, grilo, gnome-online-accounts
, desktop-file-utils, wrapGAppsHook
, gnome3, gdk_pixbuf, gexiv2, geocode-glib
, dleyna-renderer }:
stdenv.mkDerivation rec {
name = "gnome-photos-${version}";
version = "3.26.3";
let
pname = "gnome-photos";
version = "3.28.0";
in stdenv.mkDerivation rec {
name = "${pname}-${version}";
src = fetchurl {
url = "mirror://gnome/sources/gnome-photos/${gnome3.versionBranch version}/${name}.tar.xz";
sha256 = "028de4c8662b7d1dc3ca6c3fbe3ce7f6bb90dd097708e99f235a409756dbadab";
};
passthru = {
updateScript = gnome3.updateScript { packageName = "gnome-photos"; attrPath = "gnome3.gnome-photos"; };
url = "mirror://gnome/sources/${pname}/${gnome3.versionBranch version}/${name}.tar.xz";
sha256 = "1n280j7crgwlzyf09j66f1zkrnnhfrr8pshn824njs1xyk3g0q11";
};
# doCheck = true;
NIX_CFLAGS_COMPILE = "-I${gnome3.glib.dev}/include/gio-unix-2.0";
nativeBuildInputs = [ pkgconfig gettext itstool libxml2 desktop-file-utils wrapGAppsHook ];
buildInputs = [
gtk3 glib gegl babl libgdata libdazzle
gnome3.gsettings-desktop-schemas
gdk_pixbuf gnome3.defaultIconTheme
gfbgraph grilo-plugins grilo
gnome-online-accounts tracker
gexiv2 geocode-glib dleyna-renderer
tracker-miners # For 'org.freedesktop.Tracker.Miner.Files' GSettings schema
];
nativeBuildInputs = [ pkgconfig ];
buildInputs = [ gtk3 glib intltool itstool gegl babl gnome3.libgdata
gnome3.gsettings-desktop-schemas makeWrapper gmp libmediaart
gdk_pixbuf gnome3.defaultIconTheme librsvg exempi
gnome3.gfbgraph gnome3.grilo-plugins gnome3.grilo
gnome3.gnome-online-accounts gnome3.gnome-desktop
lcms2 libexif tracker tracker-miners libxml2 desktop-file-utils
wrapGAppsHook gexiv2 geocode-glib dleyna-renderer ];
enableParallelBuilding = true;
passthru = {
updateScript = gnome3.updateScript {
packageName = pname;
attrPath = "gnome3.${pname}";
};
};
meta = with stdenv.lib; {
homepage = https://wiki.gnome.org/Apps/Photos;
description = "Photos is an application to access, organize and share your photos with GNOME 3";
description = "Access, organize and share your photos";
maintainers = gnome3.maintainers;
license = licenses.gpl2;
license = licenses.gpl3Plus;
platforms = platforms.linux;
};
}

View File

@ -1,5 +1,5 @@
{ stdenv
, intltool
, gettext
, fetchurl
, pkgconfig
, gtk3
@ -11,27 +11,30 @@
, wrapGAppsHook
, gnome3 }:
stdenv.mkDerivation rec {
name = "gnome-power-manager-${version}";
let
pname = "gnome-power-manager";
version = "3.26.0";
in stdenv.mkDerivation rec {
name = "${pname}-${version}";
src = fetchurl {
url = "mirror://gnome/sources/gnome-power-manager/${gnome3.versionBranch version}/${name}.tar.xz";
url = "mirror://gnome/sources/${pname}/${gnome3.versionBranch version}/${name}.tar.xz";
sha256 = "20aee0b0b4015e7cc6fbabc3cbc4344c07c230fe3d195e90c8ae0dc5d55a2d4e";
};
passthru = {
updateScript = gnome3.updateScript { packageName = "gnome-power-manager"; attrPath = "gnome3.gnome-power-manager"; };
updateScript = gnome3.updateScript {
packageName = pname;
attrPath = "gnome3.${pname}";
};
};
propagatedUserEnvPkgs = [ gnome3.gnome-themes-standard ];
nativeBuildInputs = [
meson
ninja
pkgconfig
wrapGAppsHook
intltool
gettext
# needed by meson_post_install.sh
glib.dev
@ -45,10 +48,8 @@ stdenv.mkDerivation rec {
gnome3.defaultIconTheme
];
enableParallelBuilding = true;
meta = with stdenv.lib; {
homepage = https://projects.gnome.org/gnome-power-manager/;
homepage = https://projects-old.gnome.org/gnome-power-manager/;
description = "View battery and power statistics provided by UPower";
maintainers = gnome3.maintainers;
license = licenses.gpl2Plus;

View File

@ -1,5 +1,5 @@
{ stdenv, fetchurl, pkgconfig, gnome3, gtk3, wrapGAppsHook, gjs
, libgweather, intltool, itstool, geoclue2 }:
{ stdenv, fetchurl, pkgconfig, gnome3, gtk3, wrapGAppsHook, gjs, gobjectIntrospection
, libgweather, intltool, itstool, geoclue2, gnome-desktop }:
stdenv.mkDerivation rec {
name = "gnome-weather-${version}";
@ -10,13 +10,9 @@ stdenv.mkDerivation rec {
sha256 = "965cc0d1b4d4e53c06d494db96f0b124d232af5c0e731ca900edd10f77a74c78";
};
passthru = {
updateScript = gnome3.updateScript { packageName = "gnome-weather"; attrPath = "gnome3.gnome-weather"; };
};
nativeBuildInputs = [ pkgconfig ];
nativeBuildInputs = [ pkgconfig intltool itstool wrapGAppsHook ];
buildInputs = [
gtk3 wrapGAppsHook gjs intltool itstool
gtk3 gjs gobjectIntrospection gnome-desktop
libgweather gnome3.defaultIconTheme geoclue2 gnome3.gsettings-desktop-schemas
];
@ -30,6 +26,13 @@ stdenv.mkDerivation rec {
"Exec=$out/bin/gnome-weather"
'';
passthru = {
updateScript = gnome3.updateScript {
packageName = "gnome-weather";
attrPath = "gnome3.gnome-weather";
};
};
meta = with stdenv.lib; {
homepage = https://wiki.gnome.org/Apps/Weather;
description = "Access current weather conditions and forecasts";

View File

@ -1,18 +1,27 @@
{ stdenv, fetchurl, meson, ninja, glib, pkgconfig, gnome3, appstream-glib, gettext }:
stdenv.mkDerivation rec {
name = "nautilus-sendto-${version}";
let
pname = "nautilus-sendto";
version = "3.8.6";
in stdenv.mkDerivation rec {
name = "${pname}-${version}";
src = fetchurl {
url = "mirror://gnome/sources/nautilus-sendto/3.8/${name}.tar.xz";
url = "mirror://gnome/sources/${pname}/3.8/${name}.tar.xz";
sha256 = "164d7c6e8bae29c4579bcc67a7bf50d783662b1545b62f3008e7ea3c0410e04d";
};
nativeBuildInputs = [ meson ninja pkgconfig appstream-glib gettext ];
buildInputs = [ glib ];
passthru = {
updateScript = gnome3.updateScript {
packageName = pname;
attrPath = "gnome3.${pname}";
};
};
meta = with stdenv.lib; {
description = "Integrates Evolution and Pidgin into the Nautilus file manager";
maintainers = gnome3.maintainers;

View File

@ -3,34 +3,35 @@
, pkgconfig, gtk3, glib, libsecret, libsoup, gobjectIntrospection, appstream-glib
, gnome3, wrapGAppsHook, telepathy-logger, gspell }:
stdenv.mkDerivation rec {
name = "polari-${version}";
version = "3.26.2";
let
pname = "polari";
version = "3.28.0";
in stdenv.mkDerivation rec {
name = "${pname}-${version}";
src = fetchurl {
url = "mirror://gnome/sources/polari/${gnome3.versionBranch version}/${name}.tar.xz";
sha256 = "2f36361dacf5d924d134f231fdb36ec4539f7495fce325d9b2f2728bd17cc190";
};
passthru = {
updateScript = gnome3.updateScript { packageName = "polari"; attrPath = "gnome3.polari"; };
url = "mirror://gnome/sources/${pname}/${gnome3.versionBranch version}/${name}.tar.xz";
sha256 = "08zgdqrnxl752nv0gac1k7wvjd4j7h5n4c0flrq7q337p40k3dd5";
};
propagatedUserEnvPkgs = [ telepathy-idle telepathy-logger ];
nativeBuildInputs = [ meson ninja pkgconfig itstool gettext wrapGAppsHook libxml2
desktop-file-utils gobjectIntrospection appstream-glib ];
buildInputs = [ gtk3 glib adwaita-icon-theme gnome3.gsettings-desktop-schemas
telepathy-glib telepathy-logger gjs gspell gdk_pixbuf libsecret libsoup ];
patches = [
(fetchpatch {
url = https://gitlab.gnome.org/jtojnar/polari/commit/a6733a6ad95eac1813e7b18e3d0018a22ee7a377.diff;
sha256 = "0f5ll49h5w0477lkh67kaa2j83z376z1jk7z3i2v7cq4d3hi5lf9";
})
nativeBuildInputs = [
meson ninja pkgconfig itstool gettext wrapGAppsHook libxml2
desktop-file-utils gobjectIntrospection appstream-glib
];
enableParallelBuilding = true;
buildInputs = [
gtk3 glib adwaita-icon-theme gnome3.gsettings-desktop-schemas
telepathy-glib telepathy-logger gjs gspell gdk_pixbuf libsecret libsoup
];
passthru = {
updateScript = gnome3.updateScript {
packageName = pname;
attrPath = "gnome3.${pname}";
};
};
meta = with stdenv.lib; {
homepage = https://wiki.gnome.org/Apps/Polari;

View File

@ -3,11 +3,11 @@
stdenv.mkDerivation rec {
name = "adwaita-icon-theme-${version}";
version = "3.26.1";
version = "3.28.0";
src = fetchurl {
url = "mirror://gnome/sources/adwaita-icon-theme/${gnome3.versionBranch version}/${name}.tar.xz";
sha256 = "28ba7392c7761996efd780779167ea6c940eedfb1bf37cfe9bccb7021f54d79d";
sha256 = "0l114ildlb3lz3xymfxxi0wpr2x21rd3cg8slb8jyxynzwfqrbks";
};
passthru = {

View File

@ -1,34 +1,34 @@
{ stdenv, intltool, fetchurl, vala, libgtop
, pkgconfig, gtk3, glib
, bash, wrapGAppsHook, itstool, libxml2
, gnome3, librsvg, gdk_pixbuf, file }:
{ stdenv, gettext, fetchurl, vala, desktop-file-utils
, meson, ninja, pkgconfig, gtk3, glib, libxml2
, wrapGAppsHook, itstool, gnome3 }:
stdenv.mkDerivation rec {
name = "baobab-${version}";
version = "3.26.1";
let
pname = "baobab";
version = "3.28.0";
in stdenv.mkDerivation rec {
name = "${pname}-${version}";
src = fetchurl {
url = "mirror://gnome/sources/baobab/${gnome3.versionBranch version}/${name}.tar.xz";
sha256 = "7a59ab5945f5d90725231b10d85a1893403f56660b1627c111d2b4eeb1ef787e";
url = "mirror://gnome/sources/${pname}/${gnome3.versionBranch version}/${name}.tar.xz";
sha256 = "0qsx7vx5c3n4yxlxbr11sppw7qwcv9z3g45b5xb9y7wxw5lv42sk";
};
passthru = {
updateScript = gnome3.updateScript { packageName = "baobab"; };
};
nativeBuildInputs = [ meson ninja pkgconfig vala gettext itstool libxml2 desktop-file-utils wrapGAppsHook ];
buildInputs = [ gtk3 glib gnome3.defaultIconTheme ];
doCheck = true;
NIX_CFLAGS_COMPILE = "-I${gnome3.glib.dev}/include/gio-unix-2.0";
nativeBuildInputs = [ pkgconfig ];
buildInputs = [ vala gtk3 glib libgtop intltool itstool libxml2
wrapGAppsHook file gdk_pixbuf gnome3.defaultIconTheme librsvg ];
passthru = {
updateScript = gnome3.updateScript {
packageName = pname;
};
};
meta = with stdenv.lib; {
homepage = https://wiki.gnome.org/Apps/Baobab;
description = "Graphical application to analyse disk usage in any Gnome environment";
maintainers = gnome3.maintainers;
description = "Graphical application to analyse disk usage in any GNOME environment";
homepage = https://wiki.gnome.org/Apps/DiskUsageAnalyzer;
license = licenses.gpl2;
maintainers = gnome3.maintainers;
platforms = platforms.linux;
};
}

View File

@ -1,24 +1,33 @@
{ stdenv, fetchurl, vala, libxslt, pkgconfig, glib, dbus-glib, gnome3
, libxml2, intltool, docbook_xsl_ns, docbook_xsl, wrapGAppsHook }:
{ stdenv, fetchurl, meson, ninja, vala, libxslt, pkgconfig, glib, dbus-glib, gtk3, gnome3
, libxml2, gettext, docbook_xsl, wrapGAppsHook, gobjectIntrospection }:
stdenv.mkDerivation rec {
name = "dconf-editor-${version}";
version = "3.26.2";
let
pname = "dconf-editor";
version = "3.28.0";
in stdenv.mkDerivation rec {
name = "${pname}-${version}";
src = fetchurl {
url = "mirror://gnome/sources/dconf-editor/${gnome3.versionBranch version}/${name}.tar.xz";
sha256 = "28b453fe49c49d7dfaf07c85c01d7495913f93ab64a0b223c117eb17d1cb8ad1";
url = "mirror://gnome/sources/${pname}/${gnome3.versionBranch version}/${name}.tar.xz";
sha256 = "0nhcpwqrkmpxbhaf0cafvy6dlp6s7vhm5vknl4lgs3l24zc56ns5";
};
nativeBuildInputs = [ meson ninja vala libxslt pkgconfig wrapGAppsHook gettext docbook_xsl libxml2 gobjectIntrospection ];
buildInputs = [ glib dbus-glib gtk3 gnome3.defaultIconTheme gnome3.dconf ];
postPatch = ''
chmod +x meson_post_install.py
patchShebangs meson_post_install.py
'';
passthru = {
updateScript = gnome3.updateScript { packageName = "dconf-editor"; attrPath = "gnome3.dconf-editor"; };
updateScript = gnome3.updateScript {
packageName = "${pname}";
attrPath = "gnome3.${pname}";
};
};
nativeBuildInputs = [ pkgconfig wrapGAppsHook ];
buildInputs = [ vala libxslt glib dbus-glib gnome3.gtk libxml2 gnome3.defaultIconTheme
intltool docbook_xsl docbook_xsl_ns gnome3.dconf ];
meta = with stdenv.lib; {
platforms = platforms.linux;
maintainers = gnome3.maintainers;

View File

@ -1,28 +1,28 @@
{ stdenv, fetchurl, vala, libxslt, pkgconfig, glib, dbus-glib, gnome3
, libxml2, intltool, docbook_xsl_ns, docbook_xsl, makeWrapper }:
{ stdenv, fetchurl, meson, ninja, python3, vala, libxslt, pkgconfig, glib, dbus-glib, gnome3
, libxml2, docbook_xsl, makeWrapper }:
let
pname = "dconf";
in
stdenv.mkDerivation rec {
name = "${pname}-${version}";
version = "0.26.1";
version = "0.28.0";
src = fetchurl {
url = "mirror://gnome/sources/${pname}/${gnome3.versionBranch version}/${name}.tar.xz";
sha256 = "0da587hpiqy8h3pswn1102h4b905x8k6mk3ajpi7kf4kzkvv30ym";
sha256 = "0hn7v6769xabqz7kvyb2hfm19h46z1whkair7ff752zmbs3b7lv1";
};
postPatch = ''
chmod +x meson_post_install.py
patchShebangs meson_post_install.py
'';
outputs = [ "out" "lib" "dev" ];
nativeBuildInputs = [ vala pkgconfig intltool libxslt libxml2 docbook_xsl docbook_xsl_ns makeWrapper ];
nativeBuildInputs = [ meson ninja vala pkgconfig python3 libxslt libxml2 docbook_xsl ];
buildInputs = [ glib dbus-glib ];
postConfigure = stdenv.lib.optionalString stdenv.isDarwin ''
substituteInPlace client/Makefile \
--replace "-soname=libdconf.so.1" "-install_name,libdconf.so.1"
'';
passthru = {
updateScript = gnome3.updateScript {
packageName = pname;

View File

@ -11,11 +11,11 @@
stdenv.mkDerivation rec {
name = "empathy-${version}";
version = "3.12.14";
version = "3.25.90";
src = fetchurl {
url = "mirror://gnome/sources/empathy/${gnome3.versionBranch version}/${name}.tar.xz";
sha256 = "7d86942ce97edd10ade0e6ae6a210d35e4d627fe4d223377d71fd1840bc6e3a3";
sha256 = "0sn10fcymc6lyrabk7vx8lpvlaxxkqnmcwj9zdkfa8qf3388k4nc";
};
passthru = {

View File

@ -1,30 +1,42 @@
{ fetchurl, stdenv, gettext, pkgconfig, itstool, libxml2, libjpeg, gnome3
{ fetchurl, stdenv, meson, ninja, gettext, itstool, pkgconfig, libxml2, libjpeg, libpeas, gnome3
, gtk3, glib, gsettings-desktop-schemas, adwaita-icon-theme, gnome-desktop, lcms2, gdk_pixbuf, exempi
, shared-mime-info, wrapGAppsHook, librsvg, libexif, gobjectIntrospection }:
stdenv.mkDerivation rec {
name = "eog-${version}";
version = "3.26.2";
let
pname = "eog";
version = "3.28.0";
in stdenv.mkDerivation rec {
name = "${pname}-${version}";
src = fetchurl {
url = "mirror://gnome/sources/eog/${gnome3.versionBranch version}/${name}.tar.xz";
sha256 = "b53e3d4dfa7d0085b829a5fb95f148a099803c00ef276be7685efd5ec38807ad";
url = "mirror://gnome/sources/${pname}/${gnome3.versionBranch version}/${name}.tar.xz";
sha256 = "0d8fi5ydsh8n7d85dps8svl1bhid1p8jbnlwiqywj2gd2wpxpyjv";
};
nativeBuildInputs = [ meson ninja pkgconfig gettext itstool wrapGAppsHook libxml2 gobjectIntrospection ];
buildInputs = [
libjpeg gtk3 gdk_pixbuf glib libpeas librsvg lcms2 gnome-desktop libexif exempi
gsettings-desktop-schemas shared-mime-info adwaita-icon-theme
];
postPatch = ''
chmod +x meson_post_install.py
patchShebangs meson_post_install.py
'';
passthru = {
updateScript = gnome3.updateScript { packageName = "eog"; attrPath = "gnome3.eog"; };
updateScript = gnome3.updateScript {
packageName = pname;
attrPath = "gnome3.${pname}";
};
};
nativeBuildInputs = [ pkgconfig gettext itstool wrapGAppsHook gobjectIntrospection ];
buildInputs = with gnome3;
[ libxml2 libjpeg gtk glib libpeas librsvg
gsettings-desktop-schemas shared-mime-info adwaita-icon-theme
gnome-desktop libexif dconf ];
meta = with stdenv.lib; {
homepage = https://wiki.gnome.org/Apps/EyeOfGnome;
platforms = platforms.linux;
description = "GNOME image viewer";
homepage = https://wiki.gnome.org/Apps/EyeOfGnome;
license = licenses.gpl2Plus;
maintainers = gnome3.maintainers;
platforms = platforms.unix;
};
}

View File

@ -6,11 +6,11 @@
stdenv.mkDerivation rec {
name = "epiphany-${version}";
version = "3.26.6";
version = "3.28.0.1";
src = fetchurl {
url = "mirror://gnome/sources/epiphany/${gnome3.versionBranch version}/${name}.tar.xz";
sha256 = "1a1hyv326w4in4pl26gi2n3p9b38ih6zjdiigpqy0aiibnjnmc81";
sha256 = "023q6xnwsafac38lavxwgph5lcd2igxpiwqb4kr72mv56xlb0m3i";
};
passthru = {
@ -38,13 +38,6 @@ stdenv.mkDerivation rec {
patchShebangs post_install.py
'';
postFixup = ''
# Patched meson does not add internal libraries to rpath
for f in $out/bin/.*-wrapped $out/libexec/.*-wrapped $out/libexec/epiphany/.*-wrapped $out/lib/epiphany/*.so $out/lib/epiphany/web-extensions/*.so; do
patchelf --set-rpath "$out/lib/epiphany:$(patchelf --print-rpath $f)" "$f"
done
'';
meta = with stdenv.lib; {
homepage = https://wiki.gnome.org/Apps/Epiphany;
description = "WebKit based web browser for GNOME";

View File

@ -26,7 +26,7 @@ stdenv.mkDerivation rec {
buildInputs = [
glib gtk3 pango atk gdk_pixbuf libxml2
gnome3.libgnome-keyring gnome3.gsettings-desktop-schemas
gnome3.gsettings-desktop-schemas
poppler ghostscriptX djvulibre libspectre
libsecret librsvg gnome3.adwaita-icon-theme
] ++ stdenv.lib.optional supportXPS gnome3.libgxps;

View File

@ -1,24 +1,22 @@
{ fetchurl, stdenv, pkgconfig, gnome3, python3, dconf
{ fetchurl, stdenv, pkgconfig, gnome3, python3, dconf, gobjectIntrospection
, intltool, libsoup, libxml2, libsecret, icu, sqlite
, p11-kit, db, nspr, nss, libical, gperf, makeWrapper, valaSupport ? true
, p11-kit, db, nspr, nss, libical, gperf, makeWrapper
, vala, cmake, ninja, kerberos, openldap, webkitgtk, libaccounts-glib, json-glib }:
stdenv.mkDerivation rec {
name = "evolution-data-server-${version}";
version = "3.26.6";
version = "3.28.0";
outputs = [ "out" "dev" ];
src = fetchurl {
url = "mirror://gnome/sources/evolution-data-server/${gnome3.versionBranch version}/${name}.tar.xz";
sha256 = "1v0hwlrlm23bz5dmamdavm771f4gs64fyq82argrc0nwgn2a2fp4";
};
passthru = {
updateScript = gnome3.updateScript { packageName = "evolution-data-server"; };
sha256 = "1ybyyy6nls11az8lbri1y9527snz5h7qbhyfqvk0vc6vzvald5gv";
};
nativeBuildInputs = [
cmake ninja pkgconfig intltool python3 gperf makeWrapper
] ++ stdenv.lib.optional valaSupport vala;
cmake ninja pkgconfig intltool python3 gperf makeWrapper gobjectIntrospection vala
];
buildInputs = with gnome3; [
glib libsoup libxml2 gtk gnome-online-accounts
gcr p11-kit libgweather libgdata libaccounts-glib json-glib
@ -27,16 +25,14 @@ stdenv.mkDerivation rec {
propagatedBuildInputs = [ libsecret nss nspr libical db ];
# uoa irrelevant for now
cmakeFlags = [
"-DENABLE_UOA=OFF"
] ++ stdenv.lib.optionals valaSupport [
"-DENABLE_VALA_BINDINGS=ON"
"-DENABLE_INTROSPECTION=ON"
"-DCMAKE_SKIP_BUILD_RPATH=OFF"
"-DINCLUDE_INSTALL_DIR=${placeholder "dev"}/include"
];
enableParallelBuilding = true;
preFixup = ''
for f in $(find $out/libexec/ -type f -executable); do
@ -46,7 +42,15 @@ stdenv.mkDerivation rec {
done
'';
passthru = {
updateScript = gnome3.updateScript {
packageName = "evolution-data-server";
};
};
meta = with stdenv.lib; {
description = "Unified backend for programs that work with contacts, tasks, and calendar information";
homepage = https://wiki.gnome.org/Apps/Evolution;
license = licenses.lgpl2;
maintainers = gnome3.maintainers;
platforms = platforms.linux;

View File

@ -4,11 +4,11 @@
stdenv.mkDerivation rec {
name = "gcr-${version}";
version = "3.20.0";
version = "3.28.0";
src = fetchurl {
url = "mirror://gnome/sources/gcr/${gnome3.versionBranch version}/${name}.tar.xz";
sha256 = "90572c626d8a708225560c42b4421f7941315247fa1679d4ef569bde7f4bb379";
sha256 = "02xgky22xgvhgd525khqh64l5i21ca839fj9jzaqdi3yvb8pbq8m";
};
passthru = {

View File

@ -5,11 +5,11 @@
stdenv.mkDerivation rec {
name = "gdm-${version}";
version = "3.26.2.1";
version = "3.28.0";
src = fetchurl {
url = "mirror://gnome/sources/gdm/${gnome3.versionBranch version}/${name}.tar.xz";
sha256 = "17ddcb00602c2b426de58bb4b0d99af9de27450a8557dcc5ec850c080d55ad57";
sha256 = "0i5rzr6fdvlm88gl85gvql1wf1yflkmg90x81dqjf39as3ixs81s";
};
passthru = {

View File

@ -1,24 +1,38 @@
{ fetchurl, stdenv, pkgconfig, gnome3, intltool, libsoup, json-glib }:
{ fetchurl, stdenv, meson, ninja, pkgconfig, gettext, gtk-doc, docbook_xsl, gobjectIntrospection, gnome3, libsoup, json-glib }:
stdenv.mkDerivation rec {
name = "geocode-glib-${version}";
version = "3.24.0";
version = "3.25.4.1";
outputs = [ "out" "dev" "installedTests" ];
src = fetchurl {
url = "mirror://gnome/sources/geocode-glib/${gnome3.versionBranch version}/${name}.tar.xz";
sha256 = "19c1fef4fd89eb4bfe6decca45ac45a2eca9bb7933be560ce6c172194840c35e";
sha256 = "0y6p5l2jrr78p7l4hijjhclzbap005y6h06g3aiglg9i5hk6j0gi";
};
nativeBuildInputs = with gnome3; [ meson ninja pkgconfig gettext gtk-doc docbook_xsl gobjectIntrospection ];
buildInputs = with gnome3; [ glib libsoup json-glib ];
patches = [
./installed-tests-path.patch
];
postPatch = ''
substituteInPlace geocode-glib/tests/meson.build --subst-var-by "installedTests" "$installedTests"
'';
passthru = {
updateScript = gnome3.updateScript { packageName = "geocode-glib"; attrPath = "gnome3.geocode-glib"; };
updateScript = gnome3.updateScript {
packageName = "geocode-glib";
attrPath = "gnome3.geocode-glib";
};
};
buildInputs = with gnome3;
[ intltool pkgconfig glib libsoup json-glib ];
meta = with stdenv.lib; {
platforms = platforms.linux;
description = "A convenience library for the geocoding and reverse geocoding using Nominatim service";
license = licenses.lgpl2Plus;
maintainers = gnome3.maintainers;
platforms = platforms.linux;
};
}

View File

@ -0,0 +1,8 @@
--- a/geocode-glib/tests/meson.build
+++ b/geocode-glib/tests/meson.build
@@ -1,4 +1,4 @@
-install_dir = get_option('libexecdir') + '/installed-tests/geocode-glib'
+install_dir = '@installedTests@/libexec/installed-tests/geocode-glib'
e = executable('geo-uri',
'geo-uri.c',

View File

@ -4,11 +4,11 @@
stdenv.mkDerivation rec {
name = "gjs-${version}";
version = "1.50.4";
version = "1.52.0";
src = fetchurl {
url = "mirror://gnome/sources/gjs/${gnome3.versionBranch version}/${name}.tar.xz";
sha256 = "b336e8709347e3c94245f6cbc3465f9a49f3ae491a25f49f8a97268f5235b93a";
sha256 = "1jm40imin4sxzfcxcbmf4v71apk8y9icccq1a4m4mlz1wm2s092m";
};
passthru = {

View File

@ -1,19 +1,19 @@
{ stdenv, fetchurl, pkgconfig, gnome3, intltool }:
{ stdenv, fetchurl, meson, ninja, pkgconfig, gnome3, gettext }:
stdenv.mkDerivation rec {
name = "gnome-backgrounds-${version}";
version = "3.26.2";
version = "3.28.0";
src = fetchurl {
url = "mirror://gnome/sources/gnome-backgrounds/${gnome3.versionBranch version}/${name}.tar.xz";
sha256 = "3a8ba8d3463d70bce2377b168218e32367c0020f2d0caf611e7e39066081f94f";
sha256 = "1qgim0yhzjgcq172y4vp5hqz4rh1ak38a7pgi6s7dq0wklyrcnxj";
};
passthru = {
updateScript = gnome3.updateScript { packageName = "gnome-backgrounds"; attrPath = "gnome3.gnome-backgrounds"; };
};
nativeBuildInputs = [ pkgconfig intltool ];
nativeBuildInputs = [ meson ninja pkgconfig gettext ];
meta = with stdenv.lib; {
platforms = platforms.unix;

View File

@ -3,11 +3,11 @@
stdenv.mkDerivation rec {
name = "gnome-bluetooth-${version}";
version = "3.26.1";
version = "3.28.0";
src = fetchurl {
url = "mirror://gnome/sources/gnome-bluetooth/${gnome3.versionBranch version}/${name}.tar.xz";
sha256 = "1d2c7b94fc76a833dad0d4d91344e9a5a7b4aad740c5a90944bd25c5be7e784f";
sha256 = "0q7yzklrlayj99risj096mr5x35anx94wvr6nbf6pwbvvzv7453p";
};
passthru = {

View File

@ -1,33 +1,43 @@
{ stdenv, intltool, fetchurl, pkgconfig, libxml2
, bash, gtk3, glib, wrapGAppsHook
, itstool, gnome3, librsvg, gdk_pixbuf, mpfr, gmp, libsoup, libmpc }:
{ stdenv, meson, ninja, vala, gettext, itstool, fetchurl, pkgconfig, libxml2
, gtk3, glib, gtksourceview3, wrapGAppsHook, gobjectIntrospection
, gnome3, mpfr, gmp, libsoup, libmpc }:
stdenv.mkDerivation rec {
name = "gnome-calculator-${version}";
version = "3.26.0";
version = "3.28.0";
src = fetchurl {
url = "mirror://gnome/sources/gnome-calculator/${gnome3.versionBranch version}/${name}.tar.xz";
sha256 = "62215b37fcd73a6bbb106ebd0f25051c81ff0cf6ad84fd4a3ea176bceb5863c7";
sha256 = "1qnfvmf615v52c8h1f6zxbvpywi3512hnzyf9azvxb8a6q0rx1vn";
};
nativeBuildInputs = [
meson ninja pkgconfig vala gettext itstool wrapGAppsHook
gobjectIntrospection # for finding vapi files
];
buildInputs = [
gtk3 glib libxml2 gtksourceview3 mpfr gmp
gnome3.defaultIconTheme
gnome3.gsettings-desktop-schemas libsoup libmpc
];
doCheck = true;
postPatch = ''
chmod +x meson_post_install.py # patchShebangs requires executable file
patchShebangs meson_post_install.py
'';
passthru = {
updateScript = gnome3.updateScript { packageName = "gnome-calculator"; attrPath = "gnome3.gnome-calculator"; };
updateScript = gnome3.updateScript {
packageName = "gnome-calculator";
attrPath = "gnome3.gnome-calculator";
};
};
NIX_CFLAGS_COMPILE = "-I${gnome3.glib.dev}/include/gio-unix-2.0";
propagatedUserEnvPkgs = [ gnome3.gnome-themes-standard ];
nativeBuildInputs = [ pkgconfig wrapGAppsHook ];
buildInputs = [ bash gtk3 glib intltool itstool
libxml2 gnome3.gtksourceview mpfr gmp
gdk_pixbuf gnome3.defaultIconTheme librsvg
gnome3.gsettings-desktop-schemas gnome3.dconf libsoup libmpc ];
meta = with stdenv.lib; {
homepage = https://wiki.gnome.org/action/show/Apps/Calculator;
homepage = https://wiki.gnome.org/Apps/Calculator;
description = "Application that solves mathematical equations and is suitable as a default application in a Desktop environment";
maintainers = gnome3.maintainers;
license = licenses.gpl3;

View File

@ -2,26 +2,18 @@
let
pname = "gnome-color-manager";
version = "3.26.0";
version = "3.28.0";
in stdenv.mkDerivation rec {
name = "${pname}-${version}";
src = fetchurl {
url = "mirror://gnome/sources/${pname}/${gnome3.versionBranch version}/${name}.tar.xz";
sha256 = "1kbi46vk0qf0gxiwm4yhsx8931r7c9cg0c4244j8ncr0hph008b5";
sha256 = "1mixga6mq67wgxdsg6rnl7lvyh3z3yabxjmnyjq2k2v8ljgklczc";
};
nativeBuildInputs = [ meson ninja pkgconfig gettext itstool desktop-file-utils ];
buildInputs = [ glib gtk3 libexif libtiff colord colord-gtk libcanberra-gtk3 lcms2 vte exiv2 ];
patches = [
# https://bugzilla.gnome.org/show_bug.cgi?id=791158
(fetchurl {
url = https://bugzilla.gnome.org/attachment.cgi?id=364865;
sha256 = "1zh1aql6rwzfhy2xbdw0jqgzrl9l6wf0jcbdkjd67ykbmynh2cmv";
})
];
passthru = {
updateScript = gnome3.updateScript {
packageName = pname;

View File

@ -5,13 +5,13 @@
, vala, meson, ninja }:
let
version = "3.26.1";
version = "3.28.0";
in stdenv.mkDerivation rec {
name = "gnome-contacts-${version}";
src = fetchurl {
url = "mirror://gnome/sources/gnome-contacts/${gnome3.versionBranch version}/${name}.tar.xz";
sha256 = "1jszv4b8rc5q8r460wb7qppvm1ssj4733b4z2vyavc95g00ik286";
sha256 = "1qqj6k5rvmvg6v6vg4cak98w6rqknpqfsm0vfrwva6l6wbql2v8i";
};
propagatedUserEnvPkgs = [ evolution-data-server ];
@ -32,6 +32,12 @@ in stdenv.mkDerivation rec {
patchShebangs meson_post_install.py
'';
# In file included from src/gnome-contacts@exe/contacts-avatar-selector.c:30:0:
# /nix/store/*-cheese-3.28.0/include/cheese/cheese-widget.h:26:10: fatal error: clutter-gtk/clutter-gtk.h: No such file or directory
# #include <clutter-gtk/clutter-gtk.h>
# ^~~~~~~~~~~~~~~~~~~~~~~~~~~
NIX_CFLAGS_COMPILE = "-I${clutter-gtk}/include/clutter-gtk-1.0";
doCheck = true;
passthru = {

View File

@ -1,24 +1,25 @@
{ fetchurl, stdenv, substituteAll, pkgconfig, gnome3, ibus, intltool, upower, wrapGAppsHook
{ fetchurl, stdenv, substituteAll, meson, ninja, pkgconfig, gnome3, ibus, gettext, upower, wrapGAppsHook
, libcanberra-gtk3, accountsservice, libpwquality, libpulseaudio
, gdk_pixbuf, librsvg, libnotify, libgudev, gnome-color-manager
, libxml2, polkit, libxslt, libgtop, libsoup, colord, colord-gtk
, cracklib, libkrb5, networkmanagerapplet, networkmanager, glibc
, libwacom, samba, shared-mime-info, tzdata, libtool, libgnomekbd
, docbook_xsl, docbook_xsl_ns, modemmanager, clutter, clutter-gtk
, docbook_xsl, modemmanager, clutter, clutter-gtk, cheese
, fontconfig, sound-theme-freedesktop, grilo }:
let
version = "3.26.2";
pname = "gnome-control-center";
version = "3.28.0";
in stdenv.mkDerivation rec {
name = "gnome-control-center-${version}";
name = "${pname}-${version}";
src = fetchurl {
url = "mirror://gnome/sources/gnome-control-center/${gnome3.versionBranch version}/${name}.tar.xz";
sha256 = "07aed27d6317f2cad137daa6d94a37ad02c32b958dcd30c8f07d0319abfb04c5";
url = "mirror://gnome/sources/${pname}/${gnome3.versionBranch version}/${name}.tar.xz";
sha256 = "0nyx5nl2rky0249rdcy0hsccnxf3angpya0q859rrbrwaixqnxh3";
};
nativeBuildInputs = [
pkgconfig intltool wrapGAppsHook libtool libxslt docbook_xsl docbook_xsl_ns
meson ninja pkgconfig gettext wrapGAppsHook libtool libxslt docbook_xsl
shared-mime-info
];
@ -28,7 +29,7 @@ in stdenv.mkDerivation rec {
gnome-online-accounts libsoup colord libpulseaudio fontconfig colord-gtk
accountsservice libkrb5 networkmanagerapplet libwacom samba libnotify
grilo libpwquality cracklib vino libcanberra-gtk3 libgudev
gdk_pixbuf defaultIconTheme librsvg clutter clutter-gtk
gdk_pixbuf defaultIconTheme librsvg clutter clutter-gtk cheese
networkmanager modemmanager gnome-bluetooth tracker
];
@ -40,6 +41,11 @@ in stdenv.mkDerivation rec {
})
];
postPatch = ''
chmod +x meson_post_install.py # patchShebangs requires executable file
patchShebangs meson_post_install.py
'';
preFixup = ''
gappsWrapperArgs+=(
--prefix XDG_DATA_DIRS : "${gnome3.gnome-themes-standard}/share:${sound-theme-freedesktop}/share"
@ -48,14 +54,14 @@ in stdenv.mkDerivation rec {
--prefix XDG_DATA_DIRS : "${librsvg}/share"
)
for i in $out/share/applications/*; do
substituteInPlace $i --replace "gnome-control-center" "$out/bin/gnome-control-center"
substituteInPlace $i --replace "Exec=gnome-control-center" "Exec=$out/bin/gnome-control-center"
done
'';
passthru = {
updateScript = gnome3.updateScript {
packageName = "gnome-control-center";
attrPath = "gnome3.gnome-control-center";
packageName = pname;
attrPath = "gnome3.${pname}";
};
};

View File

@ -4,11 +4,11 @@
stdenv.mkDerivation rec {
name = "gnome-desktop-${version}";
version = "3.26.2";
version = "3.28.0";
src = fetchurl {
url = "mirror://gnome/sources/gnome-desktop/${gnome3.versionBranch version}/${name}.tar.xz";
sha256 = "f7561a7a313fc474b2c390cd9696df1f5c1e1556080e43f4afe042b1060e5f2a";
sha256 = "17fm5z3kfm1m3420kjpvk1y0pc34p42rqfpmb1npy51jkv1p3pzi";
};
passthru = {

View File

@ -5,11 +5,11 @@
stdenv.mkDerivation rec {
name = "gnome-disk-utility-${version}";
version = "3.26.2";
version = "3.28.0";
src = fetchurl {
url = "mirror://gnome/sources/gnome-disk-utility/${gnome3.versionBranch version}/${name}.tar.xz";
sha256 = "aa2b96c2c64d8bde6cf802ff8da5796720d0becb21111342ced0637961e256f2";
sha256 = "0ad98mxyygyzq0y280m6z73anyv3xxr6irpkp6vc803lhdr5b7fc";
};
passthru = {

View File

@ -4,11 +4,11 @@
stdenv.mkDerivation rec {
name = "gnome-font-viewer-${version}";
version = "3.26.0";
version = "3.28.0";
src = fetchurl {
url = "mirror://gnome/sources/gnome-font-viewer/${gnome3.versionBranch version}/${name}.tar.xz";
sha256 = "02768a62b4033de5ef9d00602e8c29e5de05255f879b0d9b4d731be9648fe9a0";
sha256 = "16mp22f255b8zqnnlqh25n6v79b9bd0gmli9ywqyapa0cfai09x3";
};
passthru = {

View File

@ -1,14 +1,14 @@
{ stdenv, fetchurl, pkgconfig, dbus, libgcrypt, libtasn1, pam, python2, glib, libxslt
, intltool, pango, gcr, gdk_pixbuf, atk, p11-kit, wrapGAppsHook
, intltool, pango, gcr, gdk_pixbuf, atk, p11-kit, openssh, wrapGAppsHook
, docbook_xsl, docbook_xml_dtd_42, gnome3 }:
stdenv.mkDerivation rec {
name = "gnome-keyring-${version}";
version = "3.20.1";
version = "3.28.0.1";
src = fetchurl {
url = "mirror://gnome/sources/gnome-keyring/${gnome3.versionBranch version}/${name}.tar.xz";
sha256 = "134ci3mn6jjap59z3lrvyiip7zf2nlw5xvanr44yajs57xr4x5lp";
sha256 = "0qxxc3wx4abb07vmbhqy4gipdzilx3v8yba9hsfzpn8p15prjz6i";
};
passthru = {
@ -18,7 +18,7 @@ stdenv.mkDerivation rec {
outputs = [ "out" "dev" ];
buildInputs = with gnome3; [
dbus libgcrypt pam gtk3 libgnome-keyring
dbus libgcrypt pam gtk3 libgnome-keyring openssh
pango gcr gdk_pixbuf atk p11-kit
];
@ -40,8 +40,7 @@ stdenv.mkDerivation rec {
patchShebangs build
'';
# Tests are not deterministic https://bugzilla.gnome.org/show_bug.cgi?id=791932
doCheck = false;
doCheck = true;
checkPhase = ''
export HOME=$(mktemp -d)
dbus-run-session \

View File

@ -1,24 +1,20 @@
{ stdenv, fetchurl, pkgconfig, vala, glib, libxslt, gtk, wrapGAppsHook
, webkitgtk, json-glib, rest, libsecret, dbus-glib, gnome-common, gtk-doc
, telepathy-glib, intltool, dbus_libs, icu, glib-networking
, libsoup, docbook_xsl_ns, docbook_xsl, gnome3, gcr, kerberos
, webkitgtk, json-glib, rest, libsecret, dbus-glib, gtk-doc
, telepathy-glib, gettext, dbus_libs, icu, glib-networking
, libsoup, docbook_xsl, docbook_xsl_ns, gnome3, gcr, kerberos
}:
stdenv.mkDerivation rec {
name = "gnome-online-accounts-${version}";
version = "3.26.2";
let
pname = "gnome-online-accounts";
version = "3.28.0";
in stdenv.mkDerivation rec {
name = "${pname}-${version}";
src = fetchurl {
url = "mirror://gnome/sources/gnome-online-accounts/${gnome3.versionBranch version}/${name}.tar.xz";
sha256 = "49f8760d86fe33057eaeeb4f1667bc7f6163e428591e7aed9575563be10b17d1";
url = "mirror://gnome/sources/${pname}/${gnome3.versionBranch version}/${name}.tar.xz";
sha256 = "035lmm21imr7ddpzffqabv53g3ggjscmqvlzy3j1qkv00zrlxg47";
};
passthru = {
updateScript = gnome3.updateScript { packageName = "gnome-online-accounts"; attrPath = "gnome3.gnome-online-accounts"; };
};
NIX_CFLAGS_COMPILE = "-I${dbus-glib.dev}/include/dbus-1.0 -I${dbus_libs.dev}/include/dbus-1.0";
outputs = [ "out" "man" "dev" "devdoc" ];
configureFlags = [
@ -32,14 +28,21 @@ stdenv.mkDerivation rec {
enableParallelBuilding = true;
nativeBuildInputs = [
pkgconfig vala gnome-common intltool wrapGAppsHook
libxslt docbook_xsl_ns docbook_xsl gtk-doc
pkgconfig vala gettext wrapGAppsHook
libxslt docbook_xsl docbook_xsl_ns gtk-doc
];
buildInputs = [
glib gtk webkitgtk json-glib rest libsecret dbus-glib telepathy-glib glib-networking icu libsoup
gcr kerberos
];
passthru = {
updateScript = gnome3.updateScript {
packageName = pname;
attrPath = "gnome3.${pname}";
};
};
meta = with stdenv.lib; {
platforms = platforms.linux;
maintainers = gnome3.maintainers;

View File

@ -1,27 +1,33 @@
{ fetchurl, stdenv, pkgconfig, gnome3, glib, dbus-glib, json-glib, upower
, libxslt, intltool, makeWrapper, systemd, xorg, epoxy }:
{ fetchurl, stdenv, meson, ninja, pkgconfig, gnome3, glib, gtk, gsettings-desktop-schemas
, gnome-desktop, dbus, json-glib, libICE, xmlto, docbook_xsl, docbook_xml_dtd_412
, libxslt, gettext, makeWrapper, systemd, xorg, epoxy }:
stdenv.mkDerivation rec {
name = "gnome-session-${version}";
version = "3.26.1";
version = "3.28.0";
src = fetchurl {
url = "mirror://gnome/sources/gnome-session/${gnome3.versionBranch version}/${name}.tar.xz";
sha256 = "d9414b368db982d3837ca106e64019f18e6cdd5b13965bea6c7d02ddf5103708";
sha256 = "1ldcalj9i7qharvw8k8gf7pkcvwb1qwiag2ckffx9x8ic2d3v00b";
};
passthru = {
updateScript = gnome3.updateScript { packageName = "gnome-session"; attrPath = "gnome3.gnome-session"; };
};
mesonFlags = [ "-Dsystemd=true" ];
configureFlags = "--enable-systemd";
nativeBuildInputs = [
meson ninja pkgconfig gettext makeWrapper
xmlto libxslt docbook_xsl docbook_xml_dtd_412
dbus # for DTD
];
buildInputs = with gnome3;
[ pkgconfig glib gnome-desktop gtk dbus-glib json-glib libxslt
gnome3.gnome-settings-daemon xorg.xtrans gnome3.defaultIconTheme
gsettings-desktop-schemas upower intltool gconf makeWrapper systemd
epoxy
];
buildInputs = [
glib gtk libICE gnome-desktop json-glib xorg.xtrans gnome3.defaultIconTheme
gnome3.gnome-settings-daemon gsettings-desktop-schemas systemd epoxy
];
postPatch = ''
chmod +x meson_post_install.py # patchShebangs requires executable file
patchShebangs meson_post_install.py
'';
# FIXME: glib binaries shouldn't be in .dev!
preFixup = ''
@ -34,13 +40,22 @@ stdenv.mkDerivation rec {
--prefix PATH : "${glib.dev}/bin" \
--prefix GI_TYPELIB_PATH : "$GI_TYPELIB_PATH" \
--suffix XDG_DATA_DIRS : "$out/share:$GSETTINGS_SCHEMAS_PATH" \
--suffix XDG_DATA_DIRS : "${gnome3.gnome-shell}/share" \
--suffix XDG_DATA_DIRS : "${gnome3.gnome-shell}/share"\
--suffix XDG_CONFIG_DIRS : "${gnome3.gnome-settings-daemon}/etc/xdg"
'';
meta = with stdenv.lib; {
platforms = platforms.linux;
maintainers = gnome3.maintainers;
passthru = {
updateScript = gnome3.updateScript {
packageName = "gnome-session";
attrPath = "gnome3.gnome-session";
};
};
meta = with stdenv.lib; {
description = "GNOME session manager";
homepage = https://wiki.gnome.org/Projects/SessionManagement;
license = licenses.gpl2Plus;
maintainers = gnome3.maintainers;
platforms = platforms.linux;
};
}

View File

@ -1,38 +1,57 @@
{ fetchurl, stdenv, pkgconfig, gnome3, intltool, glib, libnotify, lcms2, libXtst
, libxkbfile, libpulseaudio, libcanberra-gtk3, upower, colord, libgweather, polkit
, geoclue2, librsvg, xf86_input_wacom, udev, libgudev, libwacom, libxslt, libtool, networkmanager
, docbook_xsl, docbook_xsl_ns, wrapGAppsHook, ibus, xkeyboard_config, tzdata }:
{ fetchurl, substituteAll, stdenv, meson, ninja, pkgconfig, gnome3, perl, gettext, glib, libnotify, lcms2, libXtst
, libxkbfile, libpulseaudio, alsaLib, libcanberra-gtk3, upower, colord, libgweather, polkit
, geoclue2, librsvg, xf86_input_wacom, udev, libgudev, libwacom, libxslt, libxml2, networkmanager
, docbook_xsl, wrapGAppsHook, ibus, xkeyboard_config, tzdata, nss }:
stdenv.mkDerivation rec {
name = "gnome-settings-daemon-${version}";
version = "3.26.2";
version = "3.28.0";
src = fetchurl {
url = "mirror://gnome/sources/gnome-settings-daemon/${gnome3.versionBranch version}/${name}.tar.xz";
sha256 = "5a3d156b35e03fa3c28fddd0321f6726082a711973dee2af686370faae2e75e4";
sha256 = "1p3ccf4a4qbz73hqyx9i55hkp6l7c7la5kazqawcndl7bksywgny";
};
passthru = {
updateScript = gnome3.updateScript { packageName = "gnome-settings-daemon"; attrPath = "gnome3.gnome-settings-daemon"; };
};
patches = [
(substituteAll {
src = ./fix-paths.patch;
inherit tzdata;
})
];
# fatal error: gio/gunixfdlist.h: No such file or directory
NIX_CFLAGS_COMPILE = "-I${glib.dev}/include/gio-unix-2.0";
buildInputs = with gnome3;
[ intltool pkgconfig ibus gtk glib gsettings-desktop-schemas networkmanager
libnotify gnome-desktop lcms2 libXtst libxkbfile libpulseaudio
libcanberra-gtk3 upower colord libgweather xkeyboard_config
polkit geocode-glib geoclue2 librsvg xf86_input_wacom udev libgudev libwacom libxslt
libtool docbook_xsl docbook_xsl_ns wrapGAppsHook gnome-themes-standard ];
nativeBuildInputs = [ meson ninja pkgconfig perl gettext libxml2 libxslt docbook_xsl wrapGAppsHook ];
buildInputs = with gnome3; [
ibus gtk glib gsettings-desktop-schemas networkmanager
libnotify gnome-desktop lcms2 libXtst libxkbfile libpulseaudio alsaLib
libcanberra-gtk3 upower colord libgweather xkeyboard_config nss
polkit geocode-glib geoclue2 librsvg xf86_input_wacom udev libgudev libwacom
];
mesonFlags = [
"-Dudev_dir=${placeholder "out"}/lib/udev"
];
postPatch = ''
substituteInPlace plugins/datetime/tz.h --replace /usr/share/zoneinfo/zone.tab ${tzdata}/share/zoneinfo/zone.tab
for f in gnome-settings-daemon/codegen.py plugins/power/gsd-power-constants-update.pl meson_post_install.py; do
chmod +x $f
patchShebangs $f
done
'';
meta = with stdenv.lib; {
platforms = platforms.linux;
maintainers = gnome3.maintainers;
passthru = {
updateScript = gnome3.updateScript {
packageName = "gnome-settings-daemon";
attrPath = "gnome3.gnome-settings-daemon";
};
};
meta = with stdenv.lib; {
license = licenses.gpl2Plus;
maintainers = gnome3.maintainers;
platforms = platforms.linux;
};
}

View File

@ -0,0 +1,15 @@
--- a/plugins/datetime/tz.h
+++ b/plugins/datetime/tz.h
@@ -27,11 +27,7 @@
#include <glib.h>
-#ifndef __sun
-# define TZ_DATA_FILE "/usr/share/zoneinfo/zone.tab"
-#else
-# define TZ_DATA_FILE "/usr/share/lib/zoneinfo/tab/zone_sun.tab"
-#endif
+#define TZ_DATA_FILE "@tzdata@/share/zoneinfo/zone.tab"
typedef struct _TzDB TzDB;
typedef struct _TzLocation TzLocation;

View File

@ -1,26 +1,27 @@
{ stdenv, intltool, fetchurl, libgtop, pkgconfig, gtk3, glib
, bash, makeWrapper, itstool, gnome3, file }:
{ stdenv, fetchurl, meson, ninja, gettext, pkgconfig, spidermonkey_52, glib, gnome3 }:
stdenv.mkDerivation rec {
name = "gnome-shell-extensions-${version}";
version = "3.26.2";
version = "3.28.0";
src = fetchurl {
url = "mirror://gnome/sources/gnome-shell-extensions/${gnome3.versionBranch version}/${name}.tar.xz";
sha256 = "aefda4d810ef5ceb9402e2d620f4bdc1dc40c9cc4f6a51749840f7dd08628ab6";
sha256 = "00xm5r4q40c0ji80vrsqg2fkrvzb1nm75p3ikv6bsmd3gfvwwp91";
};
passthru = {
updateScript = gnome3.updateScript { packageName = "gnome-shell-extensions"; attrPath = "gnome3.gnome-shell-extensions"; };
updateScript = gnome3.updateScript {
packageName = "gnome-shell-extensions";
attrPath = "gnome3.gnome-shell-extensions";
};
};
doCheck = true;
nativeBuildInputs = [ pkgconfig ];
buildInputs = [ gtk3 glib libgtop intltool itstool
makeWrapper file ];
nativeBuildInputs = [ meson ninja pkgconfig gettext glib ];
buildInputs = [ spidermonkey_52 ];
configureFlags = [ "--enable-extensions=all" ];
mesonFlags = [ "-Dextension_set=all" ];
meta = with stdenv.lib; {
homepage = https://wiki.gnome.org/Projects/GnomeShell/Extensions;

View File

@ -1,10 +1,10 @@
{ fetchurl, fetchpatch, stdenv, meson, ninja, pkgconfig, gnome3, json-glib, libcroco, gettext, libsecret
{ fetchurl, fetchpatch, substituteAll, stdenv, meson, ninja, pkgconfig, gnome3, json-glib, libcroco, gettext, libsecret
, python3Packages, libsoup, polkit, clutter, networkmanager, docbook_xsl , docbook_xsl_ns, at-spi2-core
, libstartup_notification, telepathy-glib, telepathy-logger, libXtst, p11-kit, unzip, glibcLocales
, sqlite, libgweather, libcanberra-gtk3, librsvg, geoclue2, perl, docbook_xml_dtd_42
, libstartup_notification, telepathy-glib, telepathy-logger, libXtst, unzip, glibcLocales, shared-mime-info
, libgweather, libcanberra-gtk3, librsvg, geoclue2, perl, docbook_xml_dtd_42
, libpulseaudio, libical, nss, gobjectIntrospection, gstreamer, wrapGAppsHook
, accountsservice, gdk_pixbuf, gdm, upower, ibus, networkmanagerapplet
, gst_all_1 }:
, sassc, systemd, gst_all_1 }:
# http://sources.gentoo.org/cgi-bin/viewvc.cgi/gentoo-x86/gnome-base/gnome-shell/gnome-shell-3.10.2.1.ebuild?revision=1.3&view=markup
@ -13,11 +13,11 @@ let
in stdenv.mkDerivation rec {
name = "gnome-shell-${version}";
version = "3.26.2";
version = "3.28.0";
src = fetchurl {
url = "mirror://gnome/sources/gnome-shell/${gnome3.versionBranch version}/${name}.tar.xz";
sha256 = "e5a87f2f838d981db9823352b90b2ce2f40d24d31ed9f062dccfa41b820e0b1c";
sha256 = "0kmsh305cfr3fg40rhwykqbl466lwcq9djda25kf29ib7h6w1pn7";
};
# Needed to find /etc/NetworkManager/VPN
@ -25,21 +25,26 @@ in stdenv.mkDerivation rec {
LANG = "en_US.UTF-8";
nativeBuildInputs = [ meson ninja gettext docbook_xsl docbook_xsl_ns docbook_xml_dtd_42 perl wrapGAppsHook glibcLocales ];
buildInputs = with gnome3;
[ gsettings-desktop-schemas gnome-keyring gnome-menus glib gcr json-glib accountsservice
libcroco libsecret pkgconfig libsoup polkit gdk_pixbuf
(librsvg.override { enableIntrospection = true; })
clutter networkmanager libstartup_notification telepathy-glib
libXtst p11-kit networkmanagerapplet gjs mutter libpulseaudio caribou evolution-data-server
libical nss gtk gstreamer gdm
libcanberra-gtk3 gnome-control-center geoclue2
defaultIconTheme sqlite gnome3.gnome-bluetooth
libgweather # not declared at build time, but typelib is needed at runtime
gnome3.gnome-clocks # schemas needed
at-spi2-core upower ibus gnome-desktop telepathy-logger gnome3.gnome-settings-daemon
gst_all_1.gst-plugins-good # recording
gobjectIntrospection (stdenv.lib.getLib dconf) ];
nativeBuildInputs = [
meson ninja pkgconfig gettext docbook_xsl docbook_xsl_ns docbook_xml_dtd_42 perl wrapGAppsHook glibcLocales
sassc
];
buildInputs = with gnome3; [
systemd caribou
gsettings-desktop-schemas gnome-keyring glib gcr json-glib accountsservice
libcroco libsecret libsoup polkit gdk_pixbuf librsvg
clutter networkmanager libstartup_notification telepathy-glib
libXtst gjs mutter libpulseaudio evolution-data-server
libical gtk gstreamer gdm libcanberra-gtk3 geoclue2
defaultIconTheme gnome3.gnome-bluetooth
gnome3.gnome-clocks # schemas needed
at-spi2-core upower ibus gnome-desktop telepathy-logger gnome3.gnome-settings-daemon
gst_all_1.gst-plugins-good # recording
gobjectIntrospection
# not declared at build time, but typelib is needed at runtime
libgweather networkmanagerapplet
];
propagatedUserEnvPkgs = [
# Needed to support on-screen keyboard used with touch screen devices
# see https://github.com/NixOS/nixpkgs/issues/25968
@ -52,7 +57,10 @@ in stdenv.mkDerivation rec {
url = https://bug787864.bugzilla-attachments.gnome.org/attachment.cgi?id=360016;
sha256 = "1dmahd8ysbzh33rxglba0fbq127aw9h14cl2a2bw9913vjxhxijm";
})
./fix-paths.patch
(substituteAll {
src = ./fix-paths.patch;
inherit unzip;
})
];
postPatch = ''
@ -60,28 +68,34 @@ in stdenv.mkDerivation rec {
substituteInPlace src/gnome-shell-extension-tool.in --replace "@PYTHON@" "${pythonEnv}/bin/python"
substituteInPlace src/gnome-shell-perf-tool.in --replace "@PYTHON@" "${pythonEnv}/bin/python"
substituteInPlace js/ui/extensionDownloader.js --replace "unzip" "${unzip}/bin/unzip"
'';
postInstall = ''
glib-compile-schemas $out/share/glib-2.0/schemas
'';
postFixup = ''
# Patched meson does not add internal libraries to rpath
patchelf --set-rpath "$out/lib/gnome-shell:$(patchelf --print-rpath $out/bin/.gnome-shell-wrapped)" $out/bin/.gnome-shell-wrapped
preFixup = ''
gappsWrapperArgs+=(
# Until glibs xdgmime is patched
# Fixes “Failed to load resource:///org/gnome/shell/theme/noise-texture.png: Unrecognized image file format”
--prefix XDG_DATA_DIRS : "${shared-mime-info}/share"
)
'';
enableParallelBuilding = true;
passthru = {
mozillaPlugin = "/lib/mozilla/plugins";
updateScript = gnome3.updateScript { packageName = "gnome-shell"; attrPath = "gnome3.gnome-shell"; };
updateScript = gnome3.updateScript {
packageName = "gnome-shell";
attrPath = "gnome3.gnome-shell";
};
};
meta = with stdenv.lib; {
platforms = platforms.linux;
description = "Core user interface for the GNOME 3 desktop";
homepage = https://wiki.gnome.org/Projects/GnomeShell;
license = licenses.gpl2Plus;
maintainers = gnome3.maintainers;
platforms = platforms.linux;
};
}

View File

@ -1,18 +1,11 @@
diff --git a/meson.build b/meson.build
index 4c1f5c63b..a9edb8795 100644
--- a/meson.build
+++ b/meson.build
@@ -59,12 +59,7 @@ servicedir = join_paths(datadir, 'dbus-1', 'services')
plugindir = get_variable('BROWSER_PLUGIN_DIR', mozplugindir)
-keybindings_dep = dependency('gnome-keybindings', required: false)
-if keybindings_dep.found()
- keysdir = keybindings_dep.get_pkgconfig_variable('keysdir')
-else
- keysdir = join_paths(datadir, 'gnome-control-center', 'keybindings')
-endif
+keysdir = join_paths(datadir, 'gnome-control-center', 'keybindings')
atk_bridge_dep = dependency('atk-bridge-2.0')
canberra_dep = dependency('libcanberra')
--- a/js/ui/extensionDownloader.js
+++ b/js/ui/extensionDownloader.js
@@ -86,7 +86,7 @@
stream.output_stream.write_bytes(contents, null);
stream.close(null);
let [success, pid] = GLib.spawn_async(null,
- ['unzip', '-uod', dir.get_path(), '--', file.get_path()],
+ ['@unzip@/bin/unzip', '-uod', dir.get_path(), '--', file.get_path()],
null,
GLib.SpawnFlags.SEARCH_PATH | GLib.SpawnFlags.DO_NOT_REAP_CHILD,
null);

View File

@ -1,14 +1,14 @@
{ stdenv, fetchurl, substituteAll, pkgconfig, meson, ninja, gettext, gnome3, wrapGAppsHook, packagekit, ostree
, glib, appstream-glib, libsoup, polkit, isocodes, gtkspell3, libxslt
, glib, appstream-glib, libsoup, polkit, isocodes, gspell, libxslt, gobjectIntrospection
, json-glib, libsecret, valgrind-light, docbook_xsl, docbook_xml_dtd_42, gtk-doc, desktop-file-utils }:
stdenv.mkDerivation rec {
name = "gnome-software-${version}";
version = "3.26.7";
version = "3.28.0";
src = fetchurl {
url = "mirror://gnome/sources/gnome-software/${gnome3.versionBranch version}/${name}.tar.xz";
sha256 = "00lfzvlicqd8gk5ijnjdi36ikmhdzvfjj993rpf7mm04ncw4k0za";
sha256 = "0zwbgxzl805c4l8kwy5bn3p91s2qxlcn4syzzg4vd4kilc6nnjwk";
};
patches = [
@ -20,19 +20,16 @@ stdenv.mkDerivation rec {
nativeBuildInputs = [
meson ninja pkgconfig gettext wrapGAppsHook libxslt docbook_xml_dtd_42
valgrind-light docbook_xsl gtk-doc desktop-file-utils
valgrind-light docbook_xsl gtk-doc desktop-file-utils gobjectIntrospection
];
buildInputs = [
gnome3.gtk glib packagekit appstream-glib libsoup
gnome3.gsettings-desktop-schemas gnome3.gnome-desktop
gtkspell3 json-glib libsecret ostree
gspell json-glib libsecret ostree
polkit
];
# https://gitlab.gnome.org/GNOME/gnome-software/issues/320
NIX_CFLAGS_COMPILE = "-I${glib.dev}/include/gio-unix-2.0";
mesonFlags = [
"-Denable-flatpak=false"
"-Denable-rpm=false"

View File

@ -5,7 +5,7 @@
/* find filename */
- filename = g_build_filename (DATADIR, "xml", "iso-codes", "iso_639.xml", NULL);
+ filename = g_build_filename ("@isoCodes@", "share", "xml", "iso-codes", "iso_639.xml", NULL);
+ filename = g_build_filename ("@isocodes@", "share", "xml", "iso-codes", "iso_639.xml", NULL);
if (!g_file_test (filename, G_FILE_TEST_EXISTS)) {
g_free (filename);
filename = g_build_filename ("/usr", "share", "xml", "iso-codes", "iso_639.xml", NULL);

View File

@ -1,43 +1,41 @@
{ stdenv, intltool, fetchurl, pkgconfig, gtkmm3, libxml2
{ stdenv, gettext, fetchurl, pkgconfig, gtkmm3, libxml2, polkit
, bash, gtk3, glib, wrapGAppsHook
, itstool, gnome3, librsvg, gdk_pixbuf, libgtop, systemd }:
stdenv.mkDerivation rec {
name = "gnome-system-monitor-${version}";
version = "3.26.0";
version = "3.28.0";
src = fetchurl {
url = "mirror://gnome/sources/gnome-system-monitor/${gnome3.versionBranch version}/${name}.tar.xz";
sha256 = "f848a8c2ca5e164cf09d3a205dd49e4e4bf4b60d43b0969c10443eb519d0e6b3";
};
passthru = {
updateScript = gnome3.updateScript { packageName = "gnome-system-monitor"; attrPath = "gnome3.gnome-system-monitor"; };
sha256 = "1wvgx5p0a29d8yzp7rinpln90pg8vsjagqlvm4cxyhnl5hsdvrvn";
};
doCheck = true;
propagatedUserEnvPkgs = [ gnome3.gnome-themes-standard ];
nativeBuildInputs = [ pkgconfig ];
buildInputs = [ bash gtk3 glib intltool itstool libxml2
gtkmm3 libgtop wrapGAppsHook
gdk_pixbuf gnome3.defaultIconTheme librsvg
gnome3.gsettings-desktop-schemas systemd ];
preFixup = ''
gappsWrapperArgs+=(
--prefix XDG_DATA_DIRS : "${gtk3.out}/share:${gnome3.gnome-themes-standard}/share"
)
'';
nativeBuildInputs = [
pkgconfig gettext itstool wrapGAppsHook
polkit # for ITS file
];
buildInputs = [
bash gtk3 glib libxml2 gtkmm3 libgtop gdk_pixbuf gnome3.defaultIconTheme librsvg
gnome3.gsettings-desktop-schemas systemd
];
# fails to build without --enable-static
configureFlags = ["--enable-systemd" "--enable-static"];
enableParallelBuilding = true;
passthru = {
updateScript = gnome3.updateScript {
packageName = "gnome-system-monitor";
attrPath = "gnome3.gnome-system-monitor";
};
};
meta = with stdenv.lib; {
homepage = https://help.gnome.org/users/gnome-system-monitor/3.12/;
homepage = https://wiki.gnome.org/Apps/SystemMonitor;
description = "System Monitor shows you what programs are running and how much processor time, memory, and disk space are being used";
maintainers = gnome3.maintainers;
license = licenses.gpl2;

View File

@ -4,11 +4,11 @@
stdenv.mkDerivation rec {
name = "gnome-terminal-${version}";
version = "3.26.2";
version = "3.28.0";
src = fetchurl {
url = "mirror://gnome/sources/gnome-terminal/${gnome3.versionBranch version}/${name}.tar.xz";
sha256 = "3a9ba414a814569476515275ad303d8056f296b2669234447712559aa97005b0";
sha256 = "1i5wlcjb0aigm1lbmn16nmh9rkjqfdpzzgf6qw7mcrhgw7pdald5";
};
passthru = {

View File

@ -0,0 +1,28 @@
{ stdenv, fetchurl, intltool, gtk3, gnome3, librsvg, pkgconfig, pango, atk, gtk2
, gdk_pixbuf }:
let
pname = "gnome-themes-extra";
version = "3.27.92";
in stdenv.mkDerivation rec {
name = "${pname}-${version}";
src = fetchurl {
url = "mirror://gnome/sources/${pname}/${gnome3.versionBranch version}/${name}.tar.xz";
sha256 = "04jwsg9f29vzhcmf146d3rr27c8ldra378m465ahsal9vaaiywcm";
};
passthru = {
updateScript = gnome3.updateScript {
packageName = pname;
};
};
nativeBuildInputs = [ pkgconfig intltool ];
buildInputs = [ gtk3 librsvg pango atk gtk2 gdk_pixbuf gnome3.defaultIconTheme ];
meta = with stdenv.lib; {
platforms = platforms.linux;
maintainers = gnome3.maintainers;
};
}

View File

@ -1,25 +0,0 @@
{ stdenv, fetchurl, intltool, gtk3, gnome3, librsvg, pkgconfig, pango, atk, gtk2
, gdk_pixbuf }:
stdenv.mkDerivation rec {
name = "gnome-themes-standard-${version}";
version = "3.22.3";
src = fetchurl {
url = "mirror://gnome/sources/gnome-themes-standard/${gnome3.versionBranch version}/${name}.tar.xz";
sha256 = "61dc87c52261cfd5b94d65e8ffd923ddeb5d3944562f84942eeeb197ab8ab56a";
};
passthru = {
updateScript = gnome3.updateScript { packageName = "gnome-themes-standard"; };
};
nativeBuildInputs = [ pkgconfig ];
buildInputs = [ intltool gtk3 librsvg pango atk gtk2 gdk_pixbuf
gnome3.defaultIconTheme ];
meta = with stdenv.lib; {
platforms = platforms.linux;
maintainers = gnome3.maintainers;
};
}

View File

@ -2,11 +2,11 @@
stdenv.mkDerivation rec {
name = "gnome-user-docs-${version}";
version = "3.26.2.1";
version = "3.28.0";
src = fetchurl {
url = "mirror://gnome/sources/gnome-user-docs/${gnome3.versionBranch version}/${name}.tar.xz";
sha256 = "93136f5baffd160c14e1b39f0ac60b9768975edac2da2b30c945faef534af8f5";
sha256 = "0sx46j61kjn8kaf75303vym5sigki239pqzf5q4n72k1hwp7albp";
};
passthru = {

View File

@ -5,11 +5,11 @@
stdenv.mkDerivation rec {
name = "gnome-user-share-${version}";
version = "3.18.3";
version = "3.27.90";
src = fetchurl {
url = "mirror://gnome/sources/gnome-user-share/${gnome3.versionBranch version}/${name}.tar.xz";
sha256 = "3092fa7ad137531e35484195dde4ecbbc75a8a3d9b8209aef4c852717cf4bbf1";
sha256 = "1wd183cjr1gmzpsq7bqwkwhmcdng0m105f6ymc89r17fz85f4jhy";
};
passthru = {

View File

@ -4,11 +4,11 @@
stdenv.mkDerivation rec {
name = "gsettings-desktop-schemas-${version}";
version = "3.24.1";
version = "3.28.0";
src = fetchurl {
url = "mirror://gnome/sources/gsettings-desktop-schemas/${gnome3.versionBranch version}/${name}.tar.xz";
sha256 = "76a3fa309f9de6074d66848987214f0b128124ba7184c958c15ac78a8ac7eea7";
sha256 = "0rwidacwrxlc54x90h9g3wx2zlisc4vm49vmxi15azmpj1vwvd2c";
};
passthru = {

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