Merge branch 'master' into staging
This commit is contained in:
commit
b875ea5d29
@ -6,7 +6,6 @@ with {
|
||||
inherit (import ./default.nix) fold;
|
||||
inherit (import ./strings.nix) concatStringsSep;
|
||||
inherit (import ./lists.nix) concatMap concatLists all deepSeqList;
|
||||
inherit (import ./misc.nix) maybeAttr;
|
||||
};
|
||||
|
||||
rec {
|
||||
@ -76,7 +75,7 @@ rec {
|
||||
=> { foo = 1; }
|
||||
*/
|
||||
filterAttrs = pred: set:
|
||||
listToAttrs (fold (n: ys: let v = set.${n}; in if pred n v then [(nameValuePair n v)] ++ ys else ys) [] (attrNames set));
|
||||
listToAttrs (concatMap (name: let v = set.${name}; in if pred name v then [(nameValuePair name v)] else []) (attrNames set));
|
||||
|
||||
|
||||
/* foldAttrs: apply fold functions to values grouped by key. Eg accumulate values as list:
|
||||
@ -86,7 +85,7 @@ rec {
|
||||
foldAttrs = op: nul: list_of_attrs:
|
||||
fold (n: a:
|
||||
fold (name: o:
|
||||
o // (listToAttrs [{inherit name; value = op n.${name} (maybeAttr name nul a); }])
|
||||
o // (listToAttrs [{inherit name; value = op n.${name} (a.${name} or nul); }])
|
||||
) a (attrNames n)
|
||||
) {} list_of_attrs;
|
||||
|
||||
|
@ -11,7 +11,7 @@ let
|
||||
types = import ./types.nix;
|
||||
meta = import ./meta.nix;
|
||||
debug = import ./debug.nix;
|
||||
misc = import ./misc.nix;
|
||||
misc = import ./deprecated.nix;
|
||||
maintainers = import ./maintainers.nix;
|
||||
platforms = import ./platforms.nix;
|
||||
systems = import ./systems.nix;
|
||||
|
@ -203,8 +203,6 @@ rec {
|
||||
in
|
||||
work startSet [] [];
|
||||
|
||||
genericClosure = builtins.genericClosure or lazyGenericClosure;
|
||||
|
||||
innerModifySumArgs = f: x: a: b: if b == null then (f a b) // x else
|
||||
innerModifySumArgs f x (a // b);
|
||||
modifySumArgs = f: x: innerModifySumArgs f x {};
|
@ -38,6 +38,10 @@ rec {
|
||||
in foldl' (length list - 1);
|
||||
|
||||
|
||||
# Strict version of foldl.
|
||||
foldl' = builtins.foldl' or foldl;
|
||||
|
||||
|
||||
# map with index: `imap (i: v: "${v}-${toString i}") ["a" "b"] ==
|
||||
# ["a-1" "b-2"]'
|
||||
imap = f: list:
|
||||
@ -59,7 +63,7 @@ rec {
|
||||
# == [1 2 3 4 5]' and `flatten 1 == [1]'.
|
||||
flatten = x:
|
||||
if isList x
|
||||
then fold (x: y: (flatten x) ++ y) [] x
|
||||
then foldl' (x: y: x ++ (flatten y)) [] x
|
||||
else [x];
|
||||
|
||||
|
||||
@ -86,17 +90,17 @@ rec {
|
||||
|
||||
# Return true iff function `pred' returns true for at least element
|
||||
# of `list'.
|
||||
any = pred: fold (x: y: if pred x then true else y) false;
|
||||
any = builtins.any or (pred: fold (x: y: if pred x then true else y) false);
|
||||
|
||||
|
||||
# Return true iff function `pred' returns true for all elements of
|
||||
# `list'.
|
||||
all = pred: fold (x: y: if pred x then y else false) true;
|
||||
all = builtins.all or (pred: fold (x: y: if pred x then y else false) true);
|
||||
|
||||
|
||||
# Count how many times function `pred' returns true for the elements
|
||||
# of `list'.
|
||||
count = pred: fold (x: c: if pred x then c + 1 else c) 0;
|
||||
count = pred: foldl' (c: x: if pred x then c + 1 else c) 0;
|
||||
|
||||
|
||||
# Return a singleton list or an empty list, depending on a boolean
|
||||
|
@ -76,8 +76,8 @@ rec {
|
||||
else yieldConfig (prefix ++ [n]) v) set) ["_definedNames"];
|
||||
in
|
||||
if options._module.check.value && set ? _definedNames then
|
||||
fold (m: res:
|
||||
fold (name: res:
|
||||
foldl' (res: m:
|
||||
foldl' (res: name:
|
||||
if set ? ${name} then res else throw "The option `${showOption (prefix ++ [name])}' defined in `${m.file}' does not exist.")
|
||||
res m.names)
|
||||
res set._definedNames
|
||||
@ -182,18 +182,18 @@ rec {
|
||||
let
|
||||
loc = prefix ++ [name];
|
||||
# Get all submodules that declare ‘name’.
|
||||
decls = concatLists (map (m:
|
||||
decls = concatMap (m:
|
||||
if m.options ? ${name}
|
||||
then [ { inherit (m) file; options = m.options.${name}; } ]
|
||||
else []
|
||||
) options);
|
||||
) options;
|
||||
# Get all submodules that define ‘name’.
|
||||
defns = concatLists (map (m:
|
||||
defns = concatMap (m:
|
||||
if m.config ? ${name}
|
||||
then map (config: { inherit (m) file; inherit config; })
|
||||
(pushDownProperties m.config.${name})
|
||||
else []
|
||||
) configs);
|
||||
) configs;
|
||||
nrOptions = count (m: isOption m.options) decls;
|
||||
# Extract the definitions for this loc
|
||||
defns' = map (m: { inherit (m) file; value = m.config.${name}; })
|
||||
@ -225,7 +225,7 @@ rec {
|
||||
'opts' is a list of modules. Each module has an options attribute which
|
||||
correspond to the definition of 'loc' in 'opt.file'. */
|
||||
mergeOptionDecls = loc: opts:
|
||||
fold (opt: res:
|
||||
foldl' (res: opt:
|
||||
if opt.options ? default && res ? default ||
|
||||
opt.options ? example && res ? example ||
|
||||
opt.options ? description && res ? description ||
|
||||
@ -251,7 +251,7 @@ rec {
|
||||
else if opt.options ? options then map (coerceOption opt.file) options' ++ res.options
|
||||
else res.options;
|
||||
in opt.options // res //
|
||||
{ declarations = [opt.file] ++ res.declarations;
|
||||
{ declarations = res.declarations ++ [opt.file];
|
||||
options = submodules;
|
||||
}
|
||||
) { inherit loc; declarations = []; options = []; } opts;
|
||||
@ -302,8 +302,8 @@ rec {
|
||||
in
|
||||
processOrder (processOverride (processIfAndMerge defs));
|
||||
|
||||
# Type-check the remaining definitions, and merge them
|
||||
mergedValue = fold (def: res:
|
||||
# Type-check the remaining definitions, and merge them.
|
||||
mergedValue = foldl' (res: def:
|
||||
if type.check def.value then res
|
||||
else throw "The option value `${showOption loc}' in `${def.file}' is not a ${type.name}.")
|
||||
(type.merge loc defsFinal) defsFinal;
|
||||
@ -384,7 +384,7 @@ rec {
|
||||
defaultPrio = 100;
|
||||
getPrio = def: if def.value._type or "" == "override" then def.value.priority else defaultPrio;
|
||||
min = x: y: if x < y then x else y;
|
||||
highestPrio = fold (def: prio: min (getPrio def) prio) 9999 defs;
|
||||
highestPrio = foldl' (prio: def: min (getPrio def) prio) 9999 defs;
|
||||
strip = def: if def.value._type or "" == "override" then def // { value = def.value.content; } else def;
|
||||
in concatMap (def: if getPrio def == highestPrio then [(strip def)] else []) defs;
|
||||
|
||||
|
@ -4,7 +4,6 @@ let lib = import ./default.nix; in
|
||||
|
||||
with import ./trivial.nix;
|
||||
with import ./lists.nix;
|
||||
with import ./misc.nix;
|
||||
with import ./attrsets.nix;
|
||||
with import ./strings.nix;
|
||||
|
||||
@ -53,8 +52,8 @@ rec {
|
||||
if length list == 1 then head list
|
||||
else if all isFunction list then x: mergeDefaultOption loc (map (f: f x) list)
|
||||
else if all isList list then concatLists list
|
||||
else if all isAttrs list then fold lib.mergeAttrs {} list
|
||||
else if all isBool list then fold lib.or false list
|
||||
else if all isAttrs list then foldl' lib.mergeAttrs {} list
|
||||
else if all isBool list then foldl' lib.or false list
|
||||
else if all isString list then lib.concatStrings list
|
||||
else if all isInt list && all (x: x == head list) list then head list
|
||||
else throw "Cannot merge definitions of `${showOption loc}' given in ${showFiles (getFiles defs)}.";
|
||||
@ -68,7 +67,7 @@ rec {
|
||||
/* "Merge" option definitions by checking that they all have the same value. */
|
||||
mergeEqualOption = loc: defs:
|
||||
if defs == [] then abort "This case should never happen."
|
||||
else fold (def: val:
|
||||
else foldl' (val: def:
|
||||
if def.value != val then
|
||||
throw "The option `${showOption loc}' has conflicting definitions, in ${showFiles (getFiles defs)}."
|
||||
else
|
||||
@ -83,7 +82,7 @@ rec {
|
||||
optionAttrSetToDocList = optionAttrSetToDocList' [];
|
||||
|
||||
optionAttrSetToDocList' = prefix: options:
|
||||
fold (opt: rest:
|
||||
concatMap (opt:
|
||||
let
|
||||
docOption = rec {
|
||||
name = showOption opt.loc;
|
||||
@ -101,8 +100,7 @@ rec {
|
||||
let ss = opt.type.getSubOptions opt.loc;
|
||||
in if ss != {} then optionAttrSetToDocList' opt.loc ss else [];
|
||||
in
|
||||
# FIXME: expensive, O(n^2)
|
||||
[ docOption ] ++ subOptions ++ rest) [] (collect isOption options);
|
||||
[ docOption ] ++ subOptions) (collect isOption options);
|
||||
|
||||
|
||||
/* This function recursively removes all derivation attributes from
|
||||
|
@ -8,11 +8,15 @@ in
|
||||
|
||||
rec {
|
||||
|
||||
inherit (builtins) stringLength substring head tail isString;
|
||||
inherit (builtins) stringLength substring head tail isString replaceStrings;
|
||||
|
||||
|
||||
# Concatenate a list of strings.
|
||||
concatStrings = lib.fold (x: y: x + y) "";
|
||||
concatStrings =
|
||||
if builtins ? concatStringsSep then
|
||||
builtins.concatStringsSep ""
|
||||
else
|
||||
lib.foldl' (x: y: x + y) "";
|
||||
|
||||
|
||||
# Map a function over a list and concatenate the resulting strings.
|
||||
@ -25,14 +29,13 @@ rec {
|
||||
intersperse = separator: list:
|
||||
if list == [] || length list == 1
|
||||
then list
|
||||
else [(head list) separator]
|
||||
++ (intersperse separator (tail list));
|
||||
else tail (lib.concatMap (x: [separator x]) list);
|
||||
|
||||
|
||||
# Concatenate a list of strings with a separator between each element, e.g.
|
||||
# concatStringsSep " " ["foo" "bar" "xyzzy"] == "foo bar xyzzy"
|
||||
concatStringsSep = separator: list:
|
||||
concatStrings (intersperse separator list);
|
||||
concatStringsSep = builtins.concatStringsSep or (separator: list:
|
||||
concatStrings (intersperse separator list));
|
||||
|
||||
concatMapStringsSep = sep: f: list: concatStringsSep sep (map f list);
|
||||
concatImapStringsSep = sep: f: list: concatStringsSep sep (lib.imap f list);
|
||||
@ -61,13 +64,13 @@ rec {
|
||||
|
||||
# Determine whether a string has given prefix/suffix.
|
||||
hasPrefix = pref: str:
|
||||
eqStrings (substring 0 (stringLength pref) str) pref;
|
||||
substring 0 (stringLength pref) str == pref;
|
||||
hasSuffix = suff: str:
|
||||
let
|
||||
lenStr = stringLength str;
|
||||
lenSuff = stringLength suff;
|
||||
in lenStr >= lenSuff &&
|
||||
eqStrings (substring (lenStr - lenSuff) lenStr str) suff;
|
||||
substring (lenStr - lenSuff) lenStr str == suff;
|
||||
|
||||
|
||||
# Convert a string to a list of characters (i.e. singleton strings).
|
||||
@ -76,36 +79,31 @@ rec {
|
||||
# will likely be horribly inefficient; Nix is not a general purpose
|
||||
# programming language. Complex string manipulations should, if
|
||||
# appropriate, be done in a derivation.
|
||||
stringToCharacters = s: let l = stringLength s; in
|
||||
if l == 0
|
||||
then []
|
||||
else map (p: substring p 1 s) (lib.range 0 (l - 1));
|
||||
stringToCharacters = s:
|
||||
map (p: substring p 1 s) (lib.range 0 (stringLength s - 1));
|
||||
|
||||
|
||||
# Manipulate a string charcater by character and replace them by strings
|
||||
# before concatenating the results.
|
||||
# Manipulate a string charactter by character and replace them by
|
||||
# strings before concatenating the results.
|
||||
stringAsChars = f: s:
|
||||
concatStrings (
|
||||
map f (stringToCharacters s)
|
||||
);
|
||||
|
||||
|
||||
# same as vim escape function.
|
||||
# Each character contained in list is prefixed by "\"
|
||||
escape = list : string :
|
||||
stringAsChars (c: if lib.elem c list then "\\${c}" else c) string;
|
||||
# Escape occurrence of the elements of ‘list’ in ‘string’ by
|
||||
# prefixing it with a backslash. For example, ‘escape ["(" ")"]
|
||||
# "(foo)"’ returns the string ‘\(foo\)’.
|
||||
escape = list: replaceChars list (map (c: "\\${c}") list);
|
||||
|
||||
|
||||
# still ugly slow. But more correct now
|
||||
# [] for zsh
|
||||
# Escape all characters that have special meaning in the Bourne shell.
|
||||
escapeShellArg = lib.escape (stringToCharacters "\\ ';$`()|<>\t*[]");
|
||||
|
||||
|
||||
# replace characters by their substitutes. This function is equivalent to
|
||||
# the `tr' command except that one character can be replace by multiple
|
||||
# ones. e.g.,
|
||||
# replaceChars ["<" ">"] ["<" ">"] "<foo>" returns "<foo>".
|
||||
replaceChars = del: new: s:
|
||||
# Obsolete - use replaceStrings instead.
|
||||
replaceChars = builtins.replaceStrings or (
|
||||
del: new: s:
|
||||
let
|
||||
substList = lib.zipLists del new;
|
||||
subst = c:
|
||||
@ -115,26 +113,23 @@ rec {
|
||||
else
|
||||
found.snd;
|
||||
in
|
||||
stringAsChars subst s;
|
||||
stringAsChars subst s);
|
||||
|
||||
|
||||
# Case conversion utilities
|
||||
# Case conversion utilities.
|
||||
lowerChars = stringToCharacters "abcdefghijklmnopqrstuvwxyz";
|
||||
upperChars = stringToCharacters "ABCDEFGHIJKLMNOPQRSTUVWXYZ";
|
||||
toLower = replaceChars upperChars lowerChars;
|
||||
toUpper = replaceChars lowerChars upperChars;
|
||||
|
||||
# Appends string context from another string
|
||||
|
||||
# Appends string context from another string.
|
||||
addContextFrom = a: b: substring 0 0 a + b;
|
||||
|
||||
# Compares strings not requiring context equality
|
||||
# Obviously, a workaround but works on all Nix versions
|
||||
eqStrings = a: b: addContextFrom b a == addContextFrom a b;
|
||||
|
||||
|
||||
# Cut a string with a separator and produces a list of strings which were
|
||||
# separated by this separator. e.g.,
|
||||
# `splitString "." "foo.bar.baz"' returns ["foo" "bar" "baz"].
|
||||
# Cut a string with a separator and produces a list of strings which
|
||||
# were separated by this separator; e.g., `splitString "."
|
||||
# "foo.bar.baz"' returns ["foo" "bar" "baz"].
|
||||
splitString = _sep: _s:
|
||||
let
|
||||
sep = addContextFrom _s _sep;
|
||||
@ -177,7 +172,7 @@ rec {
|
||||
sufLen = stringLength suf;
|
||||
sLen = stringLength s;
|
||||
in
|
||||
if sufLen <= sLen && eqStrings suf (substring (sLen - sufLen) sufLen s) then
|
||||
if sufLen <= sLen && suf == substring (sLen - sufLen) sufLen s then
|
||||
substring 0 (sLen - sufLen) s
|
||||
else
|
||||
s;
|
||||
@ -196,21 +191,22 @@ rec {
|
||||
|
||||
|
||||
# Extract name with version from URL. Ask for separator which is
|
||||
# supposed to start extension
|
||||
nameFromURL = url: sep: let
|
||||
components = splitString "/" url;
|
||||
filename = lib.last components;
|
||||
name = builtins.head (splitString sep filename);
|
||||
in
|
||||
assert ! eqStrings name filename;
|
||||
name;
|
||||
# supposed to start extension.
|
||||
nameFromURL = url: sep:
|
||||
let
|
||||
components = splitString "/" url;
|
||||
filename = lib.last components;
|
||||
name = builtins.head (splitString sep filename);
|
||||
in assert name != filename; name;
|
||||
|
||||
|
||||
# Create an --{enable,disable}-<feat> string that can be passed to
|
||||
# standard GNU Autoconf scripts.
|
||||
enableFeature = enable: feat: "--${if enable then "enable" else "disable"}-${feat}";
|
||||
|
||||
# Create a fixed width string with additional prefix to match required width
|
||||
|
||||
# Create a fixed width string with additional prefix to match
|
||||
# required width.
|
||||
fixedWidthString = width: filler: str:
|
||||
let
|
||||
strw = lib.stringLength str;
|
||||
@ -219,6 +215,7 @@ rec {
|
||||
assert strw <= width;
|
||||
if strw == width then str else filler + fixedWidthString reqWidth filler str;
|
||||
|
||||
# Format a number adding leading zeroes up to fixed width
|
||||
|
||||
# Format a number adding leading zeroes up to fixed width.
|
||||
fixedWidthNumber = width: n: fixedWidthString width "0" (toString n);
|
||||
}
|
||||
|
@ -22,7 +22,7 @@ rec {
|
||||
inherit (builtins)
|
||||
pathExists readFile isBool isFunction
|
||||
isInt add sub lessThan
|
||||
seq deepSeq;
|
||||
seq deepSeq genericClosure;
|
||||
|
||||
# Return the Nixpkgs version number.
|
||||
nixpkgsVersion =
|
||||
|
@ -88,7 +88,7 @@ rec {
|
||||
attrs = mkOptionType {
|
||||
name = "attribute set";
|
||||
check = isAttrs;
|
||||
merge = loc: fold (def: mergeAttrs def.value) {};
|
||||
merge = loc: foldl' (res: def: mergeAttrs res def.value) {};
|
||||
};
|
||||
|
||||
# derivation is a reserved keyword.
|
||||
|
@ -6,8 +6,8 @@
|
||||
|
||||
<title>Booting from a USB Drive</title>
|
||||
|
||||
<para>For systems without CD drive, the NixOS livecd can be booted from
|
||||
a usb stick. For non-UEFI installations,
|
||||
<para>For systems without CD drive, the NixOS live CD can be booted from
|
||||
a USB stick. For non-UEFI installations,
|
||||
<link xlink:href="http://unetbootin.sourceforge.net/">unetbootin</link>
|
||||
will work. For UEFI installations, you should mount the ISO, copy its contents
|
||||
verbatim to your drive, then either:
|
||||
|
@ -30,8 +30,7 @@ let
|
||||
# * COM32 entries (chainload, reboot, poweroff) are not recognized. They
|
||||
# result in incorrect boot entries.
|
||||
|
||||
baseIsolinuxCfg =
|
||||
''
|
||||
baseIsolinuxCfg = ''
|
||||
SERIAL 0 38400
|
||||
TIMEOUT ${builtins.toString syslinuxTimeout}
|
||||
UI vesamenu.c32
|
||||
@ -44,7 +43,7 @@ let
|
||||
LINUX /boot/bzImage
|
||||
APPEND init=${config.system.build.toplevel}/init ${toString config.boot.kernelParams}
|
||||
INITRD /boot/initrd
|
||||
'';
|
||||
'';
|
||||
|
||||
isolinuxMemtest86Entry = ''
|
||||
LABEL memtest
|
||||
@ -55,12 +54,12 @@ let
|
||||
|
||||
isolinuxCfg = baseIsolinuxCfg + (optionalString config.boot.loader.grub.memtest86.enable isolinuxMemtest86Entry);
|
||||
|
||||
# The efi boot image
|
||||
# The EFI boot image.
|
||||
efiDir = pkgs.runCommand "efi-directory" {} ''
|
||||
mkdir -p $out/EFI/boot
|
||||
cp -v ${pkgs.gummiboot}/lib/gummiboot/gummiboot${targetArch}.efi $out/EFI/boot/boot${targetArch}.efi
|
||||
mkdir -p $out/loader/entries
|
||||
echo "title NixOS LiveCD" > $out/loader/entries/nixos-livecd.conf
|
||||
echo "title NixOS Live CD" > $out/loader/entries/nixos-livecd.conf
|
||||
echo "linux /boot/bzImage" >> $out/loader/entries/nixos-livecd.conf
|
||||
echo "initrd /boot/initrd" >> $out/loader/entries/nixos-livecd.conf
|
||||
echo "options init=${config.system.build.toplevel}/init ${toString config.boot.kernelParams}" >> $out/loader/entries/nixos-livecd.conf
|
||||
@ -218,6 +217,8 @@ in
|
||||
system.boot.loader.kernelFile = "bzImage";
|
||||
environment.systemPackages = [ pkgs.grub2 pkgs.grub2_efi pkgs.syslinux ];
|
||||
|
||||
boot.consoleLogLevel = 7;
|
||||
|
||||
# In stage 1 of the boot, mount the CD as the root FS by label so
|
||||
# that we don't need to know its device. We pass the label of the
|
||||
# root filesystem on the kernel command line, rather than in
|
||||
@ -229,6 +230,7 @@ in
|
||||
boot.kernelParams =
|
||||
[ "root=LABEL=${config.isoImage.volumeID}"
|
||||
"boot.shell_on_fail"
|
||||
"nomodeset"
|
||||
];
|
||||
|
||||
fileSystems."/" =
|
||||
@ -268,6 +270,8 @@ in
|
||||
|
||||
boot.initrd.availableKernelModules = [ "squashfs" "iso9660" "usb-storage" ];
|
||||
|
||||
boot.blacklistedKernelModules = [ "nouveau" ];
|
||||
|
||||
boot.initrd.kernelModules = [ "loop" ];
|
||||
|
||||
# Closures to be copied to the Nix store on the CD, namely the init
|
||||
|
@ -288,6 +288,7 @@
|
||||
./services/networking/gogoclient.nix
|
||||
./services/networking/gvpe.nix
|
||||
./services/networking/haproxy.nix
|
||||
./services/networking/heyefi.nix
|
||||
./services/networking/hostapd.nix
|
||||
./services/networking/i2pd.nix
|
||||
./services/networking/i2p.nix
|
||||
|
@ -207,6 +207,7 @@ in
|
||||
|
||||
serviceConfig =
|
||||
{ ExecStart = "@${postgresql}/bin/postgres postgres ${toString flags}";
|
||||
ExecReload = "${pkgs.coreutils}/bin/kill -HUP $MAINPID";
|
||||
User = "postgres";
|
||||
Group = "postgres";
|
||||
PermissionsStartOnly = true;
|
||||
|
@ -1,53 +1,53 @@
|
||||
{ config, lib, pkgs, ... }:
|
||||
|
||||
with lib;
|
||||
|
||||
let
|
||||
|
||||
cfg = config.services.copy-com;
|
||||
|
||||
in
|
||||
|
||||
{
|
||||
options = {
|
||||
|
||||
services.copy-com = {
|
||||
|
||||
enable = mkOption {
|
||||
default = false;
|
||||
description = "
|
||||
Enable the copy.com client.
|
||||
|
||||
The first time copy.com is run, it needs to be configured. Before enabling run
|
||||
copy_console manually.
|
||||
";
|
||||
};
|
||||
|
||||
user = mkOption {
|
||||
description = "The user for which copy should run.";
|
||||
};
|
||||
|
||||
debug = mkOption {
|
||||
default = false;
|
||||
description = "Output more.";
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
config = mkIf cfg.enable {
|
||||
environment.systemPackages = [ pkgs.postfix ];
|
||||
|
||||
systemd.services."copy-com-${cfg.user}" = {
|
||||
description = "Copy.com Client";
|
||||
after = [ "network.target" "local-fs.target" ];
|
||||
wantedBy = [ "multi-user.target" ];
|
||||
serviceConfig = {
|
||||
ExecStart = "${pkgs.copy-com}/bin/copy_console ${if cfg.debug then "-consoleOutput -debugToConsole=dirwatch,path-watch,csm_path,csm -debug -console" else ""}";
|
||||
User = "${cfg.user}";
|
||||
};
|
||||
|
||||
};
|
||||
};
|
||||
|
||||
}
|
||||
|
||||
{ config, lib, pkgs, ... }:
|
||||
|
||||
with lib;
|
||||
|
||||
let
|
||||
|
||||
cfg = config.services.copy-com;
|
||||
|
||||
in
|
||||
|
||||
{
|
||||
options = {
|
||||
|
||||
services.copy-com = {
|
||||
|
||||
enable = mkOption {
|
||||
default = false;
|
||||
description = "
|
||||
Enable the Copy.com client.
|
||||
NOTE: before enabling the client for the first time, it must be
|
||||
configured by first running CopyConsole (command line) or CopyAgent
|
||||
(graphical) as the appropriate user.
|
||||
";
|
||||
};
|
||||
|
||||
user = mkOption {
|
||||
description = "The user for which the Copy.com client should be run.";
|
||||
};
|
||||
|
||||
debug = mkOption {
|
||||
default = false;
|
||||
description = "Output more (debugging) messages to the console.";
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
config = mkIf cfg.enable {
|
||||
environment.systemPackages = [ pkgs.postfix ];
|
||||
|
||||
systemd.services."copy-com-${cfg.user}" = {
|
||||
description = "Copy.com client";
|
||||
after = [ "network.target" "local-fs.target" ];
|
||||
wantedBy = [ "multi-user.target" ];
|
||||
serviceConfig = {
|
||||
ExecStart = "${pkgs.copy-com}/bin/CopyConsole ${if cfg.debug then "-consoleOutput -debugToConsole=dirwatch,path-watch,csm_path,csm -debug -console" else ""}";
|
||||
User = "${cfg.user}";
|
||||
};
|
||||
|
||||
};
|
||||
};
|
||||
|
||||
}
|
||||
|
||||
|
82
nixos/modules/services/networking/heyefi.nix
Normal file
82
nixos/modules/services/networking/heyefi.nix
Normal file
@ -0,0 +1,82 @@
|
||||
{ config, lib, pkgs, ... }:
|
||||
|
||||
with lib;
|
||||
|
||||
let
|
||||
|
||||
cfg = config.services.heyefi;
|
||||
in
|
||||
|
||||
{
|
||||
|
||||
###### interface
|
||||
|
||||
options = {
|
||||
|
||||
services.heyefi = {
|
||||
|
||||
enable = mkEnableOption "heyefi";
|
||||
|
||||
cardMacaddress = mkOption {
|
||||
default = "";
|
||||
description = ''
|
||||
An Eye-Fi card MAC address.
|
||||
'';
|
||||
};
|
||||
|
||||
uploadKey = mkOption {
|
||||
default = "";
|
||||
description = ''
|
||||
An Eye-Fi card's upload key.
|
||||
'';
|
||||
};
|
||||
|
||||
uploadDir = mkOption {
|
||||
example = "/home/username/pictures";
|
||||
description = ''
|
||||
The directory to upload the files to.
|
||||
'';
|
||||
};
|
||||
|
||||
user = mkOption {
|
||||
default = "root";
|
||||
description = ''
|
||||
heyefi will be run under this user (user must exist,
|
||||
this can be your user name).
|
||||
'';
|
||||
};
|
||||
|
||||
};
|
||||
|
||||
};
|
||||
|
||||
|
||||
###### implementation
|
||||
|
||||
config = mkIf cfg.enable {
|
||||
|
||||
systemd.services.heyefi =
|
||||
{
|
||||
description = "heyefi service";
|
||||
after = [ "network.target" ];
|
||||
wantedBy = [ "multi-user.target" ];
|
||||
serviceConfig = {
|
||||
User = "${cfg.user}";
|
||||
Restart = "always";
|
||||
ExecStart = "${pkgs.heyefi}/bin/heyefi";
|
||||
};
|
||||
|
||||
};
|
||||
|
||||
environment.etc."heyefi/heyefi.config".text =
|
||||
''
|
||||
# /etc/heyefi/heyefi.conf: DO NOT EDIT -- this file has been generated automatically.
|
||||
cards = [["${config.services.heyefi.cardMacaddress}","${config.services.heyefi.uploadKey}"]]
|
||||
upload_dir = "${toString config.services.heyefi.uploadDir}"
|
||||
'';
|
||||
|
||||
environment.systemPackages = [ pkgs.heyefi ];
|
||||
|
||||
};
|
||||
|
||||
}
|
@ -93,7 +93,7 @@ in
|
||||
|
||||
{ services.cron.enable = mkDefault (allFiles != []); }
|
||||
|
||||
(mkIf (config.services.cron.enable && allFiles != []) {
|
||||
(mkIf (config.services.cron.enable) {
|
||||
|
||||
security.setuidPrograms = [ "crontab" ];
|
||||
|
||||
|
@ -40,7 +40,7 @@ in {
|
||||
example = literalExample "[ pkgs.gnome3.gpaste ]";
|
||||
description = "Additional list of packages to be added to the session search path.
|
||||
Useful for gnome shell extensions or gsettings-conditionated autostart.";
|
||||
apply = list: list ++ [ gnome3.gnome_shell ];
|
||||
apply = list: list ++ [ gnome3.gnome_shell gnome3.gnome-shell-extensions ];
|
||||
};
|
||||
|
||||
environment.gnome3.packageSet = mkOption {
|
||||
|
@ -49,9 +49,8 @@ in
|
||||
type = types.int;
|
||||
default = 4;
|
||||
description = ''
|
||||
The kernel console log level. Only log messages with a
|
||||
priority numerically less than this will appear on the
|
||||
console.
|
||||
The kernel console log level. Log messages with a priority
|
||||
numerically less than this will not appear on the console.
|
||||
'';
|
||||
};
|
||||
|
||||
|
@ -10,7 +10,7 @@ let
|
||||
|
||||
realGrub = if cfg.version == 1 then pkgs.grub
|
||||
else if cfg.zfsSupport then pkgs.grub2.override { zfsSupport = true; }
|
||||
else if cfg.enableTrustedboot then pkgs.trustedGrub
|
||||
else if cfg.enableTrustedBoot then pkgs.trustedGrub
|
||||
else pkgs.grub2;
|
||||
|
||||
grub =
|
||||
@ -112,7 +112,7 @@ in
|
||||
description = ''
|
||||
The devices on which the boot loader, GRUB, will be
|
||||
installed. Can be used instead of <literal>device</literal> to
|
||||
install grub into multiple devices (e.g., if as softraid arrays holding /boot).
|
||||
install GRUB onto multiple devices.
|
||||
'';
|
||||
};
|
||||
|
||||
@ -135,8 +135,8 @@ in
|
||||
example = "/boot1";
|
||||
type = types.str;
|
||||
description = ''
|
||||
The path to the boot directory where grub will be written. Generally
|
||||
this boot parth should double as an efi path.
|
||||
The path to the boot directory where GRUB will be written. Generally
|
||||
this boot path should double as an EFI path.
|
||||
'';
|
||||
};
|
||||
|
||||
@ -166,7 +166,7 @@ in
|
||||
example = [ "/dev/sda" "/dev/sdb" ];
|
||||
type = types.listOf types.str;
|
||||
description = ''
|
||||
The path to the devices which will have the grub mbr written.
|
||||
The path to the devices which will have the GRUB MBR written.
|
||||
Note these are typically device paths and not paths to partitions.
|
||||
'';
|
||||
};
|
||||
@ -197,7 +197,7 @@ in
|
||||
type = types.lines;
|
||||
description = ''
|
||||
Additional bash commands to be run at the script that
|
||||
prepares the grub menu entries.
|
||||
prepares the GRUB menu entries.
|
||||
'';
|
||||
};
|
||||
|
||||
@ -276,7 +276,7 @@ in
|
||||
example = "1024x768";
|
||||
type = types.str;
|
||||
description = ''
|
||||
The gfxmode to pass to grub when loading a graphical boot interface under efi.
|
||||
The gfxmode to pass to GRUB when loading a graphical boot interface under EFI.
|
||||
'';
|
||||
};
|
||||
|
||||
@ -285,7 +285,7 @@ in
|
||||
example = "auto";
|
||||
type = types.str;
|
||||
description = ''
|
||||
The gfxmode to pass to grub when loading a graphical boot interface under bios.
|
||||
The gfxmode to pass to GRUB when loading a graphical boot interface under BIOS.
|
||||
'';
|
||||
};
|
||||
|
||||
@ -330,10 +330,10 @@ in
|
||||
type = types.addCheck types.str
|
||||
(type: type == "uuid" || type == "label" || type == "provided");
|
||||
description = ''
|
||||
Determines how grub will identify devices when generating the
|
||||
Determines how GRUB will identify devices when generating the
|
||||
configuration file. A value of uuid / label signifies that grub
|
||||
will always resolve the uuid or label of the device before using
|
||||
it in the configuration. A value of provided means that grub will
|
||||
it in the configuration. A value of provided means that GRUB will
|
||||
use the device name as show in <command>df</command> or
|
||||
<command>mount</command>. Note, zfs zpools / datasets are ignored
|
||||
and will always be mounted using their labels.
|
||||
@ -344,7 +344,7 @@ in
|
||||
default = false;
|
||||
type = types.bool;
|
||||
description = ''
|
||||
Whether grub should be build against libzfs.
|
||||
Whether GRUB should be build against libzfs.
|
||||
ZFS support is only available for GRUB v2.
|
||||
This option is ignored for GRUB v1.
|
||||
'';
|
||||
@ -354,7 +354,7 @@ in
|
||||
default = false;
|
||||
type = types.bool;
|
||||
description = ''
|
||||
Whether grub should be build with EFI support.
|
||||
Whether GRUB should be build with EFI support.
|
||||
EFI support is only available for GRUB v2.
|
||||
This option is ignored for GRUB v1.
|
||||
'';
|
||||
@ -364,16 +364,16 @@ in
|
||||
default = false;
|
||||
type = types.bool;
|
||||
description = ''
|
||||
Enable support for encrypted partitions. Grub should automatically
|
||||
Enable support for encrypted partitions. GRUB should automatically
|
||||
unlock the correct encrypted partition and look for filesystems.
|
||||
'';
|
||||
};
|
||||
|
||||
enableTrustedboot = mkOption {
|
||||
enableTrustedBoot = mkOption {
|
||||
default = false;
|
||||
type = types.bool;
|
||||
description = ''
|
||||
Enable trusted boot. Grub will measure all critical components during
|
||||
Enable trusted boot. GRUB will measure all critical components during
|
||||
the boot process to offer TCG (TPM) support.
|
||||
'';
|
||||
};
|
||||
@ -429,7 +429,7 @@ in
|
||||
assertions = [
|
||||
{
|
||||
assertion = !cfg.zfsSupport || cfg.version == 2;
|
||||
message = "Only grub version 2 provides zfs support";
|
||||
message = "Only GRUB version 2 provides ZFS support";
|
||||
}
|
||||
{
|
||||
assertion = cfg.mirroredBoots != [ ];
|
||||
@ -441,19 +441,19 @@ in
|
||||
message = "You cannot have duplicated devices in mirroredBoots";
|
||||
}
|
||||
{
|
||||
assertion = !cfg.enableTrustedboot || cfg.version == 2;
|
||||
assertion = !cfg.enableTrustedBoot || cfg.version == 2;
|
||||
message = "Trusted GRUB is only available for GRUB 2";
|
||||
}
|
||||
{
|
||||
assertion = !cfg.efiSupport || !cfg.enableTrustedboot;
|
||||
assertion = !cfg.efiSupport || !cfg.enableTrustedBoot;
|
||||
message = "Trusted GRUB does not have EFI support";
|
||||
}
|
||||
{
|
||||
assertion = !cfg.zfsSupport || !cfg.enableTrustedboot;
|
||||
assertion = !cfg.zfsSupport || !cfg.enableTrustedBoot;
|
||||
message = "Trusted GRUB does not have ZFS support";
|
||||
}
|
||||
{
|
||||
assertion = !cfg.enableTrustedboot;
|
||||
assertion = !cfg.enableTrustedBoot;
|
||||
message = "Trusted GRUB can break your system. Remove assertion if you want to test trustedGRUB nevertheless.";
|
||||
}
|
||||
] ++ flip concatMap cfg.mirroredBoots (args: [
|
||||
@ -471,7 +471,7 @@ in
|
||||
}
|
||||
] ++ flip map args.devices (device: {
|
||||
assertion = device == "nodev" || hasPrefix "/" device;
|
||||
message = "Grub devices must be absolute paths, not ${dev} in ${args.path}";
|
||||
message = "GRUB devices must be absolute paths, not ${dev} in ${args.path}";
|
||||
}));
|
||||
})
|
||||
|
||||
|
@ -7,8 +7,8 @@
|
||||
, withGTK2 ? true, gtk2
|
||||
}:
|
||||
|
||||
assert (libXft != null) -> libpng != null; # probably a bug
|
||||
assert stdenv.isDarwin -> libXaw != null; # fails to link otherwise
|
||||
assert (libXft != null) -> libpng != null; # probably a bug
|
||||
assert stdenv.isDarwin -> libXaw != null; # fails to link otherwise
|
||||
assert withGTK2 -> withX || stdenv.isDarwin;
|
||||
assert withGTK3 -> withX || stdenv.isDarwin;
|
||||
assert withGTK2 -> !withGTK3 && gtk2 != null;
|
||||
|
@ -1,11 +1,11 @@
|
||||
{ stdenv, fetchurl, emacs, texinfo, texLive, perl, which, automake, enableDoc ? false }:
|
||||
|
||||
stdenv.mkDerivation (rec {
|
||||
name = "ProofGeneral-4.3pre131011";
|
||||
name = "ProofGeneral-4.3pre150313";
|
||||
|
||||
src = fetchurl {
|
||||
url = http://proofgeneral.inf.ed.ac.uk/releases/ProofGeneral-4.3pre131011.tgz;
|
||||
sha256 = "0104iy2xik5npkdg9p2ir6zqyrmdc93azrgm3ayvg0z76vmnb816";
|
||||
url = "http://proofgeneral.inf.ed.ac.uk/releases/${name}.tgz";
|
||||
sha256 = "1jq5ykkk14xr5qcn4kyxmi5ls0fibr0y47gfygzm1mzrfvz9aw3f";
|
||||
};
|
||||
|
||||
sourceRoot = name;
|
||||
|
@ -7,7 +7,7 @@ diff -r c7d8bfff4c0a bin/proofgeneral
|
||||
if [ -z "$PGHOME" ] || [ ! -d "$PGHOME" ]; then
|
||||
- # default relative to this script, otherwise PGHOMEDEFAULT
|
||||
- MYDIR="`readlink --canonicalize "$0" | sed -ne 's,/bin/proofgeneral$,,p'`"
|
||||
- if [ -d "$MYDIR" ]; then
|
||||
- if [ -d "$MYDIR/generic" ]; then
|
||||
- PGHOME="$MYDIR"
|
||||
- elif [ -d "$PGHOMEDEFAULT" ]; then
|
||||
+ if [ -d "$PGHOMEDEFAULT" ]; then
|
||||
|
@ -2,7 +2,7 @@
|
||||
pyqt4, qwt, fcgi, pythonPackages, libspatialindex, libspatialite, qscintilla, postgresql, makeWrapper }:
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
name = "qgis-2.8.2";
|
||||
name = "qgis-2.10.1";
|
||||
|
||||
buildInputs = [ gdal qt4 flex bison proj geos x11 sqlite gsl pyqt4 qwt qscintilla
|
||||
fcgi libspatialindex libspatialite postgresql ] ++
|
||||
@ -21,7 +21,7 @@ stdenv.mkDerivation rec {
|
||||
|
||||
src = fetchurl {
|
||||
url = "http://qgis.org/downloads/${name}.tar.bz2";
|
||||
sha256 = "fd3c01e48224f611c3bb279b0af9cc1dff3844cdc93f7b45e4f37cf8f350bc4b";
|
||||
sha256 = "79119b54642edaffe3cda513531eb7b81913e013954a49c6d3b21c8b00143307";
|
||||
};
|
||||
|
||||
postInstall = ''
|
||||
|
@ -1,17 +1,17 @@
|
||||
{ stdenv, fetchFromGitHub, cmake, python, libX11, qt4 }:
|
||||
{ stdenv, fetchFromGitHub, cmake, libX11, procps, python, qt5 }:
|
||||
|
||||
let version = "6.1"; in
|
||||
let version = "7.0"; in
|
||||
stdenv.mkDerivation {
|
||||
name = "apitrace-${version}";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
sha256 = "1v38111ljd35v5sahshs3inhk6nsv7rxh4r0ck8k0njkwzlx2yqk";
|
||||
sha256 = "0nn3z7i6cd4zkmms6jpp1v2q194gclbs06v0f5hyiwcsqaxzsg5b";
|
||||
rev = version;
|
||||
repo = "apitrace";
|
||||
owner = "apitrace";
|
||||
};
|
||||
|
||||
buildInputs = [ python libX11 qt4 ];
|
||||
buildInputs = [ libX11 procps python qt5.base ];
|
||||
nativeBuildInputs = [ cmake ];
|
||||
|
||||
buildPhase = ''
|
||||
@ -20,6 +20,7 @@ stdenv.mkDerivation {
|
||||
'';
|
||||
|
||||
meta = with stdenv.lib; {
|
||||
inherit version;
|
||||
homepage = https://apitrace.github.io;
|
||||
description = "Tools to trace OpenGL, OpenGL ES, Direct3D, and DirectDraw APIs";
|
||||
license = licenses.mit;
|
||||
|
@ -6,11 +6,11 @@
|
||||
}:
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
name = "digikam-4.10.0";
|
||||
name = "digikam-4.11.0";
|
||||
|
||||
src = fetchurl {
|
||||
url = "http://download.kde.org/stable/digikam/${name}.tar.bz2";
|
||||
sha256 = "4207e68b6221307111b66bb69485d3e88150df95dae014a99f6f161a3da0c725";
|
||||
sha256 = "1nak3w0717fpbpmklzd3xkkbp2mwi44yxnc789wzmi9d8z9n3jwh";
|
||||
};
|
||||
|
||||
nativeBuildInputs = [ cmake automoc4 pkgconfig ];
|
||||
|
20
pkgs/applications/misc/gxmessage/default.nix
Normal file
20
pkgs/applications/misc/gxmessage/default.nix
Normal file
@ -0,0 +1,20 @@
|
||||
{stdenv, fetchurl, gnome3, intltool, pkgconfig, texinfo}:
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
name = "gxmessage-${version}";
|
||||
version = "3.4.3";
|
||||
|
||||
src = fetchurl {
|
||||
url = "http://homepages.ihug.co.nz/~trmusson/stuff/${name}.tar.gz";
|
||||
sha256 = "db4e1655fc58f31e5770a17dfca4e6c89028ad8b2c8e043febc87a0beedeef05";
|
||||
};
|
||||
|
||||
buildInputs = [ intltool gnome3.gtk pkgconfig texinfo ];
|
||||
meta = {
|
||||
description = "a GTK enabled dropin replacement for xmessage";
|
||||
homepage = "http://homepages.ihug.co.nz/~trmusson/programs.html#gxmessage";
|
||||
license = stdenv.lib.licenses.gpl3;
|
||||
maintainers = with stdenv.lib.maintainers; [jfb];
|
||||
platforms = with stdenv.lib.platforms; linux;
|
||||
};
|
||||
}
|
@ -6,18 +6,16 @@
|
||||
, libXcursor, libXi, libXinerama }:
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
version = "3.0.4.1";
|
||||
version = "3.0.5";
|
||||
name = "dillo-${version}";
|
||||
|
||||
src = fetchurl {
|
||||
url = "http://www.dillo.org/download/${name}.tar.bz2";
|
||||
sha256 = "0iw617nnrz3541jkw5blfdlk4x8jxb382pshi8nfc7xd560c95zd";
|
||||
sha256 = "12ql8n1lypv3k5zqgwjxlw1md90ixz3ag6j1gghfnhjq3inf26yv";
|
||||
};
|
||||
|
||||
buildInputs = with stdenv.lib;
|
||||
[ fltk openssl libjpeg libpng libXcursor libXi libXinerama ];
|
||||
|
||||
nativeBuildInputs = [ perl ];
|
||||
[ perl fltk openssl libjpeg libpng libXcursor libXi libXinerama ];
|
||||
|
||||
configureFlags = "--enable-ssl";
|
||||
|
||||
|
@ -1,6 +1,6 @@
|
||||
{ stdenv, fetchurl
|
||||
, gpm, openssl, pkgconfig # Misc.
|
||||
, libpng, libjpeg, libtiff # graphic formats
|
||||
, gpm, openssl, pkgconfig, libev # Misc.
|
||||
, libpng, libjpeg, libtiff, librsvg # graphic formats
|
||||
, bzip2, zlib, xz # Transfer encodings
|
||||
, enableFB ? true
|
||||
, enableDirectFB ? false, directfb
|
||||
@ -8,16 +8,16 @@
|
||||
}:
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
version = "2.8";
|
||||
version = "2.10";
|
||||
name = "links2-${version}";
|
||||
|
||||
src = fetchurl {
|
||||
url = "${meta.homepage}/download/links-${version}.tar.bz2";
|
||||
sha256 = "15h07498z52jfdahzgvkphg1f7qvxnpbyfn2xmsls0d2dwwdll3r";
|
||||
sha256 = "0lqxg55sp1kphl7ykm2km0s2vsn92a0gmlgypmkqb984r060n3l4";
|
||||
};
|
||||
|
||||
buildInputs =
|
||||
[ libpng libjpeg libtiff gpm openssl xz bzip2 zlib ]
|
||||
[ libev librsvg libpng libjpeg libtiff gpm openssl xz bzip2 zlib ]
|
||||
++ stdenv.lib.optionals enableX11 [ libX11 libXau libXt ]
|
||||
++ stdenv.lib.optional enableDirectFB [ directfb ];
|
||||
|
||||
|
@ -1,4 +1,5 @@
|
||||
{ stdenv, coreutils, fetchurl, patchelf, gcc }:
|
||||
{ stdenv, fetchurl, patchelf, fontconfig, freetype
|
||||
, gcc, glib, libICE, libSM, libX11, libXext, libXrender }:
|
||||
|
||||
let
|
||||
arch = if stdenv.system == "x86_64-linux" then "x86_64"
|
||||
@ -13,45 +14,54 @@ let
|
||||
|
||||
appdir = "opt/copy";
|
||||
|
||||
libPackages = [ fontconfig freetype gcc.cc glib libICE libSM libX11 libXext
|
||||
libXrender ];
|
||||
libPaths = stdenv.lib.concatStringsSep ":"
|
||||
(map (path: "${path}/lib") libPackages);
|
||||
|
||||
in stdenv.mkDerivation {
|
||||
|
||||
name = "copy-com-1.47.0410";
|
||||
name = "copy-com-3.2.01.0481";
|
||||
|
||||
src = fetchurl {
|
||||
# Note: copy.com doesn't version this file. Annoying.
|
||||
url = "https://copy.com/install/linux/Copy.tgz";
|
||||
sha256 = "a48c69f6798f888617cfeef5359829e619057ae0e6edf3940b4ea6c81131012a";
|
||||
sha256 = "0bpphm71mqpaiygs57kwa23nli0qm64fvgl1qh7fkxyqqabh4g7k";
|
||||
};
|
||||
|
||||
buildInputs = [ coreutils patchelf ];
|
||||
nativeBuildInputs = [ patchelf ];
|
||||
|
||||
phases = "unpackPhase installPhase";
|
||||
|
||||
installPhase = ''
|
||||
mkdir -p $out/opt
|
||||
cp -r ${arch} "$out/${appdir}"
|
||||
ensureDir "$out/bin"
|
||||
ln -s "$out/${appdir}/CopyConsole" "$out/bin/copy_console"
|
||||
ln -s "$out/${appdir}/CopyAgent" "$out/bin/copy_agent"
|
||||
ln -s "$out/${appdir}/CopyCmd" "$out/bin/copy_cmd"
|
||||
patchelf --set-interpreter ${stdenv.glibc}/lib/${interpreter} \
|
||||
"$out/${appdir}/CopyConsole"
|
||||
|
||||
RPATH=${gcc.cc}/lib:$out/${appdir}
|
||||
echo "updating rpaths to: $RPATH"
|
||||
mkdir -p "$out/bin"
|
||||
for binary in Copy{Agent,Console,Cmd}; do
|
||||
binary="$out/${appdir}/$binary"
|
||||
ln -sv "$binary" "$out/bin"
|
||||
patchelf --set-interpreter ${stdenv.glibc}/lib/${interpreter} "$binary"
|
||||
done
|
||||
|
||||
# Older versions of this package happily installed broken copies of
|
||||
# anything other than CopyConsole - which was then also mangled to
|
||||
# copy_console for some reason. Keep backwards compatibility (only
|
||||
# for CopyConsole) for now; the NixOS service is already fixed.
|
||||
ln -sv "$out/bin"/{CopyConsole,copy_console}
|
||||
|
||||
RPATH=${libPaths}:$out/${appdir}
|
||||
echo "Updating rpaths to $RPATH in:"
|
||||
find "$out/${appdir}" -type f -a -perm +0100 \
|
||||
-print -exec patchelf --force-rpath --set-rpath "$RPATH" {} \;
|
||||
|
||||
|
||||
|
||||
'';
|
||||
|
||||
meta = {
|
||||
homepage = http://copy.com;
|
||||
description = "Copy.com Client";
|
||||
description = "Copy.com graphical & command-line clients";
|
||||
# Closed Source unfortunately.
|
||||
license = stdenv.lib.licenses.unfree;
|
||||
maintainers = with stdenv.lib.maintainers; [ nathan-gs ];
|
||||
maintainers = with stdenv.lib.maintainers; [ nathan-gs nckx ];
|
||||
# NOTE: Copy.com itself only works on linux, so this is ok.
|
||||
platforms = stdenv.lib.platforms.linux;
|
||||
};
|
||||
|
@ -0,0 +1,30 @@
|
||||
{ stdenv, fetchgit, pkgconfig, pidgin } :
|
||||
|
||||
let
|
||||
version = "54b2992";
|
||||
in
|
||||
stdenv.mkDerivation rec {
|
||||
name = "pidgin-mra-${version}";
|
||||
|
||||
src = fetchgit {
|
||||
url = "https://github.com/dreadatour/pidgin-mra";
|
||||
rev = "${version}";
|
||||
sha256 = "1nhfx9gi5lhh2xjr9rw600bb53ly2nwiqq422vc0f297qkm1q9y0";
|
||||
};
|
||||
|
||||
nativeBuildInputs = [ pkgconfig ];
|
||||
buildInputs = [ pidgin ];
|
||||
|
||||
preConfigure = ''
|
||||
sed -i 's|-I/usr/include/libpurple|$(shell pkg-config --cflags purple)|' Makefile
|
||||
export DESTDIR=$out
|
||||
export LIBDIR=/lib
|
||||
export DATADIR=/share
|
||||
'';
|
||||
|
||||
meta = {
|
||||
homepage = https://github.com/dreadatour/pidgin-mra;
|
||||
description = "Mail.ru Agent plugin for Pidgin / libpurple";
|
||||
license = stdenv.lib.licenses.gpl2;
|
||||
};
|
||||
}
|
@ -0,0 +1,28 @@
|
||||
{ stdenv, fetchhg, pidgin, cmake, libxml2 } :
|
||||
|
||||
let
|
||||
version = "40ddb6d";
|
||||
in
|
||||
stdenv.mkDerivation rec {
|
||||
name = "purple-vk-plugin-${version}";
|
||||
|
||||
src = fetchhg {
|
||||
url = "https://bitbucket.org/olegoandreev/purple-vk-plugin";
|
||||
rev = "${version}";
|
||||
sha256 = "02p57fgx8ml00cbrb4f280ak2802svz80836dzk9f1zwm1bcr2qc";
|
||||
};
|
||||
|
||||
buildInputs = [ pidgin cmake libxml2 ];
|
||||
|
||||
preConfigure = ''
|
||||
sed -i -e 's|DESTINATION.*PURPLE_PLUGIN_DIR}|DESTINATION lib/purple-2|' CMakeLists.txt
|
||||
'';
|
||||
|
||||
cmakeFlags = "-DCMAKE_INSTALL_PREFIX_INITIALIZED_TO_DEFAULT=1";
|
||||
|
||||
meta = {
|
||||
homepage = https://bitbucket.org/olegoandreev/purple-vk-plugin;
|
||||
description = "Vk (russian social network) plugin for Pidgin / libpurple";
|
||||
license = stdenv.lib.licenses.gpl3;
|
||||
};
|
||||
}
|
@ -1,6 +1,6 @@
|
||||
{ stdenv, fetchurl, makeWrapper, zlib, glib, libpng, freetype, xorg
|
||||
, fontconfig, xlibs, qt5, xkeyboard_config, alsaLib, libpulseaudio ? null
|
||||
, libredirect, quazip, less, which
|
||||
{ stdenv, fetchurl, makeWrapper, makeDesktopItem, zlib, glib, libpng, freetype
|
||||
, xorg, fontconfig, xlibs, qt5, xkeyboard_config, alsaLib, libpulseaudio ? null
|
||||
, libredirect, quazip, less, which, unzip
|
||||
}:
|
||||
|
||||
let
|
||||
@ -15,6 +15,16 @@ let
|
||||
xlibs.libxcb fontconfig xorg.libXext xorg.libX11 alsaLib qt5.base libpulseaudio
|
||||
];
|
||||
|
||||
desktopItem = makeDesktopItem {
|
||||
name = "teamspeak";
|
||||
exec = "ts3client";
|
||||
icon = "teamspeak";
|
||||
comment = "The TeamSpeak voice communication tool";
|
||||
desktopName = "TeamSpeak";
|
||||
genericName = "TeamSpeak";
|
||||
categories = "Network";
|
||||
};
|
||||
|
||||
in
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
@ -33,7 +43,13 @@ stdenv.mkDerivation rec {
|
||||
else "1b3nbvfpd8lx3dig8z5yk6zjkbmsy6y938dhj1f562wc8adixciz";
|
||||
};
|
||||
|
||||
buildInputs = [ makeWrapper less which ];
|
||||
# grab the plugin sdk for the desktop icon
|
||||
pluginsdk = fetchurl {
|
||||
url = "http://dl.4players.de/ts/client/pluginsdk/pluginsdk_3.0.16.zip";
|
||||
sha256 = "1qpqpj3r21wff3ly9ail4l6b57pcqycsh2hca926j14sdlvpv7kl";
|
||||
};
|
||||
|
||||
buildInputs = [ makeWrapper less which unzip ];
|
||||
|
||||
unpackPhase =
|
||||
''
|
||||
@ -62,6 +78,12 @@ stdenv.mkDerivation rec {
|
||||
mkdir -p $out/lib/teamspeak
|
||||
mv * $out/lib/teamspeak/
|
||||
|
||||
# Make a desktop item
|
||||
mkdir -p $out/share/applications/ $out/share/icons/
|
||||
unzip ${pluginsdk}
|
||||
cp pluginsdk/docs/client_html/images/logo.png $out/share/icons/teamspeak.png
|
||||
cp ${desktopItem}/share/applications/* $out/share/applications/
|
||||
|
||||
# Make a symlink to the binary from bin.
|
||||
mkdir -p $out/bin/
|
||||
ln -s $out/lib/teamspeak/ts3client $out/bin/ts3client
|
||||
|
18
pkgs/applications/networking/irc/sic/default.nix
Normal file
18
pkgs/applications/networking/irc/sic/default.nix
Normal file
@ -0,0 +1,18 @@
|
||||
{ stdenv, fetchurl }:
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
name = "sic-${version}";
|
||||
version = "1.2";
|
||||
|
||||
makeFlags = "PREFIX=$out";
|
||||
src = fetchurl {
|
||||
url = "http://dl.suckless.org/tools/sic-${version}.tar.gz";
|
||||
sha256 = "ac07f905995e13ba2c43912d7a035fbbe78a628d7ba1c256f4ca1372fb565185";
|
||||
};
|
||||
|
||||
meta = {
|
||||
description = "Simple IRC client";
|
||||
homepage = http://tools.suckless.org/sic/;
|
||||
license = stdenv.lib.licenses.mit;
|
||||
};
|
||||
}
|
@ -16,14 +16,14 @@ assert saslSupport -> cyrus_sasl != null;
|
||||
assert gpgmeSupport -> gpgme != null;
|
||||
|
||||
let
|
||||
version = "1.5.23.1-rc1";
|
||||
version = "1.5.23.1";
|
||||
in
|
||||
stdenv.mkDerivation rec {
|
||||
name = "mutt-kz-${version}";
|
||||
|
||||
src = fetchurl {
|
||||
url = "https://github.com/karelzak/mutt-kz/archive/v${version}.tar.gz";
|
||||
sha256 = "1m4bnn8psyrx2wy8ribannmp5qf75lv1gz116plji2z37z015zny";
|
||||
sha256 = "01k4hrf8x2100pcqnrm61mm1x0pqi2kr3rx22k5hwvbs1wh8zyhz";
|
||||
};
|
||||
|
||||
buildInputs = with stdenv.lib;
|
||||
|
43
pkgs/applications/science/math/lp_solve/default.nix
Normal file
43
pkgs/applications/science/math/lp_solve/default.nix
Normal file
@ -0,0 +1,43 @@
|
||||
{ stdenv, fetchurl }:
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
|
||||
name = "lp_solve-${version}";
|
||||
version = "5.5.2.0";
|
||||
|
||||
src = fetchurl {
|
||||
url = "http://sourceforge.net/projects/lpsolve/files/lpsolve/${version}/lp_solve_${version}_source.tar.gz";
|
||||
sha256 = "176c7f023mb6b8bfmv4rfqnrlw88lsg422ca74zjh19i2h5s69sq";
|
||||
};
|
||||
|
||||
buildCommand = ''
|
||||
. $stdenv/setup
|
||||
tar xvfz $src
|
||||
(
|
||||
cd lp_solve*/lpsolve55
|
||||
bash ccc
|
||||
mkdir -pv $out/lib
|
||||
cp -v bin/*/* $out/lib
|
||||
)
|
||||
(
|
||||
cd lp_solve*/lp_solve
|
||||
bash ccc
|
||||
mkdir -pv $out/bin
|
||||
cp -v bin/*/* $out/bin
|
||||
)
|
||||
(
|
||||
mkdir -pv $out/include
|
||||
cp -v lp_solve*/*.h $out/include
|
||||
)
|
||||
'';
|
||||
|
||||
meta = with stdenv.lib; {
|
||||
description = "lp_solve is a Mixed Integer Linear Programming (MILP) solver.";
|
||||
homepage = "http://lpsolve.sourceforge.net";
|
||||
license = licenses.gpl2Plus;
|
||||
maintainers = with maintainers; [ smironov ];
|
||||
platforms = platforms.unix;
|
||||
};
|
||||
|
||||
}
|
||||
|
50
pkgs/applications/science/misc/openmodelica/default.nix
Normal file
50
pkgs/applications/science/misc/openmodelica/default.nix
Normal file
@ -0,0 +1,50 @@
|
||||
{stdenv, fetchgit, fetchsvn, autoconf, automake, libtool, gfortran, clang, cmake, gnumake,
|
||||
hwloc, jre, liblapack, blas, hdf5, expat, ncurses, readline, qt4, webkit, which,
|
||||
lp_solve, omniorb, sqlite, libatomic_ops, pkgconfig, file, gettext, flex, bison,
|
||||
doxygen, boost, openscenegraph, gnome, pangox_compat, xlibs, git, bash, gtk, makeWrapper }:
|
||||
|
||||
let
|
||||
|
||||
fakegit = import ./fakegit.nix {inherit stdenv fetchgit fetchsvn bash;} ;
|
||||
|
||||
in
|
||||
|
||||
stdenv.mkDerivation {
|
||||
name = "openmodelica";
|
||||
|
||||
src = fetchgit (import ./src-main.nix);
|
||||
|
||||
buildInputs = [autoconf cmake automake libtool gfortran clang gnumake
|
||||
hwloc jre liblapack blas hdf5 expat ncurses readline qt4 webkit which
|
||||
lp_solve omniorb sqlite libatomic_ops pkgconfig file gettext flex bison
|
||||
doxygen boost openscenegraph gnome.gtkglext pangox_compat xlibs.libXmu
|
||||
git gtk makeWrapper];
|
||||
|
||||
patchPhase = ''
|
||||
cp -fv ${fakegit}/bin/checkout-git.sh libraries/checkout-git.sh
|
||||
cp -fv ${fakegit}/bin/checkout-svn.sh libraries/checkout-svn.sh
|
||||
'';
|
||||
|
||||
configurePhase = ''
|
||||
autoconf
|
||||
./configure CC=${clang}/bin/clang CXX=${clang}/bin/clang++ --prefix=$out
|
||||
'';
|
||||
|
||||
postFixup = ''
|
||||
for e in $(cd $out/bin && ls); do
|
||||
wrapProgram $out/bin/$e \
|
||||
--prefix PATH : "${gnumake}/bin" \
|
||||
--prefix LIBRARY_PATH : "${liblapack}/lib:${blas}/lib"
|
||||
done
|
||||
'';
|
||||
|
||||
meta = with stdenv.lib; {
|
||||
description = "OpenModelica is an open-source Modelica-based modeling and simulation environment";
|
||||
homepage = "https://openmodelica.org";
|
||||
license = licenses.gpl3;
|
||||
maintainers = with maintainers; [ smironov ];
|
||||
platforms = platforms.linux;
|
||||
};
|
||||
}
|
||||
|
||||
|
81
pkgs/applications/science/misc/openmodelica/fakegit.nix
Normal file
81
pkgs/applications/science/misc/openmodelica/fakegit.nix
Normal file
@ -0,0 +1,81 @@
|
||||
{stdenv, fetchgit, fetchsvn, bash } :
|
||||
|
||||
let
|
||||
mkscript = path : text : ''
|
||||
mkdir -pv `dirname ${path}`
|
||||
cat > ${path} <<"EOF"
|
||||
#!${bash}/bin/bash
|
||||
ME=`basename ${path}`
|
||||
${text}
|
||||
EOF
|
||||
sed -i "s@%out@$out@g" ${path}
|
||||
chmod +x ${path}
|
||||
'';
|
||||
|
||||
hashname = r: let
|
||||
rpl = stdenv.lib.replaceChars [":" "/"] ["_" "_"];
|
||||
in
|
||||
(rpl r.url) + "-" + (rpl r.rev);
|
||||
|
||||
in
|
||||
|
||||
stdenv.mkDerivation {
|
||||
name = "fakegit";
|
||||
|
||||
buildCommand = ''
|
||||
mkdir -pv $out/repos
|
||||
${stdenv.lib.concatMapStrings
|
||||
(r : ''
|
||||
cp -r ${fetchgit r} $out/repos/${hashname r}
|
||||
''
|
||||
) (import ./src-libs-git.nix)
|
||||
}
|
||||
|
||||
${mkscript "$out/bin/checkout-git.sh" ''
|
||||
if test "$#" -ne 4; then
|
||||
echo "Usage: $0 DESTINATION URL GITBRANCH HASH"
|
||||
exit 1
|
||||
fi
|
||||
DEST=$1
|
||||
URL=`echo $2 | tr :/ __`
|
||||
GITBRANCH=$3
|
||||
REVISION=$4
|
||||
|
||||
L=`echo $REVISION | wc -c`
|
||||
if expr $L '<' 10 >/dev/null; then
|
||||
REVISION=refs/tags/$REVISION
|
||||
fi
|
||||
|
||||
REVISION=`echo $REVISION | tr :/ __`
|
||||
|
||||
rm -rf $DEST
|
||||
mkdir -pv $DEST
|
||||
echo "FAKEGIT cp -r %out/repos/$URL-$REVISION $DEST" >&2
|
||||
cp -r %out/repos/$URL-$REVISION/* $DEST
|
||||
chmod u+w -R $DEST
|
||||
''}
|
||||
|
||||
${stdenv.lib.concatMapStrings
|
||||
(r : ''
|
||||
cp -r ${fetchsvn r} $out/repos/${hashname r}
|
||||
''
|
||||
) (import ./src-libs-svn.nix)
|
||||
}
|
||||
|
||||
${mkscript "$out/bin/checkout-svn.sh" ''
|
||||
if test "$#" -ne 3; then
|
||||
echo "Usage: $0 DESTINATION URL REVISION"
|
||||
exit 1
|
||||
fi
|
||||
DEST=$1
|
||||
URL=`echo $2 | tr :/ __`
|
||||
REVISION=`echo $4 | tr :/ __`
|
||||
|
||||
rm -rf $DEST
|
||||
mkdir -pv $DEST
|
||||
echo "FAKE COPY %out/repos/$URL-$REVISION $DEST"
|
||||
cp -r %out/repos/$URL-$REVISION/* $DEST
|
||||
chmod u+w -R $DEST
|
||||
''}
|
||||
'';
|
||||
}
|
71
pkgs/applications/science/misc/openmodelica/src-libs-git.nix
Normal file
71
pkgs/applications/science/misc/openmodelica/src-libs-git.nix
Normal file
@ -0,0 +1,71 @@
|
||||
[
|
||||
{ url = "https://github.com/modelica-3rdparty/ADGenKinetics.git"; rev = "42428db6e84bcde28543a3bba9bccee581309bb1"; sha256="14l005jwj1wz35gq8xlbzfz0bpsx99rs4q3dxkfh76yhnv1jh9h3"; }
|
||||
{ url = "https://github.com/modelica-3rdparty/ADMSL.git"; rev = "ed0305603f86b46d9af03e7d37dcb8b6704915b4"; sha256="15b0nqxyh8444az56ydjn594jikdl1ina5wamabk3nzm1yx218cl"; }
|
||||
{ url = "https://github.com/iea-annex60/modelica-annex60.git"; rev = "8015a01591bb24d219f57e7b69cdfcde66e39b47"; sha256="05k4pa007a6p628fq1xac0cfv8g8dnpy2bgy8h99rqpmlaa072z7"; }
|
||||
{ url = "https://github.com/OpenModelica/BioChem.git"; rev = "b5f3cb999f3cfad2bbb6fb429b496f61ecf2f628"; sha256="1l52dg888vwx4668spn59hqvfkpl9g06g8n2cdxiap7lvsyh6w9x"; }
|
||||
{ url = "https://github.com/modelica-3rdparty/BondGraph.git"; rev = "20c23e60d12989bd4668ccac47659d82d39d29cc"; sha256="1i9cmiy1ya04h2ld0gy0x2gvdrfksl66fmcrgdm1vpsnbb6pviv9"; }
|
||||
{ url = "https://github.com/modelica-3rdparty/BondLib.git"; rev = "df7a40fe612617da22e27d39edfa4b27d65f23d0"; sha256="005djwxd568zyk3ndss9hv165dci9x0dgjmcdjhnqmsap3w83hlz"; }
|
||||
{ url = "https://github.com/modelica-3rdparty/BrineProp.git"; rev = "fed013cdeec0fb9552964376b575a8e3635539ab"; sha256="020hm2q65d5iv3h8b3lhgl6j930vi2pbh4lvxv3b3k7i9z02q43a"; }
|
||||
{ url = "https://github.com/lbl-srg/modelica-buildings.git"; rev = "ef89361cc8673b077b9221efbf78aa63b4d7babd"; sha256="04gclknhl2f5z7w9fsbhwawisd0ibmvwpplx0siqwzvjx7nsmdg4"; }
|
||||
{ url = "https://github.com/lbl-srg/modelica-buildings.git"; rev = "444aa231f423b8d04225bf8672e3212d089fbfe4"; sha256="0q754mlkwqj0jcqsmxksvcz4ak2i86f9s41fhffh5jvra27cvq01"; }
|
||||
{ url = "https://github.com/modelica-3rdparty/Chemical.git"; rev = "aa2642608e587ddb6897e8c3ffabb3aa099510bd"; sha256="0y46spcb6rw0jpj4v20nlw8xlvi5kypij46f1msvwgr7dfgy4gl4"; }
|
||||
{ url = "https://github.com/modelica-3rdparty/ComplexLib.git"; rev = "0b78942ee4fa95ae71347a0d552dd869fdf4c708"; sha256="18llf5ccrq3b0f4cjznfycskwf78pik8370xv45w9gb51gamszrn"; }
|
||||
{ url = "https://github.com/lochel/ConPNlib.git"; rev = "bbf6e9711665d55e5a8cf2f7235fa013c2315104"; sha256="0g3ll44sn2ff14qxwdyakw9h5b8b7vzabxp8cb8km16wcdqzgcxx"; }
|
||||
{ url = "https://github.com/modelica-3rdparty/DESLib.git"; rev = "7a473d8d16b118c3ea05761c6f43b17fd9838e4e"; sha256="19f2121n8rdc9svcjk8irivsd9wqcb9ai9jx72s2r85fkbvm8jc3"; }
|
||||
{ url = "https://github.com/modelica-3rdparty/ExtendedPetriNets.git"; rev = "2f4eac0651c1ab0ed56b75ec61424e0ef15181d3"; sha256="0wwj756pg33qwb90ycbfkrk5xsiwsbrqvq3i16i4pisi21vl6jk9"; }
|
||||
{ url = "https://github.com/modelica-3rdparty/ExternData.git"; rev = "396164fa708cc7c7e64da55ac0b3cba23939f790"; sha256="09052qmv91a9wawsl93b5b3q47awrxhnsbb9mrv39kpnwygfh7dq"; }
|
||||
{ url = "https://github.com/modelica/ExternalMedia.git"; rev = "1b77869b31dc3509defeccb1236db4b05d2f6f5b"; sha256="05sszn4bn8r78syydyjq8csn9xv4az56mm9lrarqykqdh78pvlqp"; }
|
||||
{ url = "https://github.com/kdavies4/FCSys.git"; rev = "cb4b17f34313b9d8f2d4223d5365684b4dc1ab65"; sha256="114p7ja6b3fwlkvkkjhbx78fxc7v4af2sbs783hkdga86m1v4ib6"; }
|
||||
{ url = "https://github.com/modelica-3rdparty/FastBuildings.git"; rev = "1f5cfebc2f42c13e272bff639ffa3449d5740bf7"; sha256="0sry1n2pliddz0pjv8dp899fx98f16n1arc8zvq36k5grvi52fby"; }
|
||||
{ url = "https://github.com/modelica-3rdparty/FaultTriggering.git"; rev = "10c226b7e5b2af901b356ac437c90d6616a6e9a4"; sha256="0a9j18qjwigq11nghl97syxa9bscs1aj6vwpkldh50csnj5h6g2s"; }
|
||||
{ url = "https://github.com/modelica-3rdparty/FuzzyControl.git"; rev = "19ff67ff129a440482cc85f216f287b05ea6ec0d"; sha256="0ijcqns7pijsavijn4wlrdsz64k5ks626sly7r28wvrk9af2m2cx"; }
|
||||
{ url = "https://github.com/modelica-3rdparty/HelmholtzMedia.git"; rev = "e54fcd0e436d65c85de6c6b935983e363cdc9f6c"; sha256="05afh0379fx4mjjn7jb8j5p4am6qi62hjxvasb38b6fcp9rnysn4"; }
|
||||
{ url = "https://github.com/modelica-3rdparty/IdealizedContact.git"; rev = "8ebac550d913f6d2b3af4d1aea5044e72c7eb6b0"; sha256="03gh2a7hf44clshwkiyz786w847hmyr3bicdqd9969fbirgcqn6m"; }
|
||||
{ url = "https://github.com/modelica-3rdparty/IndustrialControlSystems.git"; rev = "6a2414307d5998c6d081efe803c2b575a532b3ba"; sha256="09la9h07x8bkh7zhrwykgj1467qdryjvxhvnnm8qvsim0dl9inc4"; }
|
||||
{ url = "https://github.com/modelica-3rdparty/LinearMPC.git"; rev = "1e91a5dcaa662cd30c5b09a9d0267289703f933b"; sha256="12094fqmwi65h0mc65b96krbj6b8dgn6jiww3fnv6khglb21kwvd"; }
|
||||
{ url = "https://github.com/modelica/Modelica.git"; rev = "refs/tags/v1.6"; sha256="106w83ylgbxf63wr7p9z5q8vqz2qcsaw0zwaad7d3saq6rdbj30c"; }
|
||||
{ url = "https://github.com/modelica/Modelica.git"; rev = "d442bcd461b8db9873e33b6141bdbd37bcff9de8"; sha256="1icnd0fxix5khnsvdhy7kmzn6lnqkggbvfrbln98a2h5zqd6s32w"; }
|
||||
{ url = "https://github.com/modelica/Modelica.git"; rev = "af2a3e1597d648d6826665c89cf9eaf5c2a632bc"; sha256="0ryk0iwakdazhsjqvan41w6f9bvgl329zkqchcdg6nkidiigziwh"; }
|
||||
{ url = "https://github.com/modelica/Modelica.git"; rev = "48943d87db45a6c312b5a5789d384acde44a934b"; sha256="1hi2vkpmx734baa9m1lqzallcykhh3snd68r387gndiv96f6zx3n"; }
|
||||
{ url = "https://github.com/modelica/Modelica.git"; rev = "164af873cc5955c50f9592a7d2f3c155f703849c"; sha256="071svqwd72sy85sngbg5r22ab693c0gw2xx29gk1sqrk2nchmvia"; }
|
||||
{ url = "https://github.com/OpenModelica/modelica3d.git"; rev = "daf5669b03ad33fc6999671d1c0e7521134a282b"; sha256="1scs6v2cp2r4jz4diszwbqf9kvzf49pid50dmpsz0gfhx06j9y2v"; }
|
||||
{ url = "https://github.com/modelica-deprecated/ModelicaAdditions.git"; rev = "568db43766186826b880f9d4bfafeff25cc2c4ab"; sha256="1py5i3afxdvz1dmxxwb2mqj8kyzdhg4jnnqwl8h50akizg4i49pl"; }
|
||||
{ url = "https://github.com/xogeny/ModelicaBook.git"; rev = "0e670cfae4db653bd34ea777d6b56423e9be2c9f"; sha256="0lxh08w6nii4p5yk7c0xmfi5y4xkjkzz4hirr3kqdhdfybcwq824"; }
|
||||
{ url = "https://github.com/modelica-compliance/compliance.git"; rev = "ca5092c14bb7af4507a10700ee49181a3a3ee199"; sha256="12ja6dhwlbq412kxjdviypgchipxpsg8l0sf6r17g6lbsi19i2b6"; }
|
||||
{ url = "https://github.com/modelica-3rdparty/ModelicaDEVS.git"; rev = "a987aa9552fbbe71b2ee2e8c28958f9d213087ae"; sha256="0qcw7vw28xadim0h8kr2km09d8vdj05ibdpzcnpny9n43pm9s5hx"; }
|
||||
{ url = "https://github.com/modelica/Modelica_DeviceDrivers.git"; rev = "db912ba7e1317b8f6a776ccf9a19f69c77a9c477"; sha256="052h2lr7xgfag5fks19wbldqmb985kxlc5fzysl7c9w3fnijp0ml"; }
|
||||
{ url = "https://github.com/modelica/Modelica_EnergyStorages.git"; rev = "9f057365232364e31a31a8e525f96284b98c7de3"; sha256="195m5b3z8qgg9kih9zsdx1h8zgrm37q63890r59akka05a97j48h"; }
|
||||
{ url = "https://github.com/modelica/Modelica_LinearSystems2.git"; rev = "18916fdc485285baab12481701b53d4eb606a3f1"; sha256="0fhvdwcgk8q3z1a98l2bxv8a6dysrs4ll6xfyzpni7yq8gp4mg4q"; }
|
||||
{ url = "https://github.com/modelica/Modelica_Synchronous.git"; rev = "d0f5ee57bc7b639738e88026674a87343b33dbe1"; sha256="0l75v4d0fgf07ify0h3skh4y9pfw9gxh9hbj1lbsdgglmzlrcvbg"; }
|
||||
{ url = "https://github.com/modelica-3rdparty/MotorcycleDynamics.git"; rev = "2be2667f9936d88ffb9b8a8246c5af9ccb0b307f"; sha256="0jazwmpqpyhhgs9qdn9drmplgp2yjs0ky7wll5x9929dkgy80m6x"; }
|
||||
{ url = "https://github.com/modelica-3rdparty/NCLib.git"; rev = "ed3d72f176ac6b7031ce73be9d80101141e74a69"; sha256="1pbpv8w1lsa9vdwp7qbih8iim91ms22b01wz376b548d0x2r95la"; }
|
||||
{ url = "https://github.com/modelica-3rdparty/NeuralNetwork.git"; rev = "c44e4d1fe97fd4f86dafcd05ad3713692e3f1806"; sha256="0s1v8k71zq1s9gjlvi3zr23nwfknp4x17cxm64a0y3vsi3kahj2s"; }
|
||||
{ url = "https://github.com/DLR-SR/Noise.git"; rev = "9b57476845539e56769cf76ea0fe7bf3c7eb5d11"; sha256="0icrb63f6dm4gww2nyby9i7s7qxvhvialp36xzcgmi7nlq7crjr2"; }
|
||||
{ url = "https://github.com/modelica-3rdparty/ObjectStab.git"; rev = "2a723e0b223af50f4ffdd62f8ac901e0f87b9323"; sha256="1b6zi27slzzfbkmbcqxygsn5i5w0zkq0hfrfb72vf7mbgz07j19j"; }
|
||||
{ url = "https://github.com/cparedis/OpenHydraulics.git"; rev = "d3173d1f06f7d14c9d7c41769f143617ff03a3ad"; sha256="1hn5rcnmzcbiaqdnxfn02wddmrpj9bcdi9p680f31hbh3vb0i3r6"; }
|
||||
{ url = "https://github.com/lochel/PNlib.git"; rev = "44c7d277980b7a88b449b72edec0a56416b40fa9"; sha256="026wdhbxnzarmj8gw0as70vj8f1gwc51z38hjqpswxkl0xd6mfvp"; }
|
||||
{ url = "https://github.com/MarekMatejak/Physiolibrary.git"; rev = "49d59060f6e5b4cb68560c6d7467e84ea4318056"; sha256="0klqs2axjm3s780sq4plq4wmbf9mszz2jmq9fprgxy9pw7iszbhc"; }
|
||||
{ url = "https://github.com/dzimmer/PlanarMechanics.git"; rev = "d998a1b27355e83d2ff4849d71281a919a3234aa"; sha256="0vyq6mninn38wy2d60rk753xbkfqim2y6y31py7kq2mm170jfqf4"; }
|
||||
{ url = "https://github.com/modelica/PowerSystems.git"; rev = "7b551888089277a0dd979db636d47aba0279e8f0"; sha256="0y13f1nllc7riksnly25wmmp6mc30c1b48dbq2lr1nag6yg3blwm"; }
|
||||
{ url = "https://github.com/modelica/PowerSystems.git"; rev = "3abd48aa53bbcd3f3e2ddfa2371680febf8baf48"; sha256="1nr2nbpaxywk8cpwnk9rr2zr87mm2gb9b4plqipjdlrrkjlk9fka"; }
|
||||
{ url = "https://github.com/modelica-3rdparty/PraxisSimulationstechnik.git"; rev = "f7db177786f84033f3a50b7474988b190a1dfb46"; sha256="08bdm7k7w35kg9gkrvcn382zkwf5h3iwkkx60d5fj64j5d5klray"; }
|
||||
{ url = "https://github.com/modelica-3rdparty/QCalc.git"; rev = "af6c34dda691a9bdf7ca1de10650974b2d5cecf5"; sha256="0p0zhl27cnr492byrzib0dyn7zp5yb7wcr0spv10ngm6j90cij6y"; }
|
||||
{ url = "https://github.com/modelica-3rdparty/QSSFluidFlow.git"; rev = "d84a2c107132f2cd47ea3c3751238d69e4b1f64b"; sha256="02cdvv33pi0qlmg8n401s4cxf59l9b4ff4ixf7gwn4w4n1y9bw0g"; }
|
||||
{ url = "https://github.com/modelica-3rdparty/RealTimeCoordinationLibrary.git"; rev = "655ac1a22aa6deb04ea8e3869dd0aa9fb9540754"; sha256="19crf8pl9vpqq3pq1rhcbl49kkmnm4jrzpwrpqp8qc6dj8096za4"; }
|
||||
{ url = "https://github.com/modelica-3rdparty/ScalableTestSuite.git"; rev = "c6319908d45ac97ffb10e96cd42654bce36ffb97"; sha256="1g79d88bfmzcqvaghyyj86ajs38v0qnmjxbj8d53yp6nmgnaasx5"; }
|
||||
{ url = "https://github.com/modelica-3rdparty/Servomechanisms.git"; rev = "22e1874ef9ad46156617817c67a4fb1238621bf5"; sha256="0nwb7apayk7ba9iv27yv67wi4b934dy57kkvn0acxy393jhd8jqd"; }
|
||||
{ url = "https://openmodelica.org/git/SiemensPower.git"; rev = "73a3bfc6d2ddd72165bb0f3e7e9df48b643a5ed0"; sha256="0mvrkpkmr0bx2cvsb23syg7cs8k6a15vjf4n1hivdcigq4x8g2nc"; }
|
||||
{ url = "https://openmodelica.org/git/SiemensPower.git"; rev = "5ef2e38b64ff481801c0db19d52f0bef21f85f77"; sha256="1llnpl2x1g28gari1rk34hdnnwf7a4fwwxlf7i18d8bl1vsrfaja"; }
|
||||
{ url = "https://openmodelica.org/git/SiemensPower.git"; rev = "2bd9e367baaa8d44946897c3c3a32a4050ad2a2a"; sha256="1shm9blpn9m87ci6wwkinpmihr1fik9j0a0pj2nxy0cjrr2jzbn4"; }
|
||||
{ url = "https://github.com/modelica-3rdparty/Spot.git"; rev = "2f74417f1681570900a1ed373dcbe4b42634ec7b"; sha256="0k5h2k6x98zvvsafpw7y16xs9d6lxz0csa0mlm4wwggaywadn255"; }
|
||||
{ url = "https://github.com/modelica-3rdparty/SystemDynamics.git"; rev = "c58a26dc3e62a50e64fd336dc4aa499b2d5ad314"; sha256="0ra3a2vgqmry92kmm060gfa41mrpkgbs4swzl78ih3icawfzjz8q"; }
|
||||
{ url = "https://github.com/modelica-3rdparty/ThermoPower.git"; rev = "e012268625dd1645fe5570cf31d64129d83a8192"; sha256="1rlkli48kc9hnkplgb0bjkb6ajn7agiw4yh9l5sfvlv7k7k2gc8l"; }
|
||||
{ url = "https://openmodelica.org/git/ThermoSysPro.git"; rev = "d4f9c3ed35f7520f82439eb6e9f4057ae0f82b73"; sha256="0hxbn26g479qkr6rrglx9ljdxnpzd5ll1sf2v08skghrdjjb8jcx"; }
|
||||
{ url = "https://openmodelica.org/git/ThermoSysPro.git"; rev = "51e7ea2d2e121ee640e7897335c294923f8eaeb0"; sha256="0l11mzjkaxndsqrnnr0z7qvk08svv229119qkm81yb53ich9wnyw"; }
|
||||
{ url = "https://github.com/modelica/VehicleInterfaces.git"; rev = "ad956a35643d53e207ee126d67ea1f3f38337a39"; sha256="0g90cqwjpi06gn7vca5kqnz56im76s2hrdqjhsj2bl43rza8mhr0"; }
|
||||
{ url = "https://github.com/modelica-3rdparty/WasteWater.git"; rev = "90ff44ac791ba5ed98444c8597efbd2a2af01cad"; sha256="1icrn0y389rhxmf6i0mnsfgw9v9j5innpkz3q069rfm2ji268b12"; }
|
||||
{ url = "https://github.com/xogeny/XogenyTest.git"; rev = "9b98981e8ff0f440dd319d1a806e1fd2f0ab3436"; sha256="18glaxrlxfml26w7ljlf0yj3ah1fnhpbg01py28nplsgnrfwfwqj"; }
|
||||
{ url = "https://github.com/modelica-3rdparty/msgpack-modelica.git"; rev = "6ce2ca600c4902038c0f20b43ed442f1ee204310"; sha256="01x5a9y11yf62sc0j2y49yxwm24imj2lfl3z5mwvi9038gwn0lkx"; }
|
||||
{ url = "https://github.com/modelica-3rdparty/netCDF-DataReader.git"; rev = "3d2cc8272abfbc4b667d8868f851bf3e11c6f00e"; sha256="194810a4rn0flxgirrlnxsbxarnm97309dkp1w7nva9zv1q3wj7h"; }
|
||||
{ url = "https://github.com/joewa/open-bldc-modelica.git"; rev = "7817cd703b88fc1f433269d32c31e75eb50a21c6"; sha256="1plkxkx51f9yi99ysarmx2ymldizvyr0m66k996y5lj5h81jv8a8"; }
|
||||
]
|
@ -0,0 +1,5 @@
|
||||
[
|
||||
{ url = "https://svn.modelica.org/projects/Modelica_ElectricalSystems/InstantaneousSymmetricalComponents"; rev = "7978"; sha256="0f100c7bz4ai3ryhpkbbszw8z6mykvg40p03ic92n2qq58wjk37z"; }
|
||||
{ url = "https://svn.modelica.org/projects/Modelica_EmbeddedSystems/trunk/Modelica_StateGraph2"; rev = "8121"; sha256="1cys57nc1yzkr5admc139qs5pa48rj3g69pb3j3s9xcmpd483hzp"; }
|
||||
{ url = "https://svn.modelica.org/projects/Modelica_ElectricalSystems/Modelica_PowerFlow/trunk"; rev = "3174"; sha256="0yviw1b8psn8vfyl4q1naylak3lcqi2q1bqplqg3gg9iw4aiymxl"; }
|
||||
]
|
6
pkgs/applications/science/misc/openmodelica/src-main.nix
Normal file
6
pkgs/applications/science/misc/openmodelica/src-main.nix
Normal file
@ -0,0 +1,6 @@
|
||||
{
|
||||
url = "https://openmodelica.org/git-readonly/OpenModelica.git";
|
||||
fetchSubmodules = true;
|
||||
rev = "8c5d48eb31a638d5220621b20377bfe6f9e9535e";
|
||||
sha256 = "15r0qpvnsb9a7nw3bh5n9r770ngd7p5py0ld2jy5mc4llaslkpa5";
|
||||
}
|
64
pkgs/applications/science/misc/openmodelica/update-src-libs-git.sh
Executable file
64
pkgs/applications/science/misc/openmodelica/update-src-libs-git.sh
Executable file
@ -0,0 +1,64 @@
|
||||
#!/bin/sh
|
||||
|
||||
CWD=`pwd`
|
||||
|
||||
chko() { (
|
||||
T=`mktemp -d`
|
||||
trap "rm -rf $T" EXIT INT PIPE
|
||||
cd $T
|
||||
cat >check.nix <<EOF
|
||||
with import <nixpkgs> {};
|
||||
fetchgit `cat $CWD/src-main.nix`
|
||||
EOF
|
||||
nix-build check.nix
|
||||
cat result/libraries/Makefile.libs
|
||||
) }
|
||||
|
||||
getsha256() { (
|
||||
T=`mktemp -d`
|
||||
trap "rm -rf $T" EXIT INT PIPE
|
||||
cd $T
|
||||
|
||||
L=`echo $2 | wc -c`
|
||||
if expr $L '<' 10 >/dev/null; then
|
||||
T=`echo $2 | sed 's@"\(.*\)"@"refs/tags/\1"@'`
|
||||
cat >check.nix <<EOF
|
||||
with import <nixpkgs> {};
|
||||
fetchgit {
|
||||
url = $1;
|
||||
rev = $T;
|
||||
sha256 = "0000000000000000000000000000000000000000000000000000";
|
||||
}
|
||||
EOF
|
||||
SHA=`nix-build check.nix 2>&1 | sed -n 's/.*instead has ‘\(.*\)’.*/\1/g p'`
|
||||
echo "{ url = $1; rev = $T; sha256=\"$SHA\"; }"
|
||||
else
|
||||
cat >check.nix <<EOF
|
||||
with import <nixpkgs> {};
|
||||
fetchgit {
|
||||
url = $1;
|
||||
rev = $2;
|
||||
sha256 = "0000000000000000000000000000000000000000000000000000";
|
||||
}
|
||||
EOF
|
||||
SHA=`nix-build check.nix 2>&1 | sed -n 's/.*instead has ‘\(.*\)’.*/\1/g p'`
|
||||
echo "{ url = $1; rev = $2; sha256=\"$SHA\"; }"
|
||||
fi
|
||||
|
||||
# nix-build check.nix
|
||||
) }
|
||||
|
||||
OUT=src-libs-git.nix
|
||||
|
||||
echo '[' > $OUT
|
||||
|
||||
chko |
|
||||
grep checkout-git.sh |
|
||||
tr \' \" |
|
||||
while read NM TGT URL BR REV ; do
|
||||
echo Trying $TGT $URL $REV >&2
|
||||
getsha256 $URL $REV >> $OUT || exit 1
|
||||
done
|
||||
|
||||
echo ']' >> $OUT
|
||||
|
50
pkgs/applications/science/misc/openmodelica/update-src-libs-svn.sh
Executable file
50
pkgs/applications/science/misc/openmodelica/update-src-libs-svn.sh
Executable file
@ -0,0 +1,50 @@
|
||||
#!/bin/sh
|
||||
|
||||
CWD=`pwd`
|
||||
|
||||
chko() { (
|
||||
T=`mktemp -d`
|
||||
trap "rm -rf $T" EXIT INT PIPE
|
||||
cd $T
|
||||
cat >check.nix <<EOF
|
||||
with import <nixpkgs> {};
|
||||
fetchgit `cat $CWD/src-main.nix`
|
||||
EOF
|
||||
nix-build check.nix
|
||||
cat result/libraries/Makefile.libs
|
||||
) }
|
||||
|
||||
getsha256() { (
|
||||
T=`mktemp -d`
|
||||
trap "rm -rf $T" EXIT INT PIPE
|
||||
cd $T
|
||||
|
||||
L=`echo $2 | wc -c`
|
||||
cat >check.nix <<EOF
|
||||
with import <nixpkgs> {};
|
||||
fetchsvn {
|
||||
url = $1;
|
||||
rev = $2;
|
||||
sha256 = "0000000000000000000000000000000000000000000000000000";
|
||||
}
|
||||
EOF
|
||||
SHA=`nix-build check.nix 2>&1 | sed -n 's/.*instead has ‘\(.*\)’.*/\1/g p'`
|
||||
echo "{ url = $1; rev = $2; sha256=\"$SHA\"; }"
|
||||
|
||||
# nix-build check.nix
|
||||
) }
|
||||
|
||||
OUT=src-libs-svn.nix
|
||||
|
||||
echo '[' > $OUT
|
||||
|
||||
chko |
|
||||
grep checkout-svn.sh |
|
||||
tr \' \" |
|
||||
while read NM TGT URL REV ; do
|
||||
echo Trying $TGT $URL $REV >&2
|
||||
getsha256 $URL $REV >> $OUT || exit 1
|
||||
done
|
||||
|
||||
echo ']' >> $OUT
|
||||
|
@ -1,12 +1,11 @@
|
||||
{ stdenv, fetchurl, itstool, buildPythonPackage, python27, intltool, makeWrapper
|
||||
, libxml2, pygobject3, gobjectIntrospection, gtk3, gnome3, pycairo, cairo
|
||||
, hicolor_icon_theme
|
||||
}:
|
||||
|
||||
|
||||
let
|
||||
minor = "3.12";
|
||||
version = "${minor}.3";
|
||||
minor = "3.14";
|
||||
version = "${minor}.0";
|
||||
in
|
||||
|
||||
buildPythonPackage rec {
|
||||
@ -15,13 +14,13 @@ buildPythonPackage rec {
|
||||
|
||||
src = fetchurl {
|
||||
url = "mirror://gnome/sources/meld/${minor}/meld-${version}.tar.xz";
|
||||
sha256 = "1zg6qhm53j0vxmjj3pcj2hwi8c12dxzmlh98zks0jnwhqv2p4dfv";
|
||||
sha256 = "0g0h9wdr6nqdalqkz4r037569apw253cklwr17x0zjc7nwv2j3j3";
|
||||
};
|
||||
|
||||
buildInputs = [
|
||||
python27 intltool makeWrapper itstool libxml2
|
||||
gnome3.gtksourceview gnome3.gsettings_desktop_schemas pycairo cairo
|
||||
hicolor_icon_theme
|
||||
gnome3.defaultIconTheme
|
||||
];
|
||||
propagatedBuildInputs = [ gobjectIntrospection pygobject3 gtk3 ];
|
||||
|
||||
@ -41,18 +40,19 @@ buildPythonPackage rec {
|
||||
preFixup = ''
|
||||
wrapProgram $out/bin/meld \
|
||||
--prefix GI_TYPELIB_PATH : "$GI_TYPELIB_PATH" \
|
||||
--prefix XDG_DATA_DIRS : "$GSETTINGS_SCHEMAS_PATH:$out/share"
|
||||
--prefix XDG_DATA_DIRS : "$XDG_ICON_DIRS:$GSETTINGS_SCHEMAS_PATH:$out/share" \
|
||||
--prefix GIO_EXTRA_MODULES : "${gnome3.dconf}/lib/gio/modules"
|
||||
'';
|
||||
|
||||
patchPhase = ''
|
||||
sed -e 's,#!.*,#!${python27}/bin/python27,' -i bin/meld
|
||||
patchShebangs bin/meld
|
||||
'';
|
||||
|
||||
pythonPath = [ gtk3 ];
|
||||
|
||||
meta = with stdenv.lib; {
|
||||
description = "Visual diff and merge tool";
|
||||
homepage = http://meld.sourceforge.net;
|
||||
homepage = http://meldmerge.org/;
|
||||
license = stdenv.lib.licenses.gpl2;
|
||||
platforms = platforms.linux ++ stdenv.lib.platforms.darwin;
|
||||
};
|
||||
|
@ -1,40 +1,44 @@
|
||||
{ stdenv, fetchurl, perl, perlPackages }:
|
||||
{ stdenv, fetchurl, makeWrapper, perl, perlPackages }:
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
version = "1.9";
|
||||
let version = "2.0"; in
|
||||
stdenv.mkDerivation {
|
||||
name = "remotebox-${version}";
|
||||
|
||||
src = fetchurl {
|
||||
url = "${meta.homepage}/downloads/RemoteBox-${version}.tar.bz2";
|
||||
sha256 = "0vsfz2qmha9nz60fyksgqqyrw4lz9z2d5isnwqc6afn8z3i1qmkp";
|
||||
url = "http://remotebox.knobgoblin.org.uk/downloads/RemoteBox-${version}.tar.bz2";
|
||||
sha256 = "0c73i53wdjd2m2sdgq3r3xp30irxh5z5rak2rk79yb686s6bv759";
|
||||
};
|
||||
|
||||
buildInputs = [ perl perlPackages.Gtk2 perlPackages.SOAPLite ];
|
||||
buildInputs = with perlPackages; [ perl Glib Gtk2 Pango SOAPLite ];
|
||||
nativeBuildInputs = [ makeWrapper ];
|
||||
|
||||
installPhase = ''
|
||||
mkdir -p $out/bin
|
||||
cp -a docs/ share/ $out
|
||||
mkdir -pv $out/bin
|
||||
|
||||
substituteInPlace remotebox --replace "\$Bin/" "\$Bin/../"
|
||||
install -t $out/bin remotebox
|
||||
install -v -t $out/bin remotebox
|
||||
wrapProgram $out/bin/remotebox --prefix PERL5LIB : $PERL5LIB
|
||||
|
||||
mkdir -p $out/share/applications
|
||||
cp -p packagers-readme/*.desktop $out/share/applications
|
||||
cp -av docs/ share/ $out
|
||||
|
||||
mkdir -pv $out/share/applications
|
||||
cp -pv packagers-readme/*.desktop $out/share/applications
|
||||
'';
|
||||
|
||||
meta = with stdenv.lib; {
|
||||
inherit version;
|
||||
description = "VirtualBox client with remote management";
|
||||
homepage = http://remotebox.knobgoblin.org.uk/;
|
||||
license = licenses.gpl2Plus;
|
||||
longDescription = ''
|
||||
VirtualBox is traditionally considered to be a virtualization solution
|
||||
aimed at the desktop. While it is certainly possible to install
|
||||
aimed at the desktop. While it is certainly possible to install
|
||||
VirtualBox on a server, it offers few remote management features beyond
|
||||
using the vboxmanage command line.
|
||||
RemoteBox aims to fill this gap by providing a graphical VirtualBox
|
||||
client which is able to manage a VirtualBox server installation.
|
||||
'';
|
||||
maintainers = with maintainers; [ nckx ];
|
||||
platforms = with platforms; all;
|
||||
platforms = platforms.all;
|
||||
};
|
||||
}
|
||||
|
@ -98,7 +98,10 @@ in stdenv.mkDerivation {
|
||||
src/apps/adpctl/VBoxNetAdpCtl.cpp
|
||||
'';
|
||||
|
||||
# first line: ugly hack, and it isn't yet clear why it's a problem
|
||||
configurePhase = ''
|
||||
NIX_CFLAGS_COMPILE=$(echo "$NIX_CFLAGS_COMPILE" | sed 's,\-isystem ${stdenv.cc.libc}/include,,g')
|
||||
|
||||
cat >> LocalConfig.kmk <<LOCAL_CONFIG
|
||||
VBOX_WITH_TESTCASES :=
|
||||
VBOX_WITH_TESTSUITE :=
|
||||
|
@ -50,6 +50,9 @@ stdenv.mkDerivation rec {
|
||||
--prefix PYTHONPATH : "$out/lib/${python.libPrefix}/site-packages"
|
||||
'';
|
||||
|
||||
# automatic moving fails, perhaps due to having two $out/lib*/pkgconfig
|
||||
dontMoveLib64 = true;
|
||||
|
||||
meta = {
|
||||
description = "Compoziting window manager";
|
||||
homepage = "http://launchpad.net/compiz/";
|
||||
|
@ -44,7 +44,7 @@ in stdenv.mkDerivation (args // {
|
||||
export CARGO_HOME="$(realpath deps)"
|
||||
|
||||
# Let's find out which $indexHash cargo uses for file:///dev/null
|
||||
(cd $sourceRoot && cargo fetch &>/dev/null)
|
||||
(cd $sourceRoot && cargo fetch &>/dev/null) || true
|
||||
cd deps
|
||||
indexHash="$(basename $(echo registry/index/*))"
|
||||
|
||||
|
@ -1,12 +1,12 @@
|
||||
{ stdenv, fetchurl }:
|
||||
|
||||
let version = "4.00"; in
|
||||
let version = "4.01"; in
|
||||
stdenv.mkDerivation rec {
|
||||
name = "man-pages-${version}";
|
||||
|
||||
src = fetchurl {
|
||||
url = "mirror://kernel/linux/docs/man-pages/${name}.tar.xz";
|
||||
sha256 = "18zb1g12s15sanffh0sykmmyx0j176pp7q1xxs0gk0imgvmn8hj4";
|
||||
sha256 = "116jp2rnsdlnb3cwnbfp0g053frcmchndwyrj714swl1lgabb56i";
|
||||
};
|
||||
|
||||
makeFlags = "MANDIR=$(out)/share/man";
|
||||
|
@ -30,13 +30,11 @@ stdenv.mkDerivation rec {
|
||||
ln -s ${unicodeData} resources/UnicodeData.txt
|
||||
ln -s ${blocks} resources/Blocks.txt
|
||||
'';
|
||||
installPhase = ''
|
||||
installPhase = ''
|
||||
mkdir -p $out/share/fonts/truetype
|
||||
for i in $(find build -name '*.ttf'); do
|
||||
cp $i $out/share/fonts/truetype;
|
||||
for i in $(find build -name '*.ttf'); do
|
||||
cp $i $out/share/fonts/truetype;
|
||||
done;
|
||||
mkdir -p $out/share/dejavu-fonts
|
||||
cp -r build/* $out/share/dejavu-fonts
|
||||
'';
|
||||
}
|
||||
|
||||
|
||||
|
@ -5,7 +5,7 @@ stdenv.mkDerivation rec {
|
||||
|
||||
src = fetchurl {
|
||||
url = "http://fortawesome.github.io/Font-Awesome/assets/${name}.zip";
|
||||
sha256 = "018syfvkj01jym60mpys93xv84ky9l2x90gprnm9npzwkw5169jc";
|
||||
sha256 = "0wg9q6mq026jjw1bsyj9b5dgba7bb4h7i9xiwgsfckd412xpsbzd";
|
||||
};
|
||||
|
||||
buildCommand = ''
|
||||
|
@ -2,11 +2,11 @@
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
name = "pecita-${version}";
|
||||
version = "1.1";
|
||||
version = "5.0";
|
||||
|
||||
src = fetchurl {
|
||||
url = "http://pecita.eu/b/Pecita.otf";
|
||||
sha256 = "07krzpbmc5yhfbf3aklv1f150i2g1spaan9girmg3189jsn6qw6p";
|
||||
sha256 = "1smf1mqciwavf29lwgzjam3xb37bwxp6wf6na4c9xv6islidsrd9";
|
||||
};
|
||||
|
||||
phases = ["installPhase"];
|
||||
|
@ -1,29 +1,35 @@
|
||||
{ stdenv, fetchurl }:
|
||||
|
||||
let
|
||||
fetchDB = name: sha256: fetchurl {
|
||||
inherit sha256;
|
||||
url = "https://geolite.maxmind.com/download/geoip/database/${name}";
|
||||
fetchDB = src: name: sha256: fetchurl {
|
||||
inherit name sha256;
|
||||
url = "https://geolite.maxmind.com/download/geoip/database/${src}";
|
||||
};
|
||||
|
||||
# Annoyingly, these files are updated without a change in URL. This means that
|
||||
# builds will start failing every month or so, until the hashes are updated.
|
||||
version = "2015-07-08";
|
||||
version = "2015-07-25";
|
||||
in
|
||||
stdenv.mkDerivation {
|
||||
name = "geolite-legacy-${version}";
|
||||
|
||||
srcGeoIP = fetchDB "GeoLiteCountry/GeoIP.dat.gz"
|
||||
"0c6jcmlgkybsqiwqwa21igjazf95dj38mn516cqqqfdg7ciaj1d5";
|
||||
srcGeoIPv6 = fetchDB "GeoIPv6.dat.gz"
|
||||
"1vi82p41vas18yp17yk236pn1xamsi9662aav79fa0hm43i3ydx3";
|
||||
srcGeoLiteCity = fetchDB "GeoLiteCity.dat.xz"
|
||||
srcGeoIP = fetchDB
|
||||
"GeoLiteCountry/GeoIP.dat.gz" "GeoIP.dat.gz"
|
||||
"1yacbh8qcakmnpipscdh99vmsm0874g2gkq8gp8hjgkgi0zvcsnz";
|
||||
srcGeoIPv6 = fetchDB
|
||||
"GeoIPv6.dat.gz" "GeoIPv6.dat.gz"
|
||||
"038ll8142svhyffxxrg0isrr16rjbz0cnkhd14mck77f1v8z01y5";
|
||||
srcGeoLiteCity = fetchDB
|
||||
"GeoLiteCity.dat.xz" "GeoIPCity.dat.xz"
|
||||
"0x5ihg7qikzc195nix9r0izvbdnj4hy4rznvaxk56rf8yqcigdyv";
|
||||
srcGeoLiteCityv6 = fetchDB "GeoLiteCityv6-beta/GeoLiteCityv6.dat.gz"
|
||||
"0xjzg76vdsayxyy1yyw64w781vad4c9nbhw61slh2qmazdr360g9";
|
||||
srcGeoIPASNum = fetchDB "asnum/GeoIPASNum.dat.gz"
|
||||
srcGeoLiteCityv6 = fetchDB
|
||||
"GeoLiteCityv6-beta/GeoLiteCityv6.dat.gz" "GeoIPCityv6.dat.gz"
|
||||
"0j5dq06pjrh6d94wczsg6qdys4v164nvp2a7qqrg8w4knh94qp6n";
|
||||
srcGeoIPASNum = fetchDB
|
||||
"asnum/GeoIPASNum.dat.gz" "GeoIPASNum.dat.gz"
|
||||
"18kxswr0b5klimfpj1zhxipvyvrljvcywic4jc1ggcr44lf4hj9w";
|
||||
srcGeoIPASNumv6 = fetchDB "asnum/GeoIPASNumv6.dat.gz"
|
||||
srcGeoIPASNumv6 = fetchDB
|
||||
"asnum/GeoIPASNumv6.dat.gz" "GeoIPASNumv6.dat.gz"
|
||||
"0asnmmirridiy57zm0kccb7g8h7ndliswfv3yfk7zm7dk98njnxs";
|
||||
|
||||
meta = with stdenv.lib; {
|
||||
|
@ -20,18 +20,20 @@ let
|
||||
gtk3 # for gtk-update-icon-cache
|
||||
glib_networking gvfs dconf gnome-backgrounds gnome_control_center
|
||||
gnome-menus gnome_settings_daemon gnome_shell
|
||||
gnome_themes_standard defaultIconTheme
|
||||
gnome_themes_standard defaultIconTheme gnome-shell-extensions
|
||||
];
|
||||
|
||||
optionalPackages = with gnome3; [ baobab empathy eog epiphany evince
|
||||
gucharmap nautilus totem vino yelp gnome-bluetooth
|
||||
gnome-calculator gnome-contacts gnome-font-viewer gnome-screenshot
|
||||
gnome-shell-extensions gnome-system-log gnome-system-monitor
|
||||
gnome-system-log gnome-system-monitor
|
||||
gnome_terminal gnome-user-docs bijiben evolution file-roller gedit
|
||||
gnome-clocks gnome-music gnome-tweak-tool gnome-photos
|
||||
nautilus-sendto dconf-editor vinagre
|
||||
];
|
||||
|
||||
gamesPackages = with gnome3; [ swell-foop lightsoff iagno ];
|
||||
|
||||
inherit (pkgs) libsoup glib gtk2 webkitgtk24x gtk3 gtkmm3 libcanberra;
|
||||
inherit (pkgs.gnome2) ORBit2;
|
||||
orbit = ORBit2;
|
||||
@ -279,6 +281,14 @@ let
|
||||
|
||||
gdl = callPackage ./devtools/gdl { };
|
||||
|
||||
#### Games
|
||||
|
||||
iagno = callPackage ./games/iagno { };
|
||||
|
||||
lightsoff = callPackage ./games/lightsoff { };
|
||||
|
||||
swell-foop = callPackage ./games/swell-foop { };
|
||||
|
||||
#### Misc -- other packages on http://ftp.gnome.org/pub/GNOME/sources/
|
||||
|
||||
california = callPackage ./misc/california { };
|
||||
|
31
pkgs/desktops/gnome-3/3.16/games/iagno/default.nix
Normal file
31
pkgs/desktops/gnome-3/3.16/games/iagno/default.nix
Normal file
@ -0,0 +1,31 @@
|
||||
{ stdenv, fetchurl, pkgconfig, gtk3, gnome3, gdk_pixbuf, librsvg, makeWrapper
|
||||
, intltool, itstool, libcanberra_gtk3, libxml2 }:
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
name = "iagno-${gnome3.version}.1";
|
||||
|
||||
src = fetchurl {
|
||||
url = "mirror://gnome/sources/iagno/${gnome3.version}/${name}.tar.xz";
|
||||
sha256 = "0pg4sx277idfab3qxxn8c7r6gpdsdw5br0x7fxhxqascvvx8my1k";
|
||||
};
|
||||
|
||||
buildInputs = [ pkgconfig gtk3 gnome3.defaultIconTheme gdk_pixbuf librsvg
|
||||
libxml2 libcanberra_gtk3 makeWrapper itstool intltool ];
|
||||
|
||||
enableParallelBuilding = true;
|
||||
|
||||
preFixup = ''
|
||||
wrapProgram "$out/bin/iagno" \
|
||||
--set GDK_PIXBUF_MODULE_FILE "$GDK_PIXBUF_MODULE_FILE" \
|
||||
--prefix XDG_DATA_DIRS : "$XDG_ICON_DIRS:$GSETTINGS_SCHEMAS_PATH:$out/share" \
|
||||
--prefix GIO_EXTRA_MODULES : "${gnome3.dconf}/lib/gio/modules"
|
||||
'';
|
||||
|
||||
meta = with stdenv.lib; {
|
||||
homepage = https://wiki.gnome.org/Apps/Iagno;
|
||||
description = "Computer version of the game Reversi, more popularly called Othello";
|
||||
maintainers = with maintainers; [ lethalman ];
|
||||
license = licenses.gpl2;
|
||||
platforms = platforms.linux;
|
||||
};
|
||||
}
|
31
pkgs/desktops/gnome-3/3.16/games/lightsoff/default.nix
Normal file
31
pkgs/desktops/gnome-3/3.16/games/lightsoff/default.nix
Normal file
@ -0,0 +1,31 @@
|
||||
{ stdenv, fetchurl, pkgconfig, gtk3, gnome3, gdk_pixbuf, librsvg, makeWrapper
|
||||
, intltool, itstool, clutter, clutter_gtk, libxml2 }:
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
name = "lightsoff-${gnome3.version}.1.1";
|
||||
|
||||
src = fetchurl {
|
||||
url = "mirror://gnome/sources/lightsoff/${gnome3.version}/${name}.tar.xz";
|
||||
sha256 = "00a2jv7wr6fxrzk7avwa0wspz429ad7ri7v95jv31nqn5q73y4c0";
|
||||
};
|
||||
|
||||
buildInputs = [ pkgconfig gtk3 gnome3.defaultIconTheme gdk_pixbuf librsvg
|
||||
libxml2 clutter clutter_gtk makeWrapper itstool intltool ];
|
||||
|
||||
enableParallelBuilding = true;
|
||||
|
||||
preFixup = ''
|
||||
wrapProgram "$out/bin/lightsoff" \
|
||||
--set GDK_PIXBUF_MODULE_FILE "$GDK_PIXBUF_MODULE_FILE" \
|
||||
--prefix XDG_DATA_DIRS : "$XDG_ICON_DIRS:$GSETTINGS_SCHEMAS_PATH:$out/share" \
|
||||
--prefix GIO_EXTRA_MODULES : "${gnome3.dconf}/lib/gio/modules"
|
||||
'';
|
||||
|
||||
meta = with stdenv.lib; {
|
||||
homepage = https://wiki.gnome.org/Apps/Lightsoff;
|
||||
description = "Puzzle game, where the objective is to turn off all of the tiles on the board";
|
||||
maintainers = with maintainers; [ lethalman ];
|
||||
license = licenses.gpl2;
|
||||
platforms = platforms.linux;
|
||||
};
|
||||
}
|
31
pkgs/desktops/gnome-3/3.16/games/swell-foop/default.nix
Normal file
31
pkgs/desktops/gnome-3/3.16/games/swell-foop/default.nix
Normal file
@ -0,0 +1,31 @@
|
||||
{ stdenv, fetchurl, pkgconfig, gtk3, gnome3, gdk_pixbuf, librsvg, makeWrapper
|
||||
, clutter, clutter_gtk, intltool, itstool, libxml2 }:
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
name = "swell-foop-${gnome3.version}.1";
|
||||
|
||||
src = fetchurl {
|
||||
url = "mirror://gnome/sources/swell-foop/${gnome3.version}/${name}.tar.xz";
|
||||
sha256 = "0bhjmjcjsqdb89shs0ygi6ps5hb3lk8nhrbjnsjk4clfqbw0jzwf";
|
||||
};
|
||||
|
||||
buildInputs = [ pkgconfig gtk3 gnome3.defaultIconTheme gdk_pixbuf librsvg
|
||||
makeWrapper itstool intltool clutter clutter_gtk libxml2 ];
|
||||
|
||||
enableParallelBuilding = true;
|
||||
|
||||
preFixup = ''
|
||||
wrapProgram "$out/bin/swell-foop" \
|
||||
--set GDK_PIXBUF_MODULE_FILE "$GDK_PIXBUF_MODULE_FILE" \
|
||||
--prefix XDG_DATA_DIRS : "$XDG_ICON_DIRS:$GSETTINGS_SCHEMAS_PATH:$out/share" \
|
||||
--prefix GIO_EXTRA_MODULES : "${gnome3.dconf}/lib/gio/modules"
|
||||
'';
|
||||
|
||||
meta = with stdenv.lib; {
|
||||
homepage = "https://wiki.gnome.org/Apps/Swell%20Foop";
|
||||
description = "Puzzle game, previously known as Same GNOME";
|
||||
maintainers = with maintainers; [ lethalman ];
|
||||
license = licenses.gpl2;
|
||||
platforms = platforms.linux;
|
||||
};
|
||||
}
|
@ -61,7 +61,10 @@ let version = "4.9.3";
|
||||
# Whether building a cross-compiler for GNU/Hurd.
|
||||
crossGNU = cross != null && cross.config == "i586-pc-gnu";
|
||||
|
||||
enableParallelBuilding = true;
|
||||
# Builds of gfortran have failed with strange errors that we cannot reproduce
|
||||
# (http://hydra.nixos.org/build/23951123). Our best guess is that the build
|
||||
# system has bugs that are exposed by compiling with multiple threads.
|
||||
enableParallelBuilding = !langFortran;
|
||||
|
||||
patches = [ ]
|
||||
++ optional enableParallelBuilding ../parallel-bconfig.patch
|
||||
|
@ -1,9 +1,9 @@
|
||||
{ stdenv, fetchgit, ocaml, zlib, neko }:
|
||||
{ stdenv, fetchgit, ocaml, zlib, neko, camlp4 }:
|
||||
|
||||
stdenv.mkDerivation {
|
||||
name = "haxe-3.1.3";
|
||||
|
||||
buildInputs = [ocaml zlib neko];
|
||||
buildInputs = [ocaml zlib neko camlp4];
|
||||
|
||||
src = fetchgit {
|
||||
url = "https://github.com/HaxeFoundation/haxe.git";
|
||||
|
@ -1,4 +1,4 @@
|
||||
{ pkgs, newScope, stdenv, isl, fetchurl, overrideCC, wrapCC }:
|
||||
{ newScope, stdenv, isl, fetchurl, overrideCC, wrapCC }:
|
||||
let
|
||||
callPackage = newScope (self // { inherit stdenv isl version fetch; });
|
||||
|
||||
|
@ -1,16 +1,30 @@
|
||||
{stdenv, fetchurl, ocaml, findlib, menhir, yojson, ulex, pprint, fix, functory}:
|
||||
{ stdenv, fetchFromGitHub, ocaml, findlib, menhir, yojson, ulex, pprint, fix, functory }:
|
||||
|
||||
let
|
||||
check-ocaml-version = with stdenv.lib; versionAtLeast (getVersion ocaml);
|
||||
in
|
||||
|
||||
assert check-ocaml-version "4";
|
||||
|
||||
stdenv.mkDerivation {
|
||||
|
||||
name = "mezzo-0.0.m8";
|
||||
|
||||
src = fetchurl {
|
||||
url = https://github.com/protz/mezzo/archive/m8.tar.gz;
|
||||
sha256 = "17mfapgqp8ssa5x9blv72zg9l561zbiwv3ikwi6nl9dd36lwkkc6";
|
||||
src = fetchFromGitHub {
|
||||
owner = "protz";
|
||||
repo = "mezzo";
|
||||
rev = "m8";
|
||||
sha256 = "0yck5r6di0935s3iy2mm9538jkf77ssr789qb06ms7sivd7g3ip6";
|
||||
};
|
||||
|
||||
buildInputs = [ ocaml findlib yojson menhir ulex pprint fix functory ];
|
||||
|
||||
# Sets warning 3 as non-fatal
|
||||
prePatch = stdenv.lib.optionalString (check-ocaml-version "4.02") ''
|
||||
substituteInPlace myocamlbuild.pre.ml \
|
||||
--replace '@1..3' '@1..2+3'
|
||||
'';
|
||||
|
||||
createFindlibDestdir = true;
|
||||
|
||||
postInstall = ''
|
||||
|
@ -1,21 +1,39 @@
|
||||
{ fetchurl, stdenv, guile, guile_lib, gwrap
|
||||
{ fetchgit, stdenv, guile, guile_lib, gwrap
|
||||
, pkgconfig, gconf, glib, gnome_vfs, gtk
|
||||
, libglade, libgnome, libgnomecanvas, libgnomeui, pango, guileCairo }:
|
||||
, libglade, libgnome, libgnomecanvas, libgnomeui
|
||||
, pango, guileCairo, autoconf, automake, texinfo }:
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
name = "guile-gnome-platform-2.16.1";
|
||||
name = "guile-gnome-platform-20150123";
|
||||
|
||||
src = fetchurl {
|
||||
url = "mirror://gnu/guile-gnome/guile-gnome-platform/${name}.tar.gz";
|
||||
sha256 = "0yy5f4c78jlakxi2bwgh3knc2szw26hg68xikyaza2iim39mc22c";
|
||||
src = fetchgit {
|
||||
url = "git://git.sv.gnu.org/guile-gnome.git";
|
||||
rev = "0fcbe69797b9501b8f1283a78eb92bf43b08d080";
|
||||
sha256 = "1vqlzb356ggmp8jh833gksg59c53vbmmhycbcf52qj0fdz09mpb5";
|
||||
};
|
||||
|
||||
buildInputs =
|
||||
[ guile gwrap
|
||||
pkgconfig gconf glib gnome_vfs gtk libglade libgnome libgnomecanvas
|
||||
libgnomeui pango guileCairo
|
||||
]
|
||||
++ stdenv.lib.optional doCheck guile_lib;
|
||||
buildInputs = [
|
||||
autoconf
|
||||
automake
|
||||
texinfo
|
||||
guile
|
||||
gwrap
|
||||
pkgconfig
|
||||
gconf
|
||||
glib
|
||||
gnome_vfs
|
||||
gtk
|
||||
libglade
|
||||
libgnome
|
||||
libgnomecanvas
|
||||
libgnomeui
|
||||
pango
|
||||
guileCairo
|
||||
] ++ stdenv.lib.optional doCheck guile_lib;
|
||||
|
||||
preConfigure = ''
|
||||
./autogen.sh
|
||||
'';
|
||||
|
||||
# The test suite tries to open an X display, which fails.
|
||||
doCheck = false;
|
||||
@ -35,6 +53,6 @@ stdenv.mkDerivation rec {
|
||||
|
||||
license = stdenv.lib.licenses.gpl2Plus;
|
||||
|
||||
maintainers = [ ];
|
||||
maintainers = [ stdenv.lib.maintainers.taktoa ];
|
||||
};
|
||||
}
|
||||
|
@ -221,7 +221,7 @@ self: super: {
|
||||
});
|
||||
|
||||
# Does not compile: "fatal error: ieee-flpt.h: No such file or directory"
|
||||
base_4_8_0_0 = markBroken super.base_4_8_0_0;
|
||||
base_4_8_1_0 = markBroken super.base_4_8_1_0;
|
||||
|
||||
# Obsolete: https://github.com/massysett/prednote/issues/1.
|
||||
prednote-test = markBrokenVersion "0.26.0.4" super.prednote-test;
|
||||
@ -825,6 +825,7 @@ self: super: {
|
||||
|
||||
# Won't compile with recent versions of QuickCheck.
|
||||
testpack = markBroken super.testpack;
|
||||
inilist = dontCheck super.inilist;
|
||||
MissingH = dontCheck super.MissingH;
|
||||
|
||||
# Obsolete for GHC versions after GHC 6.10.x.
|
||||
@ -869,6 +870,7 @@ self: super: {
|
||||
# This package can't be built on non-Windows systems.
|
||||
Win32 = overrideCabal super.Win32 (drv: { broken = !pkgs.stdenv.isCygwin; });
|
||||
inline-c-win32 = dontDistribute super.inline-c-win32;
|
||||
Southpaw = dontDistribute super.Southpaw;
|
||||
|
||||
# Doesn't work with recent versions of mtl.
|
||||
cron-compat = markBroken super.cron-compat;
|
||||
@ -893,4 +895,5 @@ self: super: {
|
||||
|
||||
# https://ghc.haskell.org/trac/ghc/ticket/9825
|
||||
vimus = overrideCabal super.vimus (drv: { broken = pkgs.stdenv.isLinux && pkgs.stdenv.isi686; });
|
||||
|
||||
}
|
||||
|
File diff suppressed because it is too large
Load Diff
@ -1,5 +1,5 @@
|
||||
{ stdenv, fetchurl, pkgconfig, fontconfig, autoreconfHook
|
||||
, withJava ? true, jdk ? null, ant ? null
|
||||
, withJava ? false, jdk ? null, ant ? null
|
||||
, withAACS ? false, libaacs ? null
|
||||
, withBDplus ? false, libbdplus ? null
|
||||
, withMetadata ? true, libxml2 ? null
|
||||
|
@ -1,4 +1,4 @@
|
||||
{ stdenv, fetchurl, pkgconfig, imagemagick }:
|
||||
{ stdenv, fetchurl, pkgconfig }:
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
name = "libdmtx-0.7.4";
|
||||
@ -10,8 +10,6 @@ stdenv.mkDerivation rec {
|
||||
|
||||
nativeBuildInputs = [ pkgconfig ];
|
||||
|
||||
propagatedBuildInputs = [ imagemagick ];
|
||||
|
||||
meta = {
|
||||
description = "An open source software for reading and writing Data Matrix barcodes";
|
||||
homepage = http://libdmtx.org;
|
||||
|
@ -2,7 +2,7 @@
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
name = "libraw-${version}";
|
||||
version = "0.16.1";
|
||||
version = "0.16.0";
|
||||
|
||||
src = fetchurl {
|
||||
url = "http://www.libraw.org/data/LibRaw-${version}.tar.gz";
|
||||
@ -13,7 +13,7 @@ stdenv.mkDerivation rec {
|
||||
|
||||
nativeBuildInputs = [ pkgconfig ];
|
||||
|
||||
meta = {
|
||||
meta = {
|
||||
description = "Library for reading RAW files obtained from digital photo cameras (CRW/CR2, NEF, RAF, DNG, and others)";
|
||||
homepage = http://www.libraw.org/;
|
||||
license = stdenv.lib.licenses.gpl2Plus;
|
||||
|
@ -1,6 +1,6 @@
|
||||
{ stdenv, fetchurl, pkgconfig, glib, gdk_pixbuf, pango, cairo, libxml2, libgsf
|
||||
{ lib, stdenv, fetchurl, pkgconfig, glib, gdk_pixbuf, pango, cairo, libxml2, libgsf
|
||||
, bzip2, libcroco, libintlOrEmpty
|
||||
, gtk3 ? null
|
||||
, withGTK ? false, gtk3 ? null
|
||||
, gobjectIntrospection ? null, enableIntrospection ? false }:
|
||||
|
||||
# no introspection by default, it's too big
|
||||
@ -18,7 +18,7 @@ stdenv.mkDerivation rec {
|
||||
buildInputs = [ libxml2 libgsf bzip2 libcroco pango libintlOrEmpty ]
|
||||
++ stdenv.lib.optional enableIntrospection [ gobjectIntrospection ];
|
||||
|
||||
propagatedBuildInputs = [ glib gdk_pixbuf cairo gtk3 ];
|
||||
propagatedBuildInputs = [ glib gdk_pixbuf cairo ] ++ lib.optional withGTK gtk3;
|
||||
|
||||
nativeBuildInputs = [ pkgconfig ];
|
||||
|
||||
|
@ -3,11 +3,11 @@
|
||||
}:
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
name = "libva-1.5.1";
|
||||
name = "libva-1.6.0";
|
||||
|
||||
src = fetchurl {
|
||||
url = "http://www.freedesktop.org/software/vaapi/releases/libva/${name}.tar.bz2";
|
||||
sha256 = "01d01mm9fgpwzqycmjjcj3in3vvzcibi3f64icsw2sksmmgb4495";
|
||||
sha256 = "0n1l2mlhsvmsbs3qcphl4p6w13jnbv6s3hil8b6fj43a3afdrn9s";
|
||||
};
|
||||
|
||||
buildInputs = [ libX11 libXext pkgconfig libdrm libXfixes wayland libffi mesa ];
|
||||
|
@ -1,13 +1,13 @@
|
||||
{ fetchurl, stdenv, gmpxx, perl, gnum4 }:
|
||||
|
||||
let version = "1.0"; in
|
||||
let version = "1.1"; in
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
name = "ppl-${version}";
|
||||
|
||||
src = fetchurl {
|
||||
url = "http://bugseng.com/products/ppl/download/ftp/releases/${version}/ppl-${version}.tar.bz2";
|
||||
sha256 = "0m0b6dzablci8mlavpsmn5w1v3r46li0wpjwvsybgxx0p1ifjsf1";
|
||||
sha256 = "1vrqhbpyca6sf984cfcwlp8wdnfzj1g7ph9958qdky9978i1nlny";
|
||||
};
|
||||
|
||||
nativeBuildInputs = [ perl gnum4 ];
|
||||
@ -19,7 +19,7 @@ stdenv.mkDerivation rec {
|
||||
"--disable-ppl_lcdd" "--disable-ppl_lpsol" "--disable-ppl_pips"
|
||||
];
|
||||
|
||||
patches = [ ./upstream-based.patch ];
|
||||
patches = [ ./ppl-cstddef.patch /* from Fedora */ ];
|
||||
|
||||
# Beware! It took ~6 hours to compile PPL and run its tests on a 1.2 GHz
|
||||
# x86_64 box. Nevertheless, being a dependency of GCC, it probably ought
|
||||
|
238
pkgs/development/libraries/ppl/ppl-cstddef.patch
Normal file
238
pkgs/development/libraries/ppl/ppl-cstddef.patch
Normal file
@ -0,0 +1,238 @@
|
||||
diff -up ppl-1.1/src/Dense_Row_defs.hh.orig ppl-1.1/src/Dense_Row_defs.hh
|
||||
--- ppl-1.1/src/Dense_Row_defs.hh.orig 2014-04-29 13:08:10.516682937 -0300
|
||||
+++ ppl-1.1/src/Dense_Row_defs.hh 2014-04-29 13:08:50.447684466 -0300
|
||||
@@ -33,6 +33,7 @@ site: http://bugseng.com/products/ppl/ .
|
||||
#include <memory>
|
||||
#include <vector>
|
||||
#include <limits>
|
||||
+#include <cstddef>
|
||||
|
||||
#ifdef PPL_DOXYGEN_INCLUDE_IMPLEMENTATION_DETAILS
|
||||
//! A finite sequence of coefficients.
|
||||
@@ -433,7 +434,7 @@ public:
|
||||
|
||||
typedef std::bidirectional_iterator_tag iterator_category;
|
||||
typedef Coefficient value_type;
|
||||
- typedef ptrdiff_t difference_type;
|
||||
+ typedef std::ptrdiff_t difference_type;
|
||||
typedef value_type* pointer;
|
||||
typedef value_type& reference;
|
||||
|
||||
@@ -474,7 +475,7 @@ class Parma_Polyhedra_Library::Dense_Row
|
||||
public:
|
||||
|
||||
typedef const Coefficient value_type;
|
||||
- typedef ptrdiff_t difference_type;
|
||||
+ typedef std::ptrdiff_t difference_type;
|
||||
typedef value_type* pointer;
|
||||
typedef Coefficient_traits::const_reference reference;
|
||||
|
||||
diff -up ppl-1.1/src/Linear_Expression_Interface_defs.hh.orig ppl-1.1/src/Linear_Expression_Interface_defs.hh
|
||||
--- ppl-1.1/src/Linear_Expression_Interface_defs.hh.orig 2014-04-29 13:08:17.337683198 -0300
|
||||
+++ ppl-1.1/src/Linear_Expression_Interface_defs.hh 2014-04-29 13:08:40.999684104 -0300
|
||||
@@ -32,6 +32,7 @@ site: http://bugseng.com/products/ppl/ .
|
||||
#include "Sparse_Row_types.hh"
|
||||
#include <vector>
|
||||
#include <set>
|
||||
+#include <cstddef>
|
||||
|
||||
#ifdef PPL_DOXYGEN_INCLUDE_IMPLEMENTATION_DETAILS
|
||||
//! A linear expression.
|
||||
@@ -65,7 +66,7 @@ public:
|
||||
public:
|
||||
typedef std::bidirectional_iterator_tag iterator_category;
|
||||
typedef const Coefficient value_type;
|
||||
- typedef ptrdiff_t difference_type;
|
||||
+ typedef std::ptrdiff_t difference_type;
|
||||
typedef value_type* pointer;
|
||||
typedef Coefficient_traits::const_reference reference;
|
||||
|
||||
diff -up ppl-1.1/src/CO_Tree_defs.hh.orig ppl-1.1/src/CO_Tree_defs.hh
|
||||
--- ppl-1.1/src/CO_Tree_defs.hh.orig 2014-04-29 13:11:33.725690719 -0300
|
||||
+++ ppl-1.1/src/CO_Tree_defs.hh 2014-04-29 13:11:55.943691569 -0300
|
||||
@@ -28,6 +28,7 @@ site: http://bugseng.com/products/ppl/ .
|
||||
|
||||
#include "Coefficient_defs.hh"
|
||||
#include <memory>
|
||||
+#include <cstddef>
|
||||
|
||||
#ifndef PPL_CO_TREE_EXTRA_DEBUG
|
||||
#ifdef PPL_ABI_BREAKING_EXTRA_DEBUG
|
||||
@@ -159,7 +160,7 @@ public:
|
||||
|
||||
typedef std::bidirectional_iterator_tag iterator_category;
|
||||
typedef const data_type value_type;
|
||||
- typedef ptrdiff_t difference_type;
|
||||
+ typedef std::ptrdiff_t difference_type;
|
||||
typedef value_type* pointer;
|
||||
typedef data_type_const_reference reference;
|
||||
|
||||
@@ -314,7 +315,7 @@ public:
|
||||
|
||||
typedef std::bidirectional_iterator_tag iterator_category;
|
||||
typedef data_type value_type;
|
||||
- typedef ptrdiff_t difference_type;
|
||||
+ typedef std::ptrdiff_t difference_type;
|
||||
typedef value_type* pointer;
|
||||
typedef value_type& reference;
|
||||
|
||||
diff -up ppl-1.1/src/CO_Tree_inlines.hh.orig ppl-1.1/src/CO_Tree_inlines.hh
|
||||
--- ppl-1.1/src/CO_Tree_inlines.hh.orig 2014-04-29 13:14:12.738696808 -0300
|
||||
+++ ppl-1.1/src/CO_Tree_inlines.hh 2014-04-29 13:14:48.887698192 -0300
|
||||
@@ -24,6 +24,8 @@ site: http://bugseng.com/products/ppl/ .
|
||||
#ifndef PPL_CO_Tree_inlines_hh
|
||||
#define PPL_CO_Tree_inlines_hh 1
|
||||
|
||||
+#include <cstddef>
|
||||
+
|
||||
namespace Parma_Polyhedra_Library {
|
||||
|
||||
inline dimension_type
|
||||
@@ -31,7 +33,7 @@ CO_Tree::dfs_index(const_iterator itr) c
|
||||
PPL_ASSERT(itr.current_index != 0);
|
||||
PPL_ASSERT(itr.current_index >= indexes + 1);
|
||||
PPL_ASSERT(itr.current_index <= indexes + reserved_size);
|
||||
- const ptrdiff_t index = itr.current_index - indexes;
|
||||
+ const std::ptrdiff_t index = itr.current_index - indexes;
|
||||
return static_cast<dimension_type>(index);
|
||||
}
|
||||
|
||||
@@ -40,7 +42,7 @@ CO_Tree::dfs_index(iterator itr) const {
|
||||
PPL_ASSERT(itr.current_index != 0);
|
||||
PPL_ASSERT(itr.current_index >= indexes + 1);
|
||||
PPL_ASSERT(itr.current_index <= indexes + reserved_size);
|
||||
- const ptrdiff_t index = itr.current_index - indexes;
|
||||
+ const std::ptrdiff_t index = itr.current_index - indexes;
|
||||
return static_cast<dimension_type>(index);
|
||||
}
|
||||
|
||||
@@ -772,7 +774,7 @@ CO_Tree::tree_iterator::follow_left_chil
|
||||
p -= (offset - 1);
|
||||
while (*p == unused_index)
|
||||
++p;
|
||||
- const ptrdiff_t distance = p - tree.indexes;
|
||||
+ const std::ptrdiff_t distance = p - tree.indexes;
|
||||
PPL_ASSERT(distance >= 0);
|
||||
i = static_cast<dimension_type>(distance);
|
||||
offset = least_significant_one_mask(i);
|
||||
@@ -787,7 +789,7 @@ CO_Tree::tree_iterator::follow_right_chi
|
||||
p += (offset - 1);
|
||||
while (*p == unused_index)
|
||||
--p;
|
||||
- const ptrdiff_t distance = p - tree.indexes;
|
||||
+ const std::ptrdiff_t distance = p - tree.indexes;
|
||||
PPL_ASSERT(distance >= 0);
|
||||
i = static_cast<dimension_type>(distance);
|
||||
offset = least_significant_one_mask(i);
|
||||
diff -up ppl-1.1/src/Linear_Expression_defs.hh.orig ppl-1.1/src/Linear_Expression_defs.hh
|
||||
--- ppl-1.1/src/Linear_Expression_defs.hh.orig 2014-04-29 13:15:39.793700141 -0300
|
||||
+++ ppl-1.1/src/Linear_Expression_defs.hh 2014-04-29 13:16:07.464701201 -0300
|
||||
@@ -51,6 +51,7 @@ site: http://bugseng.com/products/ppl/ .
|
||||
|
||||
#include "Linear_Expression_Interface_defs.hh"
|
||||
#include "Variable_defs.hh"
|
||||
+#include <cstddef>
|
||||
|
||||
namespace Parma_Polyhedra_Library {
|
||||
|
||||
@@ -381,7 +382,7 @@ public:
|
||||
public:
|
||||
typedef std::bidirectional_iterator_tag iterator_category;
|
||||
typedef const Coefficient value_type;
|
||||
- typedef ptrdiff_t difference_type;
|
||||
+ typedef std::ptrdiff_t difference_type;
|
||||
typedef value_type* pointer;
|
||||
typedef Coefficient_traits::const_reference reference;
|
||||
|
||||
diff -up ppl-1.1/src/CO_Tree.cc.orig ppl-1.1/src/CO_Tree.cc
|
||||
--- ppl-1.1/src/CO_Tree.cc.orig 2014-04-29 13:19:37.192709232 -0300
|
||||
+++ ppl-1.1/src/CO_Tree.cc 2014-04-29 13:19:58.000710029 -0300
|
||||
@@ -954,7 +954,7 @@ PPL::CO_Tree
|
||||
--subtree_size;
|
||||
}
|
||||
|
||||
- const ptrdiff_t distance = first_unused_index - indexes;
|
||||
+ const std::ptrdiff_t distance = first_unused_index - indexes;
|
||||
PPL_ASSERT(distance >= 0);
|
||||
return static_cast<dimension_type>(distance);
|
||||
}
|
||||
diff -up ppl-1.1/src/Constraint_System_defs.hh.orig ppl-1.1/src/Constraint_System_defs.hh
|
||||
--- ppl-1.1/src/Constraint_System_defs.hh.orig 2014-04-29 13:30:05.530733294 -0300
|
||||
+++ ppl-1.1/src/Constraint_System_defs.hh 2014-04-29 13:30:27.167734122 -0300
|
||||
@@ -37,6 +37,7 @@ site: http://bugseng.com/products/ppl/ .
|
||||
#include "termination_types.hh"
|
||||
#include <iterator>
|
||||
#include <iosfwd>
|
||||
+#include <cstddef>
|
||||
|
||||
namespace Parma_Polyhedra_Library {
|
||||
|
||||
@@ -609,7 +610,7 @@ for (Constraint_System::const_iterator i
|
||||
class Parma_Polyhedra_Library::Constraint_System_const_iterator
|
||||
: public std::iterator<std::forward_iterator_tag,
|
||||
Constraint,
|
||||
- ptrdiff_t,
|
||||
+ std::ptrdiff_t,
|
||||
const Constraint*,
|
||||
const Constraint&> {
|
||||
public:
|
||||
diff -up ppl-1.1/src/Congruence_System_defs.hh.orig ppl-1.1/src/Congruence_System_defs.hh
|
||||
--- ppl-1.1/src/Congruence_System_defs.hh.orig 2014-04-29 13:33:56.927742155 -0300
|
||||
+++ ppl-1.1/src/Congruence_System_defs.hh 2014-04-29 13:34:15.535742867 -0300
|
||||
@@ -33,6 +33,7 @@ site: http://bugseng.com/products/ppl/ .
|
||||
#include "Congruence_defs.hh"
|
||||
#include "Constraint_System_types.hh"
|
||||
#include <iosfwd>
|
||||
+#include <cstddef>
|
||||
|
||||
namespace Parma_Polyhedra_Library {
|
||||
|
||||
@@ -249,7 +250,7 @@ public:
|
||||
class const_iterator
|
||||
: public std::iterator<std::forward_iterator_tag,
|
||||
Congruence,
|
||||
- ptrdiff_t,
|
||||
+ std::ptrdiff_t,
|
||||
const Congruence*,
|
||||
const Congruence&> {
|
||||
public:
|
||||
diff -up ppl-1.1/src/Generator_System_defs.hh.orig ppl-1.1/src/Generator_System_defs.hh
|
||||
--- ppl-1.1/src/Generator_System_defs.hh.orig 2014-04-29 13:44:30.122766402 -0300
|
||||
+++ ppl-1.1/src/Generator_System_defs.hh 2014-04-29 13:44:48.167767093 -0300
|
||||
@@ -33,6 +33,7 @@ site: http://bugseng.com/products/ppl/ .
|
||||
#include "Poly_Con_Relation_defs.hh"
|
||||
#include "Polyhedron_types.hh"
|
||||
#include <iosfwd>
|
||||
+#include <cstddef>
|
||||
|
||||
namespace Parma_Polyhedra_Library {
|
||||
|
||||
@@ -679,7 +680,7 @@ copy(gs.begin(), gs.end(), ostream_itera
|
||||
class Parma_Polyhedra_Library::Generator_System_const_iterator
|
||||
: public std::iterator<std::forward_iterator_tag,
|
||||
Generator,
|
||||
- ptrdiff_t,
|
||||
+ std::ptrdiff_t,
|
||||
const Generator*,
|
||||
const Generator&> {
|
||||
public:
|
||||
diff -up ppl-1.1/src/Grid_Generator_System_defs.hh.orig ppl-1.1/src/Grid_Generator_System_defs.hh
|
||||
--- ppl-1.1/src/Grid_Generator_System_defs.hh.orig 2014-04-29 13:45:26.073768544 -0300
|
||||
+++ ppl-1.1/src/Grid_Generator_System_defs.hh 2014-04-29 13:45:42.535769175 -0300
|
||||
@@ -31,6 +31,7 @@ site: http://bugseng.com/products/ppl/ .
|
||||
#include "Variables_Set_types.hh"
|
||||
#include "Polyhedron_types.hh"
|
||||
#include <iosfwd>
|
||||
+#include <cstddef>
|
||||
|
||||
namespace Parma_Polyhedra_Library {
|
||||
|
||||
@@ -277,7 +278,7 @@ public:
|
||||
class const_iterator
|
||||
: public std::iterator<std::forward_iterator_tag,
|
||||
Grid_Generator,
|
||||
- ptrdiff_t,
|
||||
+ std::ptrdiff_t,
|
||||
const Grid_Generator*,
|
||||
const Grid_Generator&> {
|
||||
public:
|
@ -1,42 +0,0 @@
|
||||
https://bugs.gentoo.org/show_bug.cgi?id=447928
|
||||
--- ppl-1.0/src/p_std_bits.cc.org 2012-12-30 00:37:03.033948083 +0100
|
||||
+++ ppl-1.0/src/mp_std_bits.cc 2012-12-30 00:44:12.893019313 +0100
|
||||
@@ -25,6 +25,9 @@
|
||||
#include "ppl-config.h"
|
||||
#include "mp_std_bits.defs.hh"
|
||||
|
||||
+#if __GNU_MP_VERSION < 5 \
|
||||
+ || (__GNU_MP_VERSION == 5 && __GNU_MP_VERSION_MINOR < 1)
|
||||
+
|
||||
const bool std::numeric_limits<mpz_class>::is_specialized;
|
||||
const int std::numeric_limits<mpz_class>::digits;
|
||||
const int std::numeric_limits<mpz_class>::digits10;
|
||||
@@ -70,3 +73,6 @@
|
||||
const bool std::numeric_limits<mpq_class>::traps;
|
||||
const bool std::numeric_limits<mpq_class>::tininess_before;
|
||||
const std::float_round_style std::numeric_limits<mpq_class>::round_style;
|
||||
+
|
||||
+#endif // __GNU_MP_VERSION < 5
|
||||
+ // || (__GNU_MP_VERSION == 5 && __GNU_MP_VERSION_MINOR < 1)
|
||||
--- ppl-1.0/src/mp_std_bits.defs.hh.org 2012-12-30 00:37:03.037948187 +0100
|
||||
+++ ppl-1.0/src/mp_std_bits.defs.hh 2012-12-30 00:42:32.002424189 +0100
|
||||
@@ -38,6 +38,9 @@
|
||||
#endif // defined(PPL_DOXYGEN_INCLUDE_IMPLEMENTATION_DETAILS)
|
||||
void swap(mpq_class& x, mpq_class& y);
|
||||
|
||||
+#if __GNU_MP_VERSION < 5 \
|
||||
+ || (__GNU_MP_VERSION == 5 && __GNU_MP_VERSION_MINOR < 1)
|
||||
+
|
||||
namespace std {
|
||||
|
||||
#ifdef PPL_DOXYGEN_INCLUDE_IMPLEMENTATION_DETAILS
|
||||
@@ -164,6 +167,9 @@
|
||||
|
||||
} // namespace std
|
||||
|
||||
+#endif // __GNU_MP_VERSION < 5
|
||||
+ // || (__GNU_MP_VERSION == 5 && __GNU_MP_VERSION_MINOR < 1)
|
||||
+
|
||||
#include "mp_std_bits.inlines.hh"
|
||||
|
||||
#endif // !defined(PPL_mp_std_bits_defs_hh)
|
@ -3,11 +3,11 @@
|
||||
}:
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
name = "libva-intel-driver-1.5.1";
|
||||
name = "libva-intel-driver-1.6.0";
|
||||
|
||||
src = fetchurl {
|
||||
url = "http://www.freedesktop.org/software/vaapi/releases/libva-intel-driver/${name}.tar.bz2";
|
||||
sha256 = "1p7aw0wmb6z3rbbm3bqlp6rxw41kii23csbjmcvbbk037lq6rnqb";
|
||||
sha256 = "1m08z9md113rv455i78k6784vkjza5k84d59bgpah08cc7jayxlq";
|
||||
};
|
||||
|
||||
patchPhase = ''
|
||||
|
@ -2,11 +2,11 @@
|
||||
|
||||
stdenv.mkDerivation {
|
||||
|
||||
name = "ocaml-csv-1.4";
|
||||
name = "ocaml-csv-1.4.1";
|
||||
|
||||
src = fetchzip {
|
||||
url = https://github.com/Chris00/ocaml-csv/releases/download/1.4/csv-1.4.tar.gz;
|
||||
sha256 = "0si0v79rxzyzmgyhd6lidpzxdlcpprlhg0pgrsf688g83xsclkwa";
|
||||
url = https://github.com/Chris00/ocaml-csv/releases/download/1.4.1/csv-1.4.1.tar.gz;
|
||||
sha256 = "1z38qy92lq8qh91bs70vsv868szainif53a2y6rf47ijdila25j4";
|
||||
};
|
||||
|
||||
buildInputs = [ ocaml findlib ];
|
||||
|
@ -1,14 +1,18 @@
|
||||
{ stdenv, fetchurl, ocaml, findlib }:
|
||||
{ stdenv, fetchurl, ocaml, findlib, ounit }:
|
||||
|
||||
stdenv.mkDerivation {
|
||||
name = "ocaml-fileutils-0.4.5";
|
||||
name = "ocaml-fileutils-0.5.0";
|
||||
|
||||
src = fetchurl {
|
||||
url = https://forge.ocamlcore.org/frs/download.php/1194/ocaml-fileutils-0.4.5.tar.gz;
|
||||
sha256 = "0rlqmcgjrfjihjgw5cfmack169cag8054gh5yrqph15av3lx5cra";
|
||||
url = https://forge.ocamlcore.org/frs/download.php/1531/ocaml-fileutils-0.5.0.tar.gz;
|
||||
sha256 = "0xs96nlrrm335mcsgsxnqzspiqyfn26b0jjxm72br7c7ax534n47";
|
||||
};
|
||||
|
||||
buildInputs = [ ocaml findlib ];
|
||||
buildInputs = [ ocaml findlib ounit ];
|
||||
|
||||
configureFlags = "--enable-tests";
|
||||
doCheck = true;
|
||||
checkTarget = "test";
|
||||
|
||||
createFindlibDestdir = true;
|
||||
|
||||
|
@ -1,10 +1,10 @@
|
||||
{stdenv, fetchurl, ocaml, findlib, pgocaml, camlp4}:
|
||||
{ stdenv, fetchzip, ocaml, findlib, pgocaml, camlp4 }:
|
||||
|
||||
stdenv.mkDerivation {
|
||||
name = "ocaml-macaque-0.7.1";
|
||||
src = fetchurl {
|
||||
url = https://github.com/ocsigen/macaque/archive/0.7.1.tar.gz;
|
||||
sha256 = "0wnq3pgpcrfpivr8j7p827rhag6hdx0yr0bdvma0hw1g30vwf9qa";
|
||||
name = "ocaml-macaque-0.7.2";
|
||||
src = fetchzip {
|
||||
url = https://github.com/ocsigen/macaque/archive/0.7.2.tar.gz;
|
||||
sha256 = "14i0a8cndzndjmlkyhf31r451q99cnkndgxcj0id4qjqhdl4bmjv";
|
||||
};
|
||||
|
||||
buildInputs = [ ocaml findlib camlp4 ];
|
||||
|
@ -27,7 +27,7 @@ stdenv.mkDerivation {
|
||||
|
||||
createFindlibDestdir = true;
|
||||
|
||||
propagatedbuildInputs = [ mysql.lib ];
|
||||
propagatedBuildInputs = [ mysql.lib ];
|
||||
|
||||
preConfigure = ''
|
||||
export LDFLAGS="-L${mysql.lib}/lib/mysql"
|
||||
|
@ -1,11 +1,11 @@
|
||||
{ fetchurl, stdenv, buildPythonPackage }:
|
||||
|
||||
buildPythonPackage {
|
||||
name = "zc.buildout-nix-2.2.1";
|
||||
name = "zc.buildout-nix-2.4.0";
|
||||
|
||||
src = fetchurl {
|
||||
url = "https://pypi.python.org/packages/source/z/zc.buildout/zc.buildout-2.2.1.tar.gz";
|
||||
md5 = "476a06eed08506925c700109119b6e41";
|
||||
url = "https://pypi.python.org/packages/source/z/zc.buildout/zc.buildout-2.4.0.tar.gz";
|
||||
md5 = "b8323b1ad285544de0c3dc14ee76ddd3";
|
||||
};
|
||||
|
||||
patches = [ ./nix.patch ];
|
||||
|
@ -1,38 +1,15 @@
|
||||
--- a/src/zc/buildout/easy_install.py 2013-08-27 22:28:40.233718116 +0200
|
||||
+++ b/src/zc/buildout/easy_install.py 2013-10-07 00:29:31.077413935 +0200
|
||||
@@ -508,16 +508,31 @@
|
||||
self._dest, os.path.basename(dist.location))
|
||||
@@ -227,6 +227,12 @@
|
||||
|
||||
if os.path.isdir(dist.location):
|
||||
- # we got a directory. It must have been
|
||||
- # obtained locally. Just copy it.
|
||||
- shutil.copytree(dist.location, newloc)
|
||||
+ # Replace links to garbage collected eggs in
|
||||
+ # /nix/store
|
||||
+ if os.path.islink(newloc):
|
||||
+ # It seems necessary to jump through these
|
||||
+ # hoops, otherwise we end up in an
|
||||
+ # infinite loop because
|
||||
+ # self._env.best_match fails to find the dist
|
||||
+ os.remove(newloc)
|
||||
+ dist = self._fetch(avail, tmp, self._download_cache)
|
||||
+ os.symlink(dist.location, newloc)
|
||||
+ newdist = pkg_resources.Distribution.from_filename(
|
||||
+ newloc)
|
||||
+ self._env.add(newdist)
|
||||
+ logger.info("Updated link to %s" %dist.location)
|
||||
+ # Symlink to the egg in /nix/store
|
||||
+ elif not os.path.exists(newloc):
|
||||
+ os.symlink(dist.location, newloc)
|
||||
+ logger.info("Created link to %s" %dist.location)
|
||||
else:
|
||||
|
||||
|
||||
setuptools.archive_util.unpack_archive(
|
||||
dist.location, newloc)
|
||||
|
||||
- redo_pyc(newloc)
|
||||
+ redo_pyc(newloc)
|
||||
|
||||
# Getting the dist from the environment causes the
|
||||
# distribution meta data to be read. Cloning isn't
|
||||
def _satisfied(self, req, source=None):
|
||||
dists = [dist for dist in self._env[req.project_name] if dist in req]
|
||||
+ try:
|
||||
+ dists = ([dist for dist in dists
|
||||
+ if dist.precedence == pkg_resources.DEVELOP_DIST]
|
||||
+ + [pkg_resources.get_distribution(req.project_name)])
|
||||
+ except pkg_resources.DistributionNotFound:
|
||||
+ pass
|
||||
if not dists:
|
||||
logger.debug('We have no distributions for %s that satisfies %r.',
|
||||
req.project_name, str(req))
|
||||
|
@ -1,11 +1,10 @@
|
||||
{ fetchurl, stdenv, guile, libffi, pkgconfig, glib
|
||||
, guile_lib }:
|
||||
{ fetchurl, stdenv, guile, libffi, pkgconfig, glib, guile_lib }:
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
name = "g-wrap-1.9.13";
|
||||
name = "g-wrap-1.9.15";
|
||||
src = fetchurl {
|
||||
url = "mirror://savannah/g-wrap/${name}.tar.gz";
|
||||
sha256 = "0fc874zlwzjahyliqnva1zfsv0chlx4cvfhwchij9n2d3kmsss9v";
|
||||
sha256 = "140fcvp24pqmfmiibhjxl3s75hj26ln7pkl2wxas84lnchbj9m4d";
|
||||
};
|
||||
|
||||
# Note: Glib support is optional, but it's quite useful (e.g., it's
|
||||
@ -26,6 +25,6 @@ stdenv.mkDerivation rec {
|
||||
'';
|
||||
homepage = http://www.nongnu.org/g-wrap/;
|
||||
license = stdenv.lib.licenses.lgpl2Plus;
|
||||
maintainers = [ ];
|
||||
maintainers = [ stdenv.lib.maintainers.taktoa ];
|
||||
};
|
||||
}
|
||||
|
31
pkgs/development/tools/misc/dfu-util/default.nix
Normal file
31
pkgs/development/tools/misc/dfu-util/default.nix
Normal file
@ -0,0 +1,31 @@
|
||||
{ stdenv, fetchurl, pkgconfig, libusb1 }:
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
name="dfu-util-${version}";
|
||||
version = "0.8";
|
||||
|
||||
nativeBuildInputs = [ pkgconfig ];
|
||||
buildInputs = [ libusb1 ];
|
||||
|
||||
src = fetchurl {
|
||||
url = "mirror://debian/pool/main/d/dfu-util/dfu-util_0.8.orig.tar.gz";
|
||||
sha256 = "0n7h08avlzin04j93m6hkq9id6hxjiiix7ff9gc2n89aw6dxxjsm";
|
||||
};
|
||||
|
||||
meta = with stdenv.lib; {
|
||||
description = "Device firmware update (DFU) USB programmer";
|
||||
longDescription = ''
|
||||
dfu-util is a program that implements the host (PC) side of the USB
|
||||
DFU 1.0 and 1.1 (Universal Serial Bus Device Firmware Upgrade) protocol.
|
||||
|
||||
DFU is intended to download and upload firmware to devices connected over
|
||||
USB. It ranges from small devices like micro-controller boards up to mobile
|
||||
phones. With dfu-util you are able to download firmware to your device or
|
||||
upload firmware from it.
|
||||
'';
|
||||
homepage = http://dfu-util.gnumonks.org/;
|
||||
license = licenses.gpl2Plus;
|
||||
platforms = platforms.unix;
|
||||
maintainers = [ maintainers.fpletz ];
|
||||
};
|
||||
}
|
@ -8,7 +8,7 @@
|
||||
|
||||
let
|
||||
|
||||
basename = "gdb-7.9";
|
||||
basename = "gdb-7.9.1";
|
||||
|
||||
# Whether (cross-)building for GNU/Hurd. This is an approximation since
|
||||
# having `stdenv ? cross' doesn't tell us if we're building `crossDrv' and
|
||||
@ -27,11 +27,9 @@ stdenv.mkDerivation rec {
|
||||
|
||||
src = fetchurl {
|
||||
url = "mirror://gnu/gdb/${basename}.tar.xz";
|
||||
sha256 = "14l3hhsy7fmpn2dk7ivc67gnbjdhkxlq90kxijpzfa35l58mcccv";
|
||||
sha256 = "0h5sfg4ndhb8q4fxbq0hdxfjp35n6ih96f6x8yvb418s84x5976d";
|
||||
};
|
||||
|
||||
# patches = [ ./edit-signals.patch ];
|
||||
|
||||
# I think python is not a native input, but I leave it
|
||||
# here while I will not need it cross building
|
||||
nativeBuildInputs = [ texinfo python perl ]
|
||||
|
22
pkgs/development/tools/omniorb/default.nix
Normal file
22
pkgs/development/tools/omniorb/default.nix
Normal file
@ -0,0 +1,22 @@
|
||||
{ stdenv, fetchurl, python }:
|
||||
stdenv.mkDerivation rec {
|
||||
|
||||
name = "omniorb-${version}";
|
||||
|
||||
version = "4.2.0";
|
||||
|
||||
src = fetchurl rec {
|
||||
url = "http://sourceforge.net/projects/omniorb/files/omniORB/omniORB-${version}/omniORB-${version}.tar.bz2";
|
||||
sha256 = "1g58xcw4641wyisp9wscrkzaqrz0vf123dgy52qq2a3wk7y77hkl";
|
||||
};
|
||||
|
||||
buildInputs = [ python ];
|
||||
|
||||
meta = with stdenv.lib; {
|
||||
description = "omniORB is a robust high performance CORBA ORB for C++ and Python. It is freely available under the terms of the GNU Lesser General Public License (for the libraries), and GNU General Public License (for the tools). omniORB is largely CORBA 2.6 compliant.";
|
||||
homepage = "http://omniorb.sourceforge.net/";
|
||||
license = licenses.gpl2Plus;
|
||||
maintainers = with maintainers; [ smironov ];
|
||||
platforms = platforms.unix;
|
||||
};
|
||||
}
|
@ -1,14 +1,14 @@
|
||||
{ stdenv, fetchurl, python, utillinux, openssl_1_0_2, http-parser, zlib, libuv }:
|
||||
|
||||
let
|
||||
version = "2.3.4";
|
||||
version = "2.4.0";
|
||||
inherit (stdenv.lib) optional maintainers licenses platforms;
|
||||
in stdenv.mkDerivation {
|
||||
name = "iojs-${version}";
|
||||
|
||||
src = fetchurl {
|
||||
url = "https://iojs.org/dist/v${version}/iojs-v${version}.tar.gz";
|
||||
sha256 = "1h9cjrs93c8rdycc0ahhc27wv826211aljvfmxfg8jdmg6nvibhq";
|
||||
sha256 = "0g81bn8q4zgm8skkbxbzwa22dnpbing4b5wjqacvpxq3ygz4c98y";
|
||||
};
|
||||
|
||||
prePatch = ''
|
||||
|
@ -1,10 +1,11 @@
|
||||
{ stdenv, fetchurl, jre, libX11, libXext, libXcursor, libXrandr, libXxf86vm
|
||||
, mesa, openal, alsaOss, pulseaudioSupport ? false, libpulseaudio }:
|
||||
, mesa, openal
|
||||
, useAlsa ? false, alsaOss ? null }:
|
||||
|
||||
assert jre ? architecture;
|
||||
assert useAlsa -> alsaOss != null;
|
||||
|
||||
stdenv.mkDerivation {
|
||||
name = "minecraft-2013.07.01";
|
||||
name = "minecraft-2015.07.24";
|
||||
|
||||
src = fetchurl {
|
||||
url = "https://s3.amazonaws.com/Minecraft.Download/launcher/Minecraft.jar";
|
||||
@ -22,8 +23,8 @@ stdenv.mkDerivation {
|
||||
#!${stdenv.shell}
|
||||
|
||||
# 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/
|
||||
${if pulseaudioSupport then "${libpulseaudio}/bin/padsp" else "${alsaOss}/bin/aoss" } \
|
||||
export LD_LIBRARY_PATH=\$LD_LIBRARY_PATH:${libX11}/lib/:${libXext}/lib/:${libXcursor}/lib/:${libXrandr}/lib/:${libXxf86vm}/lib/:${mesa}/lib/:${openal}/lib/
|
||||
${if useAlsa then "${alsaOss}/bin/aoss" else "" } \
|
||||
${jre}/bin/java -jar $out/minecraft.jar
|
||||
EOF
|
||||
|
||||
|
@ -60,8 +60,6 @@ buildFHSUserEnv {
|
||||
pkgs.openal
|
||||
pkgs.libpulseaudio
|
||||
|
||||
pkgs.flashplayer
|
||||
|
||||
pkgs.gst_all_1.gst-plugins-ugly # "Audiosurf 2" needs this
|
||||
];
|
||||
|
||||
|
@ -1,24 +1,30 @@
|
||||
{ stdenv, fetchurl, automake, pkgconfig
|
||||
, cups, zlib, libjpeg, libusb1, pythonPackages, saneBackends, dbus
|
||||
, cups, zlib, libjpeg, libusb1, pythonPackages, saneBackends, dbus, usbutils
|
||||
, polkit, qtSupport ? true, qt4, pyqt4, net_snmp
|
||||
, withPlugin ? false, substituteAll, makeWrapper
|
||||
}:
|
||||
|
||||
let
|
||||
|
||||
name = "hplip-3.15.6";
|
||||
version = "3.15.7";
|
||||
|
||||
name = "hplip-${version}";
|
||||
|
||||
src = fetchurl {
|
||||
url = "mirror://sourceforge/hplip/${name}.tar.gz";
|
||||
sha256 = "1jbnjw7vrn1qawrjfdv8j58w69q8ki1qkzvlh0nk8nxacpp17i9h";
|
||||
sha256 = "17flpl89lgwlbsy9mka910g530nnvlwqqnif8a9hyq7k90q9046k";
|
||||
};
|
||||
|
||||
plugin = fetchurl {
|
||||
url = "http://www.openprinting.org/download/printdriver/auxfiles/HP/plugins/${name}-plugin.run";
|
||||
sha256 = "0fblh5m43jnws4vkwks0b4m9k3jg9kspaj1l8bic0r5swy97s41m";
|
||||
};
|
||||
|
||||
hplip_state =
|
||||
substituteAll
|
||||
{
|
||||
inherit version;
|
||||
src = ./hplip.state;
|
||||
# evaluated this way, version is always up-to-date
|
||||
version = (builtins.parseDrvName name).version;
|
||||
};
|
||||
|
||||
hplip_arch =
|
||||
@ -29,16 +35,34 @@ let
|
||||
"arm7l-linux" = "arm32";
|
||||
}."${stdenv.system}" or (abort "Unsupported platform ${stdenv.system}");
|
||||
|
||||
plugin = fetchurl {
|
||||
url = "http://www.openprinting.org/download/printdriver/auxfiles/HP/plugins/${name}-plugin.run";
|
||||
sha256 = "1rymxahz12s1s37rri5qyvka6q0yi0yai08kgspg24176ry3a3fx";
|
||||
};
|
||||
|
||||
in
|
||||
|
||||
stdenv.mkDerivation {
|
||||
inherit name src;
|
||||
|
||||
buildInputs = [
|
||||
libjpeg
|
||||
cups
|
||||
libusb1
|
||||
pythonPackages.python
|
||||
pythonPackages.wrapPython
|
||||
saneBackends
|
||||
dbus
|
||||
net_snmp
|
||||
] ++ stdenv.lib.optional qtSupport qt4;
|
||||
nativeBuildInputs = [
|
||||
pkgconfig
|
||||
];
|
||||
|
||||
pythonPath = with pythonPackages; [
|
||||
dbus
|
||||
pillow
|
||||
pygobject
|
||||
recursivePthLoader
|
||||
reportlab
|
||||
usbutils
|
||||
] ++ stdenv.lib.optional qtSupport pyqt4;
|
||||
|
||||
prePatch = ''
|
||||
# HPLIP hardcodes absolute paths everywhere. Nuke from orbit.
|
||||
find . -type f -exec sed -i \
|
||||
@ -51,50 +75,33 @@ stdenv.mkDerivation {
|
||||
{} +
|
||||
'';
|
||||
|
||||
preConfigure = ''
|
||||
export configureFlags="$configureFlags
|
||||
--with-cupsfilterdir=$out/lib/cups/filter
|
||||
--with-cupsbackenddir=$out/lib/cups/backend
|
||||
--with-icondir=$out/share/applications
|
||||
--with-systraydir=$out/xdg/autostart
|
||||
--with-mimedir=$out/etc/cups
|
||||
--enable-policykit
|
||||
"
|
||||
|
||||
export makeFlags="
|
||||
halpredir=$out/share/hal/fdi/preprobe/10osvendor
|
||||
rulesdir=$out/etc/udev/rules.d
|
||||
policykit_dir=$out/share/polkit-1/actions
|
||||
policykit_dbus_etcdir=$out/etc/dbus-1/system.d
|
||||
policykit_dbus_sharedir=$out/share/dbus-1/system-services
|
||||
hplip_confdir=$out/etc/hp
|
||||
hplip_statedir=$out/var/lib/hp
|
||||
";
|
||||
configureFlags = ''
|
||||
--with-cupsfilterdir=$(out)/lib/cups/filter
|
||||
--with-cupsbackenddir=$(out)/lib/cups/backend
|
||||
--with-icondir=$(out)/share/applications
|
||||
--with-systraydir=$(out)/xdg/autostart
|
||||
--with-mimedir=$(out)/etc/cups
|
||||
--enable-policykit
|
||||
'';
|
||||
|
||||
makeFlags = ''
|
||||
halpredir=$(out)/share/hal/fdi/preprobe/10osvendor
|
||||
rulesdir=$(out)/etc/udev/rules.d
|
||||
policykit_dir=$(out)/share/polkit-1/actions
|
||||
policykit_dbus_etcdir=$(out)/etc/dbus-1/system.d
|
||||
policykit_dbus_sharedir=$(out)/share/dbus-1/system-services
|
||||
hplip_confdir=$(out)/etc/hp
|
||||
hplip_statedir=$(out)/var/lib/hp
|
||||
'';
|
||||
|
||||
enableParallelBuilding = true;
|
||||
|
||||
postInstall =
|
||||
''
|
||||
# Wrap the user-facing Python scripts in /bin without turning the ones
|
||||
# in /share into shell scripts (they need to be importable).
|
||||
# Complicated by the fact that /bin contains just symlinks to /share.
|
||||
for bin in $out/bin/*; do
|
||||
py=`readlink -m $bin`
|
||||
rm $bin
|
||||
cp $py $bin
|
||||
wrapPythonProgramsIn $bin "$out $pythonPath"
|
||||
sed -i "s@$(dirname $bin)/[^ ]*@$py@g" $bin
|
||||
done
|
||||
|
||||
# Remove originals. Knows a little too much about wrapPythonProgramsIn.
|
||||
rm -f $out/bin/.*-wrapped
|
||||
|
||||
wrapPythonPrograms $out/lib "$out $pythonPath"
|
||||
''
|
||||
+ (stdenv.lib.optionalString withPlugin
|
||||
(stdenv.lib.optionalString withPlugin
|
||||
(let hplip_arch =
|
||||
if stdenv.system == "i686-linux" then "x86_32"
|
||||
else if stdenv.system == "x86_64-linux" then "x86_64"
|
||||
else abort "Platform must be i686-linux or x86_64-linux!";
|
||||
else abort "Plugin platform must be i686-linux or x86_64-linux!";
|
||||
in
|
||||
''
|
||||
sh ${plugin} --noexec --keep
|
||||
@ -129,31 +136,39 @@ stdenv.mkDerivation {
|
||||
mv $out/etc/sane.d/dll.conf $out/etc/sane.d/dll.d/hpaio.conf
|
||||
|
||||
rm $out/etc/udev/rules.d/56-hpmud.rules
|
||||
''));
|
||||
''));
|
||||
|
||||
buildInputs = [
|
||||
libjpeg
|
||||
cups
|
||||
libusb1
|
||||
pythonPackages.python
|
||||
pythonPackages.wrapPython
|
||||
saneBackends
|
||||
dbus
|
||||
net_snmp
|
||||
] ++ stdenv.lib.optional qtSupport qt4;
|
||||
nativeBuildInputs = [
|
||||
pkgconfig
|
||||
];
|
||||
fixupPhase = ''
|
||||
# Wrap the user-facing Python scripts in $out/bin without turning the
|
||||
# ones in $out /share into shell scripts (they need to be importable).
|
||||
# Note that $out/bin contains only symlinks to $out/share.
|
||||
for bin in $out/bin/*; do
|
||||
py=`readlink -m $bin`
|
||||
rm $bin
|
||||
cp $py $bin
|
||||
wrapPythonProgramsIn $bin "$out $pythonPath"
|
||||
sed -i "s@$(dirname $bin)/[^ ]*@$py@g" $bin
|
||||
done
|
||||
|
||||
pythonPath = with pythonPackages; [
|
||||
dbus
|
||||
pillow
|
||||
pygobject
|
||||
recursivePthLoader
|
||||
reportlab
|
||||
] ++ stdenv.lib.optional qtSupport pyqt4;
|
||||
# Remove originals. Knows a little too much about wrapPythonProgramsIn.
|
||||
rm -f $out/bin/.*-wrapped
|
||||
|
||||
# Merely patching shebangs in $out/share does not cause trouble.
|
||||
for i in $out/share/hplip{,/*}/*.py; do
|
||||
substituteInPlace $i \
|
||||
--replace /usr/bin/python \
|
||||
${pythonPackages.python}/bin/${pythonPackages.python.executable} \
|
||||
--replace "/usr/bin/env python" \
|
||||
${pythonPackages.python}/bin/${pythonPackages.python.executable}
|
||||
done
|
||||
|
||||
wrapPythonProgramsIn $out/lib "$out $pythonPath"
|
||||
|
||||
substituteInPlace $out/etc/hp/hplip.conf --replace /usr $out
|
||||
'';
|
||||
|
||||
meta = with stdenv.lib; {
|
||||
inherit version;
|
||||
description = "Print, scan and fax HP drivers for Linux";
|
||||
homepage = http://hplipopensource.com/;
|
||||
license = if withPlugin
|
||||
|
@ -1,13 +1,21 @@
|
||||
{ stdenv, fetchgit }:
|
||||
{ stdenv, fetchFromGitHub }:
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
name = "firmware-linux-nonfree-${version}";
|
||||
version = "2015-07-12";
|
||||
version = "2015-07-23";
|
||||
|
||||
src = fetchgit {
|
||||
url = "http://git.kernel.org/pub/scm/linux/kernel/git/iwlwifi/linux-firmware.git";
|
||||
rev = "5e6d7a9d70b562c60471e234f78137020d65ccbf";
|
||||
sha256 = "06gvjdqpbayfv696hxn9xjkbzddj1hy6z9aahi156lvj96qb9z49";
|
||||
# This repo is built by merging the latest versions of
|
||||
# http://git.kernel.org/cgit/linux/kernel/git/firmware/linux-firmware.git/
|
||||
# and
|
||||
# http://git.kernel.org/cgit/linux/kernel/git/iwlwifi/linux-firmware.git/
|
||||
# for any given date. This gives us up to date iwlwifi firmware as well as
|
||||
# the usual set of firmware. firmware/linux-firmware usually lags kernel releases
|
||||
# so iwlwifi cards will fail to load on newly released kernels.
|
||||
src = fetchFromGitHub {
|
||||
owner = "wkennington";
|
||||
repo = "linux-firmware";
|
||||
rev = "854b7f33e839ceea41034b45d6f755ea70c85486";
|
||||
sha256 = "1hhqvb96adk64ljf6hp5qss8fhpic28y985gbggh5p2w9bsgs5zq";
|
||||
};
|
||||
|
||||
preInstall = ''
|
||||
|
@ -1,11 +1,11 @@
|
||||
{ fetchurl, stdenv, flex, bison, db, iptables, pkgconfig }:
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
name = "iproute2-4.0.0";
|
||||
name = "iproute2-4.1.1";
|
||||
|
||||
src = fetchurl {
|
||||
url = "mirror://kernel/linux/utils/net/iproute2/${name}.tar.xz";
|
||||
sha256 = "0616cg6liyysfddf6d8i4vyndd9b0hjmfw35icq8p18b0nqnxl2w";
|
||||
sha256 = "0vz6m2k6hdrjlg4x0r3cd75lg9ysmndbsp35pm8494zvksc7l1vk";
|
||||
};
|
||||
|
||||
patch = [ ./vpnc.patch ];
|
||||
|
@ -1,12 +1,12 @@
|
||||
{ stdenv, fetchurl, ... } @ args:
|
||||
|
||||
import ./generic.nix (args // rec {
|
||||
version = "3.18.18";
|
||||
version = "3.18.19";
|
||||
extraMeta.branch = "3.18";
|
||||
|
||||
src = fetchurl {
|
||||
url = "mirror://kernel/linux/kernel/v3.x/linux-${version}.tar.xz";
|
||||
sha256 = "1fcd4xfnywwb3grdvcnf39njwzb40v10rnzagxqmancsaqy253jv";
|
||||
sha256 = "1jdp4mixggzjy1v806v5q7qqimkm6pbjav3gwbcl2cccv6wd701x";
|
||||
};
|
||||
|
||||
features.iwlwifi = true;
|
||||
|
@ -1,12 +1,12 @@
|
||||
{ stdenv, fetchurl, ... } @ args:
|
||||
|
||||
import ./generic.nix (args // rec {
|
||||
version = "4.1.2";
|
||||
version = "4.1.3";
|
||||
extraMeta.branch = "4.1";
|
||||
|
||||
src = fetchurl {
|
||||
url = "mirror://kernel/linux/kernel/v4.x/linux-${version}.tar.xz";
|
||||
sha256 = "1mdyjhnzhh254cblahqmpsk226z006z6sm9dmwvg6jlhpsw4cjhy";
|
||||
sha256 = "02z3palvki31qimmycz4y4wl4lb46n662qql46iah224k0q2rpcn";
|
||||
};
|
||||
|
||||
features.iwlwifi = true;
|
||||
|
@ -1,13 +1,13 @@
|
||||
{ lib, stdenv, fetchFromGitHub, perl }:
|
||||
|
||||
stdenv.mkDerivation {
|
||||
name = "perf-tools-20150704";
|
||||
name = "perf-tools-20150723";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "brendangregg";
|
||||
repo = "perf-tools";
|
||||
rev = "30ff4758915a98fd43020c1b45a63341208fd8b9";
|
||||
sha256 = "0x59xm96jmpfgik6f9d6q6v85dip3kvi4ncijpghhg59ayyd5i6a";
|
||||
rev = "80e25785e16acfbc0f048cae86a69006fa45148d";
|
||||
sha256 = "13g98vqwy50yf2h0w6iav80kzwfz29mvnjw8akbjv4v36r9hcb69";
|
||||
};
|
||||
|
||||
buildInputs = [ perl ];
|
||||
|
@ -1,12 +1,13 @@
|
||||
{ callPackage, fetchgit, ... } @ args:
|
||||
{ callPackage, fetchFromGitHub, ... } @ args:
|
||||
|
||||
callPackage ./generic.nix (args // rec {
|
||||
version = "2015-06-29";
|
||||
version = "2015-07-21";
|
||||
|
||||
src = fetchgit {
|
||||
url = git://github.com/zfsonlinux/spl.git;
|
||||
rev = "77ab5dd33a99bdf7fb062f0ea327582236a225b3";
|
||||
sha256 = "1hbn8hi305cn15nlcm9x99nczjqjkhdc38hzww11xn78py8d90w9";
|
||||
src = fetchFromGitHub {
|
||||
owner = "zfsonlinux";
|
||||
repo = "spl";
|
||||
rev = "9eb361aaa537724c9a90ab6a9f33521bfd80bad9";
|
||||
sha256 = "18sv4mw85fbm8i1s8k4y5dc43l6ll2f6hgfrawvzgvwni5i4h7n8";
|
||||
};
|
||||
|
||||
patches = [ ./const.patch ./install_prefix.patch ];
|
||||
|
@ -2,11 +2,11 @@
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
name = "v4l2loopback-${version}-${kernel.version}";
|
||||
version = "0.8.0";
|
||||
version = "0.9.1";
|
||||
|
||||
src = fetchurl {
|
||||
url = "https://github.com/umlaeute/v4l2loopback/archive/v${version}.tar.gz";
|
||||
sha256 = "1rhsgc4prrj8s6njixic7fs5m3gs94v9hhf3am6lnfh5yv6yab9h";
|
||||
sha256 = "1crkhxlnskqrfj3f7jmiiyi5m75zmj7n0s26xz07wcwdzdf2p568";
|
||||
};
|
||||
|
||||
preBuild = ''
|
||||
@ -15,8 +15,6 @@ stdenv.mkDerivation rec {
|
||||
export PATH=${kmod}/sbin:$PATH
|
||||
'';
|
||||
|
||||
patches = [ ./kernel-3.18-fix.patch ];
|
||||
|
||||
buildInputs = [ kmod ];
|
||||
|
||||
makeFlags = [
|
||||
|
@ -1,31 +0,0 @@
|
||||
From 21195cd6d1ff767a271359dfa7d201078f766611 Mon Sep 17 00:00:00 2001
|
||||
From: tatokis <tasos@tasossah.com>
|
||||
Date: Mon, 24 Nov 2014 16:28:33 +0200
|
||||
Subject: [PATCH] Updated v4l2loopback.c to compile on >= 3.18 kernel
|
||||
|
||||
---
|
||||
v4l2loopback.c | 9 +++++++--
|
||||
1 file changed, 7 insertions(+), 2 deletions(-)
|
||||
|
||||
diff --git a/v4l2loopback.c b/v4l2loopback.c
|
||||
index bb228bb..67f6ed4 100644
|
||||
--- a/v4l2loopback.c
|
||||
+++ b/v4l2loopback.c
|
||||
@@ -498,10 +498,15 @@ static ssize_t attr_store_maxopeners(struct device *cd,
|
||||
{
|
||||
struct v4l2_loopback_device *dev = NULL;
|
||||
unsigned long curr = 0;
|
||||
-
|
||||
+
|
||||
+ #if LINUX_VERSION_CODE >= KERNEL_VERSION(3,18,0)
|
||||
+ if (kstrtoul(buf, 0, &curr))
|
||||
+ return -EINVAL;
|
||||
+ #else
|
||||
if (strict_strtoul(buf, 0, &curr))
|
||||
return -EINVAL;
|
||||
-
|
||||
+ #endif
|
||||
+
|
||||
dev = v4l2loopback_cd2dev(cd);
|
||||
|
||||
if (dev->max_openers == curr)
|
@ -58,6 +58,7 @@ stdenv.mkDerivation rec {
|
||||
"--with-udevdir=$(out)/lib/udev"
|
||||
"--with-systemdunitdir=$(out)/etc/systemd/system"
|
||||
"--with-systemdpresetdir=$(out)/etc/systemd/system-preset"
|
||||
"--with-mounthelperdir=$(out)/bin"
|
||||
"--sysconfdir=/etc"
|
||||
"--localstatedir=/var"
|
||||
"--enable-systemd"
|
||||
@ -69,6 +70,11 @@ stdenv.mkDerivation rec {
|
||||
|
||||
enableParallelBuilding = true;
|
||||
|
||||
installFlags = [
|
||||
"sysconfdir=\${out}/etc"
|
||||
"DEFAULT_INITCONF_DIR=\${out}/default"
|
||||
];
|
||||
|
||||
postInstall = ''
|
||||
# Prevent kernel modules from depending on the Linux -dev output.
|
||||
nuke-refs $(find $out -name "*.ko")
|
||||
|
@ -1,12 +1,13 @@
|
||||
{ callPackage, stdenv, fetchgit, spl_git, ... } @ args:
|
||||
{ callPackage, stdenv, fetchFromGitHub, spl_git, ... } @ args:
|
||||
|
||||
callPackage ./generic.nix (args // rec {
|
||||
version = "2015-05-13";
|
||||
version = "2015-07-21";
|
||||
|
||||
src = fetchgit {
|
||||
url = git://github.com/zfsonlinux/zfs.git;
|
||||
rev = "7fec46b9d8967109ad289d208e8cf36a0c16e40c";
|
||||
sha256 = "0gvzw6vn7wyq2g9psv0fdars7ssidqc5l85x4yym5niccy1xl437";
|
||||
src = fetchFromGitHub {
|
||||
owner = "zfsonlinux";
|
||||
repo = "zfs";
|
||||
rev = "3b79cef21294f3ec46c4f71cc5a68a75a4d0ebc7";
|
||||
sha256 = "01l4cg62wgn3wzasskx2nh3a4c74vq8qcwz090x8x1r4c2r4v943";
|
||||
};
|
||||
|
||||
patches = [ ./nix-build.patch ];
|
||||
|
@ -1615,11 +1615,11 @@ let
|
||||
}) // {inherit fontsproto libpciaccess randrproto renderproto videoproto xextproto xorgserver xproto ;};
|
||||
|
||||
xf86videointel = (mkDerivation "xf86videointel" {
|
||||
name = "xf86-video-intel-2.99.917";
|
||||
name = "xf86-video-intel-2015-07-22";
|
||||
builder = ./builder.sh;
|
||||
src = fetchurl {
|
||||
url = mirror://xorg/individual/driver/xf86-video-intel-2.99.917.tar.bz2;
|
||||
sha256 = "1jb7jspmzidfixbc0gghyjmnmpqv85i7pi13l4h2hn2ml3p83dq0";
|
||||
url = http://cgit.freedesktop.org/xorg/driver/xf86-video-intel/snapshot/a29e765ec0c1d73ee7ef2dad3aa148214ec04335.tar.gz;
|
||||
sha256 = "094qa8x0f7vgyirjbj9qdyak71nwxnmmsxml4zk49z59blq4l874";
|
||||
};
|
||||
buildInputs = [pkgconfig dri2proto dri3proto fontsproto libdrm libpng udev libpciaccess presentproto randrproto renderproto libX11 xcbutil libxcb libXcursor libXdamage libXext xextproto xf86driproto libXfixes xorgserver xproto libXrandr libXrender libxshmfence libXtst libXvMC ];
|
||||
}) // {inherit dri2proto dri3proto fontsproto libdrm libpng udev libpciaccess presentproto randrproto renderproto libX11 xcbutil libxcb libXcursor libXdamage libXext xextproto xf86driproto libXfixes xorgserver xproto libXrandr libXrender libxshmfence libXtst libXvMC ;};
|
||||
|
@ -414,7 +414,7 @@ in
|
||||
|
||||
xf86videointel = attrs: attrs // {
|
||||
buildInputs = attrs.buildInputs ++ [xorg.libXfixes];
|
||||
patches = [ ./xf86-video-intel-2.99.917-libdrm-kernel-4_0-crash.patch ];
|
||||
nativeBuildInputs = [args.autoreconfHook xorg.utilmacros];
|
||||
};
|
||||
|
||||
xwd = attrs: attrs // {
|
||||
|
@ -1,65 +0,0 @@
|
||||
From 7fe2b2948652443ff43d907855bd7a051d54d309 Mon Sep 17 00:00:00 2001
|
||||
From: Chris Wilson <chris@chris-wilson.co.uk>
|
||||
Date: Thu, 19 Mar 2015 23:14:17 +0000
|
||||
Subject: sna: Protect against ABI breakage in recent versions of libdrm
|
||||
|
||||
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
|
||||
|
||||
diff --git a/src/sna/kgem.c b/src/sna/kgem.c
|
||||
index 11f0828..6f16cba 100644
|
||||
--- a/src/sna/kgem.c
|
||||
+++ b/src/sna/kgem.c
|
||||
@@ -182,6 +182,15 @@ struct local_i915_gem_caching {
|
||||
#define LOCAL_IOCTL_I915_GEM_SET_CACHING DRM_IOW(DRM_COMMAND_BASE + LOCAL_I915_GEM_SET_CACHING, struct local_i915_gem_caching)
|
||||
#define LOCAL_IOCTL_I915_GEM_GET_CACHING DRM_IOW(DRM_COMMAND_BASE + LOCAL_I915_GEM_GET_CACHING, struct local_i915_gem_caching)
|
||||
|
||||
+struct local_i915_gem_mmap {
|
||||
+ uint32_t handle;
|
||||
+ uint32_t pad;
|
||||
+ uint64_t offset;
|
||||
+ uint64_t size;
|
||||
+ uint64_t addr_ptr;
|
||||
+};
|
||||
+#define LOCAL_IOCTL_I915_GEM_MMAP DRM_IOWR(DRM_COMMAND_BASE + DRM_I915_GEM_MMAP, struct local_i915_gem_mmap)
|
||||
+
|
||||
struct local_i915_gem_mmap2 {
|
||||
uint32_t handle;
|
||||
uint32_t pad;
|
||||
@@ -514,15 +523,15 @@ retry_wc:
|
||||
|
||||
static void *__kgem_bo_map__cpu(struct kgem *kgem, struct kgem_bo *bo)
|
||||
{
|
||||
- struct drm_i915_gem_mmap mmap_arg;
|
||||
+ struct local_i915_gem_mmap arg;
|
||||
int err;
|
||||
|
||||
retry:
|
||||
- VG_CLEAR(mmap_arg);
|
||||
- mmap_arg.handle = bo->handle;
|
||||
- mmap_arg.offset = 0;
|
||||
- mmap_arg.size = bytes(bo);
|
||||
- if ((err = do_ioctl(kgem->fd, DRM_IOCTL_I915_GEM_MMAP, &mmap_arg))) {
|
||||
+ VG_CLEAR(arg);
|
||||
+ arg.handle = bo->handle;
|
||||
+ arg.offset = 0;
|
||||
+ arg.size = bytes(bo);
|
||||
+ if ((err = do_ioctl(kgem->fd, LOCAL_IOCTL_I915_GEM_MMAP, &arg))) {
|
||||
assert(err != EINVAL);
|
||||
|
||||
if (__kgem_throttle_retire(kgem, 0))
|
||||
@@ -536,10 +545,10 @@ retry:
|
||||
return NULL;
|
||||
}
|
||||
|
||||
- VG(VALGRIND_MAKE_MEM_DEFINED(mmap_arg.addr_ptr, bytes(bo)));
|
||||
+ VG(VALGRIND_MAKE_MEM_DEFINED(arg.addr_ptr, bytes(bo)));
|
||||
|
||||
DBG(("%s: caching CPU vma for %d\n", __FUNCTION__, bo->handle));
|
||||
- return bo->map__cpu = (void *)(uintptr_t)mmap_arg.addr_ptr;
|
||||
+ return bo->map__cpu = (void *)(uintptr_t)arg.addr_ptr;
|
||||
}
|
||||
|
||||
static int gem_write(int fd, uint32_t handle,
|
||||
--
|
||||
cgit v0.10.2
|
||||
|
27
pkgs/tools/backup/borg/default.nix
Normal file
27
pkgs/tools/backup/borg/default.nix
Normal file
@ -0,0 +1,27 @@
|
||||
{ stdenv, fetchzip, python3Packages, openssl, acl }:
|
||||
|
||||
python3Packages.buildPythonPackage rec {
|
||||
name = "borg-${version}";
|
||||
version = "0.23.0";
|
||||
namePrefix = "";
|
||||
|
||||
src = fetchzip {
|
||||
name = "${name}-src";
|
||||
url = "https://github.com/borgbackup/borg/archive/${version}.tar.gz";
|
||||
sha256 = "1ns00bhrh4zm1s70mm32gnahj7yh4jdpkb8ziarhvcnknz7aga67";
|
||||
};
|
||||
|
||||
propagatedBuildInputs = with python3Packages;
|
||||
[ cython msgpack openssl acl llfuse tox detox ];
|
||||
|
||||
preConfigure = ''
|
||||
export BORG_OPENSSL_PREFIX="${openssl}"
|
||||
'';
|
||||
|
||||
meta = with stdenv.lib; {
|
||||
description = "A deduplicating backup program (attic fork)";
|
||||
homepage = https://borgbackup.github.io/;
|
||||
license = licenses.bsd3;
|
||||
platforms = platforms.unix; # Darwin and FreeBSD mentioned on homepage
|
||||
};
|
||||
}
|
Some files were not shown because too many files have changed in this diff Show More
Loading…
Reference in New Issue
Block a user