mirror of
https://github.com/Gerg-L/nixos.git
synced 2025-12-10 00:43:56 -05:00
cleaned up flake
condensed and cleaned up home-manager configuration moved nix settings to nix.nix (nice name i know) moved all shell configuration to shell.nix moved default package exclusion to packages.nix switched to nitch from neofetch moved font from overlay removed almost pointless librewolf home-manager configuration changed wallpaper
This commit is contained in:
parent
6f6302e27a
commit
b2af978996
19 changed files with 154 additions and 273 deletions
|
|
@ -4,23 +4,6 @@
|
||||||
...
|
...
|
||||||
}: {
|
}: {
|
||||||
system.stateVersion = settings.version;
|
system.stateVersion = settings.version;
|
||||||
environment = {
|
|
||||||
defaultPackages = []; #don't install anything by default
|
|
||||||
binsh = "${pkgs.dash}/bin/dash"; #use dash for speed
|
|
||||||
variables = {
|
|
||||||
EDITOR = "vi";
|
|
||||||
VISUAL = "vi";
|
|
||||||
PAGER = "page";
|
|
||||||
SYSTEMD_PAGERSECURE = "true";
|
|
||||||
TERMINAL = "st";
|
|
||||||
};
|
|
||||||
shellAliases = {
|
|
||||||
ls = "exa --long --icons";
|
|
||||||
};
|
|
||||||
interactiveShellInit = ''
|
|
||||||
neofetch
|
|
||||||
'';
|
|
||||||
};
|
|
||||||
security.sudo = {
|
security.sudo = {
|
||||||
enable = true;
|
enable = true;
|
||||||
execWheelOnly = true;
|
execWheelOnly = true;
|
||||||
|
|
|
||||||
63
flake.nix
63
flake.nix
|
|
@ -1,7 +1,7 @@
|
||||||
{
|
{
|
||||||
inputs = {
|
inputs = {
|
||||||
nixpkgs.url = "github:nixos/nixpkgs?ref=nixos-unstable";
|
nixpkgs.url = "github:NixOS/nixpkgs/nixos-unstable";
|
||||||
nixpkgs-master.url = "github:nixos/nixpkgs";
|
nixpkgs-master.url = "github:NixOS/nixpkgs";
|
||||||
home-manager = {
|
home-manager = {
|
||||||
url = "github:nix-community/home-manager";
|
url = "github:nix-community/home-manager";
|
||||||
inputs.nixpkgs.follows = "nixpkgs";
|
inputs.nixpkgs.follows = "nixpkgs";
|
||||||
|
|
@ -26,8 +26,6 @@
|
||||||
outputs = {
|
outputs = {
|
||||||
self,
|
self,
|
||||||
nixpkgs,
|
nixpkgs,
|
||||||
spicetify-nix,
|
|
||||||
sxhkd-flake,
|
|
||||||
...
|
...
|
||||||
} @ inputs: let
|
} @ inputs: let
|
||||||
settings = {
|
settings = {
|
||||||
|
|
@ -45,72 +43,23 @@
|
||||||
afk-cmds = final.callPackage ./pkgs/afk-cmds {};
|
afk-cmds = final.callPackage ./pkgs/afk-cmds {};
|
||||||
parrot = final.callPackage ./pkgs/parrot {};
|
parrot = final.callPackage ./pkgs/parrot {};
|
||||||
webcord = inputs.nixpkgs-master.legacyPackages.${system}.webcord;
|
webcord = inputs.nixpkgs-master.legacyPackages.${system}.webcord;
|
||||||
nerdfonts-overpass = prev.nerdfonts.override {
|
|
||||||
fonts = ["Overpass"];
|
|
||||||
};
|
|
||||||
})
|
})
|
||||||
inputs.suckless.overlay
|
inputs.suckless.overlay
|
||||||
];
|
];
|
||||||
};
|
};
|
||||||
in {
|
in {
|
||||||
formatter.x86_64-linux = pkgs.alejandra;
|
formatter.x86_64-linux = pkgs.alejandra;
|
||||||
|
|
||||||
nixosConfigurations = {
|
nixosConfigurations = {
|
||||||
gerg-desktop = lib.nixosSystem {
|
gerg-desktop = lib.nixosSystem {
|
||||||
inherit system pkgs;
|
inherit system pkgs;
|
||||||
specialArgs = {inherit inputs settings;};
|
specialArgs = {inherit inputs settings;};
|
||||||
modules = [
|
modules = [
|
||||||
sxhkd-flake.nixosModules.sxhkd
|
inputs.sxhkd-flake.nixosModules.sxhkd
|
||||||
|
inputs.home-manager.nixosModules.home-manager
|
||||||
|
./home-manager
|
||||||
./configuration.nix
|
./configuration.nix
|
||||||
./systems/desktop.nix
|
./systems/desktop.nix
|
||||||
{
|
./nix.nix
|
||||||
environment.etc = {
|
|
||||||
"nix/flake-channels/system".source = inputs.self;
|
|
||||||
"nix/flake-channels/nixpkgs".source = inputs.nixpkgs.outPath;
|
|
||||||
"nix/flake-channels/home-manager".source = inputs.home-manager.outPath;
|
|
||||||
};
|
|
||||||
nix = {
|
|
||||||
nixPath = [
|
|
||||||
"nixpkgs=/etc/nix/flake-channels/nixpkgs"
|
|
||||||
"home-manager=/etc/nix/flake-channels/home-manager"
|
|
||||||
];
|
|
||||||
#automatically get registry from input flakes
|
|
||||||
registry =
|
|
||||||
{
|
|
||||||
system.flake = self;
|
|
||||||
default.flake = nixpkgs;
|
|
||||||
}
|
|
||||||
// lib.attrsets.mapAttrs (
|
|
||||||
_: source: {
|
|
||||||
flake = source;
|
|
||||||
}
|
|
||||||
) (
|
|
||||||
lib.attrsets.filterAttrs (
|
|
||||||
_: source: (
|
|
||||||
!(lib.attrsets.hasAttrByPath ["flake"] source) || source.flake == false
|
|
||||||
)
|
|
||||||
)
|
|
||||||
inputs
|
|
||||||
);
|
|
||||||
settings = {
|
|
||||||
experimental-features = ["nix-command" "flakes" "repl-flake"];
|
|
||||||
auto-optimise-store = true;
|
|
||||||
warn-dirty = false;
|
|
||||||
};
|
|
||||||
};
|
|
||||||
}
|
|
||||||
inputs.home-manager.nixosModules.home-manager
|
|
||||||
{
|
|
||||||
home-manager = {
|
|
||||||
useGlobalPkgs = true;
|
|
||||||
useUserPackages = false;
|
|
||||||
extraSpecialArgs = {inherit spicetify-nix settings;};
|
|
||||||
users = {
|
|
||||||
${settings.username} = import ./home-manager/home.nix;
|
|
||||||
root = import ./home-manager/root.nix;
|
|
||||||
};
|
|
||||||
};
|
|
||||||
}
|
|
||||||
];
|
];
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
|
|
|
||||||
|
|
@ -1,87 +0,0 @@
|
||||||
print_info() {
|
|
||||||
info title
|
|
||||||
info underline
|
|
||||||
info "OS" distro
|
|
||||||
info "Kernel" kernel
|
|
||||||
info "Uptime" uptime
|
|
||||||
info "Packages" packages
|
|
||||||
info "Shell" shell
|
|
||||||
info "WM" wm
|
|
||||||
info "WM Theme" wm_theme
|
|
||||||
info "Theme" theme
|
|
||||||
info "Icons" icons
|
|
||||||
info "Terminal" term
|
|
||||||
info "CPU" cpu
|
|
||||||
info "GPU" gpu
|
|
||||||
info "Memory" memory
|
|
||||||
info "Disk" disk
|
|
||||||
info cols
|
|
||||||
}
|
|
||||||
title_fqdn="off"
|
|
||||||
kernel_shorthand="on"
|
|
||||||
distro_shorthand="tiny"
|
|
||||||
os_arch="off"
|
|
||||||
uptime_shorthand="tiny"
|
|
||||||
memory_percent="on"
|
|
||||||
memory_unit="gib"
|
|
||||||
package_managers="tiny"
|
|
||||||
shell_path="off"
|
|
||||||
shell_version="off"
|
|
||||||
speed_type="bios_limit"
|
|
||||||
speed_shorthand="on"
|
|
||||||
cpu_brand="off"
|
|
||||||
cpu_speed="off"
|
|
||||||
cpu_cores="off"
|
|
||||||
cpu_temp="C"
|
|
||||||
gpu_brand="off"
|
|
||||||
gpu_type="all"
|
|
||||||
refresh_rate="off"
|
|
||||||
gtk_shorthand="on"
|
|
||||||
gtk2="off"
|
|
||||||
gtk3="on"
|
|
||||||
public_ip_host="http://ident.me"
|
|
||||||
public_ip_timeout=2
|
|
||||||
local_ip_interface=('auto')
|
|
||||||
de_version="off"
|
|
||||||
disk_show=('/')
|
|
||||||
disk_subtitle="dir"
|
|
||||||
disk_percent="on"
|
|
||||||
music_player="auto"
|
|
||||||
song_format="%artist% - %album% - %title%"
|
|
||||||
song_shorthand="off"
|
|
||||||
mpc_args=()
|
|
||||||
colors=(distro)
|
|
||||||
bold="on"
|
|
||||||
underline_enabled="on"
|
|
||||||
underline_char="-"
|
|
||||||
separator=":"
|
|
||||||
block_range=(0 15)
|
|
||||||
color_blocks="on"
|
|
||||||
block_width=3
|
|
||||||
block_height=1
|
|
||||||
col_offset="auto"
|
|
||||||
bar_char_elapsed="-"
|
|
||||||
bar_char_total="="
|
|
||||||
bar_border="on"
|
|
||||||
bar_length=15
|
|
||||||
bar_color_elapsed="distro"
|
|
||||||
bar_color_total="distro"
|
|
||||||
memory_display="on"
|
|
||||||
battery_display="on"
|
|
||||||
disk_display="on"
|
|
||||||
image_backend="pixterm"
|
|
||||||
image_source="auto"
|
|
||||||
ascii_distro="auto"
|
|
||||||
ascii_colors=(distro)
|
|
||||||
ascii_bold="on"
|
|
||||||
image_loop="off"
|
|
||||||
thumbnail_dir="${XDG_CACHE_HOME:-${HOME}/.cache}/thumbnails/neofetch"
|
|
||||||
crop_mode="normal"
|
|
||||||
crop_offset="center"
|
|
||||||
image_size="auto"
|
|
||||||
catimg_size="2"
|
|
||||||
gap=3
|
|
||||||
yoffset=0
|
|
||||||
xoffset=0
|
|
||||||
background_color=
|
|
||||||
stdout="off"
|
|
||||||
41
home-manager/default.nix
Normal file
41
home-manager/default.nix
Normal file
|
|
@ -0,0 +1,41 @@
|
||||||
|
{
|
||||||
|
settings,
|
||||||
|
lib,
|
||||||
|
inputs,
|
||||||
|
...
|
||||||
|
}: let
|
||||||
|
helperfunc = args: (lib.lists.forEach args (m: ./. + ("/" + m + ".nix")));
|
||||||
|
in {
|
||||||
|
home-manager = {
|
||||||
|
useGlobalPkgs = true;
|
||||||
|
useUserPackages = false;
|
||||||
|
extraSpecialArgs = {inherit inputs settings;};
|
||||||
|
users = {
|
||||||
|
${settings.username} = {
|
||||||
|
imports =
|
||||||
|
helperfunc
|
||||||
|
[
|
||||||
|
"theme"
|
||||||
|
"spicetify"
|
||||||
|
];
|
||||||
|
xsession.numlock.enable = true;
|
||||||
|
home = {
|
||||||
|
homeDirectory = "/home/${settings.username}";
|
||||||
|
stateVersion = settings.version;
|
||||||
|
};
|
||||||
|
};
|
||||||
|
root = {
|
||||||
|
imports =
|
||||||
|
helperfunc
|
||||||
|
[
|
||||||
|
"theme"
|
||||||
|
];
|
||||||
|
home = {
|
||||||
|
username = "root";
|
||||||
|
homeDirectory = "/root";
|
||||||
|
stateVersion = settings.version;
|
||||||
|
};
|
||||||
|
};
|
||||||
|
};
|
||||||
|
};
|
||||||
|
}
|
||||||
|
|
@ -1,30 +0,0 @@
|
||||||
{
|
|
||||||
pkgs,
|
|
||||||
settings,
|
|
||||||
lib,
|
|
||||||
...
|
|
||||||
}: {
|
|
||||||
imports = let
|
|
||||||
modules = [
|
|
||||||
"librewolf"
|
|
||||||
"theme"
|
|
||||||
"spicetify"
|
|
||||||
];
|
|
||||||
in
|
|
||||||
lib.lists.forEach modules (
|
|
||||||
m:
|
|
||||||
./. + ("/" + m + ".nix")
|
|
||||||
);
|
|
||||||
xsession.numlock.enable = true;
|
|
||||||
home = {
|
|
||||||
homeDirectory = "/home/${settings.username}";
|
|
||||||
stateVersion = settings.version;
|
|
||||||
file = {
|
|
||||||
".background-image".source = ../images/nix-stars.png;
|
|
||||||
".config" = {
|
|
||||||
source = ./config;
|
|
||||||
recursive = true;
|
|
||||||
};
|
|
||||||
};
|
|
||||||
};
|
|
||||||
}
|
|
||||||
|
|
@ -1,18 +0,0 @@
|
||||||
{
|
|
||||||
programs = {
|
|
||||||
librewolf = {
|
|
||||||
enable = true;
|
|
||||||
settings = {
|
|
||||||
"webgl.disabled" = true;
|
|
||||||
"media.peerconnection.ice.no_host" = false;
|
|
||||||
"browser.sessionstore.resume_from_crash" = false;
|
|
||||||
"security.OCSP.require" = false;
|
|
||||||
"network.dns.disableIPv6" = true;
|
|
||||||
"privacy.resistFingerprinting" = true;
|
|
||||||
"privacy.resistFingerprinting.letterboxing" = true;
|
|
||||||
"privacy.clearOnShutdown.history" = true;
|
|
||||||
"privacy.clearOnShutdown.downloads" = true;
|
|
||||||
};
|
|
||||||
};
|
|
||||||
};
|
|
||||||
}
|
|
||||||
|
|
@ -1,26 +0,0 @@
|
||||||
{
|
|
||||||
settings,
|
|
||||||
lib,
|
|
||||||
...
|
|
||||||
}: {
|
|
||||||
imports = let
|
|
||||||
modules = [
|
|
||||||
"theme"
|
|
||||||
];
|
|
||||||
in
|
|
||||||
lib.lists.forEach modules (
|
|
||||||
m:
|
|
||||||
./. + ("/" + m + ".nix")
|
|
||||||
);
|
|
||||||
home = {
|
|
||||||
username = "root";
|
|
||||||
homeDirectory = "/root";
|
|
||||||
stateVersion = settings.version;
|
|
||||||
file = {
|
|
||||||
".config/neofetch/config.conf" = {
|
|
||||||
source = ./config/neofetch/config.conf;
|
|
||||||
recursive = false;
|
|
||||||
};
|
|
||||||
};
|
|
||||||
};
|
|
||||||
}
|
|
||||||
|
|
@ -1,11 +1,12 @@
|
||||||
{
|
{
|
||||||
pkgs,
|
pkgs,
|
||||||
spicetify-nix,
|
inputs,
|
||||||
...
|
...
|
||||||
}: let
|
}: let
|
||||||
spicePkgs = spicetify-nix.packages.${pkgs.system}.default;
|
sp-nix = inputs.spicetify-nix;
|
||||||
|
spicePkgs = sp-nix.packages.${pkgs.system}.default;
|
||||||
in {
|
in {
|
||||||
imports = [spicetify-nix.homeManagerModule];
|
imports = [sp-nix.homeManagerModule];
|
||||||
programs.spicetify = {
|
programs.spicetify = {
|
||||||
spotifyPackage = pkgs.spotify-unwrapped;
|
spotifyPackage = pkgs.spotify-unwrapped;
|
||||||
spicetifyPackage = pkgs.spicetify-cli;
|
spicetifyPackage = pkgs.spicetify-cli;
|
||||||
|
|
|
||||||
Binary file not shown.
|
Before Width: | Height: | Size: 2.5 MiB |
BIN
images/recursion.png
Normal file
BIN
images/recursion.png
Normal file
Binary file not shown.
|
After Width: | Height: | Size: 8 MiB |
Binary file not shown.
|
Before Width: | Height: | Size: 146 KiB |
BIN
images/stars.jpg
BIN
images/stars.jpg
Binary file not shown.
|
Before Width: | Height: | Size: 1.1 MiB |
|
|
@ -1,6 +1,13 @@
|
||||||
{pkgs, ...}: {
|
{pkgs, ...}: {
|
||||||
fonts = {
|
fonts = {
|
||||||
fonts = with pkgs; [overpass nerdfonts-overpass material-design-icons];
|
fonts = with pkgs; [
|
||||||
|
overpass
|
||||||
|
material-design-icons
|
||||||
|
(nerdfonts.override
|
||||||
|
{
|
||||||
|
fonts = ["Overpass"];
|
||||||
|
})
|
||||||
|
];
|
||||||
fontDir.enable = true;
|
fontDir.enable = true;
|
||||||
fontconfig = {
|
fontconfig = {
|
||||||
enable = true;
|
enable = true;
|
||||||
|
|
|
||||||
|
|
@ -4,7 +4,9 @@
|
||||||
inputs,
|
inputs,
|
||||||
...
|
...
|
||||||
}: {
|
}: {
|
||||||
environment.systemPackages = with pkgs; [
|
environment = {
|
||||||
|
defaultPackages = []; #don't install anything by default
|
||||||
|
systemPackages = with pkgs; [
|
||||||
bottom #view tasks
|
bottom #view tasks
|
||||||
efibootmgr #efi editor
|
efibootmgr #efi editor
|
||||||
maim #screenshooter
|
maim #screenshooter
|
||||||
|
|
@ -24,7 +26,7 @@
|
||||||
xclip #commandline clipboard access
|
xclip #commandline clipboard access
|
||||||
exa #ls replacement
|
exa #ls replacement
|
||||||
cava #pretty audio
|
cava #pretty audio
|
||||||
neofetch # cus yes
|
nitch # cus yes
|
||||||
dmenu #suckless launcher
|
dmenu #suckless launcher
|
||||||
st #suckless terminal
|
st #suckless terminal
|
||||||
pipes-rs # more fun things
|
pipes-rs # more fun things
|
||||||
|
|
@ -32,6 +34,8 @@
|
||||||
nix-tree #view packages
|
nix-tree #view packages
|
||||||
bc #terminal calculator
|
bc #terminal calculator
|
||||||
page #use nvim as a pager
|
page #use nvim as a pager
|
||||||
|
librewolf #best browser
|
||||||
inputs.nvim-config.packages.${pkgs.system}.default #my custom nvim flake
|
inputs.nvim-config.packages.${pkgs.system}.default #my custom nvim flake
|
||||||
];
|
];
|
||||||
|
};
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -1,4 +1,18 @@
|
||||||
{
|
{pkgs, ...}: {
|
||||||
|
environment = {
|
||||||
|
binsh = "${pkgs.dash}/bin/dash"; #use dash for speed
|
||||||
|
variables = {
|
||||||
|
EDITOR = "vi";
|
||||||
|
VISUAL = "vi";
|
||||||
|
PAGER = "page";
|
||||||
|
SYSTEMD_PAGERSECURE = "true";
|
||||||
|
TERMINAL = "st";
|
||||||
|
};
|
||||||
|
shellAliases = {
|
||||||
|
ls = "exa --long --icons";
|
||||||
|
};
|
||||||
|
interactiveShellInit = "nitch";
|
||||||
|
};
|
||||||
programs = {
|
programs = {
|
||||||
zsh = {
|
zsh = {
|
||||||
enable = true;
|
enable = true;
|
||||||
|
|
@ -13,6 +13,9 @@
|
||||||
excludePackages = [pkgs.xterm];
|
excludePackages = [pkgs.xterm];
|
||||||
windowManager.dwm.enable = true;
|
windowManager.dwm.enable = true;
|
||||||
displayManager = {
|
displayManager = {
|
||||||
|
sessionCommands = ''
|
||||||
|
feh --bg-scale ${../images/recursion.png}
|
||||||
|
'';
|
||||||
defaultSession = "none+dwm";
|
defaultSession = "none+dwm";
|
||||||
lightdm = {
|
lightdm = {
|
||||||
enable = true;
|
enable = true;
|
||||||
|
|
@ -45,7 +48,7 @@
|
||||||
font-style = normal
|
font-style = normal
|
||||||
text-color = "#7AA2F7"
|
text-color = "#7AA2F7"
|
||||||
error-color = "#DB4B4B"
|
error-color = "#DB4B4B"
|
||||||
background-image = "/etc/nixos/images/nix-stars.png"
|
background-image = "${../images/recursion.png}"
|
||||||
background-color = "#000000"
|
background-color = "#000000"
|
||||||
window-color = "#000000"
|
window-color = "#000000"
|
||||||
border-color = "#000000"
|
border-color = "#000000"
|
||||||
|
|
|
||||||
40
nix.nix
Normal file
40
nix.nix
Normal file
|
|
@ -0,0 +1,40 @@
|
||||||
|
{
|
||||||
|
inputs,
|
||||||
|
lib,
|
||||||
|
...
|
||||||
|
}: {
|
||||||
|
environment.etc = {
|
||||||
|
"nix/flake-channels/system".source = inputs.self;
|
||||||
|
"nix/flake-channels/nixpkgs".source = inputs.nixpkgs.outPath;
|
||||||
|
"nix/flake-channels/home-manager".source = inputs.home-manager.outPath;
|
||||||
|
};
|
||||||
|
nix = {
|
||||||
|
nixPath = [
|
||||||
|
"nixpkgs=/etc/nix/flake-channels/nixpkgs"
|
||||||
|
"home-manager=/etc/nix/flake-channels/home-manager"
|
||||||
|
];
|
||||||
|
#automatically get registry from input flakes
|
||||||
|
registry =
|
||||||
|
{
|
||||||
|
system.flake = inputs.self;
|
||||||
|
default.flake = inputs.nixpkgs;
|
||||||
|
}
|
||||||
|
// lib.attrsets.mapAttrs (
|
||||||
|
_: source: {
|
||||||
|
flake = source;
|
||||||
|
}
|
||||||
|
) (
|
||||||
|
lib.attrsets.filterAttrs (
|
||||||
|
_: source: (
|
||||||
|
!(lib.attrsets.hasAttrByPath ["flake"] source) || source.flake == false
|
||||||
|
)
|
||||||
|
)
|
||||||
|
inputs
|
||||||
|
);
|
||||||
|
settings = {
|
||||||
|
experimental-features = ["nix-command" "flakes" "repl-flake"];
|
||||||
|
auto-optimise-store = true;
|
||||||
|
warn-dirty = false;
|
||||||
|
};
|
||||||
|
};
|
||||||
|
}
|
||||||
|
|
@ -18,7 +18,7 @@
|
||||||
"sxhkd"
|
"sxhkd"
|
||||||
"vfio"
|
"vfio"
|
||||||
"xserver"
|
"xserver"
|
||||||
"zsh"
|
"shells"
|
||||||
];
|
];
|
||||||
in
|
in
|
||||||
lib.lists.forEach modules (
|
lib.lists.forEach modules (
|
||||||
|
|
|
||||||
|
|
@ -15,7 +15,7 @@
|
||||||
"scripts"
|
"scripts"
|
||||||
"sxhkd"
|
"sxhkd"
|
||||||
"xserver"
|
"xserver"
|
||||||
"zsh"
|
"shells"
|
||||||
];
|
];
|
||||||
in
|
in
|
||||||
lib.lists.forEach modules (
|
lib.lists.forEach modules (
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue