-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathoverlays.nix
executable file
·124 lines (119 loc) · 3.42 KB
/
overlays.nix
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
123
124
{ inputs', inputs }:
# Go: https://github.com/NixOS/nixpkgs/issues/86349#issuecomment-624489806
# Rust:
(inputs.self.lib.genOverlays [
"fenix"
"nuenv"
"dae"
"niri"
"devenv"
])
++ [
(
final: prev:
prev.lib.genAttrs [
"prismlauncher"
"resign"
"nix-direnv"
"radicle"
] (n: inputs'.${n}.packages.default)
# //
# GUI applications overlay. for stability
# prev.lib.genAttrs [ "hyprland" ] (n: (import inputs.nixpkgs-gui { inherit system; }).${n})
// {
# inherit
# (import inputs.nixpkgs-factorio {
# inherit (prev) system;
# config.allowUnfree = true;
# })
# factorio-headless-experimental
# ;
inherit (inputs'.browser-previews.packages) google-chrome-beta;
# misskey = prev.misskey.overrideAttrs (old: {
# patches = [
# ./pkgs/patch/0001-welcome-shape.patch
# ./pkgs/patch/0002-timeline-on-welcome-page.patch
# ];
# });
gtk4 = (
prev.gtk4.overrideAttrs (
old:
let
version = "4.18.4";
in
{
inherit version;
src = prev.fetchurl {
url =
let
inherit (prev) lib;
in
"mirror://gnome/sources/gtk/${lib.versions.majorMinor version}/gtk-${version}.tar.xz";
hash = "sha256-1Hg6wVA3wsQnWo8azJT1/t4opRYkP8y5L/VKEcFXdf8=";
};
outputs = [
"out"
"dev"
];
patches = [ ];
postFixup = ''
demos=(gtk4-demo gtk4-demo-application gtk4-widget-factory)
for program in ''${demos[@]}; do
wrapProgram $dev/bin/$program \
--prefix XDG_DATA_DIRS : "$GSETTINGS_SCHEMAS_PATH:$out/share/gsettings-schemas/gtk4-${version}"
done
'';
}
)
);
bees = prev.bees.overrideAttrs (
old:
(
let
version = "0.11-rc4";
in
{
inherit version;
src = prev.fetchFromGitHub {
owner = "Zygo";
repo = "bees";
rev = "v${version}";
hash = "sha256-xhtsZxxaJGggeekcSzscqOWceFedL6WIpLr7t2Ea5F0=";
};
}
)
);
scx = inputs'.nyx.packages.scx-full_git;
save-clipboard-to = prev.writeShellScriptBin "save-clipboard-to" ''
wl-paste > $HOME/Pictures/Screenshots/$(date +'shot_%Y-%m-%d-%H%M%S.png')
'';
switch-mute = final.nuenv.writeScriptBin {
name = "switch-mute";
script =
let
pamixer = prev.lib.getExe prev.pamixer;
in
''
${pamixer} --get-mute | str trim | if $in == "false" { ${pamixer} -m } else { ${pamixer} -u }
'';
};
systemd-run-app = prev.writeShellApplication {
name = "systemd-run-app";
text = ''
name=$(${final.uutils-coreutils-noprefix}/bin/basename "$1")
id=$(${final.openssl}/bin/openssl rand -hex 4)
exec systemd-run \
--user \
--scope \
--unit "$name-$id" \
--slice=app \
--same-dir \
--collect \
--property PartOf=graphical-session.target \
--property After=graphical-session.target \
-- "$@"
'';
};
}
)
]