summaryrefslogtreecommitdiff
path: root/components/programs
diff options
context:
space:
mode:
authorLeonardo <noreply@leoflo.me>2026-02-28 16:27:59 +0100
committerLeonardo <noreply@leoflo.me>2026-02-28 19:02:07 +0100
commitbb11479130b0988e93408aa917cfc872d427d95f (patch)
tree58d37004d9529f927fcab0a5672bc6697d9b3c24 /components/programs
parent1507e4e369bd73b85f191fef20a7509283a418aa (diff)
downloadnixos-bb11479130b0988e93408aa917cfc872d427d95f.tar.gz
nixos-bb11479130b0988e93408aa917cfc872d427d95f.zip
nuovo layout
Diffstat (limited to 'components/programs')
-rw-r--r--components/programs/alacritty.nix53
-rw-r--r--components/programs/fastfetch.nix57
-rw-r--r--components/programs/fonts.nix11
-rw-r--r--components/programs/games.nix16
-rw-r--r--components/programs/git.nix18
-rw-r--r--components/programs/keepassxc.nix33
-rw-r--r--components/programs/tmux.nix12
-rw-r--r--components/programs/zed.nix37
-rw-r--r--components/programs/zsh.nix35
9 files changed, 272 insertions, 0 deletions
diff --git a/components/programs/alacritty.nix b/components/programs/alacritty.nix
new file mode 100644
index 0000000..da80465
--- /dev/null
+++ b/components/programs/alacritty.nix
@@ -0,0 +1,53 @@
+{lib, config, ...}: {
+ options.alacritty.enable = lib.mkEnableOption "Alacritty's config";
+
+ config = lib.mkIf config.alacritty.enable {
+ programs.alacritty = {
+ enable = true;
+
+ settings = {
+ window = {
+ dimensions = { columns = 110; lines = 30; };
+ padding = { x = 0; y = 0; };
+ opacity = 1.0;
+ blur = false;
+ };
+
+ font = {
+ normal = { family = "IosevkaTerm NF"; style = "regular"; };
+ bold = { family = "IosevkaTerm NF"; style = "bold"; };
+ size = 14.00;
+ };
+
+ colors = {
+ primary = {
+ background = "#282c34";
+ foreground = "#abb2bf";
+ };
+
+ normal = {
+ black = "#1e2127";
+ red = "#e06c75";
+ green = "#98c379";
+ yellow = "#d19a66";
+ blue = "#61afef";
+ magenta = "#c678dd";
+ cyan = "#56b6c2";
+ white = "#abb2bf";
+ };
+
+ bright = {
+ black = "#5c6370";
+ red = "#e06c75";
+ green = "#98c379";
+ yellow = "#d19a66";
+ blue = "#61afef";
+ magenta = "#c678dd";
+ cyan = "#56b6c2";
+ white = "#ffffff";
+ };
+ };
+ };
+ };
+ };
+}
diff --git a/components/programs/fastfetch.nix b/components/programs/fastfetch.nix
new file mode 100644
index 0000000..63f148e
--- /dev/null
+++ b/components/programs/fastfetch.nix
@@ -0,0 +1,57 @@
+{lib, config, ...}: {
+ options.fastfetch.enable = lib.mkEnableOption "Fastfetch's config";
+
+ config = lib.mkIf config.fastfetch.enable {
+ programs.fastfetch = {
+ enable = true;
+
+ settings = {
+ display = {
+ size = {
+ maxPrefix = "MB";
+ ndigits = 0;
+ spaceBeforeUnit = "never";
+ };
+ freq = {
+ ndigits = 3;
+ spaceBeforeUnit = "never";
+ };
+ };
+ modules = [
+ "title"
+ "separator"
+ "os"
+ {
+ type = "kernel";
+ format = "{release}";
+ }
+ {
+ type = "packages";
+ combined = true;
+ }
+ "shell"
+ {
+ type = "display";
+ compactType = "original";
+ key = "Resolution";
+ }
+ "de"
+ "wm"
+ "terminal"
+ "cpu"
+ {
+ type = "gpu";
+ key = "GPU";
+ format = "{name}";
+ }
+ {
+ type = "memory";
+ format = "{used} / {total}";
+ }
+ "break"
+ "colors"
+ ];
+ };
+ };
+ };
+}
diff --git a/components/programs/fonts.nix b/components/programs/fonts.nix
new file mode 100644
index 0000000..558cf83
--- /dev/null
+++ b/components/programs/fonts.nix
@@ -0,0 +1,11 @@
+{lib, config, pkgs, ...}: {
+ options.fonts.enable = lib.mkEnableOption "Additional fonts";
+
+ config = lib.mkIf config.fonts.enable {
+ environment.systemPackages = with pkgs; [
+ noto-fonts noto-fonts-cjk-sans noto-fonts-color-emoji
+ nerd-fonts.iosevka-term nerd-fonts.jetbrains-mono
+ corefonts vista-fonts
+ ];
+ };
+}
diff --git a/components/programs/games.nix b/components/programs/games.nix
new file mode 100644
index 0000000..560e210
--- /dev/null
+++ b/components/programs/games.nix
@@ -0,0 +1,16 @@
+{lib, config, pkgs, ...}: {
+ options.games.enable = lib.mkEnableOption "Games";
+
+ config = lib.mkIf config.games.enable {
+ hardware.steam-hardware.enable = true;
+
+ #Steam
+ programs = {
+ gamemode.enable = true;
+ steam.enable = true;
+ };
+
+ # Packages
+ environment.systemPackages = with pkgs; [ prismlauncher heroic ];
+ };
+}
diff --git a/components/programs/git.nix b/components/programs/git.nix
new file mode 100644
index 0000000..10226b8
--- /dev/null
+++ b/components/programs/git.nix
@@ -0,0 +1,18 @@
+{lib, config, ...}: {
+ options.git.enable = lib.mkEnableOption "Git CMS";
+
+ config = lib.mkIf config.git.enable {
+ programs.git = {
+ enable = true;
+
+ config = {
+ init = {
+ defaultBranch = "master";
+ };
+ core = {
+ editor = "vim";
+ };
+ };
+ };
+ };
+}
diff --git a/components/programs/keepassxc.nix b/components/programs/keepassxc.nix
new file mode 100644
index 0000000..7211364
--- /dev/null
+++ b/components/programs/keepassxc.nix
@@ -0,0 +1,33 @@
+{lib, config, ...}: {
+ options.keepassxc.enable = lib.mkEnableOption "KeepassXC's config";
+
+ config = lib.mkIf config.keepassxc.enable {
+ xdg.autostart.enable = true;
+
+ programs.keepassxc = {
+ enable = true;
+ autostart = true;
+
+ settings = {
+ Browser.Enabled=true;
+ FdoSecrets.Enabled = true;
+
+ GUI = {
+ MinimizeOnStartup = true;
+ MinimizeOnClose = true;
+
+ ApplicationTheme = "dark";
+ HideUsernames = true;
+ TrayIconAppearance = "monochrome-light";
+ };
+
+ PasswordGenerator = {
+ Length = 128;
+ LowerCase = true;
+ UpperCase = true;
+ SpecialChars = true;
+ };
+ };
+ };
+ };
+}
diff --git a/components/programs/tmux.nix b/components/programs/tmux.nix
new file mode 100644
index 0000000..db3f7a6
--- /dev/null
+++ b/components/programs/tmux.nix
@@ -0,0 +1,12 @@
+{lib, config, ...}: {
+ options.tmux.enable = lib.mkEnableOption "Tmux's config";
+
+ config = lib.mkIf config.tmux.enable {
+ programs.tmux = {
+ enable = true;
+
+ baseIndex = 1;
+ clock24 = true;
+ };
+ };
+}
diff --git a/components/programs/zed.nix b/components/programs/zed.nix
new file mode 100644
index 0000000..14f7195
--- /dev/null
+++ b/components/programs/zed.nix
@@ -0,0 +1,37 @@
+{lib, config, ...}: {
+ options.zed.enable = lib.mkEnableOption "Zed editor's config";
+
+ config = lib.mkIf config.zed.enable {
+ programs.zed-editor = {
+ enable = true;
+
+ userSettings = {
+ telemetry = {
+ metrics = false;
+ };
+
+ ui_font_size = 18;
+ buffer_font_size = 18;
+ vim_mode = false;
+
+ format_on_save = "off";
+ hard_tabs = false;
+ tab_size = 2;
+
+ theme = {
+ mode = "system";
+ light = "Gruvbox Dark Soft";
+ dark = "Gruvbox Dark Soft";
+ };
+
+ terminal = {
+ shell = {
+ program = "zsh";
+ };
+
+ cursor_shape = "bar";
+ };
+ };
+ };
+ };
+}
diff --git a/components/programs/zsh.nix b/components/programs/zsh.nix
new file mode 100644
index 0000000..9ace5fd
--- /dev/null
+++ b/components/programs/zsh.nix
@@ -0,0 +1,35 @@
+{lib, config, ...}: {
+ options.zsh.enable = lib.mkEnableOption "ZSH config";
+
+ config = lib.mkIf config.zsh.enable {
+ programs.zsh = {
+ enable = true;
+ enableCompletion = true;
+ enableVteIntegration = true;
+
+ syntaxHighlighting.enable = true;
+
+ history.size = 10000;
+
+ oh-my-zsh = {
+ enable = true;
+ theme = "robbyrussell";
+
+ plugins = [ "git" "ssh" ];
+ };
+
+ initContent = ''
+ # Ctrl + arrow keys
+ bindkey '^[Oc' forward-word
+ bindkey '^[Od' backward-word
+ bindkey '^[[1;5D' backward-word
+ bindkey '^[[1;5C' forward-word
+ bindkey '^H' backward-kill-word
+
+ # Theme
+ autoload -U colors
+ colors
+ '';
+ };
+ };
+}