desktop building?
This commit is contained in:
@@ -1,59 +0,0 @@
|
||||
{ lib, pkgs, home, ... }:
|
||||
let
|
||||
shellAliases = {
|
||||
update-switch = "darwin-rebuild switch --flake ~/nix-config";
|
||||
update-flake = "nix flake update ~/nix-config";
|
||||
ducks = "du -cksh * | sort -hr | head -n 15";
|
||||
};
|
||||
packages = with pkgs; [
|
||||
age
|
||||
cpufetch
|
||||
deadnix
|
||||
direnv
|
||||
nixfmt-rfc-style
|
||||
sops
|
||||
tree
|
||||
wget
|
||||
];
|
||||
in
|
||||
{
|
||||
imports = [
|
||||
../../modules/home/defaults.nix
|
||||
../../modules/home/git.nix
|
||||
../../modules/home/shell.nix
|
||||
../../modules/home/vscode.nix
|
||||
];
|
||||
# Home Manager needs a bit of information about you and the
|
||||
# paths it should manage.
|
||||
home = {
|
||||
username = "mattjallen";
|
||||
homeDirectory = "/Users/mattjallen";
|
||||
packages = lib.mkForce packages;
|
||||
sessionVariables = {
|
||||
NH_DARWIN_FLAKE = "${home.homeDirectory}/nix-config";
|
||||
};
|
||||
};
|
||||
|
||||
programs = {
|
||||
zsh = {
|
||||
shellAliases = shellAliases;
|
||||
};
|
||||
};
|
||||
|
||||
# Manage bug in compilations - who uses manpages in 2024 anyways? :P
|
||||
manual.manpages.enable = false;
|
||||
|
||||
# Override defaults that arent supported
|
||||
programs = {
|
||||
mangohud.enable = lib.mkForce false;
|
||||
|
||||
nh = {
|
||||
flake = "${home.homeDirectory}/nix-config";
|
||||
};
|
||||
};
|
||||
|
||||
services = {
|
||||
pass-secret-service.enable = lib.mkForce false;
|
||||
nextcloud-client.enable = lib.mkForce false;
|
||||
};
|
||||
}
|
||||
@@ -1,28 +0,0 @@
|
||||
{ pkgs, ... }:
|
||||
let
|
||||
shellAliases = {
|
||||
update-boot = "sudo nixos-rebuild boot --max-jobs 10 --build-host admin@10.0.1.3";
|
||||
update-switch = "sudo nixos-rebuild switch --max-jobs 10 --build-host admin@10.0.1.3";
|
||||
update-flake = "nix flake update mac-nixpkgs mac-nixos-apple-silicon mac-home-manager mac-impermanence mac-sops-nix --flake /etc/nixos";
|
||||
update-nas = "nixos-rebuild switch --use-remote-sudo --target-host admin@10.0.1.3 --build-host admin@10.0.1.3 --flake ~/nix-config#jallen-nas";
|
||||
};
|
||||
in
|
||||
{
|
||||
|
||||
home.username = "matt";
|
||||
home.homeDirectory = "/home/matt";
|
||||
home.stateVersion = "23.11";
|
||||
|
||||
home.packages = with pkgs; [
|
||||
iw
|
||||
iwd
|
||||
orca-slicer
|
||||
vscodium
|
||||
];
|
||||
|
||||
programs = {
|
||||
password-store.enable = true;
|
||||
|
||||
zsh.shellAliases = shellAliases;
|
||||
};
|
||||
}
|
||||
@@ -1,66 +0,0 @@
|
||||
{ lib, ... }:
|
||||
let
|
||||
shellAliases = {
|
||||
ll = "ls -alh";
|
||||
update-boot = "sudo nixos-rebuild boot --max-jobs 10 --build-host admin@10.0.1.3";
|
||||
update-switch = "sudo nixos-rebuild switch --max-jobs 10 --build-host admin@10.0.1.3";
|
||||
update-flake = "nix flake update pi4-nixpkgs pi4-home-manager pi4-impermanence pi4-sops-nix pi4-nixos-hardware pi4-nixos-raspberrypi pi4-disko --flake /etc/nixos";
|
||||
update-nas = "nixos-rebuild switch --use-remote-sudo --target-host admin@10.0.1.3 --build-host admin@10.0.1.3 --flake ~/nix-config#jallen-nas";
|
||||
nas-ssh = "kitten ssh admin@10.0.1.3";
|
||||
ducks = "du -cksh * | sort -hr | head -n 15";
|
||||
};
|
||||
in
|
||||
{
|
||||
imports = [
|
||||
../../share/home/defaults.nix
|
||||
../../share/home/git.nix
|
||||
../../share/home/shell.nix
|
||||
];
|
||||
|
||||
home.username = "matt";
|
||||
|
||||
sops = {
|
||||
age.keyFile = "/home/matt/.config/sops/age/keys.txt";
|
||||
defaultSopsFile = "/etc/nixos/secrets/secrets.yaml";
|
||||
validateSopsFiles = false;
|
||||
secrets = {
|
||||
"ssh-keys-public/pi4" = {
|
||||
path = "/home/matt/.ssh/id_ed25519.pub";
|
||||
mode = "0644";
|
||||
};
|
||||
"ssh-keys-private/pi4" = {
|
||||
path = "/home/matt/.ssh/id_ed25519";
|
||||
mode = "0600";
|
||||
};
|
||||
# "ssh-keys-public/desktop-nixos" = {
|
||||
# path = "/home/matt/.ssh/authorized_keys";
|
||||
# mode = "0600";
|
||||
# };
|
||||
|
||||
# "ssh-keys-public/desktop-nixos-root" = {
|
||||
# path = "/home/matt/.ssh/authorized_keys2";
|
||||
# mode = "0600";
|
||||
# };
|
||||
|
||||
# "ssh-keys-public/desktop-windows" = {
|
||||
# path = "/home/matt/.ssh/authorized_keys3";
|
||||
# mode = "0600";
|
||||
# };
|
||||
|
||||
# "ssh-keys-public/macbook-macos" = {
|
||||
# path = "/home/matt/.ssh/authorized_keys4";
|
||||
# mode = "0600";
|
||||
# };
|
||||
};
|
||||
};
|
||||
|
||||
programs = {
|
||||
java.enable = lib.mkForce true;
|
||||
mangohud.enable = lib.mkForce true;
|
||||
zsh.shellAliases = shellAliases;
|
||||
};
|
||||
|
||||
services = {
|
||||
nextcloud-client.enable = lib.mkForce true;
|
||||
};
|
||||
}
|
||||
@@ -1,65 +0,0 @@
|
||||
{ pkgs, lib, config, ... }:
|
||||
let
|
||||
shellAliases = {
|
||||
update-boot = "sudo nixos-rebuild boot --max-jobs 10 --build-host admin@10.0.1.3";
|
||||
update-switch = "sudo nixos-rebuild switch --max-jobs 10 --build-host admin@10.0.1.3";
|
||||
update-flake = "nix flake update pi5-nixpkgs pi5-home-manager pi5-impermanence pi5-nixos-hardware pi5-sops-nix nixos-raspberrypi --flake /etc/nixos";
|
||||
update-nas = "nixos-rebuild switch --use-remote-sudo --target-host admin@10.0.1.3 --build-host admin@10.0.1.3 --flake ~/nix-config#jallen-nas";
|
||||
nas-ssh = "kitten ssh admin@10.0.1.3";
|
||||
};
|
||||
in
|
||||
{
|
||||
imports = [
|
||||
../../share/home/defaults.nix
|
||||
../../share/home/git.nix
|
||||
../../share/home/gnome.nix
|
||||
../../share/home/librewolf.nix
|
||||
../../share/home/shell.nix
|
||||
../../share/home/vscode.nix
|
||||
];
|
||||
|
||||
home.username = "matt";
|
||||
|
||||
sops = {
|
||||
age.keyFile = "/home/matt/.config/sops/age/keys.txt";
|
||||
defaultSopsFile = "/etc/nixos/secrets/secrets.yaml";
|
||||
validateSopsFiles = false;
|
||||
secrets = {
|
||||
"ssh-keys-public/pi5" = {
|
||||
path = "/home/matt/.ssh/id_ed25519.pub";
|
||||
mode = "0644";
|
||||
};
|
||||
"ssh-keys-private/pi5" = {
|
||||
path = "/home/matt/.ssh/id_ed25519";
|
||||
mode = "0600";
|
||||
};
|
||||
"ssh-keys-public/jallen-nas" = { };
|
||||
|
||||
"ssh-keys-public/jallen-nas-root" = { };
|
||||
|
||||
"ssh-keys-public/desktop-nixos" = { };
|
||||
|
||||
"ssh-keys-public/desktop-nixos-root" = { };
|
||||
|
||||
"ssh-keys-public/desktop-windows" = { };
|
||||
|
||||
"ssh-keys-public/macbook-macos" = { };
|
||||
};
|
||||
|
||||
templates = {
|
||||
"authorized_keys" = {
|
||||
content = ''
|
||||
${config.sops.placeholder."ssh-keys-public/jallen-nas"}
|
||||
${config.sops.placeholder."ssh-keys-public/jallen-nas-root"}
|
||||
${config.sops.placeholder."ssh-keys-public/desktop-nixos"}
|
||||
${config.sops.placeholder."ssh-keys-public/desktop-nixos-root"}
|
||||
${config.sops.placeholder."ssh-keys-public/macbook-macos"}
|
||||
'';
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
programs = {
|
||||
zsh.shellAliases = shellAliases;
|
||||
};
|
||||
}
|
||||
@@ -52,16 +52,16 @@ let
|
||||
];
|
||||
in
|
||||
{
|
||||
nix = {
|
||||
settings = {
|
||||
substituters = [
|
||||
"https://cache.mjallen.dev"
|
||||
];
|
||||
trusted-public-keys = [
|
||||
"cache.mjallen.dev-1:IzFmKCd8/gggI6lcCXsW65qQwiCLGFFN9t9s2iw7Lvc="
|
||||
];
|
||||
};
|
||||
};
|
||||
# nix = {
|
||||
# settings = {
|
||||
# substituters = [
|
||||
# "https://cache.mjallen.dev"
|
||||
# ];
|
||||
# trusted-public-keys = [
|
||||
# "cache.mjallen.dev-1:IzFmKCd8/gggI6lcCXsW65qQwiCLGFFN9t9s2iw7Lvc="
|
||||
# ];
|
||||
# };
|
||||
# };
|
||||
|
||||
chaotic.mesa-git.enable = false;
|
||||
|
||||
@@ -76,7 +76,7 @@ in
|
||||
hardware = {
|
||||
# Enable the QMK firmware flashing tool.
|
||||
keyboard = {
|
||||
qmk.enable = true;
|
||||
qmk.enable = false;
|
||||
};
|
||||
|
||||
# Enable Sane and Brother printer support.
|
||||
|
||||
@@ -28,6 +28,9 @@
|
||||
./nix.nix
|
||||
./sops.nix
|
||||
./users.nix
|
||||
|
||||
|
||||
./specialisations/hyprland
|
||||
];
|
||||
|
||||
${namespace} = {
|
||||
|
||||
@@ -1,97 +1,97 @@
|
||||
let
|
||||
theme = import ../../modules/nixos/hyprland/theme.nix;
|
||||
defaultOpacity = theme.waybar.defaultOpacity;
|
||||
defaultBorderRadius = theme.waybar.defaultBorderRadius;
|
||||
defaultCenterOptions = theme.waybar.defaultCenterOptions;
|
||||
borderLeft = theme.waybar.borderLeft;
|
||||
borderRight = theme.waybar.borderRight;
|
||||
# let
|
||||
# theme = import ../../modules/nixos/hyprland/theme.nix;
|
||||
# defaultOpacity = theme.waybar.defaultOpacity;
|
||||
# defaultBorderRadius = theme.waybar.defaultBorderRadius;
|
||||
# defaultCenterOptions = theme.waybar.defaultCenterOptions;
|
||||
# borderLeft = theme.waybar.borderLeft;
|
||||
# borderRight = theme.waybar.borderRight;
|
||||
|
||||
# Displays
|
||||
displayLeft = {
|
||||
input = "DP-1";
|
||||
resolution = "3840x2160";
|
||||
refreshRate = "240.00000";
|
||||
};
|
||||
displayRight = {
|
||||
input = "DP-2";
|
||||
resolution = "3840x2160";
|
||||
refreshRate = "240.00000";
|
||||
};
|
||||
in
|
||||
{
|
||||
primaryDisplay = displayLeft;
|
||||
networkInterface = "wlp9s0";
|
||||
# # Displays
|
||||
# displayLeft = {
|
||||
# input = "DP-1";
|
||||
# resolution = "3840x2160";
|
||||
# refreshRate = "240.00000";
|
||||
# };
|
||||
# displayRight = {
|
||||
# input = "DP-2";
|
||||
# resolution = "3840x2160";
|
||||
# refreshRate = "240.00000";
|
||||
# };
|
||||
# in
|
||||
# {
|
||||
# primaryDisplay = displayLeft;
|
||||
# networkInterface = "wlp9s0";
|
||||
|
||||
wallpaper = [
|
||||
"${displayLeft.input}, /run/wallpaper.jpg"
|
||||
"${displayRight.input}, /run/wallpaper.jpg"
|
||||
];
|
||||
# wallpaper = [
|
||||
# "${displayLeft.input}, /run/wallpaper.jpg"
|
||||
# "${displayRight.input}, /run/wallpaper.jpg"
|
||||
# ];
|
||||
|
||||
monitor = [
|
||||
"${displayLeft.input},${displayLeft.resolution}@${displayLeft.refreshRate},0x0,1,bitdepth,10,cm,hdr,sdrbrightness,1.2,sdrsaturation,0.98"
|
||||
"${displayRight.input},${displayRight.resolution}@${displayRight.refreshRate},3840x0,1,bitdepth,10,cm,hdr,sdrbrightness,1.5,sdrsaturation,0.98"
|
||||
];
|
||||
# monitor = [
|
||||
# "${displayLeft.input},${displayLeft.resolution}@${displayLeft.refreshRate},0x0,1,bitdepth,10,cm,hdr,sdrbrightness,1.2,sdrsaturation,0.98"
|
||||
# "${displayRight.input},${displayRight.resolution}@${displayRight.refreshRate},3840x0,1,bitdepth,10,cm,hdr,sdrbrightness,1.5,sdrsaturation,0.98"
|
||||
# ];
|
||||
|
||||
workspace = [
|
||||
"name:firefox, monitor:${displayRight.input}, default:false, special, class:(.*firefox.*)"
|
||||
"name:discord, monitor:${displayRight.input}, default:true, special, title:(.*vesktop.*), title:(.*Apple Music.*)"
|
||||
"name:steam, monitor:${displayLeft.input}, default:false, special, class:(.*[Ss]team.*)"
|
||||
];
|
||||
# workspace = [
|
||||
# "name:firefox, monitor:${displayRight.input}, default:false, special, class:(.*firefox.*)"
|
||||
# "name:discord, monitor:${displayRight.input}, default:true, special, title:(.*vesktop.*), title:(.*Apple Music.*)"
|
||||
# "name:steam, monitor:${displayLeft.input}, default:false, special, class:(.*[Ss]team.*)"
|
||||
# ];
|
||||
|
||||
windowRule = [
|
||||
"size 2160 7680, tag:horizonrdp"
|
||||
];
|
||||
# windowRule = [
|
||||
# "size 2160 7680, tag:horizonrdp"
|
||||
# ];
|
||||
|
||||
extraConfig = ''
|
||||
exec-once = nm-applet
|
||||
exec-once = [silent] firefox
|
||||
exec-once = [silent] vesktop
|
||||
exec-once = [silent] chromium --app="https://music.apple.com"
|
||||
exec-once = [silent] steam
|
||||
'';
|
||||
# extraConfig = ''
|
||||
# exec-once = nm-applet
|
||||
# exec-once = [silent] firefox
|
||||
# exec-once = [silent] vesktop
|
||||
# exec-once = [silent] chromium --app="https://music.apple.com"
|
||||
# exec-once = [silent] steam
|
||||
# '';
|
||||
|
||||
waybar = {
|
||||
# waybar = {
|
||||
|
||||
layer = "bottom";
|
||||
# layer = "bottom";
|
||||
|
||||
modules-right = [
|
||||
"tray"
|
||||
"custom/lights"
|
||||
"temperature"
|
||||
"temperature#gpu"
|
||||
"keyboard-state#capslock"
|
||||
"keyboard-state#numlock"
|
||||
"wireplumber#sink"
|
||||
"wireplumber#source"
|
||||
"bluetooth"
|
||||
"network"
|
||||
"idle_inhibitor"
|
||||
"clock"
|
||||
"custom/weather"
|
||||
];
|
||||
# modules-right = [
|
||||
# "tray"
|
||||
# "custom/lights"
|
||||
# "temperature"
|
||||
# "temperature#gpu"
|
||||
# "keyboard-state#capslock"
|
||||
# "keyboard-state#numlock"
|
||||
# "wireplumber#sink"
|
||||
# "wireplumber#source"
|
||||
# "bluetooth"
|
||||
# "network"
|
||||
# "idle_inhibitor"
|
||||
# "clock"
|
||||
# "custom/weather"
|
||||
# ];
|
||||
|
||||
extraModules = {
|
||||
"custom/lights" = {
|
||||
tooltip = false;
|
||||
exec = "waybar-hass --get_light light.living_room_lights";
|
||||
interval = "once";
|
||||
format = "{text}";#"";
|
||||
on-click = "waybar-hass --toggle_light light.living_room_lights";
|
||||
return-type = "json";
|
||||
};
|
||||
};
|
||||
# extraModules = {
|
||||
# "custom/lights" = {
|
||||
# tooltip = false;
|
||||
# exec = "waybar-hass --get_light light.living_room_lights";
|
||||
# interval = "once";
|
||||
# format = "{text}";#"";
|
||||
# on-click = "waybar-hass --toggle_light light.living_room_lights";
|
||||
# return-type = "json";
|
||||
# };
|
||||
# };
|
||||
|
||||
extraModulesStyle = ''
|
||||
#custom-lights {
|
||||
color: ${theme.nord.frost.nord8};
|
||||
background-color: ${theme.nord.polarNight.nord0};
|
||||
${defaultOpacity}
|
||||
${borderLeft}
|
||||
}
|
||||
# extraModulesStyle = ''
|
||||
# #custom-lights {
|
||||
# color: ${theme.nord.frost.nord8};
|
||||
# background-color: ${theme.nord.polarNight.nord0};
|
||||
# ${defaultOpacity}
|
||||
# ${borderLeft}
|
||||
# }
|
||||
|
||||
#custom-lights:hover {
|
||||
background: ${theme.nord.polarNight.nord3};
|
||||
}
|
||||
'';
|
||||
};
|
||||
}
|
||||
# #custom-lights:hover {
|
||||
# background: ${theme.nord.polarNight.nord3};
|
||||
# }
|
||||
# '';
|
||||
# };
|
||||
# }
|
||||
@@ -1,10 +1,56 @@
|
||||
{ namespace, ... }:
|
||||
{ lib, namespace, ... }:
|
||||
let
|
||||
# Displays
|
||||
displayLeft = {
|
||||
input = "DP-1";
|
||||
resolution = "3840x2160";
|
||||
refreshRate = "240.00000";
|
||||
};
|
||||
displayRight = {
|
||||
input = "DP-2";
|
||||
resolution = "3840x2160";
|
||||
refreshRate = "240.00000";
|
||||
};
|
||||
in
|
||||
{
|
||||
specialisation.hyprland.inheritParentConfig = true;
|
||||
specialisation.hyprland.configuration = {
|
||||
home-manager.users.matt = import ./home/default.nix;
|
||||
${namespace} = {
|
||||
desktop = {
|
||||
hyprland.enable = true;
|
||||
gnome.enable = false;
|
||||
hyprland = {
|
||||
enable = true;
|
||||
primaryDisplay = "DP-1";
|
||||
|
||||
wallpaper = [
|
||||
"${displayLeft.input}, /run/wallpaper.jpg"
|
||||
"${displayRight.input}, /run/wallpaper.jpg"
|
||||
];
|
||||
|
||||
monitor = [
|
||||
"${displayLeft.input},${displayLeft.resolution}@${displayLeft.refreshRate},0x0,1,bitdepth,10,cm,hdr,sdrbrightness,1.2,sdrsaturation,0.98"
|
||||
"${displayRight.input},${displayRight.resolution}@${displayRight.refreshRate},3840x0,1,bitdepth,10,cm,hdr,sdrbrightness,1.5,sdrsaturation,0.98"
|
||||
];
|
||||
|
||||
workspace = [
|
||||
"name:firefox, monitor:${displayRight.input}, default:false, special, class:(.*firefox.*)"
|
||||
"name:discord, monitor:${displayRight.input}, default:true, special, title:(.*vesktop.*), title:(.*Apple Music.*)"
|
||||
"name:steam, monitor:${displayLeft.input}, default:false, special, class:(.*[Ss]team.*)"
|
||||
];
|
||||
|
||||
windowRule = [
|
||||
"size 2160 7680, tag:horizonrdp"
|
||||
];
|
||||
|
||||
extraConfig = ''
|
||||
exec-once = nm-applet
|
||||
exec-once = [silent] firefox
|
||||
exec-once = [silent] vesktop
|
||||
exec-once = [silent] chromium --app="https://music.apple.com"
|
||||
exec-once = [silent] steam
|
||||
'';
|
||||
};
|
||||
gnome.enable = lib.mkForce false;
|
||||
};
|
||||
};
|
||||
environment.etc."specialisation".text = "hyprland";
|
||||
|
||||
@@ -0,0 +1,86 @@
|
||||
{ pkgs, ... }:
|
||||
let
|
||||
theme = import ../../../../../../modules/home/desktop/theme/nord.nix;
|
||||
fontName = "JetBrainsMono NFM";
|
||||
fontPackage = pkgs.nerd-fonts.jetbrains-mono;
|
||||
in
|
||||
{
|
||||
mjallen = {
|
||||
desktop.hyprland = {
|
||||
enable = true;
|
||||
defaultApps = {
|
||||
browser = pkgs.firefox;
|
||||
};
|
||||
};
|
||||
programs = {
|
||||
btop.enable = true;
|
||||
kitty = {
|
||||
enable = true;
|
||||
font = {
|
||||
name = fontName;
|
||||
package = fontPackage;
|
||||
};
|
||||
};
|
||||
mako = {
|
||||
enable = true;
|
||||
fontName = fontName;
|
||||
};
|
||||
nwg-dock.enable = true;
|
||||
nwg-drawer.enable = true;
|
||||
nwg-panel = {
|
||||
enable = true;
|
||||
defaultApps = {
|
||||
browser = pkgs.firefox;
|
||||
};
|
||||
};
|
||||
waybar = {
|
||||
enable = true;
|
||||
|
||||
networkInterface = "wlp9s0";
|
||||
layer = "bottom";
|
||||
|
||||
modules-right = [
|
||||
"tray"
|
||||
"custom/lights"
|
||||
"temperature"
|
||||
"temperature#gpu"
|
||||
"keyboard-state#capslock"
|
||||
"keyboard-state#numlock"
|
||||
"wireplumber#sink"
|
||||
"wireplumber#source"
|
||||
"bluetooth"
|
||||
"network"
|
||||
"idle_inhibitor"
|
||||
"clock"
|
||||
"custom/weather"
|
||||
];
|
||||
|
||||
extraModules = {
|
||||
"custom/lights" = {
|
||||
tooltip = false;
|
||||
exec = "waybar-hass --get_light light.living_room_lights";
|
||||
interval = "once";
|
||||
format = "{text}";#"";
|
||||
on-click = "waybar-hass --toggle_light light.living_room_lights";
|
||||
return-type = "json";
|
||||
};
|
||||
};
|
||||
|
||||
extraModulesStyle = ''
|
||||
#custom-lights {
|
||||
color: ${theme.frost.nord8};
|
||||
background-color: ${theme.polarNight.nord0};
|
||||
${theme.defaultOpacity}
|
||||
${theme.borderLeft}
|
||||
}
|
||||
|
||||
#custom-lights:hover {
|
||||
background: ${theme.polarNight.nord3};
|
||||
}
|
||||
'';
|
||||
};
|
||||
wlogout.enable = true;
|
||||
wofi.enable = true;
|
||||
};
|
||||
};
|
||||
}
|
||||
Reference in New Issue
Block a user