blob: c9f9854a121b98634dd064112b2d0e7cf077331e (
plain) (
blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
|
pkgs:
with pkgs.lib;
let
allPackages = (import ../pkgs { pkgs = everything; }).vuizvui // misc;
everything = pkgs // allPackages // drvOverrides // argOverrides;
mapOverride = overrideFun: includePackages: let
packages = pkgs // allPackages // includePackages;
overrideName = name: overrideFun (getAttr name packages);
in mapAttrs overrideName;
# input attrset overrides using pkg.override
argOverrides = mapOverride (getAttr "override") drvOverrides {
netrw.checksumType = "mhash";
pulseaudio.useSystemd = true;
w3m.graphicsSupport = true;
uqm.use3DOVideos = true;
uqm.useRemixPacks = true;
};
gajimGtkTheme = everything.writeText "gajim.gtkrc" ''
style "default" {
fg[NORMAL] = "#d5faff"
fg[ACTIVE] = "#fffeff"
fg[SELECTED] = "#fffeff"
fg[INSENSITIVE] = "#85aaaf"
fg[PRELIGHT] = "#d7f2ff"
text[NORMAL] = "#fffefe"
text[ACTIVE] = "#fffeff"
text[SELECTED] = "#fffeff"
text[INSENSITIVE] = "#85aaaf"
text[PRELIGHT] = "#d7f2ff"
bg[NORMAL] = "#0f4866"
bg[ACTIVE] = "#0c232e"
bg[SELECTED] = "#005a56"
bg[INSENSITIVE] = "#103040"
bg[PRELIGHT] = "#1d5875"
base[NORMAL] = "#0c232e"
base[ACTIVE] = "#0f4864"
base[SELECTED] = "#005a56"
base[INSENSITIVE] = "#103040"
base[PRELIGHT] = "#1d5875"
}
class "GtkWidget" style "default"
gtk-enable-animations = 0
'';
gajimPatch = everything.substituteAll {
src = ../pkgs/gajim/config.patch;
nix_config = everything.writeText "gajim.config"
(import ../cfgfiles/gajim.nix);
};
# derivation overrides
drvOverrides = mapOverride overrideDerivation argOverrides {
gajim = o: {
patches = (o.patches or []) ++ singleton gajimPatch;
postPatch = (o.postPatch or "") + ''
sed -i -e '/^export/i export GTK2_RC_FILES="${gajimGtkTheme}"' \
scripts/gajim.in
'';
};
i3 = o: {
patches = (o.patches or []) ++ (singleton (everything.fetchurl {
url = "http://bugs.i3wm.org/report/raw-attachment/ticket/1332/"
+ "i3-validate-config-without-x.patch";
sha256 = "1njmrvqr3h5wf8dwg5di136cjvnn5miaj7by3q93x8028hdpigag";
}));
};
};
# misc
misc = {
kernelSourceVuizvui = {
version = "3.16.0";
src = everything.fetchgit {
url = git://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git;
rev = "19583ca584d6f574384e17fe7613dfaeadcdc4a6";
sha256 = "0fn5zpc341scjq2qmin7l9qi7h6mmv1fdzscsqql00c26q5r2yqq";
};
};
testChromiumBuild = let
buildChannels = [ "stable" "beta" "dev" ];
buildChromium = chan: everything.chromium.override {
channel = chan;
gnomeSupport = true;
gnomeKeyringSupport = true;
proprietaryCodecs = true;
cupsSupport = true;
pulseSupport = true;
};
mkTest = chan: everything.writeScript "test-chromium-${chan}.sh" ''
#!${everything.stdenv.shell}
if datadir="$(${everything.coreutils}/bin/mktemp -d)"; then
${buildChromium chan}/bin/chromium --user-data-dir="$datadir"
rm -rf "$datadir"
fi
'';
in everything.stdenv.mkDerivation {
name = "test-chromium-build";
buildCommand = let
chanResults = flip map buildChannels (chan: ''
echo "Test script for ${chan}: ${mkTest chan}"
'');
in ''
echo "Builds finished, the following derivations have been built:"
${concatStrings chanResults}
false
'';
};
};
in allPackages // drvOverrides // argOverrides
|