mirror of
https://codeberg.org/muon/home.git
synced 2025-12-06 08:07:45 +00:00
Add QMK Cheat config
This commit is contained in:
parent
72ef424ba1
commit
00433dd778
6 changed files with 139 additions and 89 deletions
|
|
@ -29,6 +29,7 @@ in {
|
||||||
networking.hostName = cfg.user.name;
|
networking.hostName = cfg.user.name;
|
||||||
networking.hostId = "a230906f";
|
networking.hostId = "a230906f";
|
||||||
mods.home.file = ./home.nix;
|
mods.home.file = ./home.nix;
|
||||||
|
nix.settings.trusted-users = ["root" "muon"];
|
||||||
|
|
||||||
# Modules
|
# Modules
|
||||||
mods.desktop.enable = true;
|
mods.desktop.enable = true;
|
||||||
|
|
@ -61,6 +62,9 @@ in {
|
||||||
virtualisation.virtualbox.host.enable = true;
|
virtualisation.virtualbox.host.enable = true;
|
||||||
users.extraGroups.vboxusers.members = ["user-with-access-to-virtualbox"];
|
users.extraGroups.vboxusers.members = ["user-with-access-to-virtualbox"];
|
||||||
|
|
||||||
|
services.picom.enable = true;
|
||||||
|
services.picom.opacityRules = ["50:name *= 'Cheat'"];
|
||||||
|
|
||||||
# Proprietary </3
|
# Proprietary </3
|
||||||
mods.unfree.steam.enable = true;
|
mods.unfree.steam.enable = true;
|
||||||
mods.unfree.nvidia.enable = true;
|
mods.unfree.nvidia.enable = true;
|
||||||
|
|
|
||||||
|
|
@ -1,13 +1,21 @@
|
||||||
{ config, lib, pkgs, inputs, system, sources, modulesPath, ... }:
|
{
|
||||||
let cfg = config.mods;
|
config,
|
||||||
|
lib,
|
||||||
|
pkgs,
|
||||||
|
inputs,
|
||||||
|
system,
|
||||||
|
sources,
|
||||||
|
modulesPath,
|
||||||
|
...
|
||||||
|
}: let
|
||||||
|
cfg = config.mods;
|
||||||
in {
|
in {
|
||||||
# Hardware
|
# Hardware
|
||||||
imports = [
|
imports = [
|
||||||
./hardware-configuration.nix
|
./hardware-configuration.nix
|
||||||
"${
|
"${
|
||||||
builtins.fetchTarball {
|
builtins.fetchTarball {
|
||||||
url =
|
url = "https://github.com/nix-community/disko/archive/refs/tags/v1.12.0.tar.gz";
|
||||||
"https://github.com/nix-community/disko/archive/refs/tags/v1.12.0.tar.gz";
|
|
||||||
sha256 = "0wbx518d2x54yn4xh98cgm65wvj0gpy6nia6ra7ns4j63hx14fkq";
|
sha256 = "0wbx518d2x54yn4xh98cgm65wvj0gpy6nia6ra7ns4j63hx14fkq";
|
||||||
}
|
}
|
||||||
}/module.nix"
|
}/module.nix"
|
||||||
|
|
@ -28,8 +36,8 @@ in {
|
||||||
networking.hostName = "murk";
|
networking.hostName = "murk";
|
||||||
networking.hostId = "a2309090";
|
networking.hostId = "a2309090";
|
||||||
mods.home.file = ./home.nix;
|
mods.home.file = ./home.nix;
|
||||||
nix.settings.trusted-users = [ "root" "muon" ];
|
nix.settings.trusted-users = ["root" "muon"];
|
||||||
users.users.muon.extraGroups = [ "docker" ];
|
users.users.muon.extraGroups = ["docker"];
|
||||||
|
|
||||||
# Modules
|
# Modules
|
||||||
mods.desktop.enable = true;
|
mods.desktop.enable = true;
|
||||||
|
|
@ -46,9 +54,12 @@ in {
|
||||||
services.hardware.openrgb.enable = true;
|
services.hardware.openrgb.enable = true;
|
||||||
virtualisation.docker.enable = true;
|
virtualisation.docker.enable = true;
|
||||||
|
|
||||||
|
services.picom.enable = true;
|
||||||
|
services.picom.opacityRules = ["50:name *= 'Cheat'"];
|
||||||
|
|
||||||
# Persist
|
# Persist
|
||||||
environment.persistence."/persist" = {
|
environment.persistence."/persist" = {
|
||||||
directories = [ "/etc/NetworkManager" "/var/lib/NetworkManager" ];
|
directories = ["/etc/NetworkManager" "/var/lib/NetworkManager"];
|
||||||
};
|
};
|
||||||
|
|
||||||
# Hardware preferences
|
# Hardware preferences
|
||||||
|
|
|
||||||
|
|
@ -97,6 +97,10 @@ in
|
||||||
hideEdgeBorders = "smart";
|
hideEdgeBorders = "smart";
|
||||||
};
|
};
|
||||||
|
|
||||||
|
floating.criteria = [
|
||||||
|
{title = "Cheat";}
|
||||||
|
];
|
||||||
|
|
||||||
defaultWorkspace = "workspace number 1";
|
defaultWorkspace = "workspace number 1";
|
||||||
workspaceAutoBackAndForth = true;
|
workspaceAutoBackAndForth = true;
|
||||||
focus.wrapping = "yes";
|
focus.wrapping = "yes";
|
||||||
|
|
|
||||||
|
|
@ -1,8 +1,14 @@
|
||||||
{ pkgs, lib, config, inputs, ... }: {
|
{
|
||||||
|
pkgs,
|
||||||
|
lib,
|
||||||
|
config,
|
||||||
|
inputs,
|
||||||
|
...
|
||||||
|
}: {
|
||||||
options.mods.terminal.development.enable =
|
options.mods.terminal.development.enable =
|
||||||
lib.mkEnableOption "enables cli editor";
|
lib.mkEnableOption "enables cli editor";
|
||||||
|
|
||||||
imports = [ inputs.nvf.homeManagerModules.default ];
|
imports = [inputs.nvf.homeManagerModules.default];
|
||||||
|
|
||||||
config = lib.mkIf config.mods.terminal.development.enable {
|
config = lib.mkIf config.mods.terminal.development.enable {
|
||||||
home.packages = with pkgs; [
|
home.packages = with pkgs; [
|
||||||
|
|
@ -36,18 +42,18 @@
|
||||||
|
|
||||||
settings = {
|
settings = {
|
||||||
keys.normal = {
|
keys.normal = {
|
||||||
"esc" = [ "collapse_selection" "keep_primary_selection" ];
|
"esc" = ["collapse_selection" "keep_primary_selection"];
|
||||||
"Z" = {
|
"Z" = {
|
||||||
"Q" = ":quit!";
|
"Q" = ":quit!";
|
||||||
"Z" = ":write-quit!";
|
"Z" = ":write-quit!";
|
||||||
};
|
};
|
||||||
"V" = [ "select_mode" "extend_to_line_bounds" ];
|
"V" = ["select_mode" "extend_to_line_bounds"];
|
||||||
};
|
};
|
||||||
editor = {
|
editor = {
|
||||||
line-number = "relative";
|
line-number = "relative";
|
||||||
completion-replace = true;
|
completion-replace = true;
|
||||||
bufferline = "always";
|
bufferline = "always";
|
||||||
rulers = [ 80 ];
|
rulers = [80];
|
||||||
soft-wrap.enable = true;
|
soft-wrap.enable = true;
|
||||||
indent-guides.render = true;
|
indent-guides.render = true;
|
||||||
cursor-shape = {
|
cursor-shape = {
|
||||||
|
|
@ -76,18 +82,18 @@
|
||||||
}
|
}
|
||||||
{
|
{
|
||||||
name = "glsl";
|
name = "glsl";
|
||||||
language-servers = [ "glsl" ];
|
language-servers = ["glsl"];
|
||||||
}
|
}
|
||||||
{
|
{
|
||||||
name = "wgsl";
|
name = "wgsl";
|
||||||
language-servers = [ "wgsl" ];
|
language-servers = ["wgsl"];
|
||||||
}
|
}
|
||||||
{
|
{
|
||||||
name = "python";
|
name = "python";
|
||||||
auto-format = true;
|
auto-format = true;
|
||||||
formatter = {
|
formatter = {
|
||||||
command = "${pkgs.black}/bin/black";
|
command = "${pkgs.black}/bin/black";
|
||||||
args = [ "-" "--quiet" "--line-length=79" ];
|
args = ["-" "--quiet" "--line-length=79"];
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
];
|
];
|
||||||
|
|
@ -118,7 +124,11 @@
|
||||||
rust.crates.enable = true;
|
rust.crates.enable = true;
|
||||||
python.enable = true;
|
python.enable = true;
|
||||||
python.format.type = "ruff";
|
python.format.type = "ruff";
|
||||||
clang.enable = true;
|
|
||||||
|
clang = {
|
||||||
|
enable = true;
|
||||||
|
cHeader = true;
|
||||||
|
};
|
||||||
};
|
};
|
||||||
|
|
||||||
statusline.lualine.enable = true;
|
statusline.lualine.enable = true;
|
||||||
|
|
@ -140,7 +150,7 @@
|
||||||
todo-comments.enable = true;
|
todo-comments.enable = true;
|
||||||
};
|
};
|
||||||
|
|
||||||
spellcheck = { enable = true; };
|
spellcheck = {enable = true;};
|
||||||
|
|
||||||
binds = {
|
binds = {
|
||||||
whichKey.enable = true;
|
whichKey.enable = true;
|
||||||
|
|
|
||||||
|
|
@ -1,73 +1,84 @@
|
||||||
{ pkgs, lib, config, ... }:
|
{
|
||||||
let cfg = config.mods.terminal;
|
pkgs,
|
||||||
in with lib; {
|
lib,
|
||||||
options.mods.terminal.tools.enable = mkEnableOption "enables cli tools";
|
config,
|
||||||
|
...
|
||||||
|
}: let
|
||||||
|
cfg = config.mods.terminal;
|
||||||
|
in
|
||||||
|
with lib; {
|
||||||
|
options.mods.terminal.tools.enable = mkEnableOption "enables cli tools";
|
||||||
|
|
||||||
config = mkIf cfg.tools.enable {
|
config = mkIf cfg.tools.enable {
|
||||||
|
programs =
|
||||||
|
builtins.listToAttrs (map (name: {
|
||||||
|
name = name;
|
||||||
|
value =
|
||||||
|
{
|
||||||
|
enable = true;
|
||||||
|
}
|
||||||
|
// optionalAttrs
|
||||||
|
(builtins.hasAttr "enableZshIntegration" config.programs.${name}) {
|
||||||
|
enableZshIntegration = mkIf cfg.zsh.enable true;
|
||||||
|
};
|
||||||
|
}) [
|
||||||
|
"zellij"
|
||||||
|
"fzf"
|
||||||
|
"eza"
|
||||||
|
"bat"
|
||||||
|
"zoxide"
|
||||||
|
"dircolors"
|
||||||
|
"nix-index"
|
||||||
|
|
||||||
programs = builtins.listToAttrs (map (name: {
|
"lazygit"
|
||||||
name = name;
|
"fd"
|
||||||
value = {
|
"ripgrep"
|
||||||
enable = true;
|
"bottom"
|
||||||
} // optionalAttrs
|
"htop"
|
||||||
(builtins.hasAttr "enableZshIntegration" config.programs.${name}) {
|
"vifm"
|
||||||
enableZshIntegration = mkIf cfg.zsh.enable true;
|
"rbw"
|
||||||
};
|
])
|
||||||
}) [
|
// {
|
||||||
"zellij"
|
atuin = {
|
||||||
"fzf"
|
enable = true;
|
||||||
"eza"
|
enableZshIntegration = true;
|
||||||
"bat"
|
flags = ["--disable-up-arrow"];
|
||||||
"zoxide"
|
settings = {
|
||||||
"dircolors"
|
sync_frequency = "5m";
|
||||||
"nix-index"
|
sync_address = "https://atuin.muon.host";
|
||||||
|
key_path = config.sops.secrets.atuin-auth.path;
|
||||||
"lazygit"
|
keymap_mode = "vim-insert";
|
||||||
"fd"
|
keymap_cursor = {
|
||||||
"ripgrep"
|
vim_insert = "blink-bar";
|
||||||
"bottom"
|
vim_normal = "steady-block";
|
||||||
"htop"
|
};
|
||||||
"vifm"
|
};
|
||||||
"rbw"
|
|
||||||
]) // {
|
|
||||||
atuin = {
|
|
||||||
enable = true;
|
|
||||||
enableZshIntegration = true;
|
|
||||||
flags = [ "--disable-up-arrow" ];
|
|
||||||
settings = {
|
|
||||||
sync_frequency = "5m";
|
|
||||||
sync_address = "https://atuin.muon.host";
|
|
||||||
key_path = config.sops.secrets.atuin-auth.path;
|
|
||||||
keymap_mode = "vim-insert";
|
|
||||||
keymap_cursor = {
|
|
||||||
vim_insert = "blink-bar";
|
|
||||||
vim_normal = "steady-block";
|
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
};
|
|
||||||
|
home.packages = with pkgs; [
|
||||||
|
# libraries
|
||||||
|
glow
|
||||||
|
ueberzugpp
|
||||||
|
|
||||||
|
# file managing
|
||||||
|
trash-cli
|
||||||
|
dua
|
||||||
|
fdupes
|
||||||
|
vifm
|
||||||
|
unzip
|
||||||
|
|
||||||
|
# email
|
||||||
|
aerc
|
||||||
|
|
||||||
|
# security
|
||||||
|
pinentry-tty
|
||||||
|
|
||||||
|
# utilities
|
||||||
|
fend
|
||||||
|
xclip
|
||||||
|
just
|
||||||
|
devenv
|
||||||
|
];
|
||||||
};
|
};
|
||||||
|
}
|
||||||
home.packages = with pkgs; [
|
|
||||||
# libraries
|
|
||||||
glow
|
|
||||||
ueberzugpp
|
|
||||||
|
|
||||||
# file managing
|
|
||||||
trash-cli
|
|
||||||
dua
|
|
||||||
fdupes
|
|
||||||
vifm
|
|
||||||
unzip
|
|
||||||
|
|
||||||
# email
|
|
||||||
aerc
|
|
||||||
|
|
||||||
# security
|
|
||||||
pinentry-tty
|
|
||||||
|
|
||||||
# utilities
|
|
||||||
fend
|
|
||||||
xclip
|
|
||||||
];
|
|
||||||
};
|
|
||||||
}
|
|
||||||
|
|
|
||||||
|
|
@ -1,15 +1,23 @@
|
||||||
{ pkgs, lib, config, inputs, system, ... }: {
|
{
|
||||||
|
pkgs,
|
||||||
|
lib,
|
||||||
|
config,
|
||||||
|
inputs,
|
||||||
|
system,
|
||||||
|
...
|
||||||
|
}: {
|
||||||
options = {
|
options = {
|
||||||
mods.nix.upgrade.enable = lib.mkEnableOption "enables nix auto upgrade";
|
mods.nix.upgrade.enable = lib.mkEnableOption "enables nix auto upgrade";
|
||||||
mods.nix.clean.enable = lib.mkEnableOption "enables nix auto cleaning";
|
mods.nix.clean.enable = lib.mkEnableOption "enables nix auto cleaning";
|
||||||
};
|
};
|
||||||
|
|
||||||
config = let flake = "/home/${config.mods.user.name}/.config/home";
|
config = let
|
||||||
|
flake = "/home/${config.mods.user.name}/.config/home";
|
||||||
in {
|
in {
|
||||||
system.autoUpgrade = {
|
system.autoUpgrade = {
|
||||||
enable = config.mods.nix.upgrade.enable;
|
enable = config.mods.nix.upgrade.enable;
|
||||||
flake = flake;
|
flake = flake;
|
||||||
flags = [ "--commit-lock-file" "-L" ];
|
flags = ["--commit-lock-file" "-L"];
|
||||||
dates = "02:00";
|
dates = "02:00";
|
||||||
randomizedDelaySec = "45min";
|
randomizedDelaySec = "45min";
|
||||||
};
|
};
|
||||||
|
|
@ -21,19 +29,21 @@
|
||||||
flake = flake;
|
flake = flake;
|
||||||
};
|
};
|
||||||
|
|
||||||
nix.settings.experimental-features = [ "nix-command" "flakes" ];
|
nix.settings.experimental-features = ["nix-command" "flakes"];
|
||||||
nix.settings = {
|
nix.settings = {
|
||||||
substituters = [
|
substituters = [
|
||||||
"https://cache.nixos.org"
|
"https://cache.nixos.org"
|
||||||
"https://nix-community.cachix.org"
|
"https://nix-community.cachix.org"
|
||||||
"https://nixpkgs-unfree.cachix.org"
|
"https://nixpkgs-unfree.cachix.org"
|
||||||
"https://hyprland.cachix.org"
|
"https://hyprland.cachix.org"
|
||||||
|
"https://devenv.cachix.org"
|
||||||
];
|
];
|
||||||
trusted-public-keys = [
|
trusted-public-keys = [
|
||||||
"cache.nixos.org-1:6NCHdD59X431o0gWypbMrAURkbJ16ZPMQFGspcDShjY="
|
"cache.nixos.org-1:6NCHdD59X431o0gWypbMrAURkbJ16ZPMQFGspcDShjY="
|
||||||
"nix-community.cachix.org-1:mB9FSh9qf2dCimDSUo8Zy7bkq5CX+/rkCWyvRCYg3Fs="
|
"nix-community.cachix.org-1:mB9FSh9qf2dCimDSUo8Zy7bkq5CX+/rkCWyvRCYg3Fs="
|
||||||
"nixpkgs-unfree.cachix.org-1:hqvoInulhbV4nJ9yJOEr+4wxhDV4xq2d1DK7S6Nj6rs="
|
"nixpkgs-unfree.cachix.org-1:hqvoInulhbV4nJ9yJOEr+4wxhDV4xq2d1DK7S6Nj6rs="
|
||||||
"hyprland.cachix.org-1:a7pgxzMz7+chwVL3/pzj6jIBMioiJM7ypFP8PwtkuGc="
|
"hyprland.cachix.org-1:a7pgxzMz7+chwVL3/pzj6jIBMioiJM7ypFP8PwtkuGc="
|
||||||
|
"devenv.cachix.org-1:w1cLUi8dv3hnoSPGAuibQv+f9TZLr6cv/Hm9XgU50cw="
|
||||||
];
|
];
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue