Merge branch 'master.upstream' into staging.upstream
This commit is contained in:
commit
aaef42ab8c
|
@ -1,6 +1,8 @@
|
|||
let
|
||||
|
||||
lib = import ./default.nix;
|
||||
inherit (builtins) attrNames isFunction;
|
||||
|
||||
in
|
||||
|
||||
rec {
|
||||
|
@ -49,10 +51,6 @@ rec {
|
|||
else { }));
|
||||
|
||||
|
||||
# usage: (you can use override multiple times)
|
||||
# let d = makeOverridable stdenv.mkDerivation { name = ..; buildInputs; }
|
||||
# noBuildInputs = d.override { buildInputs = []; }
|
||||
# additionalBuildInputs = d.override ( args : args // { buildInputs = args.buildInputs ++ [ additional ]; } )
|
||||
makeOverridable = f: origArgs:
|
||||
let
|
||||
ff = f origArgs;
|
||||
|
@ -60,24 +58,16 @@ rec {
|
|||
in
|
||||
if builtins.isAttrs ff then (ff //
|
||||
{ override = newArgs: makeOverridable f (overrideWith newArgs);
|
||||
deepOverride = newArgs:
|
||||
makeOverridable f (lib.overrideExisting (lib.mapAttrs (deepOverrider newArgs) origArgs) newArgs);
|
||||
overrideDerivation = fdrv:
|
||||
makeOverridable (args: overrideDerivation (f args) fdrv) origArgs;
|
||||
})
|
||||
else if builtins.isFunction ff then
|
||||
{ override = newArgs: makeOverridable f (overrideWith newArgs);
|
||||
__functor = self: ff;
|
||||
deepOverride = throw "deepOverride not yet supported for functors";
|
||||
overrideDerivation = throw "overrideDerivation not yet supported for functors";
|
||||
}
|
||||
else ff;
|
||||
|
||||
deepOverrider = newArgs: name: x: if builtins.isAttrs x then (
|
||||
if x ? deepOverride then (x.deepOverride newArgs) else
|
||||
if x ? override then (x.override newArgs) else
|
||||
x) else x;
|
||||
|
||||
|
||||
/* Call the package function in the file `fn' with the required
|
||||
arguments automatically. The function is called with the
|
||||
|
@ -102,12 +92,28 @@ rec {
|
|||
*/
|
||||
callPackageWith = autoArgs: fn: args:
|
||||
let
|
||||
f = if builtins.isFunction fn then fn else import fn;
|
||||
f = if builtins.isFunction fn then fn else import fn;
|
||||
auto = builtins.intersectAttrs (builtins.functionArgs f) autoArgs;
|
||||
in makeOverridable f (auto // args);
|
||||
|
||||
|
||||
/* Add attributes to each output of a derivation without changing the derivation itself */
|
||||
/* Like callPackage, but for a function that returns an attribute
|
||||
set of derivations. The override function is added to the
|
||||
individual attributes. */
|
||||
callPackagesWith = autoArgs: fn: args:
|
||||
let
|
||||
f = if builtins.isFunction fn then fn else import fn;
|
||||
auto = builtins.intersectAttrs (builtins.functionArgs f) autoArgs;
|
||||
finalArgs = auto // args;
|
||||
pkgs = f finalArgs;
|
||||
mkAttrOverridable = name: pkg: pkg // {
|
||||
override = newArgs: mkAttrOverridable name (f (finalArgs // newArgs)).${name};
|
||||
};
|
||||
in lib.mapAttrs mkAttrOverridable pkgs;
|
||||
|
||||
|
||||
/* Add attributes to each output of a derivation without changing
|
||||
the derivation itself. */
|
||||
addPassthru = drv: passthru:
|
||||
let
|
||||
outputs = drv.outputs or [ "out" ];
|
||||
|
|
|
@ -29,7 +29,6 @@ rec {
|
|||
} ));
|
||||
withStdOverrides = base // {
|
||||
override = base.passthru.function;
|
||||
deepOverride = a : (base.passthru.function ((lib.mapAttrs (lib.deepOverrider a) base.passthru.args) // a));
|
||||
} ;
|
||||
in
|
||||
withStdOverrides;
|
||||
|
|
158
lib/lists.nix
158
lib/lists.nix
|
@ -4,7 +4,7 @@ with import ./trivial.nix;
|
|||
|
||||
rec {
|
||||
|
||||
inherit (builtins) head tail length isList elemAt concatLists filter elem;
|
||||
inherit (builtins) head tail length isList elemAt concatLists filter elem genList;
|
||||
|
||||
|
||||
# Create a list consisting of a single element. `singleton x' is
|
||||
|
@ -42,16 +42,20 @@ rec {
|
|||
foldl' = builtins.foldl' or foldl;
|
||||
|
||||
|
||||
# map with index: `imap (i: v: "${v}-${toString i}") ["a" "b"] ==
|
||||
# ["a-1" "b-2"]'
|
||||
imap = f: list:
|
||||
let
|
||||
len = length list;
|
||||
imap' = n:
|
||||
if n == len
|
||||
then []
|
||||
else [ (f (n + 1) (elemAt list n)) ] ++ imap' (n + 1);
|
||||
in imap' 0;
|
||||
# Map with index: `imap (i: v: "${v}-${toString i}") ["a" "b"] ==
|
||||
# ["a-1" "b-2"]'. FIXME: why does this start to count at 1?
|
||||
imap =
|
||||
if builtins ? genList then
|
||||
f: list: genList (n: f (n + 1) (elemAt list n)) (length list)
|
||||
else
|
||||
f: list:
|
||||
let
|
||||
len = length list;
|
||||
imap' = n:
|
||||
if n == len
|
||||
then []
|
||||
else [ (f (n + 1) (elemAt list n)) ] ++ imap' (n + 1);
|
||||
in imap' 0;
|
||||
|
||||
|
||||
# Map and concatenate the result.
|
||||
|
@ -120,10 +124,17 @@ rec {
|
|||
|
||||
|
||||
# Return a list of integers from `first' up to and including `last'.
|
||||
range = first: last:
|
||||
if last < first
|
||||
then []
|
||||
else [first] ++ range (first + 1) last;
|
||||
range =
|
||||
if builtins ? genList then
|
||||
first: last:
|
||||
if first > last
|
||||
then []
|
||||
else genList (n: first + n) (last - first + 1)
|
||||
else
|
||||
first: last:
|
||||
if last < first
|
||||
then []
|
||||
else [first] ++ range (first + 1) last;
|
||||
|
||||
|
||||
# Partition the elements of a list in two lists, `right' and
|
||||
|
@ -136,30 +147,37 @@ rec {
|
|||
) { right = []; wrong = []; };
|
||||
|
||||
|
||||
zipListsWith = f: fst: snd:
|
||||
let
|
||||
len1 = length fst;
|
||||
len2 = length snd;
|
||||
len = if len1 < len2 then len1 else len2;
|
||||
zipListsWith' = n:
|
||||
if n != len then
|
||||
[ (f (elemAt fst n) (elemAt snd n)) ]
|
||||
++ zipListsWith' (n + 1)
|
||||
else [];
|
||||
in zipListsWith' 0;
|
||||
zipListsWith =
|
||||
if builtins ? genList then
|
||||
f: fst: snd: genList (n: f (elemAt fst n) (elemAt snd n)) (min (length fst) (length snd))
|
||||
else
|
||||
f: fst: snd:
|
||||
let
|
||||
len = min (length fst) (length snd);
|
||||
zipListsWith' = n:
|
||||
if n != len then
|
||||
[ (f (elemAt fst n) (elemAt snd n)) ]
|
||||
++ zipListsWith' (n + 1)
|
||||
else [];
|
||||
in zipListsWith' 0;
|
||||
|
||||
zipLists = zipListsWith (fst: snd: { inherit fst snd; });
|
||||
|
||||
|
||||
# Reverse the order of the elements of a list. FIXME: O(n^2)!
|
||||
reverseList = fold (e: acc: acc ++ [ e ]) [];
|
||||
# Reverse the order of the elements of a list.
|
||||
reverseList =
|
||||
if builtins ? genList then
|
||||
xs: let l = length xs; in genList (n: elemAt xs (l - n - 1)) l
|
||||
else
|
||||
fold (e: acc: acc ++ [ e ]) [];
|
||||
|
||||
|
||||
# Sort a list based on a comparator function which compares two
|
||||
# elements and returns true if the first argument is strictly below
|
||||
# the second argument. The returned list is sorted in an increasing
|
||||
# order. The implementation does a quick-sort.
|
||||
sort = strictLess: list:
|
||||
sort = builtins.sort or (
|
||||
strictLess: list:
|
||||
let
|
||||
len = length list;
|
||||
first = head list;
|
||||
|
@ -173,31 +191,50 @@ rec {
|
|||
pivot = pivot' 1 { left = []; right = []; };
|
||||
in
|
||||
if len < 2 then list
|
||||
else (sort strictLess pivot.left) ++ [ first ] ++ (sort strictLess pivot.right);
|
||||
else (sort strictLess pivot.left) ++ [ first ] ++ (sort strictLess pivot.right));
|
||||
|
||||
|
||||
# Return the first (at most) N elements of a list.
|
||||
take = count: list:
|
||||
let
|
||||
len = length list;
|
||||
take' = n:
|
||||
if n == len || n == count
|
||||
then []
|
||||
else
|
||||
[ (elemAt list n) ] ++ take' (n + 1);
|
||||
in take' 0;
|
||||
take =
|
||||
if builtins ? genList then
|
||||
count: sublist 0 count
|
||||
else
|
||||
count: list:
|
||||
let
|
||||
len = length list;
|
||||
take' = n:
|
||||
if n == len || n == count
|
||||
then []
|
||||
else
|
||||
[ (elemAt list n) ] ++ take' (n + 1);
|
||||
in take' 0;
|
||||
|
||||
|
||||
# Remove the first (at most) N elements of a list.
|
||||
drop = count: list:
|
||||
let
|
||||
len = length list;
|
||||
drop' = n:
|
||||
if n == -1 || n < count
|
||||
then []
|
||||
else
|
||||
drop' (n - 1) ++ [ (elemAt list n) ];
|
||||
in drop' (len - 1);
|
||||
drop =
|
||||
if builtins ? genList then
|
||||
count: list: sublist count (length list) list
|
||||
else
|
||||
count: list:
|
||||
let
|
||||
len = length list;
|
||||
drop' = n:
|
||||
if n == -1 || n < count
|
||||
then []
|
||||
else
|
||||
drop' (n - 1) ++ [ (elemAt list n) ];
|
||||
in drop' (len - 1);
|
||||
|
||||
|
||||
# Return a list consisting of at most ‘count’ elements of ‘list’,
|
||||
# starting at index ‘start’.
|
||||
sublist = start: count: list:
|
||||
let len = length list; in
|
||||
genList
|
||||
(n: elemAt list (n + start))
|
||||
(if start >= len then 0
|
||||
else if start + count > len then len - start
|
||||
else count);
|
||||
|
||||
|
||||
# Return the last element of a list.
|
||||
|
@ -209,25 +246,13 @@ rec {
|
|||
init = list: assert list != []; take (length list - 1) list;
|
||||
|
||||
|
||||
# Zip two lists together.
|
||||
zipTwoLists = xs: ys:
|
||||
let
|
||||
len1 = length xs;
|
||||
len2 = length ys;
|
||||
len = if len1 < len2 then len1 else len2;
|
||||
zipTwoLists' = n:
|
||||
if n != len then
|
||||
[ { first = elemAt xs n; second = elemAt ys n; } ]
|
||||
++ zipTwoLists' (n + 1)
|
||||
else [];
|
||||
in zipTwoLists' 0;
|
||||
|
||||
|
||||
deepSeqList = xs: y: if any (x: deepSeq x false) xs then y else y;
|
||||
|
||||
|
||||
crossLists = f: foldl (fs: args: concatMap (f: map f args) fs) [f];
|
||||
|
||||
# Remove duplicate elements from the list
|
||||
|
||||
# Remove duplicate elements from the list. O(n^2) complexity.
|
||||
unique = list:
|
||||
if list == [] then
|
||||
[]
|
||||
|
@ -237,9 +262,12 @@ rec {
|
|||
xs = unique (drop 1 list);
|
||||
in [x] ++ remove x xs;
|
||||
|
||||
# Intersects list 'e' and another list
|
||||
|
||||
# Intersects list 'e' and another list. O(nm) complexity.
|
||||
intersectLists = e: filter (x: elem x e);
|
||||
|
||||
# Subtracts list 'e' from another list
|
||||
|
||||
# Subtracts list 'e' from another list. O(nm) complexity.
|
||||
subtractLists = e: filter (x: !(elem x e));
|
||||
|
||||
}
|
||||
|
|
|
@ -130,6 +130,7 @@
|
|||
jwiegley = "John Wiegley <johnw@newartisans.com>";
|
||||
jwilberding = "Jordan Wilberding <jwilberding@afiniate.com>";
|
||||
jzellner = "Jeff Zellner <jeffz@eml.cc>";
|
||||
kamilchm = "Kamil Chmielewski <kamil.chm@gmail.com>";
|
||||
kkallio = "Karn Kallio <tierpluspluslists@gmail.com>";
|
||||
koral = "Koral <koral@mailoo.org>";
|
||||
kovirobi = "Kovacsics Robert <kovirobi@gmail.com>";
|
||||
|
@ -148,6 +149,7 @@
|
|||
ludo = "Ludovic Courtès <ludo@gnu.org>";
|
||||
madjar = "Georges Dubus <georges.dubus@compiletoi.net>";
|
||||
magnetophon = "Bart Brouns <bart@magnetophon.nl>";
|
||||
mahe = "Matthias Herrmann <matthias.mh.herrmann@gmail.com>";
|
||||
malyn = "Michael Alyn Miller <malyn@strangeGizmo.com>";
|
||||
manveru = "Michael Fellinger <m.fellinger@gmail.com>";
|
||||
marcweber = "Marc Weber <marco-oweber@gmx.de>";
|
||||
|
|
|
@ -264,55 +264,59 @@ rec {
|
|||
defs' = (optional (opt ? default)
|
||||
{ file = head opt.declarations; value = mkOptionDefault opt.default; }) ++ defs;
|
||||
|
||||
# Handle properties, check types, and merge everything together
|
||||
inherit (mergeDefinitions loc opt.type defs') isDefined defsFinal mergedValue;
|
||||
files = map (def: def.file) defsFinal;
|
||||
merged =
|
||||
if isDefined then mergedValue
|
||||
else throw "The option `${showOption loc}' is used but not defined.";
|
||||
# Handle properties, check types, and merge everything together.
|
||||
res = mergeDefinitions loc opt.type defs';
|
||||
|
||||
# Check whether the option is defined, and apply the ‘apply’
|
||||
# function to the merged value. This allows options to yield a
|
||||
# value computed from the definitions.
|
||||
value =
|
||||
if !res.isDefined then
|
||||
throw "The option `${showOption loc}' is used but not defined."
|
||||
else if opt ? apply then
|
||||
opt.apply res.mergedValue
|
||||
else
|
||||
res.mergedValue;
|
||||
|
||||
# Finally, apply the ‘apply’ function to the merged
|
||||
# value. This allows options to yield a value computed
|
||||
# from the definitions.
|
||||
value = (opt.apply or id) merged;
|
||||
in opt //
|
||||
{ value = addErrorContext "while evaluating the option `${showOption loc}':" value;
|
||||
definitions = map (def: def.value) defsFinal;
|
||||
inherit isDefined files;
|
||||
files = map (def: def.file) res.defsFinal;
|
||||
inherit (res) isDefined;
|
||||
};
|
||||
|
||||
# Merge definitions of a value of a given type
|
||||
mergeDefinitions = loc: type: defs: rec {
|
||||
defsFinal =
|
||||
let
|
||||
# Process mkMerge and mkIf properties
|
||||
processIfAndMerge = defs: concatMap (m:
|
||||
map (value: { inherit (m) file; inherit value; }) (dischargeProperties m.value)
|
||||
) defs;
|
||||
# Merge definitions of a value of a given type.
|
||||
mergeDefinitions = loc: type: defs: rec {
|
||||
defsFinal =
|
||||
let
|
||||
# Process mkMerge and mkIf properties.
|
||||
defs' = concatMap (m:
|
||||
map (value: { inherit (m) file; inherit value; }) (dischargeProperties m.value)
|
||||
) defs;
|
||||
|
||||
# Process mkOverride properties
|
||||
processOverride = defs: filterOverrides defs;
|
||||
# Process mkOverride properties.
|
||||
defs'' = filterOverrides defs';
|
||||
|
||||
# Sort mkOrder properties
|
||||
processOrder = defs:
|
||||
# Avoid sorting if we don't have to.
|
||||
if any (def: def.value._type or "" == "order") defs
|
||||
then sortProperties defs
|
||||
else defs;
|
||||
in
|
||||
processOrder (processOverride (processIfAndMerge defs));
|
||||
# Sort mkOrder properties.
|
||||
defs''' =
|
||||
# Avoid sorting if we don't have to.
|
||||
if any (def: def.value._type or "" == "order") defs''
|
||||
then sortProperties defs''
|
||||
else defs'';
|
||||
in defs''';
|
||||
|
||||
# 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;
|
||||
# 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;
|
||||
|
||||
isDefined = defsFinal != [];
|
||||
optionalValue =
|
||||
if isDefined then { value = mergedValue; }
|
||||
else {};
|
||||
};
|
||||
isDefined = defsFinal != [];
|
||||
|
||||
optionalValue =
|
||||
if isDefined then { value = mergedValue; }
|
||||
else {};
|
||||
};
|
||||
|
||||
/* Given a config set, expand mkMerge properties, and push down the
|
||||
other properties into the children. The result is a list of
|
||||
|
@ -383,7 +387,6 @@ rec {
|
|||
let
|
||||
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 = 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;
|
||||
|
|
|
@ -41,22 +41,22 @@ rec {
|
|||
|
||||
machines = attrNames nodes;
|
||||
|
||||
machinesNumbered = zipTwoLists machines (range 1 254);
|
||||
machinesNumbered = zipLists machines (range 1 254);
|
||||
|
||||
nodes_ = flip map machinesNumbered (m: nameValuePair m.first
|
||||
nodes_ = flip map machinesNumbered (m: nameValuePair m.fst
|
||||
[ ( { config, pkgs, nodes, ... }:
|
||||
let
|
||||
interfacesNumbered = zipTwoLists config.virtualisation.vlans (range 1 255);
|
||||
interfaces = flip map interfacesNumbered ({ first, second }:
|
||||
nameValuePair "eth${toString second}" { ip4 =
|
||||
[ { address = "192.168.${toString first}.${toString m.second}";
|
||||
interfacesNumbered = zipLists config.virtualisation.vlans (range 1 255);
|
||||
interfaces = flip map interfacesNumbered ({ fst, snd }:
|
||||
nameValuePair "eth${toString snd}" { ip4 =
|
||||
[ { address = "192.168.${toString fst}.${toString m.snd}";
|
||||
prefixLength = 24;
|
||||
} ];
|
||||
});
|
||||
in
|
||||
{ key = "ip-address";
|
||||
config =
|
||||
{ networking.hostName = m.first;
|
||||
{ networking.hostName = m.fst;
|
||||
|
||||
networking.interfaces = listToAttrs interfaces;
|
||||
|
||||
|
@ -76,11 +76,11 @@ rec {
|
|||
|
||||
virtualisation.qemu.options =
|
||||
flip map interfacesNumbered
|
||||
({ first, second }: qemuNICFlags second first m.second);
|
||||
({ fst, snd }: qemuNICFlags snd fst m.snd);
|
||||
};
|
||||
}
|
||||
)
|
||||
(getAttr m.first nodes)
|
||||
(getAttr m.fst nodes)
|
||||
] );
|
||||
|
||||
in listToAttrs nodes_;
|
||||
|
|
88
nixos/lib/make-ext4-fs.nix
Normal file
88
nixos/lib/make-ext4-fs.nix
Normal file
|
@ -0,0 +1,88 @@
|
|||
# Builds an ext4 image containing a populated /nix/store with the closure
|
||||
# of store paths passed in the storePaths parameter. The generated image
|
||||
# is sized to only fit its contents, with the expectation that a script
|
||||
# resizes the filesystem at boot time.
|
||||
{ pkgs
|
||||
, storePaths
|
||||
, volumeLabel
|
||||
}:
|
||||
|
||||
pkgs.stdenv.mkDerivation {
|
||||
name = "ext4-fs.img";
|
||||
|
||||
buildInputs = with pkgs; [e2fsprogs libfaketime perl];
|
||||
|
||||
# For obtaining the closure of `storePaths'.
|
||||
exportReferencesGraph =
|
||||
map (x: [("closure-" + baseNameOf x) x]) storePaths;
|
||||
|
||||
buildCommand =
|
||||
''
|
||||
# Add the closures of the top-level store objects.
|
||||
storePaths=$(perl ${pkgs.pathsFromGraph} closure-*)
|
||||
|
||||
# Also include a manifest of the closures in a format suitable
|
||||
# for nix-store --load-db.
|
||||
printRegistration=1 perl ${pkgs.pathsFromGraph} closure-* > nix-path-registration
|
||||
|
||||
# Make a crude approximation of the size of the target image.
|
||||
# If the script starts failing, increase the fudge factors here.
|
||||
numInodes=$(find $storePaths | wc -l)
|
||||
numDataBlocks=$(du -c -B 4096 --apparent-size $storePaths | awk '$2 == "total" { print int($1 * 1.03) }')
|
||||
bytes=$((2 * 4096 * $numInodes + 4096 * $numDataBlocks))
|
||||
echo "Creating an EXT4 image of $bytes bytes (numInodes=$numInodes, numDataBlocks=$numDataBlocks)"
|
||||
|
||||
truncate -s $bytes $out
|
||||
faketime "1970-01-01 00:00:00" mkfs.ext4 -L ${volumeLabel} -U 44444444-4444-4444-8888-888888888888 $out
|
||||
|
||||
# Populate the image contents by piping a bunch of commands to the `debugfs` tool from e2fsprogs.
|
||||
# For example, to copy /nix/store/abcd...efg-coreutils-8.23/bin/sleep:
|
||||
# cd /nix/store/abcd...efg-coreutils-8.23/bin
|
||||
# write /nix/store/abcd...efg-coreutils-8.23/bin/sleep sleep
|
||||
# sif sleep mode 040555
|
||||
# sif sleep gid 30000
|
||||
# In particular, debugfs doesn't handle absolute target paths; you have to 'cd' in the virtual
|
||||
# filesystem first. Likewise the intermediate directories must already exist (using `find`
|
||||
# handles that for us). And when setting the file's permissions, the inode type flags (__S_IFDIR,
|
||||
# __S_IFREG) need to be set as well.
|
||||
(
|
||||
echo write nix-path-registration nix-path-registration
|
||||
echo mkdir nix
|
||||
echo cd /nix
|
||||
echo mkdir store
|
||||
|
||||
# XXX: This explodes in exciting ways if anything in /nix/store has a space in it.
|
||||
find $storePaths -printf '%y %f %h %m\n'| while read -r type file dir perms; do
|
||||
# echo "TYPE=$type DIR=$dir FILE=$file PERMS=$perms" >&2
|
||||
|
||||
echo "cd $dir"
|
||||
case $type in
|
||||
d)
|
||||
echo "mkdir $file"
|
||||
echo sif $file mode $((040000 | 0$perms)) # magic constant is __S_IFDIR
|
||||
;;
|
||||
f)
|
||||
echo "write $dir/$file $file"
|
||||
echo sif $file mode $((0100000 | 0$perms)) # magic constant is __S_IFREG
|
||||
;;
|
||||
l)
|
||||
echo "symlink $file $(readlink "$dir/$file")"
|
||||
;;
|
||||
*)
|
||||
echo "Unknown entry: $type $dir $file $perms" >&2
|
||||
exit 1
|
||||
;;
|
||||
esac
|
||||
|
||||
echo sif $file gid 30000 # chgrp to nixbld
|
||||
done
|
||||
) | faketime "1970-01-01 00:00:00" debugfs -w $out -f /dev/stdin > errorlog 2>&1
|
||||
|
||||
# The debugfs tool doesn't terminate on error nor exit with a non-zero status. Check manually.
|
||||
if egrep -q 'Could not allocate|File not found' errorlog; then
|
||||
cat errorlog
|
||||
echo "--- Failed to create EXT4 image of $bytes bytes (numInodes=$numInodes, numDataBlocks=$numDataBlocks) ---"
|
||||
return 1
|
||||
fi
|
||||
'';
|
||||
}
|
|
@ -0,0 +1,40 @@
|
|||
{ config, lib, pkgs, ... }:
|
||||
|
||||
let
|
||||
extlinux-conf-builder =
|
||||
import ../../system/boot/loader/generic-extlinux-compatible/extlinux-conf-builder.nix {
|
||||
inherit pkgs;
|
||||
};
|
||||
in
|
||||
{
|
||||
imports = [
|
||||
../../profiles/minimal.nix
|
||||
../../profiles/installation-device.nix
|
||||
./sd-image.nix
|
||||
];
|
||||
|
||||
assertions = lib.singleton {
|
||||
assertion = pkgs.stdenv.system == "armv7l-linux";
|
||||
message = "sd-image-armv7l-multiplatform.nix can be only built natively on ARMv7; " +
|
||||
"it cannot be cross compiled";
|
||||
};
|
||||
|
||||
boot.loader.grub.enable = false;
|
||||
boot.loader.generic-extlinux-compatible.enable = true;
|
||||
|
||||
# FIXME: change this to linuxPackages_latest once v4.2 is out
|
||||
boot.kernelPackages = pkgs.linuxPackages_testing;
|
||||
boot.kernelParams = ["console=ttyS0,115200n8" "console=ttyAMA0,115200n8" "console=tty0"];
|
||||
|
||||
# FIXME: fix manual evaluation on ARM
|
||||
services.nixosManual.enable = lib.mkOverride 0 false;
|
||||
|
||||
# FIXME: this probably should be in installation-device.nix
|
||||
users.extraUsers.root.initialHashedPassword = "";
|
||||
|
||||
sdImage = {
|
||||
populateBootCommands = ''
|
||||
${extlinux-conf-builder} -t 3 -c ${config.system.build.toplevel} -d ./boot
|
||||
'';
|
||||
};
|
||||
}
|
46
nixos/modules/installer/cd-dvd/sd-image-raspberrypi.nix
Normal file
46
nixos/modules/installer/cd-dvd/sd-image-raspberrypi.nix
Normal file
|
@ -0,0 +1,46 @@
|
|||
{ config, lib, pkgs, ... }:
|
||||
|
||||
let
|
||||
extlinux-conf-builder =
|
||||
import ../../system/boot/loader/generic-extlinux-compatible/extlinux-conf-builder.nix {
|
||||
inherit pkgs;
|
||||
};
|
||||
in
|
||||
{
|
||||
imports = [
|
||||
../../profiles/minimal.nix
|
||||
../../profiles/installation-device.nix
|
||||
./sd-image.nix
|
||||
];
|
||||
|
||||
assertions = lib.singleton {
|
||||
assertion = pkgs.stdenv.system == "armv6l-linux";
|
||||
message = "sd-image-raspberrypi.nix can be only built natively on ARMv6; " +
|
||||
"it cannot be cross compiled";
|
||||
};
|
||||
|
||||
# Needed by RPi firmware
|
||||
nixpkgs.config.allowUnfree = true;
|
||||
|
||||
boot.loader.grub.enable = false;
|
||||
boot.loader.generic-extlinux-compatible.enable = true;
|
||||
|
||||
boot.kernelPackages = pkgs.linuxPackages_rpi;
|
||||
|
||||
# FIXME: fix manual evaluation on ARM
|
||||
services.nixosManual.enable = lib.mkOverride 0 false;
|
||||
|
||||
# FIXME: this probably should be in installation-device.nix
|
||||
users.extraUsers.root.initialHashedPassword = "";
|
||||
|
||||
sdImage = {
|
||||
populateBootCommands = ''
|
||||
for f in bootcode.bin fixup.dat start.elf; do
|
||||
cp ${pkgs.raspberrypifw}/share/raspberrypi/boot/$f boot/
|
||||
done
|
||||
cp ${pkgs.ubootRaspberryPi}/u-boot.bin boot/u-boot-rpi.bin
|
||||
echo 'kernel u-boot-rpi.bin' > boot/config.txt
|
||||
${extlinux-conf-builder} -t 3 -c ${config.system.build.toplevel} -d ./boot
|
||||
'';
|
||||
};
|
||||
}
|
127
nixos/modules/installer/cd-dvd/sd-image.nix
Normal file
127
nixos/modules/installer/cd-dvd/sd-image.nix
Normal file
|
@ -0,0 +1,127 @@
|
|||
# This module creates a bootable SD card image containing the given NixOS
|
||||
# configuration. The generated image is MBR partitioned, with a FAT /boot
|
||||
# partition, and ext4 root partition. The generated image is sized to fit
|
||||
# its contents, and a boot script automatically resizes the root partition
|
||||
# to fit the device on the first boot.
|
||||
#
|
||||
# The derivation for the SD image will be placed in
|
||||
# config.system.build.sdImage
|
||||
|
||||
{ config, lib, pkgs, ... }:
|
||||
|
||||
with lib;
|
||||
|
||||
let
|
||||
rootfsImage = import ../../../lib/make-ext4-fs.nix {
|
||||
inherit pkgs;
|
||||
inherit (config.sdImage) storePaths;
|
||||
volumeLabel = "NIXOS_SD";
|
||||
};
|
||||
in
|
||||
{
|
||||
options.sdImage = {
|
||||
storePaths = mkOption {
|
||||
type = with types; listOf package;
|
||||
example = literalExample "[ pkgs.stdenv ]";
|
||||
description = ''
|
||||
Derivations to be included in the Nix store in the generated SD image.
|
||||
'';
|
||||
};
|
||||
|
||||
bootSize = mkOption {
|
||||
type = types.int;
|
||||
default = 128;
|
||||
description = ''
|
||||
Size of the /boot partition, in megabytes.
|
||||
'';
|
||||
};
|
||||
|
||||
populateBootCommands = mkOption {
|
||||
example = literalExample "'' cp \${pkgs.myBootLoader}/u-boot.bin boot/ ''";
|
||||
description = ''
|
||||
Shell commands to populate the ./boot directory.
|
||||
All files in that directory are copied to the
|
||||
/boot partition on the SD image.
|
||||
'';
|
||||
};
|
||||
};
|
||||
|
||||
config = {
|
||||
fileSystems = {
|
||||
"/boot" = {
|
||||
device = "/dev/disk/by-label/NIXOS_BOOT";
|
||||
fsType = "vfat";
|
||||
};
|
||||
"/" = {
|
||||
device = "/dev/disk/by-label/NIXOS_SD";
|
||||
fsType = "ext4";
|
||||
};
|
||||
};
|
||||
|
||||
sdImage.storePaths = [ config.system.build.toplevel ];
|
||||
|
||||
system.build.sdImage = pkgs.stdenv.mkDerivation {
|
||||
name = "sd-image-${pkgs.stdenv.system}.img";
|
||||
|
||||
buildInputs = with pkgs; [ dosfstools e2fsprogs mtools libfaketime utillinux ];
|
||||
|
||||
buildCommand = ''
|
||||
# Create the image file sized to fit /boot and /, plus 4M of slack
|
||||
rootSizeBlocks=$(du -B 512 --apparent-size ${rootfsImage} | awk '{ print $1 }')
|
||||
bootSizeBlocks=$((${toString config.sdImage.bootSize} * 1024 * 1024 / 512))
|
||||
imageSize=$((rootSizeBlocks * 512 + bootSizeBlocks * 512 + 4096 * 1024))
|
||||
truncate -s $imageSize $out
|
||||
|
||||
# type=b is 'W95 FAT32', type=83 is 'Linux'.
|
||||
sfdisk $out <<EOF
|
||||
label: dos
|
||||
label-id: 0x2178694e
|
||||
|
||||
start=1M, size=$bootSizeBlocks, type=b, bootable
|
||||
type=83
|
||||
EOF
|
||||
|
||||
# Copy the rootfs into the SD image
|
||||
eval $(partx $out -o START,SECTORS --nr 2 --pairs)
|
||||
dd conv=notrunc if=${rootfsImage} of=$out seek=$START count=$SECTORS
|
||||
|
||||
# Create a FAT32 /boot partition of suitable size into bootpart.img
|
||||
eval $(partx $out -o START,SECTORS --nr 1 --pairs)
|
||||
truncate -s $((SECTORS * 512)) bootpart.img
|
||||
faketime "1970-01-01 00:00:00" mkfs.vfat -i 0x2178694e -n NIXOS_BOOT bootpart.img
|
||||
|
||||
# Populate the files intended for /boot
|
||||
mkdir boot
|
||||
${config.sdImage.populateBootCommands}
|
||||
|
||||
# Copy the populated /boot into the SD image
|
||||
(cd boot; mcopy -bpsvm -i ../bootpart.img ./* ::)
|
||||
dd conv=notrunc if=bootpart.img of=$out seek=$START count=$SECTORS
|
||||
'';
|
||||
};
|
||||
|
||||
boot.postBootCommands = ''
|
||||
# On the first boot do some maintenance tasks
|
||||
if [ -f /nix-path-registration ]; then
|
||||
# Figure out device names for the boot device and root filesystem.
|
||||
rootPart=$(readlink -f /dev/disk/by-label/NIXOS_SD)
|
||||
bootDevice=$(lsblk -npo PKNAME $rootPart)
|
||||
|
||||
# Resize the root partition and the filesystem to fit the disk
|
||||
echo ",+," | sfdisk -N2 --no-reread $bootDevice
|
||||
${pkgs.parted}/bin/partprobe
|
||||
${pkgs.e2fsprogs}/bin/resize2fs $rootPart
|
||||
|
||||
# Register the contents of the initial Nix store
|
||||
${config.nix.package}/bin/nix-store --load-db < /nix-path-registration
|
||||
|
||||
# nixos-rebuild also requires a "system" profile and an /etc/NIXOS tag.
|
||||
touch /etc/NIXOS
|
||||
${config.nix.package}/bin/nix-env -p /nix/var/nix/profiles/system --set /run/current-system
|
||||
|
||||
# Prevents this from running on later boots.
|
||||
rm -f /nix-path-registration
|
||||
fi
|
||||
'';
|
||||
};
|
||||
}
|
|
@ -52,6 +52,7 @@ in
|
|||
TTYPath = "/dev/${cfg.tty}";
|
||||
TTYReset = true;
|
||||
TTYVTDisallocate = true;
|
||||
WorkingDirectory = "/tmp";
|
||||
Restart = "always";
|
||||
};
|
||||
};
|
||||
|
|
|
@ -62,7 +62,7 @@ in
|
|||
pkgs.xfce.xfwm4
|
||||
# This supplies some "abstract" icons such as
|
||||
# "utilities-terminal" and "accessories-text-editor".
|
||||
pkgs.gnome.gnomeicontheme
|
||||
pkgs.gnome3.defaultIconTheme
|
||||
pkgs.desktop_file_utils
|
||||
pkgs.xfce.libxfce4ui
|
||||
pkgs.xfce.garcon
|
||||
|
|
|
@ -3,6 +3,7 @@
|
|||
pkgs.substituteAll {
|
||||
src = ./extlinux-conf-builder.sh;
|
||||
isExecutable = true;
|
||||
inherit (pkgs) bash;
|
||||
path = [pkgs.coreutils pkgs.gnused pkgs.gnugrep];
|
||||
inherit (pkgs) bash;
|
||||
kernelDTB = pkgs.stdenv.platform.kernelDTB or false;
|
||||
}
|
||||
|
|
|
@ -75,8 +75,10 @@ addEntry() {
|
|||
|
||||
copyToKernelsDir "$path/kernel"; kernel=$result
|
||||
copyToKernelsDir "$path/initrd"; initrd=$result
|
||||
# XXX UGLY: maybe the system config should have a top-level "dtbs" entry?
|
||||
copyToKernelsDir $(readlink -m "$path/kernel/../dtbs"); dtbs=$result
|
||||
if [ -n "@kernelDTB@" ]; then
|
||||
# XXX UGLY: maybe the system config should have a top-level "dtbs" entry?
|
||||
copyToKernelsDir $(readlink -m "$path/kernel/../dtbs"); dtbs=$result
|
||||
fi
|
||||
|
||||
timestampEpoch=$(stat -L -c '%Z' $path)
|
||||
|
||||
|
@ -93,7 +95,9 @@ addEntry() {
|
|||
fi
|
||||
echo " LINUX ../nixos/$(basename $kernel)"
|
||||
echo " INITRD ../nixos/$(basename $initrd)"
|
||||
echo " FDTDIR ../nixos/$(basename $dtbs)"
|
||||
if [ -n "@kernelDTB@" ]; then
|
||||
echo " FDTDIR ../nixos/$(basename $dtbs)"
|
||||
fi
|
||||
echo " APPEND systemConfig=$path init=$path/init $extraParams"
|
||||
}
|
||||
|
||||
|
@ -105,20 +109,24 @@ cat > $tmpFile <<EOF
|
|||
# Change this to e.g. nixos-42 to temporarily boot to an older configuration.
|
||||
DEFAULT nixos-default
|
||||
|
||||
MENU TITLE ------------------------------------------------------------
|
||||
TIMEOUT $timeout
|
||||
$(addEntry $default default)
|
||||
EOF
|
||||
|
||||
# Add up to $numGenerations generations of the system profile to the menu,
|
||||
# in reverse (most recent to least recent) order.
|
||||
for generation in $(
|
||||
(cd /nix/var/nix/profiles && ls -d system-*-link) \
|
||||
| sed 's/system-\([0-9]\+\)-link/\1/' \
|
||||
| sort -n -r \
|
||||
| head -n $numGenerations); do
|
||||
link=/nix/var/nix/profiles/system-$generation-link
|
||||
addEntry $link $generation
|
||||
done >> $tmpFile
|
||||
addEntry $default default >> $tmpFile
|
||||
|
||||
if [ "$numGenerations" -gt 0 ]; then
|
||||
# Add up to $numGenerations generations of the system profile to the menu,
|
||||
# in reverse (most recent to least recent) order.
|
||||
for generation in $(
|
||||
(cd /nix/var/nix/profiles && ls -d system-*-link) \
|
||||
| sed 's/system-\([0-9]\+\)-link/\1/' \
|
||||
| sort -n -r \
|
||||
| head -n $numGenerations); do
|
||||
link=/nix/var/nix/profiles/system-$generation-link
|
||||
addEntry $link $generation
|
||||
done >> $tmpFile
|
||||
fi
|
||||
|
||||
mv -f $tmpFile $target/extlinux/extlinux.conf
|
||||
|
||||
|
|
|
@ -70,12 +70,12 @@ in {
|
|||
src =
|
||||
if stdenv.system == "x86_64-linux" then
|
||||
fetchurl {
|
||||
url = http://archive.eclipse.org/eclipse/downloads/drops/R-3.5.2-201002111343/eclipse-SDK-3.5.2-linux-gtk-x86_64.tar.gz;
|
||||
url = http://www.eclipse.org/downloads/download.php?r=1&nf=1&file=/eclipse/downloads/drops/R-3.5.2-201002111343/eclipse-SDK-3.5.2-linux-gtk-x86_64.tar.gz;
|
||||
md5 = "54e2ce0660b2b1b0eb4267acf70ea66d";
|
||||
}
|
||||
else
|
||||
fetchurl {
|
||||
url = http://archive.eclipse.org/eclipse/downloads/drops/R-3.5.2-201002111343/eclipse-SDK-3.5.2-linux-gtk.tar.gz;
|
||||
url = http://www.eclipse.org/downloads/download.php?r=1&nf=1&file=/eclipse/downloads/drops/R-3.5.2-201002111343/eclipse-SDK-3.5.2-linux-gtk.tar.gz;
|
||||
md5 = "bde55a2354dc224cf5f26e5320e72dac";
|
||||
};
|
||||
};
|
||||
|
@ -88,12 +88,12 @@ in {
|
|||
src =
|
||||
if stdenv.system == "x86_64-linux" then
|
||||
fetchurl {
|
||||
url = http://archive.eclipse.org/eclipse/downloads/drops/R-3.6.2-201102101200/eclipse-SDK-3.6.2-linux-gtk-x86_64.tar.gz;
|
||||
url = http://www.eclipse.org/downloads/download.php?r=1&nf=1&file=/eclipse/downloads/drops/R-3.6.2-201102101200/eclipse-SDK-3.6.2-linux-gtk-x86_64.tar.gz;
|
||||
sha256 = "0dfcfadcd6337c897fbfd5b292de481931dfce12d43289ecb93691fd27dd47f4";
|
||||
}
|
||||
else
|
||||
fetchurl {
|
||||
url = http://archive.eclipse.org/eclipse/downloads/drops/R-3.6.2-201102101200/eclipse-SDK-3.6.2-linux-gtk.tar.gz;
|
||||
url = http://www.eclipse.org/downloads/download.php?r=1&nf=1&file=/eclipse/downloads/drops/R-3.6.2-201102101200/eclipse-SDK-3.6.2-linux-gtk.tar.gz;
|
||||
sha256 = "1bh8ykliqr8wbciv13vpiy50rvm7yszk7y8dslr796dbwhi5b1cj";
|
||||
};
|
||||
};
|
||||
|
@ -120,12 +120,12 @@ in {
|
|||
src =
|
||||
if stdenv.system == "x86_64-linux" then
|
||||
fetchurl {
|
||||
url = http://eclipse.ialto.com/technology/epp/downloads/release/helios/SR2/eclipse-cpp-helios-SR2-linux-gtk-x86_64.tar.gz;
|
||||
url = http://www.eclipse.org/downloads/download.php?r=1&nf=1&file=/technology/epp/downloads/release/helios/SR2/eclipse-cpp-helios-SR2-linux-gtk-x86_64.tar.gz;
|
||||
sha1 = "6f914e11fa15a900c46825e4aa8299afd76e7e65";
|
||||
}
|
||||
else
|
||||
fetchurl {
|
||||
url = http://eclipse.ialto.com/technology/epp/downloads/release/helios/SR2/eclipse-cpp-helios-SR2-linux-gtk.tar.gz;
|
||||
url = http://www.eclipse.org/downloads/download.php?r=1&nf=1&file=/technology/epp/downloads/release/helios/SR2/eclipse-cpp-helios-SR2-linux-gtk.tar.gz;
|
||||
sha1 = "1156e4bc0253ae3a3a4e54839e4944dc64d3108f";
|
||||
};
|
||||
};
|
||||
|
@ -136,12 +136,12 @@ in {
|
|||
src =
|
||||
if stdenv.system == "x86_64-linux" then
|
||||
fetchurl {
|
||||
url = http://ftp-stud.fht-esslingen.de/pub/Mirrors/eclipse/technology/epp/downloads/release/helios/SR2/eclipse-modeling-helios-SR2-incubation-linux-gtk-x86_64.tar.gz;
|
||||
url = http://www.eclipse.org/downloads/download.php?r=1&nf=1&file=/technology/epp/downloads/release/helios/SR2/eclipse-modeling-helios-SR2-incubation-linux-gtk-x86_64.tar.gz;
|
||||
sha1 = "e96f5f006298f68476f4a15a2be8589158d5cc61";
|
||||
}
|
||||
else
|
||||
fetchurl {
|
||||
url = http://ftp-stud.fht-esslingen.de/pub/Mirrors/eclipse/technology/epp/downloads/release/helios/SR2/eclipse-modeling-helios-SR2-incubation-linux-gtk.tar.gz;
|
||||
url = http://www.eclipse.org/downloads/download.php?r=1&nf=1&file=/technology/epp/downloads/release/helios/SR2/eclipse-modeling-helios-SR2-incubation-linux-gtk.tar.gz;
|
||||
sha1 = "696377895bb26445de39d82a916b7e69edb1d939";
|
||||
};
|
||||
};
|
||||
|
@ -151,11 +151,11 @@ in {
|
|||
description = "Eclipse Classic";
|
||||
sources = {
|
||||
"x86_64-linux" = fetchurl {
|
||||
url = http://archive.eclipse.org/eclipse/downloads/drops/R-3.7.2-201202080800/eclipse-SDK-3.7.2-linux-gtk-x86_64.tar.gz;
|
||||
url = http://www.eclipse.org/downloads/download.php?r=1&nf=1&file=/eclipse/downloads/drops/R-3.7.2-201202080800/eclipse-SDK-3.7.2-linux-gtk-x86_64.tar.gz;
|
||||
sha256 = "0nf4nv7awhp1k8b1hjb7chpjyjrqnyszsjbc4dlk9phpjv3j4wg5";
|
||||
};
|
||||
"i686-linux" = fetchurl {
|
||||
url = http://archive.eclipse.org/eclipse/downloads/drops/R-3.7.2-201202080800/eclipse-SDK-3.7.2-linux-gtk.tar.gz;
|
||||
url = http://www.eclipse.org/downloads/download.php?r=1&nf=1&file=/eclipse/downloads/drops/R-3.7.2-201202080800/eclipse-SDK-3.7.2-linux-gtk.tar.gz;
|
||||
sha256 = "1isn7i45l9kyn2yx6vm88jl1gnxph8ynank0aaa218cg8kdygk7j";
|
||||
};
|
||||
};
|
||||
|
@ -167,12 +167,12 @@ in {
|
|||
src =
|
||||
if stdenv.system == "x86_64-linux" then
|
||||
fetchurl {
|
||||
url = http://eclipse.ialto.com/technology/epp/downloads/release/indigo/R/eclipse-cpp-indigo-incubation-linux-gtk-x86_64.tar.gz;
|
||||
url = http://www.eclipse.org/downloads/download.php?r=1&nf=1&file=/technology/epp/downloads/release/indigo/R/eclipse-cpp-indigo-incubation-linux-gtk-x86_64.tar.gz;
|
||||
sha256 = "14ppc9g9igzvj1pq7jl01vwhzb66nmzbl9wsdl1sf3xnwa9wnqk3";
|
||||
}
|
||||
else
|
||||
fetchurl {
|
||||
url = http://eclipse.ialto.com/technology/epp/downloads/release/indigo/R/eclipse-cpp-indigo-incubation-linux-gtk.tar.gz;
|
||||
url = http://www.eclipse.org/downloads/download.php?r=1&nf=1&file=/technology/epp/downloads/release/indigo/R/eclipse-cpp-indigo-incubation-linux-gtk.tar.gz;
|
||||
sha256 = "1cvg1vgyazrkinwzlvlf0dpl197p4784752srqybqylyj5psdi3b";
|
||||
};
|
||||
};
|
||||
|
@ -183,12 +183,12 @@ in {
|
|||
src =
|
||||
if stdenv.system == "x86_64-linux" then
|
||||
fetchurl {
|
||||
url = http://eclipse.ialto.com/technology/epp/downloads/release/juno/SR2/eclipse-cpp-juno-SR2-linux-gtk-x86_64.tar.gz;
|
||||
url = http://www.eclipse.org/downloads/download.php?r=1&nf=1&file=/technology/epp/downloads/release/juno/SR2/eclipse-cpp-juno-SR2-linux-gtk-x86_64.tar.gz;
|
||||
sha256 = "1qq04926pf7v9sf3s0z53zvlbl1j0rmmjmbmhqi49473fnjikh7y";
|
||||
}
|
||||
else
|
||||
fetchurl {
|
||||
url = http://eclipse.ialto.com/technology/epp/downloads/release/juno/SR2/eclipse-cpp-juno-SR2-linux-gtk.tar.gz;
|
||||
url = http://www.eclipse.org/downloads/download.php?r=1&nf=1&file=/technology/epp/downloads/release/juno/SR2/eclipse-cpp-juno-SR2-linux-gtk.tar.gz;
|
||||
sha256 = "1a4s9qlhfpfpdhvffyglnfdr3dq5r2ywcxqywhqi95yhq5nmsgyk";
|
||||
};
|
||||
};
|
||||
|
@ -199,12 +199,12 @@ in {
|
|||
src =
|
||||
if stdenv.system == "x86_64-linux" then
|
||||
fetchurl {
|
||||
url = http://www.mirrorservice.org/sites/download.eclipse.org/eclipseMirror/technology/epp/downloads/release/kepler/SR2/eclipse-cpp-kepler-SR2-linux-gtk-x86_64.tar.gz;
|
||||
url = http://www.eclipse.org/downloads/download.php?r=1&nf=1&file=/technology/epp/downloads/release/kepler/SR2/eclipse-cpp-kepler-SR2-linux-gtk-x86_64.tar.gz;
|
||||
sha256 = "16zhjm6bx78263b1clg75kfiliahkhwg0k116vp9fj039nlpc30l";
|
||||
}
|
||||
else
|
||||
fetchurl {
|
||||
url = http://www.mirrorservice.org/sites/download.eclipse.org/eclipseMirror/technology/epp/downloads/release/kepler/SR2/eclipse-cpp-kepler-SR2-linux-gtk.tar.gz;
|
||||
url = http://www.eclipse.org/downloads/download.php?r=1&nf=1&file=/technology/epp/downloads/release/kepler/SR2/eclipse-cpp-kepler-SR2-linux-gtk.tar.gz;
|
||||
sha256 = "0d6jlj7hwz8blx6csrlyi2h2prql0wckbh7ihwjmgclwpcpj84g6";
|
||||
};
|
||||
};
|
||||
|
@ -215,16 +215,32 @@ in {
|
|||
src =
|
||||
if stdenv.system == "x86_64-linux" then
|
||||
fetchurl {
|
||||
url = http://www.mirrorservice.org/sites/download.eclipse.org/eclipseMirror/technology/epp/downloads/release/luna/R/eclipse-cpp-luna-R-linux-gtk-x86_64.tar.gz;
|
||||
url = http://www.eclipse.org/downloads/download.php?r=1&nf=1&file=/technology/epp/downloads/release/luna/R/eclipse-cpp-luna-R-linux-gtk-x86_64.tar.gz;
|
||||
md5 = "b0a6ee33e8108a7ff4682ab911271b04";
|
||||
}
|
||||
else
|
||||
fetchurl {
|
||||
url = http://www.mirrorservice.org/sites/download.eclipse.org/eclipseMirror/technology/epp/downloads/release/luna/R/eclipse-cpp-luna-R-linux-gtk.tar.gz;
|
||||
url = http://www.eclipse.org/downloads/download.php?r=1&nf=1&file=/technology/epp/downloads/release/luna/R/eclipse-cpp-luna-R-linux-gtk.tar.gz;
|
||||
md5 = "5000f93cecf6ef9af112f0df6e8c87f3";
|
||||
};
|
||||
};
|
||||
|
||||
eclipse_cpp_45 = buildEclipse {
|
||||
name = "eclipse-cpp-4.5";
|
||||
description = "Eclipse IDE for C/C++ Developers, Mars release";
|
||||
src =
|
||||
if stdenv.system == "x86_64-linux" then
|
||||
fetchurl {
|
||||
url = http://www.eclipse.org/downloads/download.php?r=1&nf=1&file=/technology/epp/downloads/release/mars/R/eclipse-cpp-mars-R-linux-gtk-x86_64.tar.gz;
|
||||
sha1 = "11f9583e23ae68eb675107e6c9acc48e0a2520ae";
|
||||
}
|
||||
else if stdenv.system == "i686-linux" then
|
||||
fetchurl {
|
||||
url = http://www.eclipse.org/downloads/download.php?r=1&nf=1&file=/technology/epp/downloads/release/mars/R/eclipse-cpp-mars-R-linux-gtk.tar.gz;
|
||||
sha1 = "45dddb8c8f2ec79b7e25cc13d93785863ffe4791";
|
||||
}
|
||||
else throw "Unsupported system: ${stdenv.system}";
|
||||
};
|
||||
|
||||
eclipse_sdk_421 = buildEclipse {
|
||||
name = "eclipse-sdk-4.2.1";
|
||||
|
@ -232,12 +248,12 @@ in {
|
|||
src =
|
||||
if stdenv.system == "x86_64-linux" then
|
||||
fetchurl {
|
||||
url = http://archive.eclipse.org/eclipse/downloads/drops4/R-4.2.1-201209141800/eclipse-SDK-4.2.1-linux-gtk-x86_64.tar.gz;
|
||||
url = http://www.eclipse.org/downloads/download.php?r=1&nf=1&file=/eclipse/downloads/drops4/R-4.2.1-201209141800/eclipse-SDK-4.2.1-linux-gtk-x86_64.tar.gz;
|
||||
sha256 = "1mlyy90lk08lb2971ynglgi3nqvqfq1k70md2kb39jk160wd1xrk";
|
||||
}
|
||||
else
|
||||
fetchurl {
|
||||
url = http://archive.eclipse.org/eclipse/downloads/drops4/R-4.2.1-201209141800/eclipse-SDK-4.2.1-linux-gtk.tar.gz;
|
||||
url = http://www.eclipse.org/downloads/download.php?r=1&nf=1&file=/eclipse/downloads/drops4/R-4.2.1-201209141800/eclipse-SDK-4.2.1-linux-gtk.tar.gz;
|
||||
sha256 = "1av6qm9wkbyk123qqf38f0jq4jv2bj9wp6fmpnl55zg6qr463c1w";
|
||||
};
|
||||
};
|
||||
|
@ -247,11 +263,11 @@ in {
|
|||
description = "Eclipse Classic";
|
||||
sources = {
|
||||
"x86_64-linux" = fetchurl {
|
||||
url = http://ftp-stud.fht-esslingen.de/pub/Mirrors/eclipse/eclipse/downloads/drops4/R-4.2.2-201302041200/eclipse-SDK-4.2.2-linux-gtk-x86_64.tar.gz;
|
||||
url = http://www.eclipse.org/downloads/download.php?r=1&nf=1&file=/eclipse/downloads/drops4/R-4.2.2-201302041200/eclipse-SDK-4.2.2-linux-gtk-x86_64.tar.gz;
|
||||
sha256 = "0ysa6ymk4h3k1vn59dc909iy197kmx132671kbzfwbim87jmgnqb";
|
||||
};
|
||||
"i686-linux" = fetchurl {
|
||||
url = http://ftp-stud.fht-esslingen.de/pub/Mirrors/eclipse/eclipse/downloads/drops4/R-4.2.2-201302041200/eclipse-SDK-4.2.2-linux-gtk.tar.gz;
|
||||
url = http://www.eclipse.org/downloads/download.php?r=1&nf=1&file=/eclipse/downloads/drops4/R-4.2.2-201302041200/eclipse-SDK-4.2.2-linux-gtk.tar.gz;
|
||||
sha256 = "038yibbrcia38wi72qrdl03g7l35mpvl5nxdfdnvpqxrkfffb826";
|
||||
};
|
||||
};
|
||||
|
@ -262,11 +278,11 @@ in {
|
|||
description = "Eclipse Classic";
|
||||
sources = {
|
||||
"x86_64-linux" = fetchurl {
|
||||
url = http://archive.eclipse.org/eclipse/downloads/drops4/R-4.3.1-201309111000/eclipse-SDK-4.3.1-linux-gtk-x86_64.tar.gz;
|
||||
url = http://www.eclipse.org/downloads/download.php?r=1&nf=1&file=/eclipse/downloads/drops4/R-4.3.1-201309111000/eclipse-SDK-4.3.1-linux-gtk-x86_64.tar.gz;
|
||||
sha256 = "0ncm56ylwxw9z8rk8ccgva68c2yr9yrf1kcr1zkgw6p87xh1yczd";
|
||||
};
|
||||
"i686-linux" = fetchurl {
|
||||
url = http://archive.eclipse.org/eclipse/downloads/drops4/R-4.3.1-201309111000/eclipse-SDK-4.3.1-linux-gtk.tar.gz;
|
||||
url = http://www.eclipse.org/downloads/download.php?r=1&nf=1&file=/eclipse/downloads/drops4/R-4.3.1-201309111000/eclipse-SDK-4.3.1-linux-gtk.tar.gz;
|
||||
sha256 = "1zxsh838khny7mvl01h28xna6xdh01yi4mvls28zj22v0340lgsg";
|
||||
};
|
||||
};
|
||||
|
@ -277,11 +293,11 @@ in {
|
|||
description = "Eclipse Classic";
|
||||
sources = {
|
||||
"x86_64-linux" = fetchurl {
|
||||
url = http://archive.eclipse.org/eclipse/downloads/drops4/R-4.4-201406061215/eclipse-SDK-4.4-linux-gtk-x86_64.tar.gz;
|
||||
url = http://www.eclipse.org/downloads/download.php?r=1&nf=1&file=/eclipse/downloads/drops4/R-4.4-201406061215/eclipse-SDK-4.4-linux-gtk-x86_64.tar.gz;
|
||||
sha256 = "14hdkijsjq0hhzi9ijpwjjkhz7wm0pry86l3dniy5snlh3l5bsb2";
|
||||
};
|
||||
"i686-linux" = fetchurl {
|
||||
url = http://archive.eclipse.org/eclipse/downloads/drops4/R-4.4-201406061215/eclipse-SDK-4.4-linux-gtk.tar.gz;
|
||||
url = http://www.eclipse.org/downloads/download.php?r=1&nf=1&file=/eclipse/downloads/drops4/R-4.4-201406061215/eclipse-SDK-4.4-linux-gtk.tar.gz;
|
||||
sha256 = "0hjc4zrsmik6vff851p0a4ydnx99840j2xrx8348kk6h0af8vx6z";
|
||||
};
|
||||
};
|
||||
|
@ -292,12 +308,12 @@ in {
|
|||
description = "Eclipse Classic";
|
||||
sources = {
|
||||
"x86_64-linux" = fetchurl {
|
||||
url = http://download.eclipse.org/eclipse/downloads/drops4/R-4.4.2-201502041700/eclipse-SDK-4.4.2-linux-gtk-x86_64.tar.gz;
|
||||
url = http://www.eclipse.org/downloads/download.php?r=1&nf=1&file=/eclipse/downloads/drops4/R-4.4.2-201502041700/eclipse-SDK-4.4.2-linux-gtk-x86_64.tar.gz;
|
||||
sha256 = "0g00alsixfaakmn4khr0m9fxvkrbhbg6qqfa27xr6a9np6gzg98l";
|
||||
|
||||
};
|
||||
"i686-linux" = fetchurl {
|
||||
url = http://download.eclipse.org/eclipse/downloads/drops4/R-4.4.2-201502041700/eclipse-SDK-4.4.2-linux-gtk.tar.gz;
|
||||
url = http://www.eclipse.org/downloads/download.php?r=1&nf=1&file=/eclipse/downloads/drops4/R-4.4.2-201502041700/eclipse-SDK-4.4.2-linux-gtk.tar.gz;
|
||||
sha256 = "1hacyjjwhhxi7r3xyhpqgjqpd5r0irw9bfkalz5s5l6shb0lq4i7";
|
||||
};
|
||||
};
|
||||
|
@ -308,12 +324,12 @@ in {
|
|||
description = "Eclipse Mars Classic";
|
||||
sources = {
|
||||
"x86_64-linux" = fetchurl {
|
||||
url = http://download.eclipse.org/eclipse/downloads/drops4/R-4.5-201506032000/eclipse-SDK-4.5-linux-gtk-x86_64.tar.gz;
|
||||
url = http://www.eclipse.org/downloads/download.php?r=1&nf=1&file=/eclipse/downloads/drops4/R-4.5-201506032000/eclipse-SDK-4.5-linux-gtk-x86_64.tar.gz;
|
||||
sha256 = "0vfql4gh263ms8bg7sgn05gnjajplx304cn3nr03jlacgr3pkarf";
|
||||
|
||||
};
|
||||
"i686-linux" = fetchurl {
|
||||
url = http://download.eclipse.org/eclipse/downloads/drops4/R-4.5-201506032000/eclipse-SDK-4.5-linux-gtk.tar.gz;
|
||||
url = http://www.eclipse.org/downloads/download.php?r=1&nf=1&file=/eclipse/downloads/drops4/R-4.5-201506032000/eclipse-SDK-4.5-linux-gtk.tar.gz;
|
||||
sha256 = "0xv66l6hdlvxpswcqrsh398wg6xhy30f833dr7jvvz45s5437hm3";
|
||||
};
|
||||
};
|
||||
|
|
|
@ -1,4 +1,4 @@
|
|||
{stdenv, fetchurl, guile, libX11, libXext, xmodmap, which, makeWrapper, freetype,
|
||||
{stdenv, fetchurl, guile_1_8, qt4, zlib, xmodmap, which, makeWrapper, freetype,
|
||||
tex ? null,
|
||||
aspell ? null,
|
||||
ghostscriptX ? null,
|
||||
|
@ -9,7 +9,7 @@
|
|||
|
||||
let
|
||||
pname = "TeXmacs";
|
||||
version = "1.0.7.11";
|
||||
version = "1.99.2";
|
||||
extraFontsSrc = fetchurl {
|
||||
url = "ftp://ftp.texmacs.org/pub/TeXmacs/fonts/TeXmacs-extra-fonts-1.0-noarch.tar.gz";
|
||||
sha256 = "0hylgjmd95y9yahbblmawkkw0i71vb145xxv2xqrmff81301n6k7";
|
||||
|
@ -39,11 +39,11 @@ stdenv.mkDerivation rec {
|
|||
name = "${pname}-${version}";
|
||||
|
||||
src = fetchurl {
|
||||
url = "ftp://ftp.texmacs.org/pub/${pname}/targz/${name}-src.tar.gz";
|
||||
sha256 = "0x1r9417dzbrxf785faq1vjszqdj94ig2lzwm8sd92bxcxr6knfa";
|
||||
url = "http://www.texmacs.org/Download/ftp/tmftp/source/TeXmacs-${version}-src.tar.gz";
|
||||
sha256 = "0l48g9746igiaxw657shm8g3xxk565vzsviajlrxqyljbh6py0fs";
|
||||
};
|
||||
|
||||
buildInputs = [ guile libX11 libXext makeWrapper ghostscriptX freetype ];
|
||||
buildInputs = [ guile_1_8 qt4 makeWrapper ghostscriptX freetype ];
|
||||
|
||||
patchPhase = (if tex == null then ''
|
||||
gunzip < ${fullFontsSrc} | (cd TeXmacs && tar xvf -)
|
||||
|
@ -66,6 +66,12 @@ stdenv.mkDerivation rec {
|
|||
(if tex == null then "" else "${tex}/bin:") +
|
||||
"${xmodmap}/bin:${which}/bin";
|
||||
|
||||
postFixup = ''
|
||||
bin="$out/libexec/TeXmacs/bin/texmacs.bin"
|
||||
rpath=$(patchelf --print-rpath "$bin")
|
||||
patchelf --set-rpath "$rpath:${zlib}/lib" "$bin"
|
||||
'';
|
||||
|
||||
meta = {
|
||||
description = "WYSIWYW editing platform with special features for scientists";
|
||||
longDescription =
|
||||
|
|
46
pkgs/applications/misc/hamster-time-tracker/default.nix
Normal file
46
pkgs/applications/misc/hamster-time-tracker/default.nix
Normal file
|
@ -0,0 +1,46 @@
|
|||
{ stdenv, fetchzip, buildPythonPackage, docbook2x, libxslt, gnome_doc_utils
|
||||
, intltool, dbus_glib, pygobject, pygtk, pyxdg, gnome_python, dbus, sqlite3
|
||||
}:
|
||||
|
||||
# TODO: Add optional dependency 'wnck', for "workspace tracking" support. Fixes
|
||||
# this message:
|
||||
#
|
||||
# WARNING:root:Could not import wnck - workspace tracking will be disabled
|
||||
|
||||
buildPythonPackage rec {
|
||||
name = "hamster-time-tracker-1.04";
|
||||
namePrefix = "";
|
||||
|
||||
src = fetchzip {
|
||||
name = "${name}-src";
|
||||
url = "https://github.com/projecthamster/hamster/archive/${name}.tar.gz";
|
||||
sha256 = "1a85rcg561792kdyv744cgzw7mmpmgv6d6li1sijfdpqa1ninf8g";
|
||||
};
|
||||
|
||||
buildInputs = [ docbook2x libxslt gnome_doc_utils intltool dbus_glib ];
|
||||
|
||||
propagatedBuildInputs = [ pygobject pygtk pyxdg gnome_python dbus sqlite3 ];
|
||||
|
||||
configurePhase = ''
|
||||
python waf configure --prefix="$out"
|
||||
'';
|
||||
|
||||
buildPhase = ''
|
||||
python waf build
|
||||
'';
|
||||
|
||||
installPhase = ''
|
||||
python waf install
|
||||
'';
|
||||
|
||||
# error: invalid command 'test'
|
||||
doCheck = false;
|
||||
|
||||
meta = with stdenv.lib; {
|
||||
description = "Time tracking application";
|
||||
homepage = https://projecthamster.wordpress.com/;
|
||||
license = licenses.gpl3;
|
||||
platforms = platforms.all;
|
||||
maintainers = [ maintainers.bjornfor ];
|
||||
};
|
||||
}
|
34
pkgs/applications/misc/synapse/default.nix
Normal file
34
pkgs/applications/misc/synapse/default.nix
Normal file
|
@ -0,0 +1,34 @@
|
|||
{ stdenv, fetchurl, intltool, pkgconfig, glib, libnotify, gtk3, libgee
|
||||
, keybinder3, json_glib, zeitgeist, vala
|
||||
}:
|
||||
|
||||
with stdenv.lib;
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
name = "synapse-0.2.99.1";
|
||||
|
||||
src = fetchurl {
|
||||
url = "https://launchpad.net/synapse-project/0.3/0.2.99.1/+download/${name}.tar.xz";
|
||||
sha256 = "846d8a5130580bb47c754bb7f20dc76311e589c00a18b02370a5d78b52409220";
|
||||
};
|
||||
|
||||
buildInputs = [
|
||||
intltool pkgconfig glib libnotify gtk3 libgee keybinder3 json_glib zeitgeist
|
||||
vala
|
||||
];
|
||||
|
||||
meta = {
|
||||
longDescription = ''
|
||||
Semantic launcher written in Vala that you can use to start applications
|
||||
as well as find and access relevant documents and files by making use of
|
||||
the Zeitgeist engine
|
||||
'';
|
||||
description = ''
|
||||
Semantic launcher to start applications and find relevant files
|
||||
'';
|
||||
homepage = https://launchpad.net/synapse-project;
|
||||
license = stdenv.lib.licenses.gpl3;
|
||||
maintainers = with stdenv.lib.maintainers; mahe;
|
||||
platforms = with stdenv.lib.platforms; all;
|
||||
};
|
||||
}
|
|
@ -1,14 +1,14 @@
|
|||
{ stdenv, fetchFromGitHub, python34Packages, readline, ncurses, canto-daemon }:
|
||||
|
||||
python34Packages.buildPythonPackage rec {
|
||||
version = "0.9.4";
|
||||
version = "0.9.6";
|
||||
name = "canto-curses-${version}";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "themoken";
|
||||
repo = "canto-curses";
|
||||
rev = "v${version}";
|
||||
sha256 = "0g1ckcb9xcfb0af17zssiqcrfry87agx578vd40nb6gbw90ql4fn";
|
||||
sha256 = "0hxzpx314cflxq68gswjf2vrqf1z1ci9mxhxgwrk7sa6di86ygy0";
|
||||
};
|
||||
|
||||
buildInputs = [ readline ncurses canto-daemon ];
|
||||
|
|
|
@ -1,7 +1,7 @@
|
|||
{ stdenv, fetchFromGitHub, python34Packages, }:
|
||||
|
||||
python34Packages.buildPythonPackage rec {
|
||||
version = "0.9.3";
|
||||
version = "0.9.5";
|
||||
name = "canto-daemon-${version}";
|
||||
namePrefix = "";
|
||||
|
||||
|
@ -9,7 +9,7 @@ python34Packages.buildPythonPackage rec {
|
|||
owner = "themoken";
|
||||
repo = "canto-next";
|
||||
rev = "v${version}";
|
||||
sha256 = "1x875qdyhab89nwwa2bzbfvcrkx34zwyy8dlbxm8wg3vz9b78l61";
|
||||
sha256 = "1ycwrg5n2il833mdxgzz07r0vb4rxz89rk5c6l9g5x33ifinykdq";
|
||||
};
|
||||
|
||||
propagatedBuildInputs = with python34Packages; [ feedparser ];
|
||||
|
|
|
@ -1,12 +1,12 @@
|
|||
{ stdenv, fetchurl, cups, libssh, libXpm, nxproxy, openldap, makeWrapper, qt4 }:
|
||||
|
||||
let version = "4.0.4.0"; in
|
||||
let version = "4.0.5.0"; in
|
||||
stdenv.mkDerivation rec {
|
||||
name = "x2goclient-${version}";
|
||||
|
||||
src = fetchurl {
|
||||
url = "http://code.x2go.org/releases/source/x2goclient/${name}.tar.gz";
|
||||
sha256 = "0mqn4nvq2w7qja5i4vx9fg2spwzl01p0hmfwbjb0mzir03hmrl46";
|
||||
sha256 = "18a2pszh0nq2ir64a1ah1mlzddn4qcd12b339bv30n0y1ir92bi4";
|
||||
};
|
||||
|
||||
meta = with stdenv.lib; {
|
||||
|
|
47
pkgs/applications/window-managers/qtile/default.nix
Normal file
47
pkgs/applications/window-managers/qtile/default.nix
Normal file
|
@ -0,0 +1,47 @@
|
|||
{ stdenv, fetchFromGitHub, buildPythonPackage, python27Packages, pkgs }:
|
||||
|
||||
buildPythonPackage rec {
|
||||
name = "qtile-${version}";
|
||||
version = "0.10.1";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "qtile";
|
||||
repo = "qtile";
|
||||
rev = "v${version}";
|
||||
sha256 = "1g02lvk2cqy6w6y6nw6dnsmy4i9k4fyawyibpkf0a7a1nfrd6a99";
|
||||
};
|
||||
|
||||
patches = [ ./restart_executable.patch ];
|
||||
|
||||
postPatch = ''
|
||||
substituteInPlace libqtile/manager.py --subst-var-by out $out
|
||||
'';
|
||||
|
||||
buildInputs = [ pkgs.pkgconfig pkgs.glib pkgs.xlibs.libxcb pkgs.cairo pkgs.pango python27Packages.xcffib ];
|
||||
|
||||
cairocffi-xcffib = python27Packages.cairocffi.override {
|
||||
LD_LIBRARY_PATH = "${pkgs.xlibs.libxcb}/lib:${pkgs.cairo}/lib";
|
||||
pythonPath = [ python27Packages.xcffib ];
|
||||
};
|
||||
|
||||
pythonPath = with python27Packages; [ xcffib cairocffi-xcffib trollius readline ];
|
||||
|
||||
LD_LIBRARY_PATH = "${pkgs.xlibs.libxcb}/lib:${pkgs.cairo}/lib";
|
||||
|
||||
postInstall = ''
|
||||
wrapProgram $out/bin/qtile \
|
||||
--prefix LD_LIBRARY_PATH : ${pkgs.xlibs.libxcb}/lib \
|
||||
--prefix LD_LIBRARY_PATH : ${pkgs.glib}/lib \
|
||||
--prefix LD_LIBRARY_PATH : ${pkgs.cairo}/lib \
|
||||
--prefix LD_LIBRARY_PATH : ${pkgs.pango}/lib
|
||||
'';
|
||||
|
||||
meta = with stdenv.lib; {
|
||||
homepage = http://www.qtile.org/;
|
||||
license = licenses.mit;
|
||||
description = "A small, flexible, scriptable tiling window manager written in Python";
|
||||
platforms = platforms.linux;
|
||||
maintainers = with maintainers; [ kamilchm ];
|
||||
};
|
||||
}
|
||||
|
|
@ -0,0 +1,12 @@
|
|||
diff -ruP a/libqtile/manager.py b/libqtile/manager.py
|
||||
--- a/libqtile/manager.py 2015-07-26 21:26:16.947976520 +0200
|
||||
+++ b/libqtile/manager.py 2015-07-26 21:37:45.581316712 +0200
|
||||
@@ -1262,7 +1262,7 @@
|
||||
argv = [s for s in argv if not s.startswith('--with-state')]
|
||||
argv.append('--with-state=' + buf.getvalue().decode())
|
||||
|
||||
- self.cmd_execute(sys.executable, argv)
|
||||
+ self.cmd_execute("@out@/bin/qtile", argv[1:])
|
||||
|
||||
def cmd_spawn(self, cmd):
|
||||
"""
|
33
pkgs/build-support/setup-hooks/wrap-gapps-hook.sh
Normal file
33
pkgs/build-support/setup-hooks/wrap-gapps-hook.sh
Normal file
|
@ -0,0 +1,33 @@
|
|||
gappsWrapperArgs=()
|
||||
|
||||
wrapGAppsHook() {
|
||||
if [ -n "$GDK_PIXBUF_MODULE_FILE" ]; then
|
||||
gappsWrapperArgs+=(--set GDK_PIXBUF_MODULE_FILE "$GDK_PIXBUF_MODULE_FILE")
|
||||
fi
|
||||
|
||||
if [ -n "$XDG_ICON_DIRS" ]; then
|
||||
gappsWrapperArgs+=(--prefix XDG_DATA_DIRS : "$XDG_ICON_DIRS")
|
||||
fi
|
||||
|
||||
if [ -n "$GSETTINGS_SCHEMAS_PATH" ]; then
|
||||
gappsWrapperArgs+=(--prefix XDG_DATA_DIRS : "$GSETTINGS_SCHEMAS_PATH")
|
||||
fi
|
||||
|
||||
if [ -d "$prefix/share" ]; then
|
||||
gappsWrapperArgs+=(--prefix XDG_DATA_DIRS : "$out/share")
|
||||
fi
|
||||
|
||||
for v in $wrapPrefixVariables GST_PLUGIN_SYSTEM_PATH_1_0 GI_TYPELIB_PATH GRL_PLUGIN_PATH; do
|
||||
eval local dummy="\$$v"
|
||||
gappsWrapperArgs+=(--prefix $v : "$dummy")
|
||||
done
|
||||
|
||||
if [ -z "$dontWrapGApps" ]; then
|
||||
for i in $prefix/bin/* $prefix/libexec/*; do
|
||||
echo "Wrapping app $i"
|
||||
wrapProgram "$i" "${gappsWrapperArgs[@]}"
|
||||
done
|
||||
fi
|
||||
}
|
||||
|
||||
fixupOutputHooks+=(wrapGAppsHook)
|
13
pkgs/data/sgml+xml/schemas/xml-dtd/docbook/4.4.nix
Normal file
13
pkgs/data/sgml+xml/schemas/xml-dtd/docbook/4.4.nix
Normal file
|
@ -0,0 +1,13 @@
|
|||
{stdenv, fetchurl, unzip}:
|
||||
|
||||
import ./generic.nix {
|
||||
inherit stdenv fetchurl unzip;
|
||||
name = "docbook-xml-4.4";
|
||||
src = fetchurl {
|
||||
url = http://www.docbook.org/xml/4.4/docbook-xml-4.4.zip;
|
||||
sha256 = "141h4zsyc71sfi2zzd89v4bb4qqq9ca1ri9ix2als9f4i3mmkw82";
|
||||
};
|
||||
meta = {
|
||||
branch = "4.4";
|
||||
};
|
||||
}
|
|
@ -11,6 +11,9 @@ stdenv.mkDerivation rec {
|
|||
|
||||
nativeBuildInputs = [ pkgconfig intltool iconnamingutils gtk ];
|
||||
|
||||
# remove a tree of dirs with no files within
|
||||
postInstall = '' rm -r "$out/share/locale" '';
|
||||
|
||||
meta = {
|
||||
platforms = stdenv.lib.platforms.linux;
|
||||
};
|
||||
|
|
|
@ -35,7 +35,7 @@ stdenv.mkDerivation rec {
|
|||
meta = with stdenv.lib; {
|
||||
homepage = https://wiki.gnome.org/Apps/Bijiben;
|
||||
description = "Note editor designed to remain simple to use";
|
||||
maintainers = with maintainers; [ lethalman ];
|
||||
maintainers = gnome3.maintainers;
|
||||
license = licenses.gpl3;
|
||||
platforms = platforms.linux;
|
||||
};
|
||||
|
|
|
@ -48,7 +48,7 @@ in stdenv.mkDerivation rec {
|
|||
meta = with stdenv.lib; {
|
||||
homepage = https://wiki.gnome.org/Apps/Evolution;
|
||||
description = "Personal information management application that provides integrated mail, calendaring and address book functionality";
|
||||
maintainers = with maintainers; [ lethalman ];
|
||||
maintainers = gnome3.maintainers;
|
||||
license = licenses.lgpl2Plus;
|
||||
platforms = platforms.linux;
|
||||
};
|
||||
|
|
|
@ -28,6 +28,6 @@ stdenv.mkDerivation rec {
|
|||
homepage = https://wiki.gnome.org/Apps/FileRoller;
|
||||
description = "Archive manager for the GNOME desktop environment";
|
||||
platforms = platforms.linux;
|
||||
maintainers = [ maintainers.lethalman ];
|
||||
maintainers = gnome3.maintainers;
|
||||
};
|
||||
}
|
||||
|
|
|
@ -32,7 +32,7 @@ stdenv.mkDerivation rec {
|
|||
meta = with stdenv.lib; {
|
||||
homepage = https://wiki.gnome.org/Apps/Gedit;
|
||||
description = "Official text editor of the GNOME desktop environment";
|
||||
maintainers = with maintainers; [ lethalman ];
|
||||
maintainers = gnome3.maintainers;
|
||||
license = licenses.gpl2;
|
||||
platforms = platforms.linux;
|
||||
};
|
||||
|
|
|
@ -29,7 +29,7 @@ stdenv.mkDerivation rec {
|
|||
meta = with stdenv.lib; {
|
||||
homepage = https://wiki.gnome.org/Apps/Glade;
|
||||
description = "User interface designer for GTK+ applications";
|
||||
maintainers = with maintainers; [ lethalman ];
|
||||
maintainers = gnome3.maintainers;
|
||||
license = licenses.lgpl2;
|
||||
platforms = platforms.linux;
|
||||
};
|
||||
|
|
|
@ -1,7 +1,7 @@
|
|||
{ stdenv, intltool, fetchurl, libgweather, libnotify
|
||||
, pkgconfig, gtk3, glib, hicolor_icon_theme, gsound
|
||||
, makeWrapper, itstool, libcanberra_gtk3, libtool
|
||||
, gnome3, librsvg, gdk_pixbuf, geoclue2 }:
|
||||
, gnome3, librsvg, gdk_pixbuf, geoclue2, wrapGAppsHook }:
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
name = "gnome-clocks-${gnome3.version}.1";
|
||||
|
@ -13,27 +13,19 @@ stdenv.mkDerivation rec {
|
|||
|
||||
doCheck = true;
|
||||
|
||||
propagatedUserEnvPkgs = [ gnome3.gnome_themes_standard ];
|
||||
|
||||
buildInputs = [ pkgconfig gtk3 glib intltool itstool libcanberra_gtk3
|
||||
gnome3.gsettings_desktop_schemas makeWrapper
|
||||
gdk_pixbuf gnome3.adwaita-icon-theme librsvg
|
||||
gnome3.gnome_desktop gnome3.geocode_glib geoclue2
|
||||
libgweather libnotify libtool gsound
|
||||
hicolor_icon_theme gnome3.adwaita-icon-theme ];
|
||||
hicolor_icon_theme wrapGAppsHook ];
|
||||
|
||||
enableParallelBuilding = true;
|
||||
|
||||
preFixup = ''
|
||||
wrapProgram "$out/bin/gnome-clocks" \
|
||||
--set GDK_PIXBUF_MODULE_FILE "$GDK_PIXBUF_MODULE_FILE" \
|
||||
--prefix XDG_DATA_DIRS : "${gnome3.gnome_themes_standard}/share:$out/share:$XDG_ICON_DIRS:$GSETTINGS_SCHEMAS_PATH"
|
||||
'';
|
||||
|
||||
meta = with stdenv.lib; {
|
||||
homepage = https://wiki.gnome.org/Apps/Clocks;
|
||||
description = "Clock application designed for GNOME 3";
|
||||
maintainers = with maintainers; [ lethalman ];
|
||||
maintainers = gnome3.maintainers;
|
||||
license = licenses.gpl2;
|
||||
platforms = platforms.linux;
|
||||
};
|
||||
|
|
|
@ -2,8 +2,8 @@
|
|||
, pkgconfig, gtk3, glib, hicolor_icon_theme
|
||||
, makeWrapper, itstool, libxslt, webkitgtk
|
||||
, gnome3, librsvg, gdk_pixbuf, libsoup, docbook_xsl
|
||||
, gobjectIntrospection, json_glib
|
||||
, gmp, desktop_file_utils }:
|
||||
, gobjectIntrospection, json_glib, inkscape, poppler_utils
|
||||
, gmp, desktop_file_utils, wrapGAppsHook }:
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
name = "gnome-documents-${gnome3.version}.0";
|
||||
|
@ -15,36 +15,29 @@ stdenv.mkDerivation rec {
|
|||
|
||||
doCheck = true;
|
||||
|
||||
propagatedUserEnvPkgs = [ gnome3.gnome_themes_standard ];
|
||||
configureFlags = [ "--enable-getting-started" ];
|
||||
|
||||
buildInputs = [ pkgconfig gtk3 glib intltool itstool libxslt
|
||||
docbook_xsl desktop_file_utils
|
||||
docbook_xsl desktop_file_utils inkscape poppler_utils
|
||||
gnome3.gsettings_desktop_schemas makeWrapper gmp
|
||||
gdk_pixbuf gnome3.adwaita-icon-theme librsvg evince
|
||||
libsoup webkitgtk gjs gobjectIntrospection gnome3.rest
|
||||
gnome3.tracker gnome3.libgdata gnome3.gnome_online_accounts
|
||||
gnome3.gnome_desktop gnome3.libzapojit json_glib
|
||||
hicolor_icon_theme gnome3.adwaita-icon-theme ];
|
||||
wrapGAppsHook ];
|
||||
|
||||
enableParallelBuilding = true;
|
||||
|
||||
preFixup =
|
||||
''
|
||||
preFixup = ''
|
||||
substituteInPlace $out/bin/gnome-documents --replace gapplication "${glib}/bin/gapplication"
|
||||
|
||||
for f in $out/bin/* $out/libexec/*; do
|
||||
wrapProgram "$f" \
|
||||
--set GDK_PIXBUF_MODULE_FILE "$GDK_PIXBUF_MODULE_FILE" \
|
||||
--prefix GI_TYPELIB_PATH : "$GI_TYPELIB_PATH" \
|
||||
--prefix XDG_DATA_DIRS : "${gnome3.gnome_themes_standard}/share:$XDG_ICON_DIRS:$GSETTINGS_SCHEMAS_PATH" \
|
||||
--run "if [ -z \"\$XDG_CACHE_DIR\" ]; then XDG_CACHE_DIR=\$HOME/.cache; fi; if [ -w \"\$XDG_CACHE_DIR/..\" ]; then mkdir -p \"\$XDG_CACHE_DIR/gnome-documents\"; fi"
|
||||
done
|
||||
gappsWrapperArgs+=(--run 'if [ -z "$XDG_CACHE_DIR" ]; then XDG_CACHE_DIR=$HOME/.cache; fi; if [ -w "$XDG_CACHE_DIR/.." ]; then mkdir -p "$XDG_CACHE_DIR/gnome-documents"; fi')
|
||||
'';
|
||||
|
||||
meta = with stdenv.lib; {
|
||||
homepage = https://wiki.gnome.org/Apps/Documents;
|
||||
description = "Document manager application designed to work with GNOME 3";
|
||||
maintainers = with maintainers; [ lethalman ];
|
||||
maintainers = gnome3.maintainers;
|
||||
license = licenses.gpl2;
|
||||
platforms = platforms.linux;
|
||||
};
|
||||
|
|
|
@ -1,5 +1,5 @@
|
|||
{ stdenv, intltool, fetchurl, gdk_pixbuf, tracker
|
||||
, python3, libxml2, python3Packages, libnotify
|
||||
, python3, libxml2, python3Packages, libnotify, wrapGAppsHook
|
||||
, pkgconfig, gtk3, glib, hicolor_icon_theme, cairo
|
||||
, makeWrapper, itstool, gnome3, librsvg, gst_all_1 }:
|
||||
|
||||
|
@ -15,29 +15,21 @@ stdenv.mkDerivation rec {
|
|||
|
||||
buildInputs = [ pkgconfig gtk3 glib intltool itstool gnome3.libmediaart
|
||||
gdk_pixbuf gnome3.adwaita-icon-theme librsvg python3
|
||||
gnome3.grilo libxml2 python3Packages.pygobject3 libnotify
|
||||
gnome3.grilo gnome3.grilo-plugins libxml2 python3Packages.pygobject3 libnotify
|
||||
python3Packages.pycairo python3Packages.dbus gnome3.totem-pl-parser
|
||||
gst_all_1.gstreamer gst_all_1.gst-plugins-base
|
||||
gst_all_1.gst-plugins-good gst_all_1.gst-plugins-bad
|
||||
hicolor_icon_theme gnome3.adwaita-icon-theme
|
||||
hicolor_icon_theme gnome3.adwaita-icon-theme wrapGAppsHook
|
||||
gnome3.gsettings_desktop_schemas makeWrapper tracker ];
|
||||
|
||||
enableParallelBuilding = true;
|
||||
wrapPrefixVariables = [ "PYTHONPATH" ];
|
||||
|
||||
preFixup = ''
|
||||
wrapProgram "$out/bin/gnome-music" \
|
||||
--set GDK_PIXBUF_MODULE_FILE "$GDK_PIXBUF_MODULE_FILE" \
|
||||
--prefix XDG_DATA_DIRS : "${gnome3.gnome_themes_standard}/share:$XDG_ICON_DIRS:$GSETTINGS_SCHEMAS_PATH" \
|
||||
--prefix GI_TYPELIB_PATH : "$GI_TYPELIB_PATH" \
|
||||
--prefix GST_PLUGIN_SYSTEM_PATH_1_0 : "$GST_PLUGIN_SYSTEM_PATH_1_0" \
|
||||
--prefix GRL_PLUGIN_PATH : "${gnome3.grilo-plugins}/lib/grilo-0.2" \
|
||||
--prefix PYTHONPATH : "$PYTHONPATH"
|
||||
'';
|
||||
enableParallelBuilding = true;
|
||||
|
||||
meta = with stdenv.lib; {
|
||||
homepage = https://wiki.gnome.org/Apps/Music;
|
||||
description = "Music player and management application for the GNOME desktop environment";
|
||||
maintainers = with maintainers; [ lethalman ];
|
||||
maintainers = gnome3.maintainers;
|
||||
license = licenses.gpl2;
|
||||
platforms = platforms.linux;
|
||||
};
|
||||
|
|
|
@ -1,7 +1,7 @@
|
|||
{ stdenv, intltool, fetchurl, exempi, libxml2
|
||||
, pkgconfig, gtk3, glib, hicolor_icon_theme
|
||||
, makeWrapper, itstool, gegl, babl, lcms2
|
||||
, desktop_file_utils, gmp, libmediaart
|
||||
, desktop_file_utils, gmp, libmediaart, wrapGAppsHook
|
||||
, gnome3, librsvg, gdk_pixbuf, libexif }:
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
|
@ -14,8 +14,6 @@ stdenv.mkDerivation rec {
|
|||
|
||||
# doCheck = true;
|
||||
|
||||
propagatedUserEnvPkgs = [ gnome3.gnome_themes_standard ];
|
||||
|
||||
NIX_CFLAGS_COMPILE = "-I${gnome3.glib}/include/gio-unix-2.0";
|
||||
|
||||
buildInputs = [ pkgconfig gtk3 glib intltool itstool gegl babl gnome3.libgdata
|
||||
|
@ -24,23 +22,14 @@ stdenv.mkDerivation rec {
|
|||
gnome3.gfbgraph gnome3.grilo-plugins gnome3.grilo
|
||||
gnome3.gnome_online_accounts gnome3.gnome_desktop
|
||||
lcms2 libexif gnome3.tracker libxml2 desktop_file_utils
|
||||
hicolor_icon_theme gnome3.adwaita-icon-theme ];
|
||||
|
||||
preFixup = ''
|
||||
for f in $out/bin/* $out/libexec/*; do
|
||||
wrapProgram "$f" \
|
||||
--set GDK_PIXBUF_MODULE_FILE "$GDK_PIXBUF_MODULE_FILE" \
|
||||
--prefix GRL_PLUGIN_PATH : "${gnome3.grilo-plugins}/lib/grilo-0.2" \
|
||||
--prefix XDG_DATA_DIRS : "${gnome3.gnome_themes_standard}/share:$out/share:$XDG_ICON_DIRS:$GSETTINGS_SCHEMAS_PATH"
|
||||
done
|
||||
'';
|
||||
wrapGAppsHook ];
|
||||
|
||||
enableParallelBuilding = true;
|
||||
|
||||
meta = with stdenv.lib; {
|
||||
homepage = https://wiki.gnome.org/Apps/Photos;
|
||||
description = "Photos is an application to access, organize and share your photos with GNOME 3";
|
||||
maintainers = with maintainers; [ lethalman ];
|
||||
maintainers = gnome3.maintainers;
|
||||
license = licenses.gpl2;
|
||||
platforms = platforms.linux;
|
||||
};
|
||||
|
|
|
@ -15,7 +15,7 @@ stdenv.mkDerivation rec {
|
|||
|
||||
meta = with stdenv.lib; {
|
||||
description = "Integrates Evolution and Pidgin into the Nautilus file manager";
|
||||
maintainers = with maintainers; [ lethalman ];
|
||||
maintainers = gnome3.maintainers;
|
||||
license = licenses.gpl2;
|
||||
platforms = platforms.linux;
|
||||
};
|
||||
|
|
|
@ -35,7 +35,7 @@ in stdenv.mkDerivation rec {
|
|||
meta = with stdenv.lib; {
|
||||
homepage = https://wiki.gnome.org/Apps/Seahorse;
|
||||
description = "Application for managing encryption keys and passwords in the GnomeKeyring";
|
||||
maintainers = with maintainers; [ lethalman ];
|
||||
maintainers = gnome3.maintainers;
|
||||
license = licenses.gpl2;
|
||||
platforms = platforms.linux;
|
||||
};
|
||||
|
|
|
@ -24,6 +24,6 @@ stdenv.mkDerivation rec {
|
|||
homepage = https://wiki.gnome.org/Apps/Vinagre;
|
||||
description = "Remote desktop viewer for GNOME";
|
||||
platforms = platforms.linux;
|
||||
maintainers = [ maintainers.lethalman ];
|
||||
maintainers = gnome3.maintainers;
|
||||
};
|
||||
}
|
||||
|
|
|
@ -13,11 +13,14 @@ stdenv.mkDerivation rec {
|
|||
propagatedBuildInputs = [ hicolor_icon_theme ];
|
||||
|
||||
buildInputs = [ gdk_pixbuf librsvg ];
|
||||
|
||||
|
||||
nativeBuildInputs = [ pkgconfig intltool iconnamingutils gtk ];
|
||||
|
||||
# remove a tree of dirs with no files within
|
||||
postInstall = '' rm -r "$out/locale" '';
|
||||
|
||||
meta = with stdenv.lib; {
|
||||
platforms = platforms.linux;
|
||||
maintainers = [ maintainers.lethalman ];
|
||||
maintainers = gnome3.maintainers;
|
||||
};
|
||||
}
|
||||
|
|
|
@ -31,7 +31,7 @@ stdenv.mkDerivation rec {
|
|||
meta = with stdenv.lib; {
|
||||
homepage = https://wiki.gnome.org/Apps/Baobab;
|
||||
description = "Graphical application to analyse disk usage in any Gnome environment";
|
||||
maintainers = with maintainers; [ lethalman ];
|
||||
maintainers = gnome3.maintainers;
|
||||
license = licenses.gpl2;
|
||||
platforms = platforms.linux;
|
||||
};
|
||||
|
|
|
@ -25,7 +25,7 @@ stdenv.mkDerivation rec {
|
|||
|
||||
meta = with stdenv.lib; {
|
||||
platforms = platforms.linux;
|
||||
maintainers = [ maintainers.lethalman ];
|
||||
maintainers = gnome3.maintainers;
|
||||
};
|
||||
|
||||
}
|
||||
|
|
|
@ -23,6 +23,6 @@ stdenv.mkDerivation rec {
|
|||
|
||||
meta = with stdenv.lib; {
|
||||
platforms = platforms.linux;
|
||||
maintainers = [ maintainers.lethalman ];
|
||||
maintainers = gnome3.maintainers;
|
||||
};
|
||||
}
|
||||
|
|
|
@ -18,6 +18,6 @@ stdenv.mkDerivation rec {
|
|||
|
||||
meta = with stdenv.lib; {
|
||||
platforms = platforms.linux;
|
||||
maintainers = [ maintainers.lethalman ];
|
||||
maintainers = gnome3.maintainers;
|
||||
};
|
||||
}
|
||||
|
|
|
@ -50,7 +50,7 @@ stdenv.mkDerivation rec {
|
|||
meta = with stdenv.lib; {
|
||||
homepage = https://wiki.gnome.org/Apps/Empathy;
|
||||
description = "Messaging program which supports text, voice, video chat, and file transfers over many different protocols";
|
||||
maintainers = with maintainers; [ lethalman ];
|
||||
maintainers = gnome3.maintainers;
|
||||
# TODO: license = [ licenses.gpl2 licenses.lgpl2 ];
|
||||
platforms = platforms.linux;
|
||||
};
|
||||
|
|
|
@ -26,6 +26,6 @@ stdenv.mkDerivation rec {
|
|||
homepage = https://wiki.gnome.org/Apps/EyeOfGnome;
|
||||
platforms = platforms.linux;
|
||||
description = "GNOME image viewer";
|
||||
maintainers = [ maintainers.lethalman ];
|
||||
maintainers = gnome3.maintainers;
|
||||
};
|
||||
}
|
||||
|
|
|
@ -46,7 +46,7 @@ stdenv.mkDerivation rec {
|
|||
meta = with stdenv.lib; {
|
||||
homepage = https://wiki.gnome.org/Apps/Epiphany;
|
||||
description = "WebKit based web browser for GNOME";
|
||||
maintainers = with maintainers; [ lethalman ];
|
||||
maintainers = gnome3.maintainers;
|
||||
license = licenses.gpl2;
|
||||
platforms = platforms.linux;
|
||||
};
|
||||
|
|
|
@ -30,7 +30,7 @@ stdenv.mkDerivation rec {
|
|||
|
||||
meta = with stdenv.lib; {
|
||||
platforms = platforms.linux;
|
||||
maintainers = [ maintainers.lethalman ];
|
||||
maintainers = gnome3.maintainers;
|
||||
};
|
||||
|
||||
}
|
||||
|
|
|
@ -37,7 +37,7 @@ stdenv.mkDerivation rec {
|
|||
|
||||
license = stdenv.lib.licenses.lgpl2Plus;
|
||||
|
||||
maintainers = with stdenv.lib.maintainers; [ lethalman ];
|
||||
maintainers = gnome3.maintainers;
|
||||
platforms = stdenv.lib.platforms.gnu; # arbitrary choice
|
||||
};
|
||||
}
|
||||
|
|
|
@ -26,6 +26,6 @@ stdenv.mkDerivation rec {
|
|||
|
||||
meta = with stdenv.lib; {
|
||||
platforms = platforms.linux;
|
||||
maintainers = [ maintainers.lethalman ];
|
||||
maintainers = gnome3.maintainers;
|
||||
};
|
||||
}
|
||||
|
|
|
@ -35,6 +35,6 @@ stdenv.mkDerivation rec {
|
|||
homepage = https://wiki.gnome.org/Projects/GDM;
|
||||
description = "A program that manages graphical display servers and handles graphical user logins";
|
||||
platforms = platforms.linux;
|
||||
maintainers = [ maintainers.lethalman ];
|
||||
maintainers = gnome3.maintainers;
|
||||
};
|
||||
}
|
||||
|
|
|
@ -36,6 +36,6 @@ stdenv.mkDerivation rec {
|
|||
homepage = https://wiki.gnome.org/Projects/GDM;
|
||||
description = "A program that manages graphical display servers and handles graphical user logins";
|
||||
platforms = platforms.linux;
|
||||
maintainers = [ maintainers.lethalman ];
|
||||
maintainers = gnome3.maintainers;
|
||||
};
|
||||
}
|
||||
|
|
|
@ -15,7 +15,7 @@ stdenv.mkDerivation rec {
|
|||
|
||||
meta = with stdenv.lib; {
|
||||
platforms = platforms.linux;
|
||||
maintainers = [ maintainers.lethalman ];
|
||||
maintainers = gnome3.maintainers;
|
||||
};
|
||||
|
||||
}
|
||||
|
|
|
@ -12,6 +12,6 @@ stdenv.mkDerivation rec {
|
|||
|
||||
meta = with stdenv.lib; {
|
||||
platforms = platforms.linux;
|
||||
maintainers = [ maintainers.lethalman ];
|
||||
maintainers = gnome3.maintainers;
|
||||
};
|
||||
}
|
||||
|
|
|
@ -20,7 +20,7 @@ stdenv.mkDerivation rec {
|
|||
meta = with stdenv.lib; {
|
||||
homepage = https://help.gnome.org/users/gnome-bluetooth/stable/index.html.en;
|
||||
description = "Application that let you manage Bluetooth in the GNOME destkop";
|
||||
maintainers = with maintainers; [ lethalman ];
|
||||
maintainers = gnome3.maintainers;
|
||||
license = licenses.gpl2;
|
||||
platforms = platforms.linux;
|
||||
};
|
||||
|
|
|
@ -29,7 +29,7 @@ stdenv.mkDerivation rec {
|
|||
meta = with stdenv.lib; {
|
||||
homepage = https://wiki.gnome.org/action/show/Apps/Calculator;
|
||||
description = "Application that solves mathematical equations and is suitable as a default application in a Desktop environment";
|
||||
maintainers = with maintainers; [ lethalman ];
|
||||
maintainers = gnome3.maintainers;
|
||||
license = licenses.gpl2;
|
||||
platforms = platforms.linux;
|
||||
};
|
||||
|
|
|
@ -18,6 +18,6 @@ in stdenv.mkDerivation rec {
|
|||
propagatedBuildInputs = [ which autoconf automake ]; # autogen.sh which is using gnome_common tends to require which
|
||||
|
||||
meta = with stdenv.lib; {
|
||||
maintainers = [ maintainers.lethalman ];
|
||||
maintainers = gnome3.maintainers;
|
||||
};
|
||||
}
|
||||
|
|
|
@ -46,7 +46,7 @@ stdenv.mkDerivation rec {
|
|||
meta = with stdenv.lib; {
|
||||
homepage = https://wiki.gnome.org/Apps/Contacts;
|
||||
description = "Contacts is GNOME's integrated address book";
|
||||
maintainers = with maintainers; [ lethalman ];
|
||||
maintainers = gnome3.maintainers;
|
||||
license = licenses.gpl2;
|
||||
platforms = platforms.linux;
|
||||
};
|
||||
|
|
|
@ -55,7 +55,7 @@ stdenv.mkDerivation rec {
|
|||
meta = with stdenv.lib; {
|
||||
description = "Utilities to configure the GNOME desktop";
|
||||
license = licenses.gpl2Plus;
|
||||
maintainers = with maintainers; [ lethalman ];
|
||||
maintainers = gnome3.maintainers;
|
||||
platforms = platforms.linux;
|
||||
};
|
||||
|
||||
|
|
|
@ -25,6 +25,6 @@ stdenv.mkDerivation rec {
|
|||
|
||||
meta = with stdenv.lib; {
|
||||
platforms = platforms.linux;
|
||||
maintainers = [ maintainers.lethalman ];
|
||||
maintainers = gnome3.maintainers;
|
||||
};
|
||||
}
|
||||
|
|
|
@ -31,7 +31,7 @@ stdenv.mkDerivation rec {
|
|||
meta = with stdenv.lib; {
|
||||
homepage = https://wiki.gnome.org/Apps/Dictionary;
|
||||
description = "Dictionary is the GNOME application to look up definitions";
|
||||
maintainers = with maintainers; [ lethalman ];
|
||||
maintainers = gnome3.maintainers;
|
||||
license = licenses.gpl2;
|
||||
platforms = platforms.linux;
|
||||
};
|
||||
|
|
|
@ -34,7 +34,7 @@ stdenv.mkDerivation rec {
|
|||
meta = with stdenv.lib; {
|
||||
homepage = http://en.wikipedia.org/wiki/GNOME_Disks;
|
||||
description = "A udisks graphical front-end";
|
||||
maintainers = with maintainers; [ lethalman ];
|
||||
maintainers = gnome3.maintainers;
|
||||
license = licenses.gpl2;
|
||||
platforms = platforms.linux;
|
||||
};
|
||||
|
|
|
@ -30,7 +30,7 @@ stdenv.mkDerivation rec {
|
|||
|
||||
meta = with stdenv.lib; {
|
||||
description = "Program that can preview fonts and create thumbnails for fonts";
|
||||
maintainers = with maintainers; [ lethalman ];
|
||||
maintainers = gnome3.maintainers;
|
||||
license = licenses.gpl2;
|
||||
platforms = platforms.linux;
|
||||
};
|
||||
|
|
|
@ -36,6 +36,6 @@ in stdenv.mkDerivation rec {
|
|||
|
||||
meta = with stdenv.lib; {
|
||||
platforms = platforms.linux;
|
||||
maintainers = [ maintainers.lethalman ];
|
||||
maintainers = gnome3.maintainers;
|
||||
};
|
||||
}
|
||||
|
|
|
@ -1,7 +1,7 @@
|
|||
{ stdenv, fetchurl, pkgconfig, glib, libxslt, gtk, makeWrapper
|
||||
, webkitgtk, json_glib, rest, libsecret, dbus_glib, gnome_common
|
||||
, telepathy_glib, intltool, dbus_libs, icu, autoreconfHook
|
||||
, libsoup, docbook_xsl_ns, docbook_xsl, gnome3
|
||||
, libsoup, docbook_xsl_ns, docbook_xsl, gnome3, hicolor_icon_theme
|
||||
}:
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
|
@ -23,7 +23,7 @@ stdenv.mkDerivation rec {
|
|||
|
||||
buildInputs = [ pkgconfig glib libxslt gtk webkitgtk json_glib rest gnome_common makeWrapper
|
||||
libsecret dbus_glib telepathy_glib intltool icu libsoup autoreconfHook
|
||||
docbook_xsl_ns docbook_xsl ];
|
||||
docbook_xsl_ns docbook_xsl hicolor_icon_theme ];
|
||||
|
||||
preFixup = ''
|
||||
for f in "$out/libexec/"*; do
|
||||
|
@ -33,6 +33,6 @@ stdenv.mkDerivation rec {
|
|||
|
||||
meta = with stdenv.lib; {
|
||||
platforms = platforms.linux;
|
||||
maintainers = [ maintainers.lethalman ];
|
||||
maintainers = gnome3.maintainers;
|
||||
};
|
||||
}
|
||||
|
|
|
@ -30,7 +30,7 @@ in stdenv.mkDerivation rec {
|
|||
meta = with stdenv.lib; {
|
||||
homepage = https://wiki.gnome.org/Projects/GnomeOnlineMiners;
|
||||
description = "A set of crawlers that go through your online content and index them locally in Tracker";
|
||||
maintainers = with maintainers; [ lethalman ];
|
||||
maintainers = gnome3.maintainers;
|
||||
license = licenses.gpl2;
|
||||
platforms = platforms.linux;
|
||||
};
|
||||
|
|
|
@ -30,7 +30,7 @@ stdenv.mkDerivation rec {
|
|||
meta = with stdenv.lib; {
|
||||
homepage = http://en.wikipedia.org/wiki/GNOME_Screenshot;
|
||||
description = "Utility used in the GNOME desktop environment for taking screenshots";
|
||||
maintainers = with maintainers; [ lethalman ];
|
||||
maintainers = gnome3.maintainers;
|
||||
license = licenses.gpl2;
|
||||
platforms = platforms.linux;
|
||||
};
|
||||
|
|
|
@ -1,5 +1,5 @@
|
|||
{ fetchurl, stdenv, pkgconfig, gnome3, glib, dbus_glib, json_glib, upower
|
||||
, libxslt, intltool, makeWrapper, systemd, xorg }:
|
||||
, libxslt, intltool, makeWrapper, systemd, xorg, hicolor_icon_theme }:
|
||||
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
|
@ -14,7 +14,7 @@ stdenv.mkDerivation rec {
|
|||
|
||||
buildInputs = with gnome3;
|
||||
[ pkgconfig glib gnome_desktop gtk dbus_glib json_glib libxslt
|
||||
gnome3.gnome_settings_daemon xorg.xtrans
|
||||
gnome3.gnome_settings_daemon xorg.xtrans hicolor_icon_theme
|
||||
gsettings_desktop_schemas upower intltool gconf makeWrapper systemd ];
|
||||
|
||||
preFixup = ''
|
||||
|
@ -25,7 +25,7 @@ stdenv.mkDerivation rec {
|
|||
|
||||
meta = with stdenv.lib; {
|
||||
platforms = platforms.linux;
|
||||
maintainers = [ maintainers.lethalman ];
|
||||
maintainers = gnome3.maintainers;
|
||||
};
|
||||
|
||||
}
|
||||
|
|
|
@ -30,7 +30,7 @@ stdenv.mkDerivation rec {
|
|||
|
||||
meta = with stdenv.lib; {
|
||||
platforms = platforms.linux;
|
||||
maintainers = [ maintainers.lethalman ];
|
||||
maintainers = gnome3.maintainers;
|
||||
};
|
||||
|
||||
}
|
||||
|
|
|
@ -19,7 +19,7 @@ stdenv.mkDerivation rec {
|
|||
meta = with stdenv.lib; {
|
||||
homepage = https://wiki.gnome.org/Projects/GnomeShell/Extensions;
|
||||
description = "Modify and extend GNOME Shell functionality and behavior";
|
||||
maintainers = with maintainers; [ lethalman ];
|
||||
maintainers = gnome3.maintainers;
|
||||
license = licenses.gpl2;
|
||||
platforms = platforms.linux;
|
||||
};
|
||||
|
|
|
@ -56,7 +56,7 @@ stdenv.mkDerivation rec {
|
|||
|
||||
meta = with stdenv.lib; {
|
||||
platforms = platforms.linux;
|
||||
maintainers = [ maintainers.lethalman ];
|
||||
maintainers = gnome3.maintainers;
|
||||
};
|
||||
|
||||
}
|
||||
|
|
|
@ -30,7 +30,7 @@ stdenv.mkDerivation rec {
|
|||
meta = with stdenv.lib; {
|
||||
homepage = https://help.gnome.org/users/gnome-system-log/3.9/;
|
||||
description = "Graphical, menu-driven viewer that you can use to view and monitor your system logs";
|
||||
maintainers = with maintainers; [ lethalman ];
|
||||
maintainers = gnome3.maintainers;
|
||||
license = licenses.gpl2;
|
||||
platforms = platforms.linux;
|
||||
};
|
||||
|
|
|
@ -31,7 +31,7 @@ stdenv.mkDerivation rec {
|
|||
meta = with stdenv.lib; {
|
||||
homepage = https://help.gnome.org/users/gnome-system-monitor/3.12/;
|
||||
description = "System Monitor shows you what programs are running and how much processor time, memory, and disk space are being used";
|
||||
maintainers = with maintainers; [ lethalman ];
|
||||
maintainers = gnome3.maintainers;
|
||||
license = licenses.gpl2;
|
||||
platforms = platforms.linux;
|
||||
};
|
||||
|
|
|
@ -32,6 +32,6 @@ stdenv.mkDerivation rec {
|
|||
|
||||
meta = with stdenv.lib; {
|
||||
platforms = platforms.linux;
|
||||
maintainers = [ maintainers.lethalman ];
|
||||
maintainers = gnome3.maintainers;
|
||||
};
|
||||
}
|
||||
|
|
|
@ -1,4 +1,5 @@
|
|||
{ stdenv, fetchurl, intltool, gtk3, gnome3, librsvg, pkgconfig, pango, atk, gtk2, gdk_pixbuf }:
|
||||
{ stdenv, fetchurl, intltool, gtk3, gnome3, librsvg, pkgconfig, pango, atk, gtk2
|
||||
, gdk_pixbuf, hicolor_icon_theme }:
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
name = "gnome-themes-standard-${gnome3.version}.0";
|
||||
|
@ -7,10 +8,11 @@ stdenv.mkDerivation rec {
|
|||
sha256 = "0kyrbfrgl6g6wm6zpllldz36fclvl8vwmn1snwk18kf7f6ncpsac";
|
||||
};
|
||||
|
||||
buildInputs = [ intltool gtk3 librsvg pkgconfig pango atk gtk2 gdk_pixbuf ];
|
||||
buildInputs = [ intltool gtk3 librsvg pkgconfig pango atk gtk2 gdk_pixbuf
|
||||
hicolor_icon_theme ];
|
||||
|
||||
meta = with stdenv.lib; {
|
||||
platforms = platforms.linux;
|
||||
maintainers = [ maintainers.lethalman ];
|
||||
maintainers = gnome3.maintainers;
|
||||
};
|
||||
}
|
||||
|
|
|
@ -13,7 +13,7 @@ stdenv.mkDerivation rec {
|
|||
meta = with stdenv.lib; {
|
||||
homepage = "https://help.gnome.org/users/gnome-help/${gnome3.version}";
|
||||
description = "User and system administration help for the GNOME desktop";
|
||||
maintainers = with maintainers; [ lethalman ];
|
||||
maintainers = gnome3.maintainers;
|
||||
license = licenses.cc-by-30;
|
||||
platforms = platforms.linux;
|
||||
};
|
||||
|
|
|
@ -46,7 +46,7 @@ in stdenv.mkDerivation rec {
|
|||
meta = with stdenv.lib; {
|
||||
homepage = https://help.gnome.org/users/gnome-user-share/3.8;
|
||||
description = "Service that exports the contents of the Public folder in your home directory on the local network";
|
||||
maintainers = with maintainers; [ lethalman ];
|
||||
maintainers = gnome3.maintainers;
|
||||
license = licenses.gpl2;
|
||||
platforms = platforms.linux;
|
||||
};
|
||||
|
|
|
@ -20,7 +20,7 @@ stdenv.mkDerivation rec {
|
|||
meta = with stdenv.lib; {
|
||||
homepage = https://wiki.gnome.org/action/show/Projects/Grilo;
|
||||
description = "A collection of plugins for the Grilo framework";
|
||||
maintainers = with maintainers; [ lethalman ];
|
||||
maintainers = gnome3.maintainers;
|
||||
license = licenses.lgpl2;
|
||||
platforms = platforms.linux;
|
||||
};
|
||||
|
|
|
@ -9,6 +9,8 @@ stdenv.mkDerivation rec {
|
|||
sha256 = "11bvc7rsrjjwz8hp67p3fn8zmywrpawrcbi3vgw8b0dwa0sndd2m";
|
||||
};
|
||||
|
||||
setupHook = ./setup-hook.sh;
|
||||
|
||||
configureFlags = [ "--enable-grl-pls" "--enable-grl-net" ];
|
||||
|
||||
preConfigure = ''
|
||||
|
@ -24,7 +26,7 @@ stdenv.mkDerivation rec {
|
|||
meta = with stdenv.lib; {
|
||||
homepage = https://wiki.gnome.org/action/show/Projects/Grilo;
|
||||
description = "Framework that provides access to various sources of multimedia content, using a pluggable system";
|
||||
maintainers = with maintainers; [ lethalman ];
|
||||
maintainers = gnome3.maintainers;
|
||||
license = licenses.lgpl2;
|
||||
platforms = platforms.linux;
|
||||
};
|
||||
|
|
7
pkgs/desktops/gnome-3/3.16/core/grilo/setup-hook.sh
Normal file
7
pkgs/desktops/gnome-3/3.16/core/grilo/setup-hook.sh
Normal file
|
@ -0,0 +1,7 @@
|
|||
make_grilo_find_plugins() {
|
||||
if [ -d "$1"/lib/grilo-0.2 ]; then
|
||||
addToSearchPath GRL_PLUGIN_PATH "$1/lib/grilo-0.2"
|
||||
fi
|
||||
}
|
||||
|
||||
envHooks+=(make_grilo_find_plugins)
|
|
@ -20,6 +20,6 @@ stdenv.mkDerivation rec {
|
|||
nativeBuildInputs = [ pkgconfig intltool ];
|
||||
|
||||
meta = with stdenv.lib; {
|
||||
maintainers = [ maintainers.lethalman ];
|
||||
maintainers = gnome3.maintainers;
|
||||
};
|
||||
}
|
||||
|
|
|
@ -1,4 +1,4 @@
|
|||
{ stdenv, fetchurl, pkgconfig, glib, libcanberra, gobjectIntrospection, libtool }:
|
||||
{ stdenv, fetchurl, pkgconfig, glib, libcanberra, gobjectIntrospection, libtool, gnome3 }:
|
||||
|
||||
let
|
||||
majVer = "1.0";
|
||||
|
@ -15,7 +15,7 @@ in stdenv.mkDerivation rec {
|
|||
meta = with stdenv.lib; {
|
||||
homepage = https://wiki.gnome.org/Projects/GSound;
|
||||
description = "Small library for playing system sounds";
|
||||
maintainers = with maintainers; [ lethalman ];
|
||||
maintainers = gnome3.maintainers;
|
||||
license = licenses.gpl2;
|
||||
platforms = platforms.linux;
|
||||
};
|
||||
|
|
|
@ -22,6 +22,6 @@ stdenv.mkDerivation rec {
|
|||
|
||||
meta = with stdenv.lib; {
|
||||
platforms = platforms.linux;
|
||||
maintainers = [ maintainers.lethalman ];
|
||||
maintainers = gnome3.maintainers;
|
||||
};
|
||||
}
|
||||
|
|
|
@ -31,7 +31,7 @@ stdenv.mkDerivation rec {
|
|||
meta = with stdenv.lib; {
|
||||
homepage = https://wiki.gnome.org/Apps/Gucharmap;
|
||||
description = "GNOME Character Map, based on the Unicode Character Database";
|
||||
maintainers = with maintainers; [ lethalman ];
|
||||
maintainers = gnome3.maintainers;
|
||||
license = licenses.gpl3;
|
||||
platforms = platforms.linux;
|
||||
};
|
||||
|
|
|
@ -1,4 +1,4 @@
|
|||
{ stdenv, fetchurl, autoconf, vala, pkgconfig, glib, gobjectIntrospection }:
|
||||
{ stdenv, fetchurl, autoconf, vala, pkgconfig, glib, gobjectIntrospection, gnome3 }:
|
||||
let
|
||||
ver_maj = "0.16";
|
||||
ver_min = "1";
|
||||
|
@ -21,6 +21,6 @@ stdenv.mkDerivation rec {
|
|||
description = "Utility library providing GObject-based interfaces and classes for commonly used data structures";
|
||||
license = licenses.lgpl21Plus;
|
||||
platforms = platforms.linux;
|
||||
maintainers = [ maintainers.lethalman ];
|
||||
maintainers = gnome3.maintainers;
|
||||
};
|
||||
}
|
||||
|
|
|
@ -1,4 +1,4 @@
|
|||
{ stdenv, fetchurl, pkgconfig, file, intltool, glib, gtk3, libxklavier, makeWrapper }:
|
||||
{ stdenv, fetchurl, pkgconfig, file, intltool, glib, gtk3, libxklavier, makeWrapper, gnome3 }:
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
name = "libgnomekbd-3.6.0";
|
||||
|
@ -17,7 +17,7 @@ stdenv.mkDerivation rec {
|
|||
|
||||
meta = with stdenv.lib; {
|
||||
description = "Keyboard management library";
|
||||
maintainers = with maintainers; [ lethalman ];
|
||||
maintainers = gnome3.maintainers;
|
||||
license = licenses.gpl2;
|
||||
platforms = platforms.linux;
|
||||
};
|
||||
|
|
|
@ -17,6 +17,6 @@ stdenv.mkDerivation rec {
|
|||
|
||||
meta = with stdenv.lib; {
|
||||
platforms = platforms.linux;
|
||||
maintainers = [ maintainers.lethalman ];
|
||||
maintainers = gnome3.maintainers;
|
||||
};
|
||||
}
|
||||
|
|
|
@ -1,5 +1,5 @@
|
|||
{ stdenv, fetchurl, pkgconfig, intltool
|
||||
, glib, gtk3, gobjectIntrospection, python, pygobject3
|
||||
{ stdenv, fetchurl, pkgconfig, intltool, gnome3
|
||||
, glib, gtk3, gobjectIntrospection, python, pygobject3, hicolor_icon_theme
|
||||
}:
|
||||
|
||||
let
|
||||
|
@ -11,7 +11,7 @@ stdenv.mkDerivation rec {
|
|||
|
||||
buildInputs = [
|
||||
intltool pkgconfig
|
||||
glib gtk3 gobjectIntrospection python pygobject3
|
||||
glib gtk3 gobjectIntrospection python pygobject3 hicolor_icon_theme
|
||||
];
|
||||
|
||||
src = fetchurl {
|
||||
|
@ -27,6 +27,6 @@ stdenv.mkDerivation rec {
|
|||
homepage = "http://ftp.acc.umu.se/pub/GNOME/sources/libpeas/";
|
||||
license = licenses.gpl2Plus;
|
||||
platforms = platforms.linux;
|
||||
maintainers = [ maintainers.lethalman ];
|
||||
maintainers = gnome3.maintainers;
|
||||
};
|
||||
}
|
||||
|
|
|
@ -31,7 +31,7 @@ stdenv.mkDerivation rec {
|
|||
|
||||
meta = with stdenv.lib; {
|
||||
platforms = platforms.linux;
|
||||
maintainers = [ maintainers.lethalman ];
|
||||
maintainers = gnome3.maintainers;
|
||||
};
|
||||
|
||||
}
|
||||
|
|
|
@ -25,6 +25,6 @@ stdenv.mkDerivation rec {
|
|||
|
||||
meta = with stdenv.lib; {
|
||||
platforms = platforms.linux;
|
||||
maintainers = [ maintainers.lethalman ];
|
||||
maintainers = gnome3.maintainers;
|
||||
};
|
||||
}
|
||||
|
|
|
@ -1,4 +1,4 @@
|
|||
{ stdenv, fetchurl, pkgconfig, glib, libsoup, gobjectIntrospection, cacert }:
|
||||
{ stdenv, fetchurl, pkgconfig, glib, libsoup, gobjectIntrospection, cacert, gnome3 }:
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
name = "rest-0.7.92";
|
||||
|
@ -14,6 +14,6 @@ stdenv.mkDerivation rec {
|
|||
|
||||
meta = with stdenv.lib; {
|
||||
platforms = platforms.linux;
|
||||
maintainers = [ maintainers.lethalman ];
|
||||
maintainers = gnome3.maintainers;
|
||||
};
|
||||
}
|
||||
|
|
|
@ -31,7 +31,7 @@ stdenv.mkDerivation rec {
|
|||
meta = with stdenv.lib; {
|
||||
homepage = "http://en.wikipedia.org/wiki/Sushi_(software)";
|
||||
description = "A quick previewer for Nautilus";
|
||||
maintainers = with maintainers; [ lethalman ];
|
||||
maintainers = gnome3.maintainers;
|
||||
license = licenses.gpl2Plus;
|
||||
platforms = platforms.linux;
|
||||
};
|
||||
|
|
|
@ -1,4 +1,4 @@
|
|||
{ stdenv, fetchurl, pkgconfig, file, intltool, gmime, libxml2, libsoup }:
|
||||
{ stdenv, fetchurl, pkgconfig, file, intltool, gmime, libxml2, libsoup, gnome3 }:
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
name = "totem-pl-parser-3.10.2";
|
||||
|
@ -13,7 +13,7 @@ stdenv.mkDerivation rec {
|
|||
meta = with stdenv.lib; {
|
||||
homepage = https://wiki.gnome.org/Apps/Videos;
|
||||
description = "Simple GObject-based library to parse and save a host of playlist formats";
|
||||
maintainers = with maintainers; [ lethalman ];
|
||||
maintainers = gnome3.maintainers;
|
||||
license = licenses.lgpl2;
|
||||
platforms = platforms.linux;
|
||||
};
|
||||
|
|
|
@ -41,7 +41,7 @@ stdenv.mkDerivation rec {
|
|||
meta = with stdenv.lib; {
|
||||
homepage = https://wiki.gnome.org/Apps/Videos;
|
||||
description = "Movie player for the GNOME desktop based on GStreamer";
|
||||
maintainers = with maintainers; [ lethalman ];
|
||||
maintainers = gnome3.maintainers;
|
||||
license = licenses.gpl2;
|
||||
platforms = platforms.linux;
|
||||
};
|
||||
|
|
|
@ -49,7 +49,7 @@ stdenv.mkDerivation rec {
|
|||
meta = with stdenv.lib; {
|
||||
homepage = https://wiki.gnome.org/Projects/Tracker;
|
||||
description = "Desktop-neutral user information store, search tool and indexer";
|
||||
maintainers = with maintainers; [ lethalman ];
|
||||
maintainers = gnome3.maintainers;
|
||||
license = licenses.gpl2;
|
||||
platforms = platforms.linux;
|
||||
};
|
||||
|
|
|
@ -16,7 +16,7 @@ stdenv.mkDerivation rec {
|
|||
meta = with stdenv.lib; {
|
||||
homepage = https://wiki.gnome.org/Apps/Yelp;
|
||||
description = "Yelp's universal stylesheets for Mallard and DocBook";
|
||||
maintainers = with maintainers; [ lethalman ];
|
||||
maintainers = gnome3.maintainers;
|
||||
license = [licenses.gpl2 licenses.lgpl2];
|
||||
platforms = platforms.linux;
|
||||
};
|
||||
|
|
|
@ -29,7 +29,7 @@ stdenv.mkDerivation rec {
|
|||
meta = with stdenv.lib; {
|
||||
homepage = https://wiki.gnome.org/Apps/Yelp;
|
||||
description = "The help viewer in Gnome";
|
||||
maintainers = with maintainers; [ lethalman ];
|
||||
maintainers = gnome3.maintainers;
|
||||
license = licenses.gpl2;
|
||||
platforms = platforms.linux;
|
||||
};
|
||||
|
|
|
@ -23,6 +23,6 @@ stdenv.mkDerivation rec {
|
|||
|
||||
meta = with stdenv.lib; {
|
||||
platforms = platforms.linux;
|
||||
maintainers = [ maintainers.lethalman ];
|
||||
maintainers = gnome3.maintainers;
|
||||
};
|
||||
}
|
||||
|
|
|
@ -21,6 +21,7 @@ let
|
|||
glib_networking gvfs dconf gnome-backgrounds gnome_control_center
|
||||
gnome-menus gnome_settings_daemon gnome_shell
|
||||
gnome_themes_standard defaultIconTheme gnome-shell-extensions
|
||||
pkgs.hicolor_icon_theme
|
||||
];
|
||||
|
||||
optionalPackages = with gnome3; [ baobab empathy eog epiphany evince
|
||||
|
@ -32,7 +33,9 @@ let
|
|||
nautilus-sendto dconf-editor vinagre
|
||||
];
|
||||
|
||||
gamesPackages = with gnome3; [ swell-foop lightsoff iagno ];
|
||||
gamesPackages = with gnome3; [ swell-foop lightsoff iagno
|
||||
tali quadrapassel
|
||||
];
|
||||
|
||||
inherit (pkgs) glib gtk2 webkitgtk24x gtk3 gtkmm3 libcanberra;
|
||||
inherit (pkgs.gnome2) ORBit2;
|
||||
|
@ -50,6 +53,7 @@ let
|
|||
gegl_0_3 = pkgs.gegl_0_3.override { inherit gtk; };
|
||||
|
||||
version = "3.16";
|
||||
maintainers = with pkgs.lib.maintainers; [ lethalman ];
|
||||
|
||||
# Simplify the nixos module and gnome packages
|
||||
defaultIconTheme = adwaita-icon-theme;
|
||||
|
@ -290,6 +294,10 @@ let
|
|||
|
||||
swell-foop = callPackage ./games/swell-foop { };
|
||||
|
||||
tali = callPackage ./games/tali { };
|
||||
|
||||
quadrapassel = callPackage ./games/quadrapassel { };
|
||||
|
||||
#### Misc -- other packages on http://ftp.gnome.org/pub/GNOME/sources/
|
||||
|
||||
california = callPackage ./misc/california { };
|
||||
|
|
|
@ -18,7 +18,7 @@ in stdenv.mkDerivation rec {
|
|||
meta = with stdenv.lib; {
|
||||
description = "Gnome docking library";
|
||||
homepage = https://developer.gnome.org/gdl/;
|
||||
maintainers = [ maintainers.lethalman ];
|
||||
maintainers = gnome3.maintainers;
|
||||
license = licenses.gpl2;
|
||||
platforms = platforms.linux;
|
||||
};
|
||||
|
|
|
@ -24,7 +24,7 @@ stdenv.mkDerivation rec {
|
|||
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 ];
|
||||
maintainers = gnome3.maintainers;
|
||||
license = licenses.gpl2;
|
||||
platforms = platforms.linux;
|
||||
};
|
||||
|
|
Some files were not shown because too many files have changed in this diff Show more
Loading…
Reference in a new issue