Merge remote-tracking branch 'nixos/master' into proot

Conflicts:
	pkgs/tools/system/proot/default.nix
This commit is contained in:
Ian-Woo Kim 2014-10-07 16:16:00 +02:00
commit 6d724303c3
62 changed files with 3221 additions and 820 deletions

View File

@ -116,6 +116,13 @@ hello-2.3 A program that produces a familiar, friendly greeting
<listitem><para>Package version.</para></listitem>
</varlistentry>
<varlistentry>
<term><varname>branch</varname></term>
<listitem><para>Release branch. Used to specify that a package is not
going to receive updates that are not in this branch; for example, Linux
kernel 3.0 is supposed to be updated to 3.0.X, not 3.1.</para></listitem>
</varlistentry>
<varlistentry>
<term><varname>homepage</varname></term>
<listitem><para>The packages homepage. Example:

View File

@ -150,8 +150,8 @@ genericBuild
<listitem><para>GNU <command>tar</command>.</para></listitem>
<listitem><para><command>gzip</command> and
<command>bzip2</command>.</para></listitem>
<listitem><para><command>gzip</command>, <command>bzip2</command>
and <command>xz</command>.</para></listitem>
<listitem><para>GNU Make. It has been patched to provide
<quote>nested</quote> output that can be fed into the
@ -341,9 +341,11 @@ It supports the following files by default:
<term>Tar files</term>
<listitem><para>These can optionally be compressed using
<command>gzip</command> (<filename>.tar.gz</filename>,
<filename>.tgz</filename> or <filename>.tar.Z</filename>) or
<filename>.tgz</filename> or <filename>.tar.Z</filename>),
<command>bzip2</command> (<filename>.tar.bz2</filename> or
<filename>.tbz2</filename>).</para></listitem>
<filename>.tbz2</filename>) or <command>xz</command>
(<filename>.tar.xz</filename> or
<filename>.tar.lzma</filename>).</para></listitem>
</varlistentry>
<varlistentry>
@ -445,9 +447,10 @@ Additional file types can be supported by setting the
<listitem><para>The list of patches. They must be in the format
accepted by the <command>patch</command> command, and may
optionally be compressed using <command>gzip</command>
(<filename>.gz</filename>) or <command>bzip2</command>
(<filename>.bz2</filename>).</para></listitem>
</varlistentry>
(<filename>.gz</filename>), <command>bzip2</command>
(<filename>.bz2</filename>) or <command>xz</command>
(<filename>.xz</filename>).</para></listitem>
</varlistentry>
<varlistentry>
<term><varname>patchFlags</varname></term>

View File

@ -13,6 +13,9 @@ trusted-binary-caches = http://hydra.nixos.org
build-max-jobs = 4
EOF
echo "First of all, checking evaluation, including meta"
nix-env -f. -qa --json > /dev/null
if [ "${TRAVIS_PULL_REQUEST}" = "false" ]; then
echo "Not a pull request, checking evaluation"
nix-build pkgs/top-level/release.nix -A tarball

View File

