Added working example

This commit is contained in:
2026-03-21 20:01:50 +00:00
parent 73284fa1da
commit 8ab9d28526
25 changed files with 1493 additions and 0 deletions
@@ -0,0 +1,99 @@
{ ... }:
{
flake.nixosModules.fastfetch = { config, lib, pkgs, ... }:
let
cfg = config.mySystem.apps.fastfetch;
in {
options.mySystem.apps.fastfetch.enable = lib.mkEnableOption "Personalized Fastfetch";
config = lib.mkIf cfg.enable {
environment.systemPackages = [ pkgs.fastfetch ];
home-manager.users.shonh.programs.fastfetch = {
enable = true;
settings = {
"$schema" = "https://github.com/fastfetch-cli/fastfetch/raw/dev/doc/json_schema.json";
"logo" = {
"type" = "small";
"padding" = {
"top" = 1;
"left" = 1;
};
};
"display" = {
"separator" = " ";
};
"modules" = [
{
"key" = "";
"type" = "custom";
}
{
"key" = " {#31} user {#keys}";
"type" = "title";
"format" = "{user-name}";
}
{
"key" = " {#32}󰇅 hname {#keys}";
"type" = "title";
"format" = "{host-name}";
}
{
"key" = " {#33}󰅐 uptime {#keys}";
"type" = "uptime";
}
{
"key" = " {#34}{icon} distro {#keys}";
"type" = "os";
}
{
"key" = " {#35} kernel {#keys}";
"type" = "kernel";
}
{
"key" = " {#36}󰇄 desktop {#keys}";
"type" = "de";
}
{
"key" = " {#31} term {#keys}";
"type" = "terminal";
}
{
"key" = " {#32} shell {#keys}";
"type" = "shell";
}
{
"key" = " {#33}󰍛 cpu {#keys}";
"type" = "cpu";
"showPeCoreCount" = true;
}
{
"key" = " {#34}󰉉 disk {#keys}";
"type" = "disk";
"folders" = "/";
}
{
"key" = " {#35} memory {#keys}";
"type" = "memory";
}
{
"key" = "";
"type" = "custom";
}
{
"key" = " {#39} colors {#keys}";
"type" = "colors";
"symbol" = "circle";
}
{
"key" = "";
"type" = "custom";
}
];
};
};
};
};
}
@@ -0,0 +1,54 @@
{ ... }:
{
flake.nixosModules.foot = { config, lib, pkgs, ... }:
let
cfg = config.mySystem.apps.foot;
colors = config.lib.stylix.colors;
fonts = config.stylix.fonts;
in {
options.mySystem.apps.foot.enable = lib.mkEnableOption "Foot Terminal Emulator";
config = lib.mkIf cfg.enable {
environment.systemPackages = [ pkgs.foot ];
home-manager.users.shonh = {
stylix.targets.foot.enable = false;
programs.foot = {
enable = true;
settings = {
main = {
term = "xterm-256color";
dpi-aware = lib.mkForce "yes";
font = "${fonts.monospace.name}:size=${toString fonts.sizes.terminal}";
};
colors-dark = {
background = colors.base00;
foreground = colors.base05;
regular0 = colors.base01; # black
regular1 = colors.base08; # red
regular2 = colors.base0B; # green
regular3 = colors.base0A; # yellow
regular4 = colors.base0D; # blue
regular5 = colors.base0E; # magenta
regular6 = colors.base0C; # cyan
regular7 = colors.base05; # white
bright0 = colors.base03; # bright black
bright1 = colors.base08;
bright2 = colors.base0B;
bright3 = colors.base0A;
bright4 = colors.base0D;
bright5 = colors.base0E;
bright6 = colors.base0C;
bright7 = colors.base07;
};
};
};
};
};
};
}
+23
View File
@@ -0,0 +1,23 @@
{ ... }:
{
flake.nixosModules.git = { config, lib, pkgs, ... }:
let
cfg = config.mySystem.apps.git;
in {
options.mySystem.apps.git.enable = lib.mkEnableOption "Git";
config = lib.mkIf cfg.enable {
programs.git.enable = true;
home-manager.users.shonh.programs.git = {
enable = true;
settings.user = {
name = "Shonhh";
email = "endinja.versitile@gmail.com";
};
};
};
};
}
@@ -0,0 +1,18 @@
{ ... }:
{
flake.nixosModules.neovim = { config, lib, pkgs, ... }:
let
cfg = config.mySystem.apps.neovim;
in {
options.mySystem.apps.neovim.enable = lib.mkEnableOption "Neovim Editor";
config = lib.mkIf cfg.enable {
programs.neovim.enable = true;
home-manager.users.shonh.programs.neovim = {
enable = true;
};
};
};
}
@@ -0,0 +1,48 @@
# modules/apps/yazi.nix
{ ... }:
{
flake.nixosModules.yazi = { config, lib, pkgs, ... }:
let
cfg = config.mySystem.apps.yazi;
in {
options.mySystem.apps.yazi.enable = lib.mkEnableOption "Yazi File Manager";
config = lib.mkIf cfg.enable {
home-manager.users.shonh = {
home.packages = [ pkgs.ripdrag ];
programs.yazi = {
enable = true;
enableBashIntegration = true;
settings = {
opener = {
edit = [
{ run = "nvim \"$@\""; block = true; desc = "Neovim"; }
];
};
open = {
prepend_rules = [
{ mime = "text/*"; use = "edit"; }
];
};
};
keymap = {
mgr.prepend_keymap = [
{
on = [ "<C-n>" ];
run = "shell 'ripdrag \"$@\" -x 2>/dev/null' --confirm --orphan";
desc = "Drag and drop selected files";
}
];
};
};
};
};
};
}