mirror of
https://github.com/Jokiller230/puzzlevision.git
synced 2025-12-19 21:58:47 +00:00
Compare commits
No commits in common. "e5cf3d49ad536b9ccb6f21a41a1363ca37a6a484" and "c046f4ae176a5c6989212f46eda70bea6e026bda" have entirely different histories.
e5cf3d49ad
...
c046f4ae17
17 changed files with 235 additions and 199 deletions
76
flake.lock
generated
76
flake.lock
generated
|
|
@ -7,11 +7,11 @@
|
||||||
]
|
]
|
||||||
},
|
},
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1765485905,
|
"lastModified": 1762198582,
|
||||||
"narHash": "sha256-fk6zFzzcwz6su99K7UTxS2497+z/Cdk3FzNsacsmZKA=",
|
"narHash": "sha256-P9giW/1Crn7ekQt4YIbONJ/hKFaHkTwyhz82FCjh+OM=",
|
||||||
"owner": "catppuccin",
|
"owner": "catppuccin",
|
||||||
"repo": "nix",
|
"repo": "nix",
|
||||||
"rev": "b49c675acd80931fc8b54290920a90189b461dcf",
|
"rev": "08716214674ca27914daa52e6fa809cc022b581e",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
|
|
@ -56,11 +56,11 @@
|
||||||
]
|
]
|
||||||
},
|
},
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1765495779,
|
"lastModified": 1762040540,
|
||||||
"narHash": "sha256-MhA7wmo/7uogLxiewwRRmIax70g6q1U/YemqTGoFHlM=",
|
"narHash": "sha256-z5PlZ47j50VNF3R+IMS9LmzI5fYRGY/Z5O5tol1c9I4=",
|
||||||
"owner": "hercules-ci",
|
"owner": "hercules-ci",
|
||||||
"repo": "flake-parts",
|
"repo": "flake-parts",
|
||||||
"rev": "5635c32d666a59ec9a55cab87e898889869f7b71",
|
"rev": "0010412d62a25d959151790968765a70c436598b",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
|
|
@ -69,6 +69,24 @@
|
||||||
"type": "github"
|
"type": "github"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
"flake-utils": {
|
||||||
|
"inputs": {
|
||||||
|
"systems": "systems"
|
||||||
|
},
|
||||||
|
"locked": {
|
||||||
|
"lastModified": 1731533236,
|
||||||
|
"narHash": "sha256-l0KFg5HjrsfsO/JpG+r7fRrqm12kzFHyUHqHCVpMMbI=",
|
||||||
|
"owner": "numtide",
|
||||||
|
"repo": "flake-utils",
|
||||||
|
"rev": "11707dc2f618dd54ca8739b309ec4fc024de578b",
|
||||||
|
"type": "github"
|
||||||
|
},
|
||||||
|
"original": {
|
||||||
|
"owner": "numtide",
|
||||||
|
"repo": "flake-utils",
|
||||||
|
"type": "github"
|
||||||
|
}
|
||||||
|
},
|
||||||
"home-manager": {
|
"home-manager": {
|
||||||
"inputs": {
|
"inputs": {
|
||||||
"nixpkgs": [
|
"nixpkgs": [
|
||||||
|
|
@ -76,11 +94,11 @@
|
||||||
]
|
]
|
||||||
},
|
},
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1765682243,
|
"lastModified": 1762296971,
|
||||||
"narHash": "sha256-yeCxFV/905Wr91yKt5zrVvK6O2CVXWRMSrxqlAZnLp0=",
|
"narHash": "sha256-Jyv3L5rrUYpecON+9zyFz2VqgTSTsIG35fXuCyuCQv0=",
|
||||||
"owner": "nix-community",
|
"owner": "nix-community",
|
||||||
"repo": "home-manager",
|
"repo": "home-manager",
|
||||||
"rev": "58bf3ecb2d0bba7bdf363fc8a6c4d49b4d509d03",
|
"rev": "34fe48801d2a5301b814eaa1efb496499d06cebc",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
|
|
@ -96,11 +114,11 @@
|
||||||
]
|
]
|
||||||
},
|
},
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1762539883,
|
"lastModified": 1752413064,
|
||||||
"narHash": "sha256-GvlAAIpM/iZtl/EtI+LTzEsQ2qlUkex9i4xRUZXmadM=",
|
"narHash": "sha256-bcWxBAAvf5hp0TmMbYrwU4SlBxc5sB/T2VsIBdX1gDk=",
|
||||||
"owner": "Lxtharia",
|
"owner": "Lxtharia",
|
||||||
"repo": "minegrub-theme",
|
"repo": "minegrub-theme",
|
||||||
"rev": "2fa2012472fbfcfea17b82655dd27456fa507ee7",
|
"rev": "040b163268be6e7cf743ba990177525dc47ed944",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
|
|
@ -120,11 +138,11 @@
|
||||||
]
|
]
|
||||||
},
|
},
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1765785762,
|
"lastModified": 1762305918,
|
||||||
"narHash": "sha256-lagKpVUJfcp8Duq4a9rAp4H3iBEnXk0EieYTTZl8Js8=",
|
"narHash": "sha256-wVPT9kNpQH4PyRdhZH7oqBlBk8aoNMOYVcy4OzYBjh0=",
|
||||||
"owner": "kaylorben",
|
"owner": "kaylorben",
|
||||||
"repo": "nixcord",
|
"repo": "nixcord",
|
||||||
"rev": "d0bbc2feaacac65c692e4ed32ec4996257b8b21c",
|
"rev": "9c6b54492dcee998fc5981e1a21b34b243e85d3e",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
|
|
@ -135,11 +153,11 @@
|
||||||
},
|
},
|
||||||
"nixos-hardware": {
|
"nixos-hardware": {
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1764440730,
|
"lastModified": 1762267440,
|
||||||
"narHash": "sha256-ZlJTNLUKQRANlLDomuRWLBCH5792x+6XUJ4YdFRjtO4=",
|
"narHash": "sha256-WHjEJ80oYbWyNu0dxysBs5oMlBc5w7YYzL1/UPj4iGo=",
|
||||||
"owner": "NixOS",
|
"owner": "NixOS",
|
||||||
"repo": "nixos-hardware",
|
"repo": "nixos-hardware",
|
||||||
"rev": "9154f4569b6cdfd3c595851a6ba51bfaa472d9f3",
|
"rev": "2e85ae1b7030df39269d29118b1f74944d0c8f15",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
|
|
@ -150,11 +168,11 @@
|
||||||
},
|
},
|
||||||
"nixpkgs": {
|
"nixpkgs": {
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1765472234,
|
"lastModified": 1762111121,
|
||||||
"narHash": "sha256-9VvC20PJPsleGMewwcWYKGzDIyjckEz8uWmT0vCDYK0=",
|
"narHash": "sha256-4vhDuZ7OZaZmKKrnDpxLZZpGIJvAeMtK6FKLJYUtAdw=",
|
||||||
"owner": "NixOS",
|
"owner": "NixOS",
|
||||||
"repo": "nixpkgs",
|
"repo": "nixpkgs",
|
||||||
"rev": "2fbfb1d73d239d2402a8fe03963e37aab15abe8b",
|
"rev": "b3d51a0365f6695e7dd5cdf3e180604530ed33b4",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
|
|
@ -185,11 +203,11 @@
|
||||||
]
|
]
|
||||||
},
|
},
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1765684837,
|
"lastModified": 1760998189,
|
||||||
"narHash": "sha256-fJCnsYcpQxxy/wit9EBOK33c0Z9U4D3Tvo3gf2mvHos=",
|
"narHash": "sha256-ee2e1/AeGL5X8oy/HXsZQvZnae6XfEVdstGopKucYLY=",
|
||||||
"owner": "Mic92",
|
"owner": "Mic92",
|
||||||
"repo": "sops-nix",
|
"repo": "sops-nix",
|
||||||
"rev": "94d8af61d8a603d33d1ed3500a33fcf35ae7d3bc",
|
"rev": "5a7d18b5c55642df5c432aadb757140edfeb70b3",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
|
|
@ -215,17 +233,17 @@
|
||||||
},
|
},
|
||||||
"vicinae": {
|
"vicinae": {
|
||||||
"inputs": {
|
"inputs": {
|
||||||
|
"flake-utils": "flake-utils",
|
||||||
"nixpkgs": [
|
"nixpkgs": [
|
||||||
"nixpkgs"
|
"nixpkgs"
|
||||||
],
|
]
|
||||||
"systems": "systems"
|
|
||||||
},
|
},
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1765272078,
|
"lastModified": 1762271689,
|
||||||
"narHash": "sha256-etv2HJA9OWvTkjnrjaNSqvebu9gWLIGPYb9PWr4qkfM=",
|
"narHash": "sha256-pzlrIfOSk0MaEYNbhQ5gDKMA7XmrcuoJaEOP/IZ/dNk=",
|
||||||
"owner": "vicinaehq",
|
"owner": "vicinaehq",
|
||||||
"repo": "vicinae",
|
"repo": "vicinae",
|
||||||
"rev": "32cf6b1f82e007cddba9c9ae037eff670219cd55",
|
"rev": "9f202f5d1d445558605926bfdd6e1be7b6bdb4ef",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
|
|
|
||||||
|
|
@ -41,13 +41,13 @@ in
|
||||||
|
|
||||||
betterSettings.enable = true;
|
betterSettings.enable = true;
|
||||||
betterUploadButton.enable = true;
|
betterUploadButton.enable = true;
|
||||||
blurNsfw.enable = true;
|
blurNSFW.enable = true;
|
||||||
clearUrLs.enable = true;
|
clearURLs.enable = true;
|
||||||
callTimer.enable = true;
|
callTimer.enable = true;
|
||||||
consoleJanitor.enable = true;
|
consoleJanitor.enable = true;
|
||||||
copyEmojiMarkdown.enable = true;
|
copyEmojiMarkdown.enable = true;
|
||||||
userMessagesPronouns.enable = true;
|
userMessagesPronouns.enable = true;
|
||||||
reviewDb.enable = true;
|
reviewDB.enable = true;
|
||||||
|
|
||||||
# Vesktop exclusive
|
# Vesktop exclusive
|
||||||
webRichPresence.enable = true;
|
webRichPresence.enable = true;
|
||||||
|
|
|
||||||
|
|
@ -3,28 +3,10 @@ let
|
||||||
inherit (lib) mkIf;
|
inherit (lib) mkIf;
|
||||||
in
|
in
|
||||||
{
|
{
|
||||||
puzzlevision.apps.firefox = {
|
|
||||||
enable = true;
|
|
||||||
extensions = [
|
|
||||||
"uBlock0@raymondhill.net"
|
|
||||||
"ATBC@EasonWong"
|
|
||||||
"languagetool-webextension@languagetool.org"
|
|
||||||
"firefox-enpass@enpass.io"
|
|
||||||
"firefox@tampermonkey.net"
|
|
||||||
"wappalyzer@crunchlabz.com"
|
|
||||||
"{7a7a4a92-a2a0-41d1-9fd7-1e92480d612d}"
|
|
||||||
"{d49033ac-8969-488c-afb0-5cdb73957f41}"
|
|
||||||
];
|
|
||||||
};
|
|
||||||
|
|
||||||
programs.firefox = mkIf config.programs.firefox.enable {
|
programs.firefox = mkIf config.programs.firefox.enable {
|
||||||
# Required settings for Onebar
|
# Required settings for Onebar
|
||||||
profiles.default.settings = {
|
profiles.default.settings = {
|
||||||
"toolkit.legacyUserProfileCustomizations.stylesheets" = true;
|
"toolkit.legacyUserProfileCustomizations.stylesheets" = true;
|
||||||
|
|
||||||
# Fixes an issue regarding URL bar content cut-off
|
|
||||||
# https://git.gay/freeplay/Firefox-Onebar/issues/30
|
|
||||||
"browser.urlbar.trimHttps" = true;
|
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -1,4 +0,0 @@
|
||||||
{ ... }:
|
|
||||||
{
|
|
||||||
programs.ghostty.enable = true;
|
|
||||||
}
|
|
||||||
|
|
@ -1,9 +0,0 @@
|
||||||
{ ... }:
|
|
||||||
{
|
|
||||||
puzzlevision.apps.zed = {
|
|
||||||
enable = true;
|
|
||||||
enable-nix = true;
|
|
||||||
enable-php = true;
|
|
||||||
enable-python = true;
|
|
||||||
};
|
|
||||||
}
|
|
||||||
|
|
@ -9,15 +9,36 @@
|
||||||
./apps/firefox
|
./apps/firefox
|
||||||
./apps/vicinae
|
./apps/vicinae
|
||||||
./apps/packettracer
|
./apps/packettracer
|
||||||
./apps/ghostty
|
|
||||||
./apps/zed
|
|
||||||
|
|
||||||
./desktop/gnome
|
./desktop/gnome
|
||||||
];
|
];
|
||||||
|
|
||||||
puzzlevision = {
|
puzzlevision = {
|
||||||
themes.catppuccin.enable = true;
|
themes.catppuccin.enable = true;
|
||||||
cli.direnv.enable = true;
|
apps = {
|
||||||
|
zed.enable = true;
|
||||||
|
firefox = {
|
||||||
|
enable = true;
|
||||||
|
extensions = [
|
||||||
|
"uBlock0@raymondhill.net"
|
||||||
|
"ATBC@EasonWong"
|
||||||
|
"languagetool-webextension@languagetool.org"
|
||||||
|
"firefox-enpass@enpass.io"
|
||||||
|
"firefox@tampermonkey.net"
|
||||||
|
"wappalyzer@crunchlabz.com"
|
||||||
|
"{7a7a4a92-a2a0-41d1-9fd7-1e92480d612d}"
|
||||||
|
"{d49033ac-8969-488c-afb0-5cdb73957f41}"
|
||||||
|
];
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
cli = {
|
||||||
|
direnv.enable = true;
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
programs = {
|
||||||
|
ghostty.enable = true;
|
||||||
};
|
};
|
||||||
|
|
||||||
sops.secrets.wakatime-cfg = {
|
sops.secrets.wakatime-cfg = {
|
||||||
|
|
@ -28,11 +49,12 @@
|
||||||
|
|
||||||
home.packages = with pkgs; [
|
home.packages = with pkgs; [
|
||||||
## GENERAL
|
## GENERAL
|
||||||
|
teams-for-linux
|
||||||
enpass
|
enpass
|
||||||
youtube-music
|
youtube-music
|
||||||
teams-for-linux
|
|
||||||
|
|
||||||
## EDITORS
|
## EDITORS
|
||||||
|
apostrophe
|
||||||
jetbrains.phpstorm
|
jetbrains.phpstorm
|
||||||
obsidian
|
obsidian
|
||||||
|
|
||||||
|
|
@ -46,5 +68,5 @@
|
||||||
shopware-cli
|
shopware-cli
|
||||||
];
|
];
|
||||||
|
|
||||||
home.stateVersion = "25.11";
|
home.stateVersion = "25.05";
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -1,45 +1,4 @@
|
||||||
|
{ ... }:
|
||||||
{
|
{
|
||||||
pkgs,
|
puzzlevision.desktop.gnome.wallpaper = ../wallpapers/macchiato-waves.jpg;
|
||||||
...
|
|
||||||
}:
|
|
||||||
{
|
|
||||||
puzzlevision.desktop.gnome = {
|
|
||||||
enabled-extensions = with pkgs.gnomeExtensions; [
|
|
||||||
user-themes
|
|
||||||
blur-my-shell
|
|
||||||
appindicator
|
|
||||||
unite
|
|
||||||
color-picker
|
|
||||||
clipboard-history
|
|
||||||
vicinae
|
|
||||||
];
|
|
||||||
|
|
||||||
favorite-apps = [
|
|
||||||
"org.gnome.Nautilus.desktop"
|
|
||||||
"obsidian.desktop"
|
|
||||||
"firefox.desktop"
|
|
||||||
"dev.zed.Zed.desktop"
|
|
||||||
];
|
|
||||||
|
|
||||||
wallpaper = ../wallpapers/macchiato-waves.jpg;
|
|
||||||
};
|
|
||||||
|
|
||||||
dconf.settings = {
|
|
||||||
"org/gnome/shell/extensions/unite" = {
|
|
||||||
show-window-buttons = "never";
|
|
||||||
hide-window-titlebars = "maximized";
|
|
||||||
|
|
||||||
use-activities-text = false;
|
|
||||||
extend-left-box = false;
|
|
||||||
reduce-panel-spacing = false;
|
|
||||||
show-legacy-tray = false;
|
|
||||||
show-appmenu-button = false;
|
|
||||||
show-desktop-name = false;
|
|
||||||
enable-titlebar-actions = false;
|
|
||||||
restrict-to-primary-screen = false;
|
|
||||||
hide-activities-button = "never";
|
|
||||||
autofocus-windows = true;
|
|
||||||
notifications-position = "right";
|
|
||||||
};
|
|
||||||
};
|
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -13,10 +13,7 @@ let
|
||||||
in
|
in
|
||||||
{
|
{
|
||||||
options.${namespace}.apps.zed = {
|
options.${namespace}.apps.zed = {
|
||||||
enable = mkEnableOption "Zed, the graphical editor from the future, with a sane base configuration.";
|
enable = mkEnableOption "zed, the graphical editor from the future";
|
||||||
enable-nix = mkEnableOption "support for the Nix language, based on nixd, in Zed.";
|
|
||||||
enable-php = mkEnableOption "support for the PHP language, based on phpactor and pretty-php, in Zed.";
|
|
||||||
enable-python = mkEnableOption "support for the Python language, based on pylsp, in Zed.";
|
|
||||||
};
|
};
|
||||||
|
|
||||||
config = mkIf cfg.enable {
|
config = mkIf cfg.enable {
|
||||||
|
|
@ -24,19 +21,6 @@ in
|
||||||
enable = true;
|
enable = true;
|
||||||
|
|
||||||
userSettings = {
|
userSettings = {
|
||||||
### Disable telemetry
|
|
||||||
telemetry = {
|
|
||||||
diagnostics = false;
|
|
||||||
metrics = false;
|
|
||||||
};
|
|
||||||
|
|
||||||
### Disable collaborative features
|
|
||||||
show_call_status_icon = false;
|
|
||||||
collaboration_panel.button = false;
|
|
||||||
|
|
||||||
### Disable AI features
|
|
||||||
disable_ai = true;
|
|
||||||
|
|
||||||
### Theme settings
|
### Theme settings
|
||||||
icon_theme = mkForce {
|
icon_theme = mkForce {
|
||||||
dark = mkIf config.catppuccin.enable "Catppuccin Macchiato";
|
dark = mkIf config.catppuccin.enable "Catppuccin Macchiato";
|
||||||
|
|
@ -48,6 +32,19 @@ in
|
||||||
light = mkIf config.catppuccin.enable "Catppuccin Latte (blue)";
|
light = mkIf config.catppuccin.enable "Catppuccin Latte (blue)";
|
||||||
};
|
};
|
||||||
|
|
||||||
|
### Disable telemetry
|
||||||
|
telemetry = {
|
||||||
|
diagnostics = false;
|
||||||
|
metrics = false;
|
||||||
|
};
|
||||||
|
|
||||||
|
### Remove useless features and stuff
|
||||||
|
show_call_status_icon = false;
|
||||||
|
collaboration_panel.button = false;
|
||||||
|
|
||||||
|
### Disable AI features entirely
|
||||||
|
disable_ai = true;
|
||||||
|
|
||||||
### Formatting and saving settings
|
### Formatting and saving settings
|
||||||
formatter = "language_server";
|
formatter = "language_server";
|
||||||
format_on_save = "on";
|
format_on_save = "on";
|
||||||
|
|
@ -66,7 +63,7 @@ in
|
||||||
|
|
||||||
### Language specific configurations
|
### Language specific configurations
|
||||||
languages = {
|
languages = {
|
||||||
Nix = mkIf cfg.enable-nix {
|
Nix = {
|
||||||
language_servers = [
|
language_servers = [
|
||||||
"nixd"
|
"nixd"
|
||||||
"!nil"
|
"!nil"
|
||||||
|
|
@ -80,7 +77,7 @@ in
|
||||||
|
|
||||||
tab_size = 2;
|
tab_size = 2;
|
||||||
};
|
};
|
||||||
PHP = mkIf cfg.enable-php {
|
PHP = {
|
||||||
language_servers = [
|
language_servers = [
|
||||||
"phpactor"
|
"phpactor"
|
||||||
"!intelephense"
|
"!intelephense"
|
||||||
|
|
@ -101,14 +98,14 @@ in
|
||||||
html = true;
|
html = true;
|
||||||
svelte = true;
|
svelte = true;
|
||||||
scss = true;
|
scss = true;
|
||||||
oxc = true;
|
biome = true; # Formatting and utility tool, like ESlint, prettier, etc...
|
||||||
|
|
||||||
# Languages
|
# Languages
|
||||||
nix = mkIf cfg.enable-nix true;
|
nix = true;
|
||||||
php = mkIf cfg.enable-php true;
|
php = true;
|
||||||
sql = true;
|
sql = true;
|
||||||
toml = true;
|
toml = true;
|
||||||
pylsp = mkIf cfg.enable-python true; # Python
|
pylsp = true; # Python
|
||||||
fish = true;
|
fish = true;
|
||||||
|
|
||||||
# Docker
|
# Docker
|
||||||
|
|
@ -120,7 +117,8 @@ in
|
||||||
catppuccin-icons = mkIf config.catppuccin.enable true;
|
catppuccin-icons = mkIf config.catppuccin.enable true;
|
||||||
|
|
||||||
# Other
|
# Other
|
||||||
discord-presence = mkIf config.programs.nixcord.enable true;
|
discord-presence = true;
|
||||||
|
git-firefly = true;
|
||||||
wakatime = true;
|
wakatime = true;
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
|
|
@ -135,17 +133,15 @@ in
|
||||||
}
|
}
|
||||||
];
|
];
|
||||||
|
|
||||||
extraPackages =
|
extraPackages = with pkgs; [
|
||||||
with pkgs;
|
### Nix
|
||||||
[ oxlint ]
|
|
||||||
++ lib.optionals cfg.enable-nix [
|
|
||||||
nixd
|
nixd
|
||||||
nixfmt-rfc-style
|
nixfmt-rfc-style
|
||||||
]
|
|
||||||
++ lib.optionals cfg.enable-python [
|
### Python
|
||||||
python3Packages.python-lsp-server
|
python3Packages.python-lsp-server
|
||||||
]
|
|
||||||
++ lib.optionals cfg.enable-php [
|
### PHP
|
||||||
php
|
php
|
||||||
phpPackages.composer
|
phpPackages.composer
|
||||||
pretty-php
|
pretty-php
|
||||||
|
|
|
||||||
|
|
@ -7,7 +7,7 @@
|
||||||
...
|
...
|
||||||
}:
|
}:
|
||||||
let
|
let
|
||||||
inherit (lib) mkIf;
|
inherit (lib) mkIf mkOption;
|
||||||
inherit (self) namespace;
|
inherit (self) namespace;
|
||||||
inherit (self.lib) mkOpt;
|
inherit (self.lib) mkOpt;
|
||||||
|
|
||||||
|
|
@ -15,21 +15,58 @@ let
|
||||||
in
|
in
|
||||||
{
|
{
|
||||||
options.${namespace}.desktop.gnome = with lib.types; {
|
options.${namespace}.desktop.gnome = with lib.types; {
|
||||||
enabled-extensions = mkOpt (listOf package) (with pkgs.gnomeExtensions; [
|
enabled-extensions = mkOption {
|
||||||
|
type = listOf package;
|
||||||
|
default = with pkgs.gnomeExtensions; [
|
||||||
user-themes
|
user-themes
|
||||||
blur-my-shell
|
blur-my-shell
|
||||||
appindicator
|
appindicator
|
||||||
unite
|
unite
|
||||||
color-picker
|
color-picker
|
||||||
clipboard-history
|
clipboard-history
|
||||||
]) "Specify gnome extensions to install.";
|
];
|
||||||
|
example = [
|
||||||
favorite-apps = mkOpt (listOf str) [
|
dash-to-dock
|
||||||
|
blur-my-shell
|
||||||
|
];
|
||||||
|
description = "Specify gnome extensions to install.";
|
||||||
|
};
|
||||||
|
favorite-apps = mkOption {
|
||||||
|
type = listOf str;
|
||||||
|
default = [
|
||||||
"org.gnome.Nautilus.desktop"
|
"org.gnome.Nautilus.desktop"
|
||||||
|
"obsidian.desktop"
|
||||||
"firefox.desktop"
|
"firefox.desktop"
|
||||||
] "Specify your favorite apps (sorted left to right).";
|
"dev.zed.Zed.desktop"
|
||||||
|
];
|
||||||
wallpaper = mkOpt path ./wallpaper.jpg "Specify the path of your prefered Gnome wallpaper.";
|
example = [
|
||||||
|
"org.gnome.Nautilus.desktop"
|
||||||
|
"obsidian.desktop"
|
||||||
|
];
|
||||||
|
description = "Specify your favorite apps (sorted left to right).";
|
||||||
|
};
|
||||||
|
extensions = {
|
||||||
|
unite = {
|
||||||
|
show-window-buttons = mkOption {
|
||||||
|
type = str;
|
||||||
|
default = "never";
|
||||||
|
example = "never | maximized | tiled | both | always";
|
||||||
|
description = "Specify when Unite should display window buttons within the top panel.";
|
||||||
|
};
|
||||||
|
hide-window-titlebars = mkOption {
|
||||||
|
type = str;
|
||||||
|
default = "maximized";
|
||||||
|
example = "never | maximized | tiled | both | always";
|
||||||
|
description = "Specify when Unite should hide window titlebars.";
|
||||||
|
};
|
||||||
|
};
|
||||||
|
blur-my-shell = {
|
||||||
|
enable-blur = mkOpt bool false "Whether to enable blur-my-shell application blur.";
|
||||||
|
};
|
||||||
|
};
|
||||||
|
wallpaper =
|
||||||
|
mkOpt path ../wallpapers/building_top_sit_dusk.jpg
|
||||||
|
"Specify the path of your prefered Gnome wallpaper.";
|
||||||
};
|
};
|
||||||
|
|
||||||
config = mkIf osConfig.${namespace}.desktop.gnome.enable {
|
config = mkIf osConfig.${namespace}.desktop.gnome.enable {
|
||||||
|
|
@ -41,6 +78,33 @@ in
|
||||||
enabled-extensions = lib.forEach cfg.enabled-extensions (x: x.extensionUuid);
|
enabled-extensions = lib.forEach cfg.enabled-extensions (x: x.extensionUuid);
|
||||||
disabled-extensions = [ ]; # Make sure none of our extensions are disabled on system rebuild
|
disabled-extensions = [ ]; # Make sure none of our extensions are disabled on system rebuild
|
||||||
};
|
};
|
||||||
|
"org/gnome/shell/extensions/unite" =
|
||||||
|
mkIf (builtins.elem pkgs.gnomeExtensions.unite cfg.enabled-extensions)
|
||||||
|
{
|
||||||
|
show-window-buttons = cfg.extensions.unite.show-window-buttons;
|
||||||
|
hide-window-titlebars = cfg.extensions.unite.hide-window-titlebars;
|
||||||
|
|
||||||
|
use-activities-text = false;
|
||||||
|
extend-left-box = false;
|
||||||
|
reduce-panel-spacing = false;
|
||||||
|
show-legacy-tray = false;
|
||||||
|
show-appmenu-button = false;
|
||||||
|
show-desktop-name = false;
|
||||||
|
enable-titlebar-actions = false;
|
||||||
|
restrict-to-primary-screen = false;
|
||||||
|
hide-activities-button = "never";
|
||||||
|
autofocus-windows = true;
|
||||||
|
notifications-position = "right";
|
||||||
|
};
|
||||||
|
"org/gnome/shell/extensions/blur-my-shell/applications" =
|
||||||
|
mkIf cfg.extensions.blur-my-shell.enable-blur
|
||||||
|
{
|
||||||
|
blur = true;
|
||||||
|
sigma = 30;
|
||||||
|
opacity = 230;
|
||||||
|
enable-all = true;
|
||||||
|
dynamic-opacity = false;
|
||||||
|
};
|
||||||
"org/gnome/desktop/background" = {
|
"org/gnome/desktop/background" = {
|
||||||
picture-uri = "file://${cfg.wallpaper}";
|
picture-uri = "file://${cfg.wallpaper}";
|
||||||
picture-uri-dark = "file://${cfg.wallpaper}";
|
picture-uri-dark = "file://${cfg.wallpaper}";
|
||||||
|
|
|
||||||
|
Before Width: | Height: | Size: 2.8 MiB After Width: | Height: | Size: 2.8 MiB |
Binary file not shown.
|
After Width: | Height: | Size: 186 KiB |
Binary file not shown.
|
After Width: | Height: | Size: 702 KiB |
Binary file not shown.
|
After Width: | Height: | Size: 1.8 MiB |
BIN
modules/home/desktop/wallpapers/scenic-landscape-blurred.jpg
Normal file
BIN
modules/home/desktop/wallpapers/scenic-landscape-blurred.jpg
Normal file
Binary file not shown.
|
After Width: | Height: | Size: 1.3 MiB |
|
|
@ -17,7 +17,7 @@ let
|
||||||
inherit (self.lib) dirToModuleList;
|
inherit (self.lib) dirToModuleList;
|
||||||
|
|
||||||
# The identifier of the current system type, e.g. "x86_64-linux" or "aarch64-darwin"
|
# The identifier of the current system type, e.g. "x86_64-linux" or "aarch64-darwin"
|
||||||
system = pkgs.stdenv.hostPlatform.system;
|
system = pkgs.system;
|
||||||
cfg = config.${namespace}.users;
|
cfg = config.${namespace}.users;
|
||||||
|
|
||||||
userSubmodule = types.submodule {
|
userSubmodule = types.submodule {
|
||||||
|
|
|
||||||
|
|
@ -11,12 +11,6 @@
|
||||||
|
|
||||||
programs.steam.enable = true;
|
programs.steam.enable = true;
|
||||||
|
|
||||||
# Create some helpful groups for development
|
|
||||||
# and permission related reasons.
|
|
||||||
users.groups = {
|
|
||||||
www-data.gid = 33;
|
|
||||||
};
|
|
||||||
|
|
||||||
puzzlevision = {
|
puzzlevision = {
|
||||||
users.jo = {
|
users.jo = {
|
||||||
enable = true;
|
enable = true;
|
||||||
|
|
@ -24,21 +18,26 @@
|
||||||
extraGroups = [
|
extraGroups = [
|
||||||
"wheel"
|
"wheel"
|
||||||
"docker"
|
"docker"
|
||||||
"www-data"
|
|
||||||
];
|
];
|
||||||
};
|
};
|
||||||
|
|
||||||
archetypes.laptop.enable = true;
|
archetypes.laptop.enable = true;
|
||||||
|
system.kernel.version = "linuxPackages_6_17";
|
||||||
};
|
};
|
||||||
|
|
||||||
|
boot = {
|
||||||
|
# Grub configuration
|
||||||
|
loader.grub = {
|
||||||
# Minecraft bootloader theme
|
# Minecraft bootloader theme
|
||||||
boot.loader.grub.minegrub-theme = {
|
minegrub-theme = {
|
||||||
enable = true;
|
enable = true;
|
||||||
splash = "100% Flakes!";
|
splash = "100% Flakes!";
|
||||||
background = "background_options/1.18 - [Caves And Cliffs 2].png";
|
background = "background_options/1.18 - [Caves And Cliffs 2].png";
|
||||||
boot-options-count = 4;
|
boot-options-count = 4;
|
||||||
};
|
};
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
networking.hostName = "puzzlevision";
|
networking.hostName = "puzzlevision";
|
||||||
system.stateVersion = "26.05";
|
system.stateVersion = "25.11";
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -1,12 +1,9 @@
|
||||||
{
|
{
|
||||||
lib,
|
pkgs,
|
||||||
inputs,
|
inputs,
|
||||||
config,
|
config,
|
||||||
...
|
...
|
||||||
}:
|
}:
|
||||||
let
|
|
||||||
inherit (lib) mkIf;
|
|
||||||
in
|
|
||||||
{
|
{
|
||||||
imports = [
|
imports = [
|
||||||
inputs.nixos-hardware.nixosModules.common-pc-laptop-ssd
|
inputs.nixos-hardware.nixosModules.common-pc-laptop-ssd
|
||||||
|
|
@ -29,27 +26,31 @@ in
|
||||||
blacklistedKernelModules = [
|
blacklistedKernelModules = [
|
||||||
"rtw88_8821ce" # Block the default network-card driver.
|
"rtw88_8821ce" # Block the default network-card driver.
|
||||||
];
|
];
|
||||||
|
|
||||||
# Increase swappiness, if ZRAM swap is enabled,
|
|
||||||
# as it doesn't come with the same "speed" caveats as standard swap.
|
|
||||||
kernel.sysctl = mkIf config.zramSwap.enable {
|
|
||||||
"vm.swappiness" = 140;
|
|
||||||
};
|
};
|
||||||
|
|
||||||
|
# Enable OpenGL and install additional drivers for intel video acceleration
|
||||||
|
hardware = {
|
||||||
|
graphics = {
|
||||||
|
enable = true;
|
||||||
|
extraPackages = with pkgs; [
|
||||||
|
intel-ocl
|
||||||
|
intel-media-driver
|
||||||
|
libva-vdpau-driver
|
||||||
|
libvdpau-va-gl
|
||||||
|
];
|
||||||
};
|
};
|
||||||
|
|
||||||
# Broader firmware and hardware support
|
# Broader firmware and hardware support
|
||||||
hardware = {
|
|
||||||
enableAllFirmware = true;
|
enableAllFirmware = true;
|
||||||
enableAllHardware = true;
|
enableAllHardware = true;
|
||||||
};
|
};
|
||||||
|
|
||||||
# Enable ZRAM
|
environment.sessionVariables = {
|
||||||
zramSwap = {
|
LIBVA_DRIVER_NAME = "iHD";
|
||||||
enable = true;
|
|
||||||
priority = 100;
|
|
||||||
};
|
};
|
||||||
|
|
||||||
# Disable standard swap
|
# Enable ZRAM and disable standard SWAP
|
||||||
|
zramSwap.enable = true;
|
||||||
swapDevices = [ ];
|
swapDevices = [ ];
|
||||||
|
|
||||||
services = {
|
services = {
|
||||||
|
|
@ -66,7 +67,7 @@ in
|
||||||
CPU_MIN_PERF_ON_AC = 0;
|
CPU_MIN_PERF_ON_AC = 0;
|
||||||
CPU_MAX_PERF_ON_AC = 100;
|
CPU_MAX_PERF_ON_AC = 100;
|
||||||
CPU_MIN_PERF_ON_BAT = 0;
|
CPU_MIN_PERF_ON_BAT = 0;
|
||||||
CPU_MAX_PERF_ON_BAT = 40;
|
CPU_MAX_PERF_ON_BAT = 30;
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|
@ -74,9 +75,17 @@ in
|
||||||
power-profiles-daemon.enable = false;
|
power-profiles-daemon.enable = false;
|
||||||
|
|
||||||
# Kill processes before they can cause an OOM exception
|
# Kill processes before they can cause an OOM exception
|
||||||
earlyoom.enable = true;
|
earlyoom = {
|
||||||
|
enable = true;
|
||||||
|
};
|
||||||
|
|
||||||
# Enable Thermald for improved overheating protection
|
# Enable Thermald for improved overheating protection
|
||||||
thermald.enable = true;
|
thermald.enable = true;
|
||||||
|
|
||||||
|
# Instruct XServer to use the correct video drivers
|
||||||
|
xserver.videoDrivers = [
|
||||||
|
"i915"
|
||||||
|
"intel"
|
||||||
|
];
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue