tangled
alpha
login
or
join now
thevoid.cafe
/
puzzlevision
0
fork
atom
Non stop entertainment! The wackiest NixOS configuration to-date.
thevoid.cafe/projects/puzzlevision
nixos
flake
flake-parts
dotfiles
home-manager
nix
0
fork
atom
overview
issues
pulls
pipelines
✨ Add custom packages support through pkgs directory
thevoid.cafe
7 months ago
6c0cc52a
f6058e85
+46
-32
10 changed files
expand all
collapse all
unified
split
homes
x86_64-linux
jo
apps
firefox
default.nix
youtube-music
catppuccin-frappe.css
catppuccin-latte.css
catppuccin-macchiato.css
catppuccin-mocha.css
default.nix
default.nix
modules
flake
default.nix
lib.nix
packages.nix
+2
-1
homes/x86_64-linux/jo/apps/firefox/default.nix
reviewed
···
15
15
@import "onebar/onebar.css";
16
16
'';
17
17
18
18
-
home.file.".mozilla/firefox/default/chrome/onebar/onebar.css".source = ./onebar.css;
18
18
+
home.file.".mozilla/firefox/default/chrome/onebar/onebar.css".source =
19
19
+
mkIf config.programs.firefox.enable ./onebar.css;
19
20
}
-6
homes/x86_64-linux/jo/apps/youtube-music/catppuccin-frappe.css
reviewed
···
1
1
-
/* frappe */
2
2
-
@import url("https://youtubemusic.catppuccin.com/src/frappe.css");
3
3
-
4
4
-
html:not(.style-scope) {
5
5
-
--ctp-accent: var(--ctp-blue) !important;
6
6
-
}
-6
homes/x86_64-linux/jo/apps/youtube-music/catppuccin-latte.css
reviewed
···
1
1
-
/* latte */
2
2
-
@import url("https://youtubemusic.catppuccin.com/src/latte.css");
3
3
-
4
4
-
html:not(.style-scope) {
5
5
-
--ctp-accent: var(--ctp-blue) !important;
6
6
-
}
-6
homes/x86_64-linux/jo/apps/youtube-music/catppuccin-macchiato.css
reviewed
···
1
1
-
/* macchiato */
2
2
-
@import url("https://youtubemusic.catppuccin.com/src/macchiato.css");
3
3
-
4
4
-
html:not(.style-scope) {
5
5
-
--ctp-accent: var(--ctp-blue) !important;
6
6
-
}
-6
homes/x86_64-linux/jo/apps/youtube-music/catppuccin-mocha.css
reviewed
···
1
1
-
/* mocha */
2
2
-
@import url("https://youtubemusic.catppuccin.com/src/mocha.css");
3
3
-
4
4
-
html:not(.style-scope) {
5
5
-
--ctp-accent: var(--ctp-blue) !important;
6
6
-
}
-6
homes/x86_64-linux/jo/apps/youtube-music/default.nix
reviewed
···
1
1
-
{
2
2
-
...
3
3
-
}:
4
4
-
{
5
5
-
6
6
-
}
+5
-1
homes/x86_64-linux/jo/default.nix
reviewed
···
7
7
imports = [
8
8
./apps/discord
9
9
./apps/firefox
10
10
-
./apps/youtube-music
11
10
];
12
11
13
12
puzzlevision = {
···
34
33
path = "${config.home.homeDirectory}/.wakatime.cfg";
35
34
};
36
35
36
36
+
programs.git = {
37
37
+
enable = true;
38
38
+
};
39
39
+
37
40
home.packages = with pkgs; [
38
41
## GENERAL
39
42
ghostty
···
53
56
## RUNTIMES and CLIs for development
54
57
bun
55
58
git
59
59
+
git-credential-oauth
56
60
attic-client
57
61
];
58
62
+3
modules/flake/default.nix
reviewed
···
5
5
6
6
# Automagically imports systems from "/systems/arch-classname/system-name".
7
7
./systems.nix
8
8
+
9
9
+
# Automagically import custom packages defined in "/pkgs/pkg-name/default.nix"
10
10
+
./packages.nix
8
11
];
9
12
}
+25
modules/flake/lib.nix
reviewed
···
26
26
else
27
27
[ ];
28
28
29
29
+
filesystemEntityToPackage =
30
30
+
directory: pkgs: pkgArgs: name: type:
31
31
+
if type == "directory" then
32
32
+
dirToPkgAttrSet "${directory}/${name}" pkgs pkgArgs
33
33
+
else if name == "default.nix" then
34
34
+
{
35
35
+
${builtins.unsafeDiscardStringContext (builtins.baseNameOf directory)} =
36
36
+
pkgs.callPackage "${directory}/${name}" pkgArgs;
37
37
+
}
38
38
+
else
39
39
+
{ };
40
40
+
29
41
dirToModuleList =
30
42
directory:
31
43
let
···
50
62
acc // (filesystemEntityToAttrSet directory importArgs name (builtins.getAttr name readDir))
51
63
) { } (builtins.attrNames readDir);
52
64
65
65
+
dirToPkgAttrSet =
66
66
+
directory: pkgs: pkgArgs:
67
67
+
let
68
68
+
# Read provided directory only once at the very start and save the result.
69
69
+
readDir = readDirectory directory;
70
70
+
in
71
71
+
builtins.foldl' (
72
72
+
acc: name:
73
73
+
acc // (filesystemEntityToPackage directory pkgs pkgArgs name (builtins.getAttr name readDir))
74
74
+
) { } (builtins.attrNames readDir);
75
75
+
53
76
puzzlelib = dirToAttrSet ../../lib { inherit lib self; } // {
54
77
inherit
55
78
dirToAttrSet
79
79
+
dirToPkgAttrSet
56
80
dirToModuleList
57
81
filesystemEntityToList
58
82
filesystemEntityToAttrSet
83
83
+
filesystemEntityToPackage
59
84
;
60
85
};
61
86
in
+11
modules/flake/packages.nix
reviewed
···
1
1
+
{
2
2
+
self,
3
3
+
...
4
4
+
}:
5
5
+
{
6
6
+
perSystem =
7
7
+
{ pkgs, ... }:
8
8
+
{
9
9
+
packages = self.lib.dirToPkgAttrSet ../../pkgs pkgs { };
10
10
+
};
11
11
+
}