@ -13,7 +13,7 @@ maintainers="$(cat "$(dirname "$0")/../../lib/maintainers.nix" |
grep '=' | sed -re 's/\\"/''/g;
s/ *([^ =]*) *= *" *(.*[^ ]) *[<](.*)[>] *".*/\1\t\2\t\3/')"
git_lines="$( ( echo "$git_data";
cat vanity-manual-equalities.txt) | sort |uniq)"
cat "$(dirname "$0")/vanity-manual-equalities.txt") | sort |uniq)"
# For RDF
normalize_name () {

View File

@ -154,6 +154,7 @@
collectd = 144;
consul = 145;
mailpile = 146;
redmine = 147;
# When adding a uid, make sure it doesn't match an existing gid. And don't use uids above 399!
@ -275,6 +276,7 @@
riemanndash = 138;
uhub = 142;
mailpile = 146;
redmine = 147;
# When adding a gid, make sure it doesn't match an existing uid. And don't use gids above 399!

View File

@ -174,6 +174,7 @@
./services/misc/nixos-manual.nix
./services/misc/nix-ssh-serve.nix
./services/misc/phd.nix
./services/misc/redmine.nix
./services/misc/rippled.nix
./services/misc/rogue.nix
./services/misc/siproxd.nix

View File

@ -0,0 +1,222 @@
{ config, lib, pkgs, ... }:
# TODO: support non-postgresql
with lib;
let
cfg = config.services.redmine;
ruby = pkgs.ruby;
rubyLibs = pkgs.rubyLibs;
databaseYml = ''
production:
adapter: postgresql
database: ${cfg.databaseName}
host: ${cfg.databaseHost}
password: ${cfg.databasePassword}
username: ${cfg.databaseUsername}
encoding: utf8
'';
configurationYml = ''
default:
# Absolute path to the directory where attachments are stored.
# The default is the 'files' directory in your Redmine instance.
# Your Redmine instance needs to have write permission on this
# directory.
# Examples:
# attachments_storage_path: /var/redmine/files
# attachments_storage_path: D:/redmine/files
attachments_storage_path: ${cfg.stateDir}/files
# Absolute path to the SCM commands errors (stderr) log file.
# The default is to log in the 'log' directory of your Redmine instance.
# Example:
# scm_stderr_log_file: /var/log/redmine_scm_stderr.log
scm_stderr_log_file: ${cfg.stateDir}/redmine_scm_stderr.log
${cfg.extraConfig}
'';
unpackTheme = unpack "theme";
unpackPlugin = unpack "plugin";
unpack = id: (name: source:
pkgs.stdenv.mkDerivation {
name = "redmine-${id}-${name}";
buildInputs = [ pkgs.unzip ];
buildCommand = ''
mkdir -p $out
cd $out
unpackFile ${source}
'';
});
in {
options = {
services.redmine = {
enable = mkOption {
type = types.bool;
default = false;
description = ''
Enable the redmine service.
'';
};
stateDir = mkOption {
type = types.str;
default = "/var/redmine";
description = "The state directory, logs and plugins are stored here";
};
extraConfig = mkOption {
type = types.str;
default = "";
description = "Extra configuration in configuration.yml";
};
themes = mkOption {
type = types.attrsOf types.path;
default = {};
description = "Set of themes";
};
plugins = mkOption {
type = types.attrsOf types.path;
default = {};
description = "Set of plugins";
};
#databaseType = mkOption {
# type = types.str;
# default = "postgresql";
# description = "Type of database";
#};
databaseHost = mkOption {
type = types.str;
default = "127.0.0.1";
description = "Database hostname";
};
databasePassword = mkOption {
type = types.str;
default = "";
description = "Database user password";
};
databaseName = mkOption {
type = types.str;
default = "redmine";
description = "Database name";
};
databaseUsername = mkOption {
type = types.str;
default = "redmine";
description = "Database user";
};
};
};
config = mkIf cfg.enable {
assertions = [
{ assertion = cfg.databasePassword != "";
message = "databasePassword must be set";
}
];
users.extraUsers = [
{ name = "redmine";
group = "redmine";
uid = config.ids.uids.redmine;
} ];
users.extraGroups = [
{ name = "redmine";
gid = config.ids.gids.redmine;
} ];
systemd.services.redmine = {
after = [ "network.target" "postgresql.service" ];
wantedBy = [ "multi-user.target" ];
environment.RAILS_ENV = "production";
environment.RAILS_ETC = "${cfg.stateDir}/config";
environment.RAILS_LOG = "${cfg.stateDir}/log";
environment.RAILS_VAR = "${cfg.stateDir}/var";
environment.RAILS_CACHE = "${cfg.stateDir}/cache";
environment.RAILS_PLUGINS = "${cfg.stateDir}/plugins";
environment.RAILS_PUBLIC = "${cfg.stateDir}/public";
environment.RAILS_TMP = "${cfg.stateDir}/tmp";
environment.SCHEMA = "${cfg.stateDir}/cache/schema.db";
environment.HOME = "${pkgs.redmine}/share/redmine";
environment.REDMINE_LANG = "en";
environment.GEM_HOME = "${pkgs.redmine}/share/redmine/vendor/bundle/ruby/1.9.1";
environment.GEM_PATH = "${rubyLibs.bundler}/lib/ruby/gems/1.9";
path = with pkgs; [
imagemagickBig
subversion
mercurial
cvs
config.services.postgresql.package
bazaar
gitAndTools.git
# once we build binaries for darc enable it
#darcs
];
preStart = ''
# TODO: use env vars
for i in plugins public/plugin_assets db files log config cache var/files tmp; do
mkdir -p ${cfg.stateDir}/$i
done
chown -R redmine:redmine ${cfg.stateDir}
chmod -R 755 ${cfg.stateDir}
rm -rf ${cfg.stateDir}/public/*
cp -R ${pkgs.redmine}/share/redmine/public/* ${cfg.stateDir}/public/
for theme in ${concatStringsSep " " (mapAttrsToList unpackTheme cfg.themes)}; do
ln -fs $theme/* ${cfg.stateDir}/public/themes/
done
rm -rf ${cfg.stateDir}/plugins/*
for plugin in ${concatStringsSep " " (mapAttrsToList unpackPlugin cfg.plugins)}; do
ln -fs $plugin/* ${cfg.stateDir}/plugins/''${plugin##*-redmine-plugin-}
done
ln -fs ${pkgs.writeText "database.yml" databaseYml} ${cfg.stateDir}/config/database.yml
ln -fs ${pkgs.writeText "configuration.yml" configurationYml} ${cfg.stateDir}/config/configuration.yml
if [ "${cfg.databaseHost}" = "127.0.0.1" ]; then
if ! test -e "${cfg.stateDir}/db-created"; then
psql postgres -c "CREATE ROLE redmine WITH LOGIN NOCREATEDB NOCREATEROLE NOCREATEUSER ENCRYPTED PASSWORD '${cfg.databasePassword}'"
${config.services.postgresql.package}/bin/createdb --owner redmine redmine || true
touch "${cfg.stateDir}/db-created"
fi
fi
cd ${pkgs.redmine}/share/redmine/
${ruby}/bin/rake db:migrate
${ruby}/bin/rake redmine:plugins:migrate
${ruby}/bin/rake redmine:load_default_data
${ruby}/bin/rake generate_secret_token
'';
serviceConfig = {
PermissionsStartOnly = true; # preStart must be run as root
Type = "simple";
User = "redmine";
Group = "redmine";
TimeoutSec = "300";
WorkingDirectory = "${pkgs.redmine}/share/redmine";
ExecStart="${ruby}/bin/ruby ${pkgs.redmine}/share/redmine/script/rails server webrick -e production -P ${cfg.stateDir}/redmine.pid";
};
};
};
}

View File

@ -25,6 +25,10 @@ let
sendmailPath = "/var/setuid-wrappers/sendmail";
};
allFiles = map (f: "\"${f}\"") (
[ "${systemCronJobsFile}" ] ++ config.services.cron.cronFiles
);
in
{
@ -71,6 +75,15 @@ in
'';
};
cronFiles = mkOption {
type = types.listOf types.path;
default = [];
description = ''
A list of extra crontab files that will be read and appended to the main
crontab file when the cron service starts.
'';
};
};
};
@ -78,14 +91,7 @@ in
###### implementation
config = mkIf config.services.cron.enable {
environment.etc = singleton
# The system-wide crontab.
{ source = systemCronJobsFile;
target = "crontab";
mode = "0600"; # Cron requires this.
};
config = mkIf (config.services.cron.enable && allFiles != []) {
security.setuidPrograms = [ "crontab" ];
@ -100,6 +106,10 @@ in
preStart =
''
rm -f /etc/crontab
cat ${toString allFiles} > /etc/crontab
chmod 0600 /etc/crontab
mkdir -m 710 -p /var/cron
# By default, allow all users to create a crontab. This

View File

@ -39,7 +39,7 @@ assert withOnlineServices -> withTaglib;
assert withReplaygain -> withTaglib;
let
version = "1.4.1";
version = "1.4.2";
pname = "cantata";
fstat = x: fn: "-DENABLE_" + fn + "=" + (if x then "ON" else "OFF");
fstats = x: map (fstat x);
@ -50,8 +50,8 @@ stdenv.mkDerivation rec {
src = fetchurl {
inherit name;
url = "https://drive.google.com/uc?export=download&id=0Bzghs6gQWi60eXhuZ1Z3bGM2bjQ";
sha256 = "b0d5a1798efd275d72dffb87bc0f016fc865dbd1384b7c9af039cebdffe0cca3";
url = "https://drive.google.com/uc?export=download&id=0Bzghs6gQWi60UDFOeU1qSkIzaVE";
sha256 = "0ycwx75f1jlsaca170bz82av06bnlknl3q0df001rhmhb7wh4j6c";
};
buildInputs =

View File

@ -16,11 +16,11 @@ let
};
in stdenv.mkDerivation rec {
name = "atom-${version}";
version = "0.129.0";
version = "0.135.0";
src = fetchurl {
url = "https://github.com/atom/atom/releases/download/v${version}/atom-amd64.deb";
sha256 = "0a78cb7e74b75b5c1cdbdfdea3f56ecab9479e407575b1e3cfb10c0d3265e7a4";
sha256 = "0dh8vjhr31y2ibnf4s7adskbx115w8ns9xgrb0md9xc9gm92h405";
name = "${name}.deb";
};

View File

@ -7,8 +7,8 @@ stdenv.mkDerivation rec {
src = fetchurlGnome {
project = "dia";
major = "0"; minor = "97"; patchlevel = "2"; extension = "xz";
sha256 = "1qgawm7rrf4wd1yc0fp39ywv8gbz4ry1s16k00dzg5w6p67lfqd7";
major = "0"; minor = "97"; patchlevel = "3"; extension = "xz";
sha256 = "0d3x6w0l6fwd0l8xx06y1h56xf8ss31yzia3a6xr9y28xx44x492";
};
correctPersistence = fetchurl {
@ -25,7 +25,7 @@ stdenv.mkDerivation rec {
configureFlags = stdenv.lib.optionalString withGNOME "--enable-gnome";
patches = [ ./glib-top-level-header.patch ];
patches = [ ];
# This file should normally require a gtk-update-icon-cache -q /usr/share/icons/hicolor command
# It have no reasons to exist in a redistribuable package

View File

@ -1,471 +0,0 @@
diff -Naur dia-0.97.2-orig/app/app_procs.c dia-0.97.2/app/app_procs.c
--- dia-0.97.2-orig/app/app_procs.c 2011-03-20 07:18:13.000000000 -0400
+++ dia-0.97.2/app/app_procs.c 2012-07-15 10:49:08.192726306 -0400
@@ -50,7 +50,7 @@
#include <libxml/parser.h>
#include <libxml/xmlerror.h>
-#include <glib/gstdio.h>
+#include <glib.h>
#include "intl.h"
#include "app_procs.h"
diff -Naur dia-0.97.2-orig/app/dia-win-remote.c dia-0.97.2/app/dia-win-remote.c
--- dia-0.97.2-orig/app/dia-win-remote.c 2010-08-03 11:35:35.000000000 -0400
+++ dia-0.97.2/app/dia-win-remote.c 2012-07-15 10:49:08.159726316 -0400
@@ -35,7 +35,7 @@
#include <shellapi.h>
#include <Shlwapi.h>
#include <glib.h>
-#include <glib/gprintf.h>
+#include <glib.h>
/**
* PROTOTYPES:
diff -Naur dia-0.97.2-orig/app/filedlg.c dia-0.97.2/app/filedlg.c
--- dia-0.97.2-orig/app/filedlg.c 2009-11-07 12:13:53.000000000 -0500
+++ dia-0.97.2/app/filedlg.c 2012-07-15 10:49:08.227726294 -0400
@@ -28,7 +28,7 @@
#include <unistd.h>
#endif
#include <stdio.h>
-#include <glib/gstdio.h>
+#include <glib.h>
#undef GTK_DISABLE_DEPRECATED /* gtk_file_chooser_dialog_new_with_backend */
#include <gtk/gtk.h>
diff -Naur dia-0.97.2-orig/app/load_save.c dia-0.97.2/app/load_save.c
--- dia-0.97.2-orig/app/load_save.c 2011-09-25 07:55:11.000000000 -0400
+++ dia-0.97.2/app/load_save.c 2012-07-15 10:49:08.203726303 -0400
@@ -30,7 +30,7 @@
#include <string.h>
#include <glib.h>
-#include <glib/gstdio.h> /* g_access() and friends */
+#include <glib.h> /* g_access() and friends */
#include <errno.h>
#ifndef W_OK
diff -Naur dia-0.97.2-orig/app/sheets_dialog_callbacks.c dia-0.97.2/app/sheets_dialog_callbacks.c
--- dia-0.97.2-orig/app/sheets_dialog_callbacks.c 2009-11-07 12:13:53.000000000 -0500
+++ dia-0.97.2/app/sheets_dialog_callbacks.c 2012-07-15 10:49:08.201726302 -0400
@@ -44,7 +44,7 @@
#endif
#endif
-#include <glib/gstdio.h>
+#include <glib.h>
#include <gmodule.h>
#undef GTK_DISABLE_DEPRECATED /* GtkOptionMenu */
diff -Naur dia-0.97.2-orig/ChangeLog.pre-git dia-0.97.2/ChangeLog.pre-git
--- dia-0.97.2-orig/ChangeLog.pre-git 2009-11-07 09:28:34.000000000 -0500
+++ dia-0.97.2/ChangeLog.pre-git 2012-07-15 10:49:08.384726247 -0400
@@ -4137,7 +4137,7 @@
plug-ins/vdx/vdx-export.c plug-ins/vdx/vdx-import.c
plug-ins/wmf/wmf.cpp plug-ins/wpg/wpg.c
plug-ins/xfig/xfig-export.c plug-ins/xfig/xfig-import.c
- plug-ins/xslt/xslt.c : use <glib/gstdio.h> to match GLib's filename
+ plug-ins/xslt/xslt.c : use <glib.h> to match GLib's filename
encoding to the io functions used, that is: g_open, g_fopen, g_stat,
g_unlink, g_mkdir, g_rename (, g_access, g_lstat, g_remove, g_freopen,
g_chdir, g_rmdir). Also replace gzopen() with gzdopen(g_open(), ...)
@@ -5995,7 +5995,7 @@
Also special case strings starting with \tex - i.e. dont escape them -
to keep the use-case of direct tex input.
- * lib/debug.c : #include <glib/gprintf.h> not just <gprintf.h>
+ * lib/debug.c : #include <glib.h>
2006-01-14 Hans Breuer <hans@breuer.org>
@@ -6207,7 +6207,7 @@
* lib/makefile.msc : build debug.obj
* plug-ins/makefile.msc : building pgf in the right alphabetical order
- * plug-ins/pgf/render_pgf.c : include <glib/gprintf.h>
+ * plug-ins/pgf/render_pgf.c : include <glib.h>
2005-12-08 Lars Clausen <lars@raeder.dk>
diff -Naur dia-0.97.2-orig/lib/debug.c dia-0.97.2/lib/debug.c
--- dia-0.97.2-orig/lib/debug.c 2009-11-07 09:28:34.000000000 -0500
+++ dia-0.97.2/lib/debug.c 2012-07-15 10:49:06.813726730 -0400
@@ -21,7 +21,7 @@
#include <config.h>
#include <stdio.h>
-#include <glib/gprintf.h>
+#include <glib.h>
#include <stdarg.h>
#include "debug.h"
diff -Naur dia-0.97.2-orig/lib/dia_dirs.c dia-0.97.2/lib/dia_dirs.c
--- dia-0.97.2-orig/lib/dia_dirs.c 2009-11-07 12:13:53.000000000 -0500
+++ dia-0.97.2/lib/dia_dirs.c 2012-07-15 10:49:06.740726750 -0400
@@ -30,7 +30,7 @@
#include <sys/stat.h>
#include <sys/types.h>
#endif
-#include <glib/gstdio.h>
+#include <glib.h>
/** Get the name of a subdirectory of our data directory.
* This function does not create the subdirectory, just make the correct name.
diff -Naur dia-0.97.2-orig/lib/dia_xml.c dia-0.97.2/lib/dia_xml.c
--- dia-0.97.2-orig/lib/dia_xml.c 2009-11-07 09:28:34.000000000 -0500
+++ dia-0.97.2/lib/dia_xml.c 2012-07-15 10:49:06.770726743 -0400
@@ -25,7 +25,7 @@
#include <fcntl.h>
#include <glib.h>
-#include <glib/gstdio.h>
+#include <glib.h>
#include <libxml/parser.h>
#include <libxml/parserInternals.h>
diff -Naur dia-0.97.2-orig/objects/custom/shape_typeinfo.c dia-0.97.2/objects/custom/shape_typeinfo.c
--- dia-0.97.2-orig/objects/custom/shape_typeinfo.c 2009-11-07 09:28:34.000000000 -0500
+++ dia-0.97.2/objects/custom/shape_typeinfo.c 2012-07-15 10:49:06.639726783 -0400
@@ -27,8 +27,8 @@
#include "custom_util.h"
#include <string.h>
#include <stdarg.h>
-#include <glib/gstrfuncs.h>
-#include <glib/gstdio.h>
+#include <glib.h>
+#include <glib.h>
#include <libxml/parser.h>
/*
diff -Naur dia-0.97.2-orig/objects/SISSI/sissi.c dia-0.97.2/objects/SISSI/sissi.c
--- dia-0.97.2-orig/objects/SISSI/sissi.c 2009-11-07 09:28:34.000000000 -0500
+++ dia-0.97.2/objects/SISSI/sissi.c 2012-07-15 10:49:06.570726804 -0400
@@ -42,7 +42,7 @@
#include "dia_xml_libxml.h"
#include <string.h>
-#include <glib/gprintf.h>
+#include <glib.h>
#define DEFAULT_WIDTH 1.0
#define DEFAULT_HEIGHT 1.0
diff -Naur dia-0.97.2-orig/objects/standard/image.c dia-0.97.2/objects/standard/image.c
--- dia-0.97.2-orig/objects/standard/image.c 2009-11-07 12:13:53.000000000 -0500
+++ dia-0.97.2/objects/standard/image.c 2012-07-15 10:49:06.683726770 -0400
@@ -25,7 +25,7 @@
#ifdef HAVE_UNIST_H
#include <unistd.h>
#endif
-#include <glib/gstdio.h>
+#include <glib.h>
#include "intl.h"
#include "message.h"
diff -Naur dia-0.97.2-orig/plug-ins/cairo/diacairo.c dia-0.97.2/plug-ins/cairo/diacairo.c
--- dia-0.97.2-orig/plug-ins/cairo/diacairo.c 2009-11-07 12:13:53.000000000 -0500
+++ dia-0.97.2/plug-ins/cairo/diacairo.c 2012-07-15 10:49:06.433726846 -0400
@@ -28,7 +28,7 @@
#include <errno.h>
#define G_LOG_DOMAIN "DiaCairo"
#include <glib.h>
-#include <glib/gstdio.h>
+#include <glib.h>
/*
* To me the following looks rather suspicious. Why do we need to compile
diff -Naur dia-0.97.2-orig/plug-ins/cairo/diacairo-renderer.c dia-0.97.2/plug-ins/cairo/diacairo-renderer.c
--- dia-0.97.2-orig/plug-ins/cairo/diacairo-renderer.c 2011-01-07 06:54:21.000000000 -0500
+++ dia-0.97.2/plug-ins/cairo/diacairo-renderer.c 2012-07-15 10:49:06.435726846 -0400
@@ -28,7 +28,7 @@
#include <errno.h>
#define G_LOG_DOMAIN "DiaCairo"
#include <glib.h>
-#include <glib/gstdio.h>
+#include <glib.h>
#ifdef HAVE_PANGOCAIRO_H
#include <pango/pangocairo.h>
diff -Naur dia-0.97.2-orig/plug-ins/cgm/cgm.c dia-0.97.2/plug-ins/cgm/cgm.c
--- dia-0.97.2-orig/plug-ins/cgm/cgm.c 2009-12-27 11:22:38.000000000 -0500
+++ dia-0.97.2/plug-ins/cgm/cgm.c 2012-07-15 10:49:06.425726846 -0400
@@ -31,7 +31,7 @@
#include <glib.h>
#include <errno.h>
-#include <glib/gstdio.h>
+#include <glib.h>
#include "intl.h"
#include "message.h"
diff -Naur dia-0.97.2-orig/plug-ins/drs/dia-render-script.c dia-0.97.2/plug-ins/drs/dia-render-script.c
--- dia-0.97.2-orig/plug-ins/drs/dia-render-script.c 2009-11-07 12:13:53.000000000 -0500
+++ dia-0.97.2/plug-ins/drs/dia-render-script.c 2012-07-15 10:49:06.427726848 -0400
@@ -54,7 +54,7 @@
#define G_LOG_DOMAIN "DiaRenderScript"
#include <glib.h>
-#include <glib/gstdio.h>
+#include <glib.h>
#include "intl.h"
#include "filter.h"
diff -Naur dia-0.97.2-orig/plug-ins/dxf/dxf-export.c dia-0.97.2/plug-ins/dxf/dxf-export.c
--- dia-0.97.2-orig/plug-ins/dxf/dxf-export.c 2009-11-07 09:28:34.000000000 -0500
+++ dia-0.97.2/plug-ins/dxf/dxf-export.c 2012-07-15 10:49:06.421726850 -0400
@@ -29,7 +29,7 @@
#include <math.h>
#include <glib.h>
#include <errno.h>
-#include <glib/gstdio.h>
+#include <glib.h>
#include "autocad_pal.h"
diff -Naur dia-0.97.2-orig/plug-ins/dxf/dxf-import.c dia-0.97.2/plug-ins/dxf/dxf-import.c
--- dia-0.97.2-orig/plug-ins/dxf/dxf-import.c 2009-11-07 09:28:34.000000000 -0500
+++ dia-0.97.2/plug-ins/dxf/dxf-import.c 2012-07-15 10:49:06.419726851 -0400
@@ -30,7 +30,7 @@
#include <string.h>
#include <math.h>
#include <glib.h>
-#include <glib/gstdio.h>
+#include <glib.h>
#include "intl.h"
#include "message.h"
diff -Naur dia-0.97.2-orig/plug-ins/hpgl/hpgl.c dia-0.97.2/plug-ins/hpgl/hpgl.c
--- dia-0.97.2-orig/plug-ins/hpgl/hpgl.c 2009-11-07 09:28:34.000000000 -0500
+++ dia-0.97.2/plug-ins/hpgl/hpgl.c 2012-07-15 10:49:06.487726830 -0400
@@ -37,7 +37,7 @@
#include <errno.h>
#include <glib.h>
-#include <glib/gstdio.h>
+#include <glib.h>
#include "intl.h"
#include "message.h"
diff -Naur dia-0.97.2-orig/plug-ins/libart/export_png.c dia-0.97.2/plug-ins/libart/export_png.c
--- dia-0.97.2-orig/plug-ins/libart/export_png.c 2011-07-03 06:56:08.000000000 -0400
+++ dia-0.97.2/plug-ins/libart/export_png.c 2012-07-15 10:49:06.415726849 -0400
@@ -29,7 +29,7 @@
#include <errno.h>
#include <stdlib.h>
-#include <glib/gstdio.h>
+#include <glib.h>
#include <gtk/gtk.h>
#include "intl.h"
diff -Naur dia-0.97.2-orig/plug-ins/metapost/render_metapost.c dia-0.97.2/plug-ins/metapost/render_metapost.c
--- dia-0.97.2-orig/plug-ins/metapost/render_metapost.c 2009-11-07 09:28:34.000000000 -0500
+++ dia-0.97.2/plug-ins/metapost/render_metapost.c 2012-07-15 10:49:06.396726857 -0400
@@ -43,7 +43,7 @@
#endif
#include <errno.h>
-#include <glib/gstdio.h>
+#include <glib.h>
#include "intl.h"
#include "render_metapost.h"
diff -Naur dia-0.97.2-orig/plug-ins/pgf/render_pgf.c dia-0.97.2/plug-ins/pgf/render_pgf.c
--- dia-0.97.2-orig/plug-ins/pgf/render_pgf.c 2011-01-07 07:11:34.000000000 -0500
+++ dia-0.97.2/plug-ins/pgf/render_pgf.c 2012-07-15 10:49:06.445726842 -0400
@@ -61,8 +61,8 @@
#endif
#include <errno.h>
-#include <glib/gprintf.h>
-#include <glib/gstdio.h>
+#include <glib.h>
+#include <glib.h>
#include "intl.h"
#include "render_pgf.h"
diff -Naur dia-0.97.2-orig/plug-ins/postscript/paginate_psprint.c dia-0.97.2/plug-ins/postscript/paginate_psprint.c
--- dia-0.97.2-orig/plug-ins/postscript/paginate_psprint.c 2009-11-07 09:28:34.000000000 -0500
+++ dia-0.97.2/plug-ins/postscript/paginate_psprint.c 2012-07-15 10:49:06.451726838 -0400
@@ -31,7 +31,7 @@
#include <errno.h>
#include <sys/stat.h>
-#include <glib/gstdio.h>
+#include <glib.h>
#include "intl.h"
#include "message.h"
diff -Naur dia-0.97.2-orig/plug-ins/postscript/render_eps.c dia-0.97.2/plug-ins/postscript/render_eps.c
--- dia-0.97.2-orig/plug-ins/postscript/render_eps.c 2009-11-07 09:28:34.000000000 -0500
+++ dia-0.97.2/plug-ins/postscript/render_eps.c 2012-07-15 10:49:06.451726838 -0400
@@ -55,7 +55,7 @@
#include <locale.h>
#include <errno.h>
-#include <glib/gstdio.h>
+#include <glib.h>
#include "intl.h"
#include "render_eps.h"
diff -Naur dia-0.97.2-orig/plug-ins/pstricks/render_pstricks.c dia-0.97.2/plug-ins/pstricks/render_pstricks.c
--- dia-0.97.2-orig/plug-ins/pstricks/render_pstricks.c 2011-01-07 07:11:34.000000000 -0500
+++ dia-0.97.2/plug-ins/pstricks/render_pstricks.c 2012-07-15 10:49:06.410726853 -0400
@@ -50,7 +50,7 @@
#endif
#include <errno.h>
-#include <glib/gstdio.h>
+#include <glib.h>
#include "intl.h"
#include "render_pstricks.h"
diff -Naur dia-0.97.2-orig/plug-ins/python/pydia-render.c dia-0.97.2/plug-ins/python/pydia-render.c
--- dia-0.97.2-orig/plug-ins/python/pydia-render.c 2009-11-07 09:28:34.000000000 -0500
+++ dia-0.97.2/plug-ins/python/pydia-render.c 2012-07-15 10:49:06.503726822 -0400
@@ -21,7 +21,7 @@
#include <Python.h>
#include <glib.h>
-#include <glib/gstdio.h>
+#include <glib.h>
#include <locale.h>
diff -Naur dia-0.97.2-orig/plug-ins/shape/shape-export.c dia-0.97.2/plug-ins/shape/shape-export.c
--- dia-0.97.2-orig/plug-ins/shape/shape-export.c 2009-11-08 06:14:56.000000000 -0500
+++ dia-0.97.2/plug-ins/shape/shape-export.c 2012-07-15 10:49:06.489726827 -0400
@@ -40,7 +40,7 @@
#include <unistd.h>
#endif
-#include <glib/gstdio.h>
+#include <glib.h>
/* the dots per centimetre to render this diagram at */
/* this matches the setting `100%' setting in dia. */
diff -Naur dia-0.97.2-orig/plug-ins/svg/render_svg.c dia-0.97.2/plug-ins/svg/render_svg.c
--- dia-0.97.2-orig/plug-ins/svg/render_svg.c 2011-12-17 11:30:38.000000000 -0500
+++ dia-0.97.2/plug-ins/svg/render_svg.c 2012-07-15 10:49:06.392726859 -0400
@@ -30,7 +30,7 @@
#endif
#include <glib.h>
-#include <glib/gstdio.h>
+#include <glib.h>
#include <libxml/entities.h>
#include <libxml/tree.h>
diff -Naur dia-0.97.2-orig/plug-ins/vdx/vdx-export.c dia-0.97.2/plug-ins/vdx/vdx-export.c
--- dia-0.97.2-orig/plug-ins/vdx/vdx-export.c 2009-12-27 11:22:38.000000000 -0500
+++ dia-0.97.2/plug-ins/vdx/vdx-export.c 2012-07-15 10:55:17.066579728 -0400
@@ -32,11 +32,12 @@
#include <string.h>
#include <math.h>
+#include <sys/stat.h>
#include <glib.h>
#include <stdlib.h>
#include <errno.h>
#include <locale.h>
-#include <glib/gstdio.h>
+#include <glib.h>
#include "intl.h"
#include "message.h"
diff -Naur dia-0.97.2-orig/plug-ins/vdx/vdx-import.c dia-0.97.2/plug-ins/vdx/vdx-import.c
--- dia-0.97.2-orig/plug-ins/vdx/vdx-import.c 2009-12-27 11:22:38.000000000 -0500
+++ dia-0.97.2/plug-ins/vdx/vdx-import.c 2012-07-15 10:49:06.466726836 -0400
@@ -28,7 +28,7 @@
#include <string.h>
#include <math.h>
#include <glib.h>
-#include <glib/gstdio.h>
+#include <glib.h>
#include <stdlib.h>
#include <ctype.h>
#include <libxml/tree.h>
diff -Naur dia-0.97.2-orig/plug-ins/wmf/wmf.cpp dia-0.97.2/plug-ins/wmf/wmf.cpp
--- dia-0.97.2-orig/plug-ins/wmf/wmf.cpp 2011-03-13 09:07:48.000000000 -0400
+++ dia-0.97.2/plug-ins/wmf/wmf.cpp 2012-07-15 10:49:06.482726831 -0400
@@ -25,7 +25,7 @@
#include <string.h>
#include <math.h>
#include <glib.h>
-#include <glib/gstdio.h>
+#include <glib.h>
#include "intl.h"
#include "message.h"
diff -Naur dia-0.97.2-orig/plug-ins/wpg/wpg.c dia-0.97.2/plug-ins/wpg/wpg.c
--- dia-0.97.2-orig/plug-ins/wpg/wpg.c 2009-11-07 09:28:34.000000000 -0500
+++ dia-0.97.2/plug-ins/wpg/wpg.c 2012-07-15 10:49:06.406726855 -0400
@@ -40,7 +40,7 @@
#include <errno.h>
#include <glib.h>
-#include <glib/gstdio.h>
+#include <glib.h>
#include "intl.h"
#include "message.h"
diff -Naur dia-0.97.2-orig/plug-ins/xfig/xfig-export.c dia-0.97.2/plug-ins/xfig/xfig-export.c
--- dia-0.97.2-orig/plug-ins/xfig/xfig-export.c 2011-12-17 11:30:38.000000000 -0500
+++ dia-0.97.2/plug-ins/xfig/xfig-export.c 2012-07-15 10:49:06.400726856 -0400
@@ -16,7 +16,7 @@
#include <locale.h>
#include <glib.h>
-#include <glib/gstdio.h>
+#include <glib.h>
#include "intl.h"
#include "message.h"
diff -Naur dia-0.97.2-orig/plug-ins/xfig/xfig-import.c dia-0.97.2/plug-ins/xfig/xfig-import.c
--- dia-0.97.2-orig/plug-ins/xfig/xfig-import.c 2009-11-07 12:13:53.000000000 -0500
+++ dia-0.97.2/plug-ins/xfig/xfig-import.c 2012-07-15 10:49:06.402726853 -0400
@@ -40,7 +40,7 @@
#include <locale.h>
#include <glib.h>
-#include <glib/gstdio.h>
+#include <glib.h>
#include "intl.h"
#include "message.h"
diff -Naur dia-0.97.2-orig/plug-ins/xslt/xslt.c dia-0.97.2/plug-ins/xslt/xslt.c
--- dia-0.97.2-orig/plug-ins/xslt/xslt.c 2009-11-07 12:13:53.000000000 -0500
+++ dia-0.97.2/plug-ins/xslt/xslt.c 2012-07-15 10:49:06.440726844 -0400
@@ -27,7 +27,7 @@
#include <string.h>
#include <errno.h>
-#include <glib/gstdio.h>
+#include <glib.h>
#include "filter.h"
#include "intl.h"
diff -Naur dia-0.97.2-orig/tests/test-boundingbox.c dia-0.97.2/tests/test-boundingbox.c
--- dia-0.97.2-orig/tests/test-boundingbox.c 2009-11-07 09:28:35.000000000 -0500
+++ dia-0.97.2/tests/test-boundingbox.c 2012-07-15 10:49:06.986726677 -0400
@@ -29,7 +29,7 @@
#include <glib-object.h>
#if GLIB_CHECK_VERSION(2,16,0)
-#include <glib/gtestutils.h>
+#include <glib.h>
#endif
#include "dialib.h"
diff -Naur dia-0.97.2-orig/tests/test-objects.c dia-0.97.2/tests/test-objects.c
--- dia-0.97.2-orig/tests/test-objects.c 2009-11-07 09:28:35.000000000 -0500
+++ dia-0.97.2/tests/test-objects.c 2012-07-15 10:49:06.985726677 -0400
@@ -29,7 +29,7 @@
#include <glib-object.h>
#if GLIB_CHECK_VERSION(2,16,0)
-#include <glib/gtestutils.h>
+#include <glib.h>
#endif
#include "object.h"

View File

@ -1,11 +1,11 @@
{ fetchurl, stdenv, lzip, texinfo }:
stdenv.mkDerivation rec {
name = "ocrad-0.23";
name = "ocrad-0.24";
src = fetchurl {
url = "mirror://gnu/ocrad/${name}.tar.lz";
sha256 = "0vx0v4sz8ivgcp04zggdq9cv9sb5zxnn7j1nm15cds0zq1wr9g7m";
sha256 = "0hhlx072d00bi9qia0nj5izsq4qkscpfz2mpbyfc72msl3hfvslv";
};
buildInputs = [ lzip texinfo ];

View File

@ -4,12 +4,12 @@
with stdenv.lib;
stdenv.mkDerivation rec {
version = "0.9.2.1";
version = "0.9.3";
name = "bitcoin${toString (optional (!gui) "d")}-${version}";
src = fetchurl {
url = "https://bitcoin.org/bin/${version}/bitcoin-${version}-linux.tar.gz";
sha256 = "0060f7d38b98113ab912d4c184000291d7f026eaf77ca5830deec15059678f54";
sha256 = "1kb59w7232qzfh952rz6vvjri2w26n9cq7baml0vifdsdhxph9f4";
};
# hexdump from utillinux is required for tests

View File

@ -4,13 +4,13 @@
let
mkSweetHome3D =
{ name, module, version, src, license, description }:
{ name, module, version, src, license, description, icon }:
stdenv.mkDerivation rec {
inherit name version src description;
inherit name version src description icon;
exec = stdenv.lib.toLower module;
sweethome3dItem = makeDesktopItem {
inherit name exec;
inherit name exec icon;
comment = description;
desktopName = name;
genericName = "Computer Aided (Interior) Design";
@ -61,6 +61,10 @@ in rec {
module = module;
tag = "V_" + d2u version;
};
icon = fetchurl {
url = "http://sweethome3d.cvs.sourceforge.net/viewvc/sweethome3d/SweetHome3D/src/com/eteks/sweethome3d/viewcontroller/resources/help/images/sweethome3d.png";
sha256 = "0lnv2sz2d3m8jx25hz92gzardf0iblykhy5q0q2cyb7mw2qb2p92";
};
};
}

View File

@ -1,51 +1,43 @@
x@{builderDefsPackage
, guile, pkgconfig, glib, loudmouth, gmp, libidn, readline, libtool
, libunwind, ncurses
, ...}:
builderDefsPackage
(a :
let
helperArgNames = ["stdenv" "fetchurl" "builderDefsPackage"] ++
[];
{ stdenv, fetchgit
, guile, pkgconfig, glib, loudmouth, gmp, libidn, readline, libtool
, libunwind, ncurses, curl, jansson, texinfo
, automake, autoconf
}:
buildInputs = map (n: builtins.getAttr n x)
(builtins.attrNames (builtins.removeAttrs x helperArgNames));
sourceInfo = rec {
let
s = rec {
baseName="freetalk";
version="3.2";
version="4.0rc6";
name="${baseName}-${version}";
url="mirror://savannah/${baseName}/${name}.tar.gz";
hash="12dn7yj9k5xsrrjlnma77wzpvsdxjccwla1q0wy3lacl5l2p0jms";
url="https://github.com/GNUFreetalk/freetalk";
rev = "refs/tags/v${version}";
sha256="0sj3bwq9n6ijwv552nmi038sz7wayq8r3zaj6ngn2cnkn2b5nwbz";
};
buildInputs = [
guile pkgconfig glib loudmouth gmp libidn readline libtool
libunwind ncurses curl jansson texinfo
autoconf automake
];
in
rec {
src = a.fetchurl {
url = sourceInfo.url;
sha256 = sourceInfo.hash;
};
inherit (sourceInfo) name version;
stdenv.mkDerivation {
inherit (s) name version;
inherit buildInputs;
src = fetchgit {
inherit (s) url rev sha256;
name = "git-export-${s.name}";
};
patches = [./01_callbacks_const_fix.diff];
preConfigure = ''
patchShebangs .
./autogen.sh
'';
/* doConfigure should be removed if not needed */
phaseNames = ["doPatch" "doConfigure" "doMakeInstall"];
meta = {
description = "Console XMPP client";
maintainers = with a.lib.maintainers;
[
raskin
];
platforms = with a.lib.platforms;
linux;
license = a.lib.licenses.gpl3Plus;
inherit (s) version;
description = "Console XMPP client";
license = stdenv.lib.licenses.gpl3Plus ;
maintainers = [stdenv.lib.maintainers.raskin];
platforms = stdenv.lib.platforms.linux;
downloadPage = "http://www.gnu.org/software/freetalk/";
};
passthru = {
updateInfo = {
downloadPage = "http://www.gnu.org/software/freetalk/";
};
};
}) x
}

View File

@ -22,20 +22,14 @@ with stdenv.lib;
stdenv.mkDerivation rec {
name = "gajim-${version}";
version = "0.15.4";
version = "0.16";
src = fetchurl {
url = "http://www.gajim.org/downloads/0.15/gajim-${version}.tar.gz";
sha256 = "1g4m5j777vqqdwqvr2m6l09ljjx65ilag45d5kfc78z7frm0cz7g";
url = "http://www.gajim.org/downloads/0.16/gajim-${version}.tar.bz2";
sha256 = "14x15jwgl0c6vwj02ccpzmxr3fczp632mnj50cpklbaj4bxqvgbs";
};
patches = [
(fetchurl {
name = "gajim-drill-srv.patch";
url = "https://projects.archlinux.org/svntogit/packages.git/"
+ "plain/trunk/gajim-drill.patch?h=packages/gajim";
sha256 = "1k8zz3ns0l0kriffq41jgkv5ym6jvyd24171l7s98v9d81prdw1w";
})
(fetchurl {
name = "gajim-icon-index.patch";
url = "http://hg.gajim.org/gajim/raw-rev/b9ec78663dfb";
@ -69,6 +63,7 @@ stdenv.mkDerivation rec {
pythonPackages.pygobject pythonPackages.pyGtkGlade
pythonPackages.sqlite3 pythonPackages.pyasn1
pythonPackages.pyxdg
pythonPackages.nbxmpp
pyopenssl pythonDBus
] ++ optionals enableJingle [ farstream gst_plugins_bad libnice ]
++ optional enableE2E pythonPackages.pycrypto
@ -88,5 +83,7 @@ stdenv.mkDerivation rec {
description = "Jabber client written in PyGTK";
license = licenses.gpl3Plus;
maintainers = [ maintainers.raskin maintainers.aszlig ];
downloadPage = "http://gajim.org/downloads.php";
updateWalker = true;
};
}

View File

@ -0,0 +1,100 @@
Description: FHS through env vars
Forwarded: not-needed
Author: Jérémy Lal <kapouer@melix.org>
Last-Update: 2013-09-28
--- redmine.orig/app/models/attachment.rb
+++ redmine/app/models/attachment.rb
@@ -46,10 +46,10 @@ class Attachment < ActiveRecord::Base
"LEFT JOIN #{Project.table_name} ON #{Document.table_name}.project_id = #{Project.table_name}.id"}
cattr_accessor :storage_path
- @@storage_path = Redmine::Configuration['attachments_storage_path'] || File.join(Rails.root, "files")
+ @@storage_path = Redmine::Configuration['attachments_storage_path'] || ENV['RAILS_VAR'] ? File.join(ENV['RAILS_VAR'], "files") : File.join(Rails.root, "files")
cattr_accessor :thumbnails_storage_path
- @@thumbnails_storage_path = File.join(Rails.root, "tmp", "thumbnails")
+ @@thumbnails_storage_path = ENV['RAILS_TMP'] ? File.join(ENV['RAILS_TMP'], "thumbnails") : File.join(Rails.root, "tmp", "thumbnails")
before_save :files_to_final_location
after_destroy :delete_from_disk
--- redmine.orig/lib/redmine/configuration.rb
+++ redmine/lib/redmine/configuration.rb
@@ -32,7 +32,7 @@ module Redmine
# * <tt>:file</tt>: the configuration file to load (default: config/configuration.yml)
# * <tt>:env</tt>: the environment to load the configuration for (default: Rails.env)
def load(options={})
- filename = options[:file] || File.join(Rails.root, 'config', 'configuration.yml')
+ filename = options[:file] || ENV['RAILS_ETC'] ? File.join(ENV['RAILS_ETC'], 'configuration.yml') : File.join(Rails.root, 'config', 'configuration.yml')
env = options[:env] || Rails.env
@config = @defaults.dup
@@ -103,7 +103,7 @@ module Redmine
end
def load_deprecated_email_configuration(env)
- deprecated_email_conf = File.join(Rails.root, 'config', 'email.yml')
+ deprecated_email_conf = ENV['RAILS_ETC'] ? File.join(ENV['RAILS_ETC'], 'email.yml') : File.join(Rails.root, 'config', 'email.yml')
if File.file?(deprecated_email_conf)
warn "Storing outgoing emails configuration in config/email.yml is deprecated. You should now store it in config/configuration.yml using the email_delivery setting."
@config.merge!({'email_delivery' => load_from_yaml(deprecated_email_conf, env)})
--- redmine.orig/lib/redmine/export/pdf.rb
+++ redmine/lib/redmine/export/pdf.rb
@@ -38,7 +38,7 @@ module Redmine
attr_accessor :footer_date
def initialize(lang, orientation='P')
- @@k_path_cache = Rails.root.join('tmp', 'pdf')
+ @@k_path_cache = ENV['RAILS_TMP'] ? File.join(ENV['RAILS_TMP'], 'pdf') : Rails.root.join('tmp', 'pdf')
FileUtils.mkdir_p @@k_path_cache unless File::exist?(@@k_path_cache)
set_language_if_valid lang
pdf_encoding = l(:general_pdf_encoding).upcase
--- redmine.orig/config/application.rb
+++ redmine/config/application.rb
@@ -52,8 +63,21 @@ module RedmineApp
# Do not include all helpers
config.action_controller.include_all_helpers = false
+ # move tmp directory to RAILS_TMP
+ config.paths['tmp'] = ENV['RAILS_TMP']
+
config.session_store :cookie_store, :key => '_redmine_session'
+ # log path
+ config.paths['log'] = File.join(ENV['RAILS_LOG'], "#{Rails.env}.log") unless !ENV['RAILS_LOG']
+
+ config.paths['public'] = ENV['RAILS_PUBLIC'] unless !ENV['RAILS_PUBLIC']
+
+ config.cache_store = :file_store, File.join(ENV['RAILS_TMP'], "cache")
+
+ # Set Active Record's database.yml path
+ config.paths['config/database'] = File.join(ENV['RAILS_ETC'], 'database.yml') unless !ENV['RAILS_ETC']
+
if File.exists?(File.join(File.dirname(__FILE__), 'additional_environment.rb'))
instance_eval File.read(File.join(File.dirname(__FILE__), 'additional_environment.rb'))
end
--- redmine.orig/lib/plugins/rfpdf/lib/tcpdf.rb
+++ redmine/lib/plugins/rfpdf/lib/tcpdf.rb
@@ -89,10 +89,10 @@ class TCPDF
@@k_small_ratio = 2/3.0
cattr_accessor :k_path_cache
- @@k_path_cache = Rails.root.join('tmp')
+ @@k_path_cache = ENV['RAILS_TMP'] ? ENV['RAILS_TMP'] : Rails.root.join('tmp')
cattr_accessor :k_path_url_cache
- @@k_path_url_cache = Rails.root.join('tmp')
+ @@k_path_url_cache = ENV['RAILS_TMP'] ? ENV['RAILS_TMP'] : Rails.root.join('tmp')
attr_accessor :barcode
--- redmine.orig/lib/redmine/scm/adapters/abstract_adapter.rb
+++ redmine/lib/redmine/scm/adapters/abstract_adapter.rb
@@ -222,7 +222,7 @@ module Redmine
if @stderr_log_file.nil?
writable = false
path = Redmine::Configuration['scm_stderr_log_file'].presence
- path ||= Rails.root.join("log/#{Rails.env}.scm.stderr.log").to_s
+ path ||= ENV['RAILS_LOG'] ? File.join(ENV['RAILS_LOG'], "#{Rails.env}.scm.stderr.log").to_s : Rails.root.join("log/#{Rails.env}.scm.stderr.log").to_s
if File.exists?(path)
if File.file?(path) && File.writable?(path)
writable = true

View File

@ -0,0 +1,72 @@
Description: Externalize session config to yml in /etc
Forwarded: not-needed
Author: Jérémy Lal <kapouer@melix.org>
Last-Update: 2010-01-10
--- redmine.orig/lib/tasks/initializers.rake
+++ redmine/lib/tasks/initializers.rake
@@ -1,11 +1,12 @@
desc 'Generates a secret token for the application.'
+task :generate_secret_token do
-file 'config/initializers/secret_token.rb' do
- path = File.join(Rails.root, 'config', 'initializers', 'secret_token.rb')
- secret = SecureRandom.hex(40)
- File.open(path, 'w') do |f|
- f.write <<"EOF"
-# This file was generated by 'rake generate_secret_token', and should
+filename = ENV['YML_SESSION_FILENAME'] ? ENV['YML_SESSION_FILENAME'] : 'session.yml'
+path = File.join(ENV['RAILS_ETC'] ? ENV['RAILS_ETC'] : File.join(Rails.root, 'config'), filename)
+secret = SecureRandom.hex(40)
+File.open(path, 'w') do |f|
+ f.write <<"EOF"
+# This file was generated by 'rake generate_session_store',
# not be made visible to public.
# If you have a load-balancing Redmine cluster, you will need to use the
# same version of this file on each machine. And be sure to restart your
@@ -15,10 +18,18 @@ file 'config/initializers/secret_token.r
# change this key, all old sessions will become invalid! Make sure the
# secret is at least 30 characters and all random, no regular words or
# you'll be exposed to dictionary attacks.
-RedmineApp::Application.config.secret_token = '#{secret}'
+
+production:
+ key: _redmine_
+ secret: #{secret}
+
+development:
+ key: _redmine_
+ secret: #{secret}
+
+test:
+ key: _redmine_
+ secret: #{secret}
EOF
end
end
-
-desc 'Generates a secret token for the application.'
-task :generate_secret_token => ['config/initializers/secret_token.rb']
--- redmine.orig/config/application.rb
+++ redmine/config/application.rb
@@ -66,7 +66,20 @@ module RedmineApp
# move tmp directory to RAILS_TMP
config.paths['tmp'] = ENV['RAILS_TMP']
- config.session_store :cookie_store, :key => '_redmine_session'
+ # loads cookie based session session and secret keys
+ # this is needed here because initializers are loaded after plugins,
+ # and some plugins initialize ActionController which requires a secret to be set.
+ # crash if file not found
+ relativeUrlRoot = ENV['RAILS_RELATIVE_URL_ROOT']
+ filename = ENV['RAILS_ETC'] ? File.join(ENV['RAILS_ETC'], 'session.yml') : File.join(File.dirname(__FILE__), '..', 'session.yml')
+ if File.exists?(filename)
+ sessionconfig = YAML::load_file(filename)
+ config.session_store :cookie_store, :key => sessionconfig[Rails.env]['key'], :path => (relativeUrlRoot.blank?) ? '/' : relativeUrlRoot
+ config.secret_token = sessionconfig[Rails.env]['secret']
+ else
+ # temporary settings before session.yml is created
+ config.session_store :cookie_store, :key => '_redmine_session', :path => (relativeUrlRoot.blank?) ? '/' : relativeUrlRoot
+ end
# log path
config.paths['log'] = File.join(ENV['RAILS_LOG'], "#{Rails.env}.log") unless !ENV['RAILS_LOG']

View File

@ -0,0 +1,11 @@
--- redmine.orig/lib/redmine/plugin.rb
+++ redmine/lib/redmine/plugin.rb
@@ -47,7 +47,7 @@ module Redmine #:nodoc:
self.directory = File.join(Rails.root, 'plugins')
cattr_accessor :public_directory
- self.public_directory = File.join(Rails.root, 'public', 'plugin_assets')
+ self.public_directory = ENV['RAILS_TMP'] ? File.join(ENV['RAILS_TMP'], 'plugin_assets') : File.join(Rails.root, 'public', 'plugin_assets')
@registered_plugins = {}
class << self

View File

@ -0,0 +1,152 @@
GEM
remote: https://rubygems.org/
specs:
actionmailer (3.2.19)
actionpack (= 3.2.19)
mail (~> 2.5.4)
actionpack (3.2.19)
activemodel (= 3.2.19)
activesupport (= 3.2.19)
builder (~> 3.0.0)
erubis (~> 2.7.0)
journey (~> 1.0.4)
rack (~> 1.4.5)
rack-cache (~> 1.2)
rack-test (~> 0.6.1)
sprockets (~> 2.2.1)
activemodel (3.2.19)
activesupport (= 3.2.19)
builder (~> 3.0.0)
activerecord (3.2.19)
activemodel (= 3.2.19)
activesupport (= 3.2.19)
arel (~> 3.0.2)
tzinfo (~> 0.3.29)
activeresource (3.2.19)
activemodel (= 3.2.19)
activesupport (= 3.2.19)
activesupport (3.2.19)
i18n (~> 0.6, >= 0.6.4)
multi_json (~> 1.0)
arel (3.0.3)
awesome_nested_set (2.1.6)
activerecord (>= 3.0.0)
builder (3.0.0)
capybara (2.1.0)
mime-types (>= 1.16)
nokogiri (>= 1.3.3)
rack (>= 1.0.0)
rack-test (>= 0.5.4)
xpath (~> 2.0)
childprocess (0.5.5)
ffi (~> 1.0, >= 1.0.11)
coderay (1.1.0)
erubis (2.7.0)
fastercsv (1.5.5)
ffi (1.9.5)
hike (1.2.3)
i18n (0.6.11)
journey (1.0.4)
jquery-rails (2.0.3)
railties (>= 3.1.0, < 5.0)
thor (~> 0.14)
json (1.8.1)
mail (2.5.4)
mime-types (~> 1.16)
treetop (~> 1.4.8)
metaclass (0.0.4)
mime-types (1.25.1)
mini_portile (0.6.0)
mocha (1.0.0)
metaclass (~> 0.0.1)
multi_json (1.10.1)
net-ldap (0.3.1)
nokogiri (1.6.3.1)
mini_portile (= 0.6.0)
pg (0.17.1)
polyglot (0.3.5)
rack (1.4.5)
rack-cache (1.2)
rack (>= 0.4)
rack-openid (1.4.2)
rack (>= 1.1.0)
ruby-openid (>= 2.1.8)
rack-ssl (1.3.4)
rack
rack-test (0.6.2)
rack (>= 1.0)
rails (3.2.19)
actionmailer (= 3.2.19)
actionpack (= 3.2.19)
activerecord (= 3.2.19)
activeresource (= 3.2.19)
activesupport (= 3.2.19)
bundler (~> 1.0)
railties (= 3.2.19)
railties (3.2.19)
actionpack (= 3.2.19)
activesupport (= 3.2.19)
rack-ssl (~> 1.3.2)
rake (>= 0.8.7)
rdoc (~> 3.4)
thor (>= 0.14.6, < 2.0)
rake (10.1.1)
rdoc (3.12.2)
json (~> 1.4)
redcarpet (2.3.0)
rmagick (2.13.3)
ruby-openid (2.3.0)
rubyzip (1.1.6)
selenium-webdriver (2.43.0)
childprocess (~> 0.5)
multi_json (~> 1.0)
rubyzip (~> 1.0)
websocket (~> 1.0)
shoulda (3.3.2)
shoulda-context (~> 1.0.1)
shoulda-matchers (~> 1.4.1)
shoulda-context (1.0.2)
shoulda-matchers (1.4.1)
activesupport (>= 3.0.0)
sprockets (2.2.2)
hike (~> 1.2)
multi_json (~> 1.0)
rack (~> 1.0)
tilt (~> 1.1, != 1.3.0)
thor (0.19.1)
tilt (1.4.1)
treetop (1.4.15)
polyglot
polyglot (>= 0.3.1)
tzinfo (0.3.41)
websocket (1.2.1)
xpath (2.0.0)
nokogiri (~> 1.3)
yard (0.8.7.4)
PLATFORMS
ruby
DEPENDENCIES
activerecord-jdbc-adapter (~> 1.3.2)
activerecord-jdbcpostgresql-adapter
awesome_nested_set (= 2.1.6)
builder (= 3.0.0)
capybara (~> 2.1.0)
coderay (~> 1.1.0)
fastercsv (~> 1.5.0)
jquery-rails (~> 2.0.2)
mime-types
mocha (~> 1.0.0)
net-ldap (~> 0.3.1)
pg (>= 0.11.0)
rack-openid
rails (= 3.2.19)
rake (~> 10.1.1)
rdoc (>= 2.4.2)
redcarpet (~> 2.3.0)
rmagick (>= 2.0.0)
ruby-openid (~> 2.3.0)
selenium-webdriver
shoulda (~> 3.3.2)
yard

View File

@ -0,0 +1,332 @@
[
{
name = "actionmailer";
hash = "cd9f0b22f755b0adeae13cf949adaf63fa1c068c72d0a100572c6a11aecd3ba7";
url = "http://rubygems.org/downloads/actionmailer-3.2.19.gem";
version = "3.2.19";
}
{
name = "actionpack";
hash = "c58ca2342aff2062f4f478551ce46d81918ac93200bc62d099764d2cd7499fcd";
url = "http://rubygems.org/downloads/actionpack-3.2.19.gem";
version = "3.2.19";
}
{
name = "activemodel";
hash = "4ea3abf790eca9ee8228e9e2a465350e258294270a639b63f0e1dfad236fe70e";
url = "http://rubygems.org/downloads/activemodel-3.2.19.gem";
version = "3.2.19";
}
{
name = "activerecord";
hash = "052945ad510744aaa3e35a817a6f515a2316e7dd96df6460f75b36067bb60372";
url = "http://rubygems.org/downloads/activerecord-3.2.19.gem";
version = "3.2.19";
}
{
name = "activeresource";
hash = "8617d24537ca937cc67aac46aaa29782510d66136605426d0a23a3585a839daf";
url = "http://rubygems.org/downloads/activeresource-3.2.19.gem";
version = "3.2.19";
}
{
name = "activesupport";
hash = "2c837a59250da14b12a6b0cfb6774f0afae90aa749fd96ad4347344d8417ad3d";
url = "http://rubygems.org/downloads/activesupport-3.2.19.gem";
version = "3.2.19";
}
{
name = "arel";
hash = "c0006e2169deee3b8cc2d258296388822eeb2db59832450b9b7316e1387d0da4";
url = "http://rubygems.org/downloads/arel-3.0.3.gem";
version = "3.0.3";
}
{
name = "awesome_nested_set";
hash = "0dcd801aea5048f5ab907b62b4174b6763b191eaa4e1e11bb83f996f01349af8";
url = "http://rubygems.org/downloads/awesome_nested_set-2.1.6.gem";
version = "2.1.6";
}
{
name = "builder";
hash = "fbd3e15e5de02245f7d649b3415b2c2875cdc9a14dccde89aa30fc14a314618e";
url = "http://rubygems.org/downloads/builder-3.0.0.gem";
version = "3.0.0";
}
{
name = "capybara";
hash = "a9a19f8d6bb2dfcb1f05ea3e1727cb556d1cba0d234d1712b481e8d4f7bbb91e";
url = "http://rubygems.org/downloads/capybara-2.1.0.gem";
version = "2.1.0";
}
{
name = "childprocess";
hash = "9b583295a11932d2eeffa1e8f5b8fb2fb0064a2f0111ad98c3b752b94f80bf33";
url = "http://rubygems.org/downloads/childprocess-0.5.5.gem";
version = "0.5.5";
}
{
name = "coderay";
hash = "5a943c59e36f7ef9dd2677855735656413af02e3f302431e9c548aabe89f3c15";
url = "http://rubygems.org/downloads/coderay-1.1.0.gem";
version = "1.1.0";
}
{
name = "erubis";
hash = "63653f5174a7997f6f1d6f465fbe1494dcc4bdab1fb8e635f6216989fb1148ba";
url = "http://rubygems.org/downloads/erubis-2.7.0.gem";
version = "2.7.0";
}
{
name = "fastercsv";
hash = "d098199e62e4e10eec436a9ea9b8c189dacd5c06f2825f00d1e0f1c29fdbc3b5";
url = "http://rubygems.org/downloads/fastercsv-1.5.5.gem";
version = "1.5.5";
}
{
name = "ffi";
hash = "0d2ef90163eef8545689e8dfc27fb1245a2d82e3500d587de1e38290629e662f";
url = "http://rubygems.org/downloads/ffi-1.9.5.gem";
version = "1.9.5";
}
{
name = "hike";
hash = "154e2f2593845e5bcd8ed2ba3092600c55c6ad8c630722857de3fdaf334ccc44";
url = "http://rubygems.org/downloads/hike-1.2.3.gem";
version = "1.2.3";
}
{
name = "i18n";
hash = "b37dda25b30484f2674a851e24ae098a38564a61c976fa91a34bf8fceaa3923b";
url = "http://rubygems.org/downloads/i18n-0.6.11.gem";
version = "0.6.11";
}
{
name = "journey";
hash = "7454b8612530784000fbb17ea2df749a71b70702a0ac8ebef4a1e7f05aecc10f";
url = "http://rubygems.org/downloads/journey-1.0.4.gem";
version = "1.0.4";
}
{
name = "jquery-rails";
hash = "cc4eab342fb3b1fcbb2fc1c9a61b09ecd86d795b1f74d607994b0bc6fd5ef444";
url = "http://rubygems.org/downloads/jquery-rails-2.0.3.gem";
version = "2.0.3";
}
{
name = "json";
hash = "961bfbbfa9fda1e857e9c791e964e6664e0d43bf687b19669dfbc7cdbc5e0200";
url = "http://rubygems.org/downloads/json-1.8.1.gem";
version = "1.8.1";
}
{
name = "mail";
hash = "446585c38b062121252688dcc9cc70af1f470822e30db021bb97d185969e257c";
url = "http://rubygems.org/downloads/mail-2.5.4.gem";
version = "2.5.4";
}
{
name = "metaclass";
hash = "8569685c902108b1845be4e5794d646f2a8adcb0280d7651b600dab0844fe942";
url = "http://rubygems.org/downloads/metaclass-0.0.4.gem";
version = "0.0.4";
}
{
name = "mime-types";
hash = "88ef3c596481678710ffd4018fa40f1999b02d97babea39682ba7d5badd21f56";
url = "http://rubygems.org/downloads/mime-types-1.25.1.gem";
version = "1.25.1";
}
{
name = "mini_portile";
hash = "762b3e241362de24b2eb2bb1b98638399b931e9e51bece5f8e2df7611eb16c26";
url = "http://rubygems.org/downloads/mini_portile-0.6.0.gem";
version = "0.6.0";
}
{
name = "mocha";
hash = "788fd93c8009a7e0eebd155509953e5987f4681902aad666a294283baa09899a";
url = "http://rubygems.org/downloads/mocha-1.0.0.gem";
version = "1.0.0";
}
{
name = "multi_json";
hash = "2c98979877e87df0b338ebf5c86091b390f53d62c11a8232bd51ca007e0b82d2";
url = "http://rubygems.org/downloads/multi_json-1.10.1.gem";
version = "1.10.1";
}
{
name = "net-ldap";
hash = "953551665fb0d398740a72a26314c6d34bd70fa35419c96dc58351f17d9a5081";
url = "http://rubygems.org/downloads/net-ldap-0.3.1.gem";
version = "0.3.1";
}
{
name = "nokogiri";
hash = "91761a654439406b5bed71adf6092d49829e26332b4c0e7c8a23a2e628442585";
url = "http://rubygems.org/downloads/nokogiri-1.6.3.1.gem";
version = "1.6.3.1";
}
{
name = "pg";
hash = "e7933e8f7f184c28e820ed85ddfb3ad8a13933b2b2ab8656aa8f81cb0aa610a6";
url = "http://rubygems.org/downloads/pg-0.17.1.gem";
version = "0.17.1";
}
{
name = "polyglot";
hash = "59d66ef5e3c166431c39cb8b7c1d02af419051352f27912f6a43981b3def16af";
url = "http://rubygems.org/downloads/polyglot-0.3.5.gem";
version = "0.3.5";
}
{
name = "rack";
hash = "f7bf3faa8e09a2ff26475372de36a724e7470d6bdc33d189a0ec34b49605f308";
url = "http://rubygems.org/downloads/rack-1.4.5.gem";
version = "1.4.5";
}
{
name = "rack-cache";
hash = "02bfed05f8b3266db804f2fa445801636ca2c6d211a3137ec796f88af5756e1c";
url = "http://rubygems.org/downloads/rack-cache-1.2.gem";
version = "1.2";
}
{
name = "rack-openid";
hash = "8cd2305e738463a7da98791f9ac4df4cf3f6ed27908d982350430694ac2fe869";
url = "http://rubygems.org/downloads/rack-openid-1.4.2.gem";
version = "1.4.2";
}
{
name = "rack-ssl";
hash = "d703764fa2a0d44a2163d6add65be89f5dba4477d1959b90d3727682a9c37dcf";
url = "http://rubygems.org/downloads/rack-ssl-1.3.4.gem";
version = "1.3.4";
}
{
name = "rack-test";
hash = "7e920b6aac888e4a3846e5997fb1cbf456bdb5846322b58dc31697a54a38b306";
url = "http://rubygems.org/downloads/rack-test-0.6.2.gem";
version = "0.6.2";
}
{
name = "rails";
hash = "33b64cf78dfcf3206d961ce03e8fe6d260081da696e60da39d0b2a4a160fe22b";
url = "http://rubygems.org/downloads/rails-3.2.19.gem";
version = "3.2.19";
}
{
name = "railties";
hash = "c569009ee5c005190d208ac228087fdc094b10c6f0cf209f1d12c552b447cc10";
url = "http://rubygems.org/downloads/railties-3.2.19.gem";
version = "3.2.19";
}
{
name = "rake";
hash = "85e446590871dd3469c80dfe70a0296c20b76a9006af6b728c1f47d0b460412d";
url = "http://rubygems.org/downloads/rake-10.1.1.gem";
version = "10.1.1";
}
{
name = "rdoc";
hash = "a8e2b78f7e5ec4cc4716cd863975645f2f2377dc6db267a15e427e5fae2633ed";
url = "http://rubygems.org/downloads/rdoc-3.12.2.gem";
version = "3.12.2";
}
{
name = "redcarpet";
hash = "5c9bcc307fba97ff5a25eec74f08365c17e929d2a5c707db32d6fc99ec81f0b9";
url = "http://rubygems.org/downloads/redcarpet-2.3.0.gem";
version = "2.3.0";
}
{
name = "rmagick";
hash = "109f3b8be90afdea9abbdd2a79a955cd808b5cad65d937ed12676da22870d3b4";
url = "http://rubygems.org/downloads/rmagick-2.13.3.gem";
version = "2.13.3";
}
{
name = "ruby-openid";
hash = "f69ed004e95f7094e23bfd8bc9ebfb1dc88a7b46637252ca2907a1189870ea7b";
url = "http://rubygems.org/downloads/ruby-openid-2.3.0.gem";
version = "2.3.0";
}
{
name = "rubyzip";
hash = "a996435ee9698be6a09d3748f4d23ee15aaf45cbfef1749def165af6ea3c0a9e";
url = "http://rubygems.org/downloads/rubyzip-1.1.6.gem";
version = "1.1.6";
}
{
name = "selenium-webdriver";
hash = "09fe4374d1541cb45403ad1238c2d88129f3afb985218635af087a06c99a521a";
url = "http://rubygems.org/downloads/selenium-webdriver-2.43.0.gem";
version = "2.43.0";
}
{
name = "shoulda";
hash = "52e70b71cbfb7c01dace14e268a62d86c21ddd1e5ec0116c8b1e632d8e04e412";
url = "http://rubygems.org/downloads/shoulda-3.3.2.gem";
version = "3.3.2";
}
{
name = "shoulda-context";
hash = "ee5559aa13248c70fdec6868a3c144adf7438c904c59d1a76b04a002e5151de5";
url = "http://rubygems.org/downloads/shoulda-context-1.0.2.gem";
version = "1.0.2";
}
{
name = "shoulda-matchers";
hash = "c35693cbfa84213212dffbc2c87487427ef364927340151329a842f0a06086b9";
url = "http://rubygems.org/downloads/shoulda-matchers-1.4.1.gem";
version = "1.4.1";
}
{
name = "sprockets";
hash = "fae893b7e86e83c1936f6f2a64db3550510f86eabdd5fa9f0f23fb25d7e0cf96";
url = "http://rubygems.org/downloads/sprockets-2.2.2.gem";
version = "2.2.2";
}
{
name = "thor";
hash = "9ff834f031b5550c743bb8a3139317fefdae9cdebd02d60de376658f427fe522";
url = "http://rubygems.org/downloads/thor-0.19.1.gem";
version = "0.19.1";
}
{
name = "tilt";
hash = "39820562c4f5db45fe18de87ccc30a0e77a998bf5334b1d8c10a2f7dbc1f5903";
url = "http://rubygems.org/downloads/tilt-1.4.1.gem";
version = "1.4.1";
}
{
name = "treetop";
hash = "ffa68f201c0f62c26b0a1d13233d73194400596964696843f87ebb5d812f12ff";
url = "http://rubygems.org/downloads/treetop-1.4.15.gem";
version = "1.4.15";
}
{
name = "tzinfo";
hash = "381b22fd1744a35d0a0239f563f505773681e626e6d900063b14cb9b1b68e98c";
url = "http://rubygems.org/downloads/tzinfo-0.3.41.gem";
version = "0.3.41";
}
{
name = "websocket";
hash = "e626c8c3e8593735d900265fb1fc3439fd06b394069860177d8f40733b12ae9e";
url = "http://rubygems.org/downloads/websocket-1.2.1.gem";
version = "1.2.1";
}
{
name = "xpath";
hash = "9ca4a1cc88d9ab16c591468cce7b5d00ee06a8a76b841f8438970c7a44c86c12";
url = "http://rubygems.org/downloads/xpath-2.0.0.gem";
version = "2.0.0";
}
{
name = "yard";
hash = "e65a26f9b9dc6e2aa9b1d1d2e1a45bee3edf540a6a7e6c30fa6aa1df7f7a29b4";
url = "http://rubygems.org/downloads/yard-0.8.7.4.gem";
version = "0.8.7.4";
}
]

View File

@ -0,0 +1,6 @@
to regenerate Gemfile.nix and Gemfile.lock you need to
% nix-build bootstrap.nix
% cp result/Gemfile.nix ./
% cp result/Gemfile.lock ./

View File

@ -0,0 +1,45 @@
{ pkgs ? import <nixpkgs> {}
}:
with pkgs;
let
in stdenv.mkDerivation rec {
version = "2.5.2";
name = "redmine-${version}";
__noChroot = true;
src = fetchurl {
url = "http://www.redmine.org/releases/${name}.tar.gz";
sha256 = "0x0zwxyj4dwbk7l64s3lgny10mjf0ba8jwrbafsm4d72sncmacv0";
};
buildInputs = [
ruby rubyLibs.bundler libiconv libxslt libxml2 pkgconfig
libffi imagemagickBig postgresql which stdenv
];
installPhase = ''
unset http_proxy
unset ftp_proxy
cp -R . $out
cp ${./generate_nix_requirements.rb} $out/generate_nix_requirements.rb
cd $out
cat > config/database.yml <<EOF
production:
adapter: postgresql
EOF
bundle config --local build.nokogiri --use-system-libraries \
--with-iconv-dir=${libiconv} \
--with-xslt-dir=${libxslt} \
--with-xml2-dir=${libxml2} \
--with-pkg-config \
--with-pg-config=${postgresql}/bin/pg_config
bundle install --verbose --without development test rmagick --path /tmp/redmine-${version}
HOME="/tmp/redmine-${version}" ruby generate_nix_requirements.rb
rm -R /tmp/gems
'';
}

View File

@ -0,0 +1,73 @@
{ stdenv, fetchurl, ruby, rubyLibs, libiconv, libxslt, libxml2, pkgconfig, libffi, imagemagickBig, postgresql }:
let
gemspec = map (gem: fetchurl { url=gem.url; sha256=gem.hash; }) (import ./Gemfile.nix);
in stdenv.mkDerivation rec {
version = "2.5.2";
name = "redmine-${version}";
src = fetchurl {
url = "http://www.redmine.org/releases/${name}.tar.gz";
sha256 = "0x0zwxyj4dwbk7l64s3lgny10mjf0ba8jwrbafsm4d72sncmacv0";
};
# taken from redmine (2.5.1-2~bpo70+3) in debian wheezy-backports
# needed to separate run-time and build-time directories
patches = [
./2002_FHS_through_env_vars.patch
./2004_FHS_plugins_assets.patch
./2003_externalize_session_config.patch
];
postPatch = ''
substituteInPlace lib/redmine/plugin.rb --replace "File.join(Rails.root, 'plugins')" "ENV['RAILS_PLUGINS']"
substituteInPlace lib/redmine/plugin.rb --replace "File.join(Rails.root, 'plugins', id.to_s, 'db', 'migrate')" "File.join(ENV['RAILS_PLUGINS'], id.to_s, 'db', 'migrate')"
substituteInPlace config/routes.rb --replace '"plugins/*", Rails.root' 'ENV["RAILS_PLUGINS"] + "/*"'
'';
buildInputs = [
ruby rubyLibs.bundler libiconv libxslt libxml2 pkgconfig libffi
imagemagickBig postgresql
];
installPhase = ''
mkdir -p $out/share/redmine/
cp -R . $out/share/redmine/
cd $out/share/redmine
ln -s ${./Gemfile.lock} Gemfile.lock
export HOME=$(pwd)
cat > config/database.yml <<EOF
production:
adapter: postgresql
EOF
mkdir -p vendor/cache
${stdenv.lib.concatStrings (map (gem: "ln -s ${gem} vendor/cache/${gem.name};") gemspec)}
bundle config build.nokogiri \
--use-system-libraries \
--with-iconv-dir=${libiconv} \
--with-xslt-dir=${libxslt} \
--with-xml2-dir=${libxml2} \
--with-pkg-config \
--with-pg-config=${postgresql}/bin/pg_config
bundle install --verbose --local --deployment
# make sure we always load pg package
echo "gem \"pg\"" >> Gemfile
# make rails server happy
mkdir -p tmp/pids
# cleanup
rm config/database.yml
'';
meta = with stdenv.lib; {
homepage = http://www.redmine.org/;
platforms = platforms.linux;
maintainers = [ maintainers.garbas ];
license = licenses.gpl2;
};
}

View File

@ -0,0 +1,56 @@
#!/usr/bin/env ruby
require 'rubygems'
require 'bundler'
require 'fileutils'
require 'net/http'
require 'net/https'
require 'uri'
TMP_DIR = "/tmp/gems"
FileUtils.rm_rf(TMP_DIR) if File.exists?(TMP_DIR)
FileUtils.mkdir TMP_DIR
GEMSERVER = "http://rubygems.org"
# inspect Gemfile.lock
lockfile = Bundler::LockfileParser.new(Bundler.read_file("Gemfile.lock"))
to_mirror = {}
uri = URI(GEMSERVER)
http = Net::HTTP.new(uri.host, uri.port)
http.use_ssl = uri.scheme == 'https'
requirements = {}
lockfile.specs.each do |s|
possible_gem_name = "#{s.name}-#{s.version.to_s}.gem"
Dir.chdir TMP_DIR do
filename = `gem fetch #{s.name} -v #{s.version.to_s}`.split()[1]
hash = `sha256sum #{filename}.gem`
url = "#{GEMSERVER}/downloads/#{filename}.gem"
puts url
requirements[s.name] = { :version => s.version.to_s,
:hash => hash.split().first,
:url => url,}
end
end
filename = 'Gemfile.nix'
File.open(filename, 'w') do |file|
file.puts "["
requirements.each do |name, info|
file.puts "{"
file.puts ['name = ', '"', name, '";'].join('')
file.puts ['hash = ', '"', info[:hash], '";'].join('')
file.puts ['url = ', '"', info[:url], '";'].join('')
file.puts ['version = ', '"', info[:version], '";'].join('')
file.puts "}"
end
file.puts "]"
end

View File

@ -2,11 +2,11 @@
stdenv.mkDerivation rec {
name = "fsharp-${version}";
version = "3.1.1.25";
version = "3.1.1.26";
src = fetchurl {
url = "https://github.com/fsharp/fsharp/archive/${version}.tar.gz";
sha256 = "1vrgw7qk4g78mjjapc1a1frribcgya4cdrwahv3i26z9s10g5h3d";
sha256 = "1yz3cq8ys6ryc6x3a0qyc100swrg2q3az8x8in1lp7c2c0l02zb2";
};
buildInputs = [ mono pkgconfig autoconf automake which ];

View File

@ -53,5 +53,6 @@ stdenv.mkDerivation rec {
homepage = http://clisp.cons.org;
maintainers = [stdenv.lib.maintainers.raskin];
platforms = stdenv.lib.platforms.linux;
branch = "2.44";
};
}

View File

@ -72,6 +72,7 @@ rec {
platforms = with a.lib.platforms;
linux;
license = "bsd";
branch = "2.0.1";
};
passthru = {
updateInfo = {

View File

@ -37,6 +37,7 @@ rec {
platforms = with a.lib.platforms;
linux;
license = "free";
branch = "0.5.1";
};
passthru = {
updateInfo = {

View File

@ -37,6 +37,7 @@ rec {
platforms = with a.lib.platforms;
linux;
license = "free";
branch = "0.7";
};
passthru = {
updateInfo = {

View File

@ -19,5 +19,6 @@ stdenv.mkDerivation {
license = licenses.lgpl3Plus;
homepage = http://eigen.tuxfamily.org ;
maintainers = with stdenv.lib.maintainers; [ sander urkud raskin ];
branch = "2";
};
}

View File

@ -5,12 +5,12 @@
}:
stdenv.mkDerivation rec {
version = "2.4.1";
version = "2.4.2";
name = "ffmpeg-${version}";
src = fetchurl {
url = "http://www.ffmpeg.org/releases/${name}.tar.bz2";
sha256 = "1wy7hdkaijsr6cbvgq5gkjdb0rd3m6583b8d68hlmsj15k7czbml";
sha256 = "0zps80jyjvkmgmjvp9s7drbddr820hcw4w5r78hkbs5xsylr0kwp";
};
subtitleSupport = config.ffmpeg.subtitle or true;

View File

@ -1,6 +1,6 @@
{ stdenv, fetchurl }:
let version = "1.6.0"; in
let version = "1.6.2"; in
stdenv.mkDerivation {
name = "geoip-${version}";
@ -15,5 +15,7 @@ stdenv.mkDerivation {
maintainers = [ stdenv.lib.maintainers.raskin ];
license = stdenv.lib.licenses.lgpl21;
platforms = stdenv.lib.platforms.unix;
homepage = "http://geolite.maxmind.com/";
downloadPage = "http://geolite.maxmind.com/download/";
};
}

View File

@ -1,11 +1,11 @@
{ stdenv, fetchurl, unzip }:
stdenv.mkDerivation rec {
name = "glm-0.9.5.3";
name = "glm-0.9.5.4";
src = fetchurl {
url = "mirror://sourceforge/project/ogl-math/${name}/${name}.zip";
sha256 = "0ndwaw2mp7pzcwwm4dghbv5qqax5a8c5plnwdgnpc9adm79gj1rl";
sha256 = "0v14xssysy3q1h2mga6rqlz722mwbis4rrx76zmvhjqh17qh4l62";
};
buildInputs = [ unzip ];

View File

@ -1,11 +1,11 @@
{ stdenv, fetchurl, pkgconfig, glib, zlib, libgpgerror }:
stdenv.mkDerivation rec {
name = "gmime-2.6.19";
name = "gmime-2.6.20";
src = fetchurl {
url = "mirror://gnome/sources/gmime/2.6/${name}.tar.xz";
sha256 = "0jm1fgbjgh496rsc0il2y46qd4bqq2ln9168p4zzh68mk4ml1yxg";
sha256 = "0rfzbgsh8ira5p76kdghygl5i3fvmmx4wbw5rp7f8ajc4vxp18g0";
};
nativeBuildInputs = [ pkgconfig ];

View File

@ -1,4 +1,4 @@
{pkgs, pkgs_i686, xcodeVersion ? "5.0", tiVersion ? "3.2.3.GA"}:
{pkgs, pkgs_i686, xcodeVersion ? "5.0", tiVersion ? "3.4.0.GA"}:
let
# We have to use Oracle's JDK. On Darwin, just simply expose the host system's
@ -31,6 +31,7 @@ rec {
titaniumSdkFile = if tiVersion == "3.1.4.GA" then ./titaniumsdk-3.1.nix
else if tiVersion == "3.2.3.GA" then ./titaniumsdk-3.2.nix
else if tiVersion == "3.3.0.GA" then ./titaniumsdk-3.3.nix
else if tiVersion == "3.4.0.GA" then ./titaniumsdk-3.4.nix
else throw "Titanium version not supported: "+tiVersion;
in
import titaniumSdkFile {

View File

@ -1,7 +1,7 @@
{ nixpkgs ? <nixpkgs>
, systems ? [ "x86_64-linux" "x86_64-darwin" ]
, xcodeVersion ? "5.0"
, tiVersion ? "3.2.3.GA"
, tiVersion ? "3.4.0.GA"
, rename ? false
, newBundleId ? "com.example.kitchensink", iosMobileProvisioningProfile ? null, iosCertificate ? null, iosCertificateName ? "Example", iosCertificatePassword ? ""
, allowUnfree ? false

View File

@ -0,0 +1,77 @@
{stdenv, fetchurl, unzip, makeWrapper, python, jdk}:
stdenv.mkDerivation {
name = "mobilesdk-3.4.0.GA";
src = if (stdenv.system == "i686-linux" || stdenv.system == "x86_64-linux") then fetchurl {
url = http://builds.appcelerator.com/mobile/3.4.0/mobilesdk-3.4.0.GA-linux.zip;
sha1 = "c281a3a3f3af35adc95fc00dcd525b84516c2083";
}
else if stdenv.system == "x86_64-darwin" then fetchurl {
url = http://builds.appcelerator.com/mobile/3.4.0/mobilesdk-3.4.0.GA-osx.zip;
sha1 = "2f10426462e5f8e487be83c8038f2934d5079f0d";
}
else throw "Platform: ${stdenv.system} not supported!";
buildInputs = [ unzip makeWrapper ];
buildCommand = ''
mkdir -p $out
cd $out
yes y | unzip $src
# Fix shebang header for python scripts
find . -name \*.py | while read i
do
sed -i -e "s|#!/usr/bin/env python|#!${python}/bin/python|" $i
done
# Rename ugly version number
cd mobilesdk/*
cd 3.4.0.GA
# Zip files do not support timestamps lower than 1980. We have to apply a few work-arounds to cope with that
# Yes, I know it's nasty :-)
cd android
sed -i -f ${./fixtiverify.sed} builder.py
sed -i -f ${./fixtiprofiler.sed} builder.py
sed -i -f ${./fixso.sed} builder.py
sed -i -f ${./fixnativelibs.sed} builder.py
# Patch some executables
${if stdenv.system == "i686-linux" then
''
patchelf --set-interpreter ${stdenv.gcc.libc}/lib/ld-linux.so.2 titanium_prep.linux32
''
else if stdenv.system == "x86_64-linux" then
''
patchelf --set-interpreter ${stdenv.gcc.libc}/lib/ld-linux-x86-64.so.2 titanium_prep.linux64
''
else ""}
# Wrap builder script
mv builder.py .builder.py
cat > builder.py <<EOF
#!${python}/bin/python
import os, sys
os.environ['PYTHONPATH'] = '$(echo ${python.modules.sqlite3}/lib/python*/site-packages)'
os.environ['JAVA_HOME'] = '${if stdenv.system == "x86_64-darwin" then jdk else "${jdk}/lib/openjdk"}'
os.execv('$(pwd)/.builder.py', sys.argv)
EOF
chmod +x builder.py
'' + stdenv.lib.optionalString (stdenv.system == "x86_64-darwin") ''
# 'ditto' utility is needed to copy stuff to the Xcode organizer. Dirty, but this allows it to work.
sed -i -e "s|ditto|/usr/bin/ditto|g" $out/mobilesdk/osx/*/iphone/builder.py
sed -i -e "s|--xcode|--xcode '+process.env['NIX_TITANIUM_WORKAROUND']+'|" $out/mobilesdk/osx/*/iphone/cli/commands/_build.js
'';
}

View File

@ -1,5 +1,5 @@
{ stdenv, fetchurl, jre, libX11, libXext, libXcursor, libXrandr, libXxf86vm
, mesa, openal, alsaOss }:
, mesa, openal, alsaOss, pulseaudioSupport ? false, pulseaudio }:
assert jre ? architecture;
@ -23,7 +23,8 @@ stdenv.mkDerivation {
# wrapper for minecraft
export LD_LIBRARY_PATH=\$LD_LIBRARY_PATH:${jre}/lib/${jre.architecture}/:${libX11}/lib/:${libXext}/lib/:${libXcursor}/lib/:${libXrandr}/lib/:${libXxf86vm}/lib/:${mesa}/lib/:${openal}/lib/
${alsaOss}/bin/aoss ${jre}/bin/java -jar $out/minecraft.jar
${if pulseaudioSupport then "${pulseaudio}/bin/padsp" else "${alsaOss}/bin/aoss" } \
${jre}/bin/java -jar $out/minecraft.jar
EOF
chmod +x $out/bin/minecraft

View File

@ -1,11 +1,11 @@
{stdenv, fetchurl, cups}:
stdenv.mkDerivation rec {
name = "cups-bjnp-1.2.1";
name = "cups-bjnp-1.2.2";
src = fetchurl {
url = "mirror://sourceforge/cups-bjnp/${name}.tar.gz";
sha256 = "0fjpp0mmmwfcr790hfjs0brsxxb7dz7v2xab6wc30rwzkqmgz95x";
sha256 = "0sb0vm1sf8ismzd9ba33qswxmsirj2z1b7lnyrc9v5ixm7q0bnrm";
};
preConfigure = ''configureFlags="--with-cupsbackenddir=$out/lib/cups/backend"'';

View File

@ -5,11 +5,11 @@
assert stdenv.isLinux;
stdenv.mkDerivation rec {
name = "bluez-5.23";
name = "bluez-5.24";
src = fetchurl {
url = "mirror://kernel/linux/bluetooth/${name}.tar.xz";
sha256 = "1hgj6ymha75r79fvlh2h27j7gci0q7apczfffwm3kpf8ga6x7ayd";
sha256 = "0dxqkyxjx4051k6ghacqnm0cyvw52z9f4867dy2rcd5zl3xwaw78";
};
pythonPath = with pythonPackages;

View File

@ -1,11 +1,11 @@
{ stdenv, fetchurl }:
stdenv.mkDerivation rec {
name = "cifs-utils-6.3";
name = "cifs-utils-6.4";
src = fetchurl {
url = "ftp://ftp.samba.org/pub/linux-cifs/cifs-utils/${name}.tar.bz2";
sha256 = "0nrpd3ibzfhdxgq1pw0jhzx163z5jvq4qcjxl35qlqj74lm3pxzz";
sha256 = "1qz6d2xg4z1if0hy7qwyzgcr59l0alkhci6gxgjdldglda967z1q";
};
makeFlags = "root_sbindir=$(out)/sbin";

View File

@ -3,11 +3,11 @@
stdenv.mkDerivation rec {
name = "couchdb-${version}";
version = "1.6.0";
version = "1.6.1";
src = fetchurl {
url = "mirror://apache/couchdb/source/${version}/apache-${name}.tar.gz";
sha256 = "0m4k7i3gibzzcabssysv42rmdr89myppc6765xr0jggwkwdxgxmx";
sha256 = "09w6ijj9l5jzh81nvc3hrlqp345ajg3haj353g9kxkik6wbinq2s";
};
buildInputs = [ erlang icu openssl spidermonkey curl help2man sphinx which

View File

@ -3,7 +3,8 @@
, bluez, sbc, udev, libcap, json_c
, jackaudioSupport ? false, jack2 ? null
, x11Support ? false, xlibs
, useSystemd ? false, systemd ? null }:
, useSystemd ? false, systemd ? null
, ossWrapper ? false }:
assert jackaudioSupport -> jack2 != null;
@ -49,11 +50,13 @@ stdenv.mkDerivation rec {
"--disable-solaris"
"--disable-jack"
"--disable-oss-output"
"--disable-oss-wrapper"
] ++ stdenv.lib.optional (!ossWrapper) "--disable-oss-wrapper" ++
[
"--localstatedir=/var"
"--sysconfdir=/etc"
"--with-access-group=audio"
] ++ stdenv.lib.optional jackaudioSupport "--enable-jack"
]
++ stdenv.lib.optional jackaudioSupport "--enable-jack"
++ stdenv.lib.optional stdenv.isDarwin "--with-mac-sysroot=/";
enableParallelBuilding = true;

View File

@ -6,7 +6,7 @@ let
esPlugin = a@{
pluginName,
installPhase ? ''
mkdir -p $out
mkdir -p $out/bin
ES_HOME=$out ${elasticsearch}/bin/elasticsearch-plugin --install ${pluginName} --url file://$src
'',
...
@ -23,11 +23,11 @@ let
in {
elasticsearch_river_jdbc = esPlugin rec {
name = "elasticsearch-river-jdbc-${version}";
pluginName = "jdbc";
version = "1.2.1.1";
pluginName = "elasticsearch-river-jdbc";
version = "1.3.0.4";
src = fetchurl {
url = "http://xbib.org/repository/org/xbib/elasticsearch/plugin/elasticsearch-river-jdbc/${version}/${name}-plugin.zip";
sha1 = "68e7e1fdf45d0e5852b21610a84740595223ea11";
sha256 = "0272l6cr032iccwwa803shzfjg3505jc48d9qdazrwxjmnlkkzqk";
};
meta = {
homepage = "https://github.com/jprante/elasticsearch-river-jdbc";

View File

@ -1,14 +1,14 @@
{ stdenv, fetchurl, attr, acl, zlib, libuuid, e2fsprogs, lzo
, asciidoc, xmlto, docbook_xml_dtd_45, docbook_xsl, libxslt }:
let version = "3.16.1"; in
let version = "3.16.2"; in
stdenv.mkDerivation rec {
name = "btrfs-progs-${version}";
src = fetchurl {
url = "mirror://kernel/linux/kernel/people/kdave/btrfs-progs/btrfs-progs-v${version}.tar.xz";
sha256 = "103ff31fn6x1r6y79hdzv5lqls68wqxmikwsl6q8mxllb5rqrwlk";
sha256 = "0avk8x0k91zrqvlbk8r067aw49byr8hvvr4niy48d3ib1jz2mmnl";
};
buildInputs = [

View File

@ -27,5 +27,6 @@ stdenv.mkDerivation rec {
meta = {
description = "A program for visualising graphs";
homepage = http://www.graphviz.org/;
branch = "2.0";
};
}

View File

@ -57,5 +57,6 @@ stdenv.mkDerivation rec {
hydraPlatforms = stdenv.lib.platforms.linux ++ stdenv.lib.platforms.darwin;
maintainers = with stdenv.lib.maintainers; [ simons bjornfor raskin ];
inherit version;
branch = "2.32";
};
}

View File

@ -1,11 +1,11 @@
{ stdenv, fetchurl, ncurses }:
stdenv.mkDerivation rec {
name = "byobu-5.68";
name = "byobu-5.87";
src = fetchurl {
url = "https://launchpad.net/byobu/trunk/5.68/+download/byobu_5.68.orig.tar.gz";
sha256 = "1xf2m18zx3075c0qvx4fzvn5afm274j5dl0jps7p2lbaq4k1lyhm";
url = "https://launchpad.net/byobu/trunk/5.87/+download/byobu_5.87.orig.tar.gz";
sha256 = "08v9y5hxb92caf5zp83fiq0jfwi167vw1ylf42s65x1ng8rvryqh";
};
doCheck = true;

View File

@ -1,11 +1,11 @@
{ stdenv, fetchurl }:
stdenv.mkDerivation rec {
name = "ethtool-3.15";
name = "ethtool-3.16";
src = fetchurl {
url = "mirror://kernel/software/network/ethtool/${name}.tar.xz";
sha256 = "16kgw9y4fisldf1z6zpw3v965cc8nram0dycacwkc0js4l76klw8";
sha256 = "11m2ghjgnbjbvxamgjkr94cw9sz1znla8rkw923svhq4m4zxvq6n";
};
meta = with stdenv.lib; {

View File

@ -1,11 +1,11 @@
{ pkgconfig, dbus_libs, nettle, stdenv, fetchurl }:
stdenv.mkDerivation rec {
name = "dnsmasq-2.71";
name = "dnsmasq-2.72";
src = fetchurl {
url = "http://www.thekelleys.org.uk/dnsmasq/${name}.tar.xz";
sha256 = "1fpzpzja7qr8b4kfdhh4i4sijp62c634yf0xvq2n4p7d5xbzn6a9";
sha256 = "1c80hq09hfm8cp5pirfb8wdlc7dqkp7zzmbmdaradcvlblzx42vx";
};
# Can't rely on make flags because of space in one of the parameters

View File

@ -2,7 +2,7 @@ a :
let
s = import ./src-for-default.nix;
buildInputs = with a; [
openssl gmp
openssl gmp zlib
];
in
rec {

View File

@ -1,9 +1,9 @@
rec {
version="2.24";
name="gvpe-2.24";
hash="1szwia7n24fx9n40yvmdidna55b97459ccq6d2c4863q4pfkqpjy";
url="mirror://gnu/gvpe/gvpe-${version}.tar.gz";
advertisedUrl="http://ftp.gnu.org/gnu/gvpe/gvpe-2.24.tar.gz";
version="2.25";
name="gvpe-2.25";
hash="1gsipcysvsk80gvyn9jnk9g0xg4ng9yd5zp066jnmpgs52d2vhvk";
url="http://ftp.gnu.org/gnu/gvpe/gvpe-${version}.tar.gz";
advertisedUrl="http://ftp.gnu.org/gnu/gvpe/gvpe-2.25.tar.gz";
}

View File

@ -20,6 +20,6 @@ stdenv.mkDerivation rec {
description = "Tracks the route taken by packets over an IP network";
license = stdenv.lib.licenses.gpl2;
maintainers = [ maintainers.koral ];
platforms = platforms.all;
platforms = platforms.linux;
};
}

View File

@ -1,12 +1,12 @@
{ fetchurl, stdenv, bison, flex, pam, sendmailPath ? "/var/setuid-wrappers/sendmail" }:
stdenv.mkDerivation {
name = "at-3.1.15";
name = "at-3.1.16";
src = fetchurl {
# Debian is apparently the last location where it can be found.
url = mirror://debian/pool/main/a/at/at_3.1.15.orig.tar.gz;
sha256 = "1z7pgglr0zmwapb4sc1bdb3z0hgig1asyzqv4gs5xafmjd94za03";
url = mirror://debian/pool/main/a/at/at_3.1.16.orig.tar.gz;
sha256 = "1hfmnhgi95vsfaa69qlakpwd22al0m0rhqms6sawxvaldafgb6nb";
};
patches = [ ./install.patch ];

View File

@ -1,11 +1,11 @@
{ stdenv, fetchurl, lzip }:
stdenv.mkDerivation rec {
name = "ddrescue-1.18.1";
name = "ddrescue-1.19";
src = fetchurl {
url = "mirror://gnu/ddrescue/${name}.tar.lz";
sha256 = "1ad1ifby89wys8lxh4d24y5lih6hkz54jhv6sf6bs1i7sd7lnqaq";
sha256 = "1f278w7i9sx45jk6fsw1kyzx743k3alx1c4w1q8sk05ckafhr3gd";
};
buildInputs = [ lzip ];

View File

@ -1,11 +1,11 @@
{stdenv, fetchurl, perl, gettext }:
stdenv.mkDerivation {
name = "dos2unix-6.0.6";
name = "dos2unix-7.0";
src = fetchurl {
url = http://waterlan.home.xs4all.nl/dos2unix/dos2unix-6.0.6.tar.gz;
sha256 = "0xnj4gmav1ypkgwmqldnq41b6l3cg08dyngkbygn9vrhlvlx9fwa";
url = http://waterlan.home.xs4all.nl/dos2unix/dos2unix-7.0.tar.gz;
sha256 = "0az7nkgddnmimb88sj004klszbvkir02f4zlnij8drc6b80gw6jm";
};
configurePhase = ''

View File

@ -1152,7 +1152,7 @@ let
freeipmi = callPackage ../tools/system/freeipmi {};
freetalk = callPackage ../applications/networking/instant-messengers/freetalk {
guile = guile_1_8;
automake = automake114x;
};
freetds = callPackage ../development/libraries/freetds { };
@ -1338,7 +1338,7 @@ let
gupnptools = callPackage ../tools/networking/gupnp-tools {};
gvpe = builderDefsPackage ../tools/networking/gvpe {
inherit openssl gmp nettools iproute;
inherit openssl gmp nettools iproute zlib;
};
gvolicon = callPackage ../tools/audio/gvolicon {};
@ -1628,7 +1628,10 @@ let
mfoc = callPackage ../tools/security/mfoc { };
minecraft = callPackage ../games/minecraft { };
minecraft = callPackage ../games/minecraft {
pulseaudioSupport = config.pulseaudio or true;
pulseaudio = pulseaudio.override { ossWrapper = true; };
};
minecraft-server = callPackage ../games/minecraft-server { };
@ -2024,8 +2027,6 @@ let
projectm = callPackage ../applications/audio/projectm { };
proot = callPackage ../tools/system/proot { };
proxychains = callPackage ../tools/networking/proxychains { };
proxytunnel = callPackage ../tools/misc/proxytunnel { };
@ -2080,6 +2081,8 @@ let
privateer = callPackage ../games/privateer { };
redmine = callPackage ../applications/version-management/redmine { };
rtmpdump = callPackage ../tools/video/rtmpdump { };
reaverwps = callPackage ../tools/networking/reaver-wps {};

File diff suppressed because it is too large Load Diff

View File

@ -126,4 +126,6 @@
, "shelljs"
, "typescript"
, "git-run"
, "bower"
, "bower2nix"
]

View File

@ -5213,12 +5213,12 @@ let
nbxmpp = buildPythonPackage rec {
name = "nbxmpp-0.5";
name = "nbxmpp-0.5.1";
src = fetchurl {
name = "${name}.tar.gz";
url = "https://python-nbxmpp.gajim.org/downloads/5";
sha256 = "0y270c9v4i9n58p4ghlm18h50qcfichmfkgcpqd3bypx4fkmdx90";
url = "https://python-nbxmpp.gajim.org/downloads/6";
sha256 = "0agr0ikfdmna5rjvm7lm0mx52cdwqp5b2xbx3inagp70whmdv219";
};
meta = {
@ -10228,13 +10228,13 @@ let
tornadokick = buildPythonPackage rec {
name = "tornadokick-2014.07.23";
name = "tornadokick-0.2.1";
propagatedBuildInputs = [ tornado ];
src = fetchurl {
url = "https://pypi.python.org/packages/source/t/tornadokick/${name}.tar.gz";
md5 = "201d26de2993a554b16140af3b4ee1b6";
md5 = "95ee5a295ce3f361c6f843c4f39cbb8c";
};
meta = {
@ -10506,6 +10506,22 @@ let
};
ujson = buildPythonPackage rec {
name = "ujson-1.33";
src = fetchurl {
url = "https://pypi.python.org/packages/source/u/ujson/${name}.zip";
md5 = "8148a2493fff78940feab1e11dc0a893";
};
meta = {
homepage = http://pypi.python.org/pypi/ujson;
description = "Ultra fast JSON encoder and decoder for Python";
license = licenses.bsd3;
};
};
unidecode = buildPythonPackage rec {
name = "Unidecode-0.04.12";