Compare commits
8 Commits
a90b640470
...
master
Author | SHA1 | Date | |
---|---|---|---|
8c5d99b231 | |||
![]() |
0eb31c0ca8 | ||
![]() |
02fb719e5b | ||
![]() |
b3010c39ec | ||
![]() |
d6d387ee85 | ||
![]() |
499a7859ee | ||
![]() |
55ee078daf | ||
![]() |
9574adb7a7 |
285
flake.lock
generated
@ -1,68 +1,68 @@
|
||||
{
|
||||
"nodes": {
|
||||
"dwm-nix": {
|
||||
"inputs": {
|
||||
"nixpkgs": "nixpkgs"
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1754520530,
|
||||
"narHash": "sha256-OcsKVMzGZ1LGsedKL7znevh+w0cxmgqoRx/OglLDwIU=",
|
||||
"owner": "Sojus07",
|
||||
"repo": "dwm-nix",
|
||||
"rev": "fa74608bfc685f83910dd83f31b04ddcad18ceb1",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
"owner": "Sojus07",
|
||||
"repo": "dwm-nix",
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"flake-compat": {
|
||||
"flake": false,
|
||||
"locked": {
|
||||
"lastModified": 1751685974,
|
||||
"narHash": "sha256-NKw96t+BgHIYzHUjkTK95FqYRVKB8DHpVhefWSz/kTw=",
|
||||
"ref": "refs/heads/main",
|
||||
"rev": "549f2762aebeff29a2e5ece7a7dc0f955281a1d1",
|
||||
"revCount": 92,
|
||||
"type": "git",
|
||||
"url": "https://git.lix.systems/lix-project/flake-compat.git"
|
||||
},
|
||||
"original": {
|
||||
"type": "git",
|
||||
"url": "https://git.lix.systems/lix-project/flake-compat.git"
|
||||
}
|
||||
},
|
||||
"flake-parts": {
|
||||
"inputs": {
|
||||
"nixpkgs-lib": "nixpkgs-lib"
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1733312601,
|
||||
"narHash": "sha256-4pDvzqnegAfRkPwO3wmwBhVi/Sye1mzps0zHWYnP88c=",
|
||||
"owner": "hercules-ci",
|
||||
"repo": "flake-parts",
|
||||
"rev": "205b12d8b7cd4802fbcb8e8ef6a0f1408781a4f9",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
"owner": "hercules-ci",
|
||||
"repo": "flake-parts",
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"flake-utils": {
|
||||
"inputs": {
|
||||
"systems": "systems"
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1731533236,
|
||||
"narHash": "sha256-l0KFg5HjrsfsO/JpG+r7fRrqm12kzFHyUHqHCVpMMbI=",
|
||||
"owner": "numtide",
|
||||
"repo": "flake-utils",
|
||||
"rev": "11707dc2f618dd54ca8739b309ec4fc024de578b",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
"owner": "numtide",
|
||||
"repo": "flake-utils",
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"home-manager": {
|
||||
"inputs": {
|
||||
"nixpkgs": [
|
||||
"nixpkgs-lib": [
|
||||
"nvf-config",
|
||||
"nvf",
|
||||
"nixpkgs"
|
||||
]
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1739907986,
|
||||
"narHash": "sha256-Vo7LHigoL4VdIJt+rVaQEctBzWN5di1FUvygeLg141E=",
|
||||
"owner": "nix-community",
|
||||
"repo": "home-manager",
|
||||
"rev": "a135aae1be749a10227413f9eb944a6f887dab86",
|
||||
"lastModified": 1753121425,
|
||||
"narHash": "sha256-TVcTNvOeWWk1DXljFxVRp+E0tzG1LhrVjOGGoMHuXio=",
|
||||
"owner": "hercules-ci",
|
||||
"repo": "flake-parts",
|
||||
"rev": "644e0fc48951a860279da645ba77fe4a6e814c5e",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
"owner": "nix-community",
|
||||
"repo": "home-manager",
|
||||
"owner": "hercules-ci",
|
||||
"repo": "flake-parts",
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"mnw": {
|
||||
"locked": {
|
||||
"lastModified": 1735150973,
|
||||
"narHash": "sha256-OJhcCAoaMMXeD6o4qI/hxBCNELJp4dN8D5LJZc8w8XA=",
|
||||
"lastModified": 1748710831,
|
||||
"narHash": "sha256-eZu2yH3Y2eA9DD3naKWy/sTxYS5rPK2hO7vj8tvUCSU=",
|
||||
"owner": "Gerg-L",
|
||||
"repo": "mnw",
|
||||
"rev": "40cd0b006cc48dffd0f8698ad7f54cf1d56779a6",
|
||||
"rev": "cff958a4e050f8d917a6ff3a5624bc4681c6187d",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
@ -71,39 +71,31 @@
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"nil": {
|
||||
"nix-sdr": {
|
||||
"inputs": {
|
||||
"flake-utils": [
|
||||
"nvf",
|
||||
"flake-utils"
|
||||
],
|
||||
"nixpkgs": [
|
||||
"nvf",
|
||||
"nixpkgs"
|
||||
],
|
||||
"rust-overlay": "rust-overlay"
|
||||
"nixpkgs": "nixpkgs_2"
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1732053863,
|
||||
"narHash": "sha256-DCIVdlb81Fct2uwzbtnawLBC/U03U2hqx8trqTJB7WA=",
|
||||
"owner": "oxalica",
|
||||
"repo": "nil",
|
||||
"rev": "2e24c9834e3bb5aa2a3701d3713b43a6fb106362",
|
||||
"lastModified": 1754504138,
|
||||
"narHash": "sha256-1I4pdwcAHXqShUveBcIgBrO+/uGpWL+ObEqQ6GiEucM=",
|
||||
"owner": "Sojus07",
|
||||
"repo": "nix-sdr",
|
||||
"rev": "1c265b57b626b99fe9ae1d6be202feae7c633dd4",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
"owner": "oxalica",
|
||||
"repo": "nil",
|
||||
"owner": "Sojus07",
|
||||
"repo": "nix-sdr",
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"nixpkgs": {
|
||||
"locked": {
|
||||
"lastModified": 1739736696,
|
||||
"narHash": "sha256-zON2GNBkzsIyALlOCFiEBcIjI4w38GYOb+P+R4S8Jsw=",
|
||||
"lastModified": 1754214453,
|
||||
"narHash": "sha256-Q/I2xJn/j1wpkGhWkQnm20nShYnG7TI99foDBpXm1SY=",
|
||||
"owner": "NixOS",
|
||||
"repo": "nixpkgs",
|
||||
"rev": "d74a2335ac9c133d6bbec9fc98d91a77f1604c1f",
|
||||
"rev": "5b09dc45f24cf32316283e62aec81ffee3c3e376",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
@ -113,25 +105,61 @@
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"nixpkgs-lib": {
|
||||
"locked": {
|
||||
"lastModified": 1733096140,
|
||||
"narHash": "sha256-1qRH7uAUsyQI7R1Uwl4T+XvdNv778H0Nb5njNrqvylY=",
|
||||
"type": "tarball",
|
||||
"url": "https://github.com/NixOS/nixpkgs/archive/5487e69da40cbd611ab2cadee0b4637225f7cfae.tar.gz"
|
||||
},
|
||||
"original": {
|
||||
"type": "tarball",
|
||||
"url": "https://github.com/NixOS/nixpkgs/archive/5487e69da40cbd611ab2cadee0b4637225f7cfae.tar.gz"
|
||||
}
|
||||
},
|
||||
"nixpkgs_2": {
|
||||
"locked": {
|
||||
"lastModified": 1737370608,
|
||||
"narHash": "sha256-hFA6SmioeqvGW/XvZa9bxniAeulksCOcj3kokdNT/YE=",
|
||||
"lastModified": 1754214453,
|
||||
"narHash": "sha256-Q/I2xJn/j1wpkGhWkQnm20nShYnG7TI99foDBpXm1SY=",
|
||||
"owner": "NixOS",
|
||||
"repo": "nixpkgs",
|
||||
"rev": "5b09dc45f24cf32316283e62aec81ffee3c3e376",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
"owner": "NixOS",
|
||||
"ref": "nixos-unstable",
|
||||
"repo": "nixpkgs",
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"nixpkgs_3": {
|
||||
"locked": {
|
||||
"lastModified": 1754214453,
|
||||
"narHash": "sha256-Q/I2xJn/j1wpkGhWkQnm20nShYnG7TI99foDBpXm1SY=",
|
||||
"owner": "NixOS",
|
||||
"repo": "nixpkgs",
|
||||
"rev": "5b09dc45f24cf32316283e62aec81ffee3c3e376",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
"owner": "NixOS",
|
||||
"ref": "nixos-unstable",
|
||||
"repo": "nixpkgs",
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"nixpkgs_4": {
|
||||
"locked": {
|
||||
"lastModified": 1754214453,
|
||||
"narHash": "sha256-Q/I2xJn/j1wpkGhWkQnm20nShYnG7TI99foDBpXm1SY=",
|
||||
"owner": "NixOS",
|
||||
"repo": "nixpkgs",
|
||||
"rev": "5b09dc45f24cf32316283e62aec81ffee3c3e376",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
"owner": "NixOS",
|
||||
"ref": "nixos-unstable",
|
||||
"repo": "nixpkgs",
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"nixpkgs_5": {
|
||||
"locked": {
|
||||
"lastModified": 1753432016,
|
||||
"narHash": "sha256-cnL5WWn/xkZoyH/03NNUS7QgW5vI7D1i74g48qplCvg=",
|
||||
"owner": "nixos",
|
||||
"repo": "nixpkgs",
|
||||
"rev": "300081d0cc72df578b02d914df941b8ec62240e6",
|
||||
"rev": "6027c30c8e9810896b92429f0092f624f7b1aace",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
@ -141,38 +169,20 @@
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"nmd": {
|
||||
"flake": false,
|
||||
"locked": {
|
||||
"lastModified": 1705050560,
|
||||
"narHash": "sha256-x3zzcdvhJpodsmdjqB4t5mkVW22V3wqHLOun0KRBzUI=",
|
||||
"owner": "~rycee",
|
||||
"repo": "nmd",
|
||||
"rev": "66d9334933119c36f91a78d565c152a4fdc8d3d3",
|
||||
"type": "sourcehut"
|
||||
},
|
||||
"original": {
|
||||
"owner": "~rycee",
|
||||
"repo": "nmd",
|
||||
"type": "sourcehut"
|
||||
}
|
||||
},
|
||||
"nvf": {
|
||||
"inputs": {
|
||||
"flake-compat": "flake-compat",
|
||||
"flake-parts": "flake-parts",
|
||||
"flake-utils": "flake-utils",
|
||||
"mnw": "mnw",
|
||||
"nil": "nil",
|
||||
"nixpkgs": "nixpkgs_2",
|
||||
"nmd": "nmd",
|
||||
"systems": "systems_2"
|
||||
"nixpkgs": "nixpkgs_5",
|
||||
"systems": "systems"
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1739751511,
|
||||
"narHash": "sha256-aKM96IPTHxpnPDSGl8+jo4WIPFUUDQTQKHGTZ3IkYhE=",
|
||||
"lastModified": 1754388740,
|
||||
"narHash": "sha256-6++6FDc/hcMpaJPgOrGzwmzCSgix3zIlcuTIy9+aNSs=",
|
||||
"owner": "notashelf",
|
||||
"repo": "nvf",
|
||||
"rev": "e42bcbe1ecb3392ecd8a7638edf991b9628f4d55",
|
||||
"rev": "22fb0d22cc474e85f94c5aa95b6c550c81ca7278",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
@ -181,33 +191,31 @@
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"nvf-config": {
|
||||
"inputs": {
|
||||
"nixpkgs": "nixpkgs_4",
|
||||
"nvf": "nvf"
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1754535583,
|
||||
"narHash": "sha256-KnpOmZUZT6slioX9CgM+2xl+KqRprTaEnBh6wtZyCFs=",
|
||||
"owner": "Sojus07",
|
||||
"repo": "nvf-config",
|
||||
"rev": "c09cdb67e3edacd0b3df1f5b818efa85e889f13f",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
"owner": "Sojus07",
|
||||
"repo": "nvf-config",
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"root": {
|
||||
"inputs": {
|
||||
"home-manager": "home-manager",
|
||||
"nixpkgs": "nixpkgs",
|
||||
"nvf": "nvf"
|
||||
}
|
||||
},
|
||||
"rust-overlay": {
|
||||
"inputs": {
|
||||
"nixpkgs": [
|
||||
"nvf",
|
||||
"nil",
|
||||
"nixpkgs"
|
||||
]
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1731983527,
|
||||
"narHash": "sha256-JECaBgC0pQ91Hq3W4unH6K9to8s2Zl2sPNu7bLOv4ek=",
|
||||
"owner": "oxalica",
|
||||
"repo": "rust-overlay",
|
||||
"rev": "71287228d96e9568e1e70c6bbfa3f992d145947b",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
"owner": "oxalica",
|
||||
"repo": "rust-overlay",
|
||||
"type": "github"
|
||||
"dwm-nix": "dwm-nix",
|
||||
"nix-sdr": "nix-sdr",
|
||||
"nixpkgs": "nixpkgs_3",
|
||||
"nvf-config": "nvf-config"
|
||||
}
|
||||
},
|
||||
"systems": {
|
||||
@ -224,21 +232,6 @@
|
||||
"repo": "default",
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"systems_2": {
|
||||
"locked": {
|
||||
"lastModified": 1681028828,
|
||||
"narHash": "sha256-Vy1rq5AaRuLzOxct8nz4T6wlgyUR7zLU309k9mBC768=",
|
||||
"owner": "nix-systems",
|
||||
"repo": "default",
|
||||
"rev": "da67096a3b9bf56a91d16901293e51ba5b49a27e",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
"owner": "nix-systems",
|
||||
"repo": "default",
|
||||
"type": "github"
|
||||
}
|
||||
}
|
||||
},
|
||||
"root": "root",
|
||||
|
22
flake.nix
@ -2,45 +2,53 @@
|
||||
description = "Sojus07 shitty NixOS Configuration lol";
|
||||
|
||||
inputs = {
|
||||
nix-sdr.url = "github:Sojus07/nix-sdr";
|
||||
dwm-nix.url = "github:Sojus07/dwm-nix";
|
||||
nvf-config.url = "github:Sojus07/nvf-config";
|
||||
|
||||
nixpkgs.url = "github:NixOS/nixpkgs/nixos-unstable";
|
||||
home-manager.url = "github:nix-community/home-manager";
|
||||
home-manager.inputs.nixpkgs.follows = "nixpkgs";
|
||||
nvf.url = "github:notashelf/nvf";
|
||||
};
|
||||
|
||||
outputs = {
|
||||
self,
|
||||
nixpkgs,
|
||||
home-manager,
|
||||
nvf,
|
||||
nix-sdr,
|
||||
dwm-nix,
|
||||
nvf-config,
|
||||
}: {
|
||||
nixosConfigurations.iridium = nixpkgs.lib.nixosSystem {
|
||||
system = "x86_64-linux";
|
||||
modules = [
|
||||
./hosts/iridium/configuration.nix
|
||||
nvf.nixosModules.default
|
||||
home-manager.nixosModules.home-manager
|
||||
nix-sdr.nixosModules.default
|
||||
dwm-nix.nixosModules.default
|
||||
nvf-config.nixosModules.default
|
||||
{
|
||||
home-manager = {
|
||||
useGlobalPkgs = true;
|
||||
useUserPackages = true;
|
||||
users.fabian = import ./hosts/default/home/home.nix;
|
||||
users.fabian = import ./modules/home.nix;
|
||||
};
|
||||
}
|
||||
];
|
||||
};
|
||||
|
||||
nixosConfigurations.meteor = nixpkgs.lib.nixosSystem {
|
||||
system = "x86_64-linux";
|
||||
modules = [
|
||||
./hosts/meteor/configuration.nix
|
||||
nvf.nixosModules.default
|
||||
home-manager.nixosModules.home-manager
|
||||
nix-sdr.nixosModules.default
|
||||
dwm-nix.nixosModules.default
|
||||
nvf-config.nixosModules.default
|
||||
{
|
||||
home-manager = {
|
||||
useGlobalPkgs = true;
|
||||
useUserPackages = true;
|
||||
users.fabian = import ./hosts/default/home/home.nix;
|
||||
users.fabian = import ./modules/home.nix;
|
||||
};
|
||||
}
|
||||
];
|
||||
|
@ -1,20 +0,0 @@
|
||||
{ config, pkgs, ... }:
|
||||
{
|
||||
imports = [
|
||||
./system/default.nix
|
||||
];
|
||||
|
||||
hardware = {
|
||||
bluetooth = {
|
||||
enable = true;
|
||||
};
|
||||
graphics = {
|
||||
enable = true;
|
||||
};
|
||||
};
|
||||
virtualisation = {
|
||||
docker = {
|
||||
enable = true;
|
||||
};
|
||||
};
|
||||
}
|
@ -1,48 +0,0 @@
|
||||
{ config, pkgs, ... }:
|
||||
{
|
||||
programs.alacritty = {
|
||||
enable = true;
|
||||
settings = {
|
||||
window.dimensions = {
|
||||
lines = 4;
|
||||
columns = 200;
|
||||
};
|
||||
font = {
|
||||
size = 15;
|
||||
normal = {
|
||||
family = "TerminessNerdFont";
|
||||
style = "Regular";
|
||||
};
|
||||
};
|
||||
terminal = {
|
||||
shell = "tmux";
|
||||
};
|
||||
colors = {
|
||||
primary = {
|
||||
foreground = "#f2f4f8";
|
||||
background = "#121212";
|
||||
};
|
||||
normal = {
|
||||
black = "#121212";
|
||||
red = "#ee5396";
|
||||
green = "#25be6a";
|
||||
yellow = "#08bdba";
|
||||
blue = "#78a9ff";
|
||||
magenta = "#be95ff";
|
||||
cyan = "#33b1ff";
|
||||
white = "#dfdfe0";
|
||||
};
|
||||
bright = {
|
||||
black = "#525252";
|
||||
red = "#ff7eb6";
|
||||
green = "#42be65";
|
||||
yellow = "#3ddbd9";
|
||||
blue = "#82cfff";
|
||||
magenta = "#df99ff";
|
||||
cyan = "#6ea6ff";
|
||||
white = "#ffffff";
|
||||
};
|
||||
};
|
||||
};
|
||||
};
|
||||
}
|
@ -1,10 +0,0 @@
|
||||
{ config, pkgs, ... }:
|
||||
{
|
||||
imports = [
|
||||
./alacritty.nix
|
||||
./git.nix
|
||||
./tmux.nix
|
||||
./sway.nix
|
||||
./waybar.nix
|
||||
];
|
||||
}
|
@ -1,10 +0,0 @@
|
||||
{ config, pkgs, ... }:
|
||||
{
|
||||
programs = {
|
||||
git = {
|
||||
enable = true;
|
||||
userName = "Sojus07";
|
||||
userEmail = "Sojus07";
|
||||
};
|
||||
};
|
||||
}
|
@ -1,33 +0,0 @@
|
||||
{
|
||||
config,
|
||||
pkgs,
|
||||
...
|
||||
}: {
|
||||
imports = [
|
||||
./default.nix
|
||||
];
|
||||
home = {
|
||||
enableNixpkgsReleaseCheck = false;
|
||||
stateVersion = "24.11";
|
||||
file = {
|
||||
".wp/temple.png".source = ./raw/wp/temple.png;
|
||||
".wp/skull_purple.png".source = ./raw/wp/skull_purple.png;
|
||||
".wp/gruvbox-dark-blue.png".source = ./raw/wp/gruvbox-dark-blue.png;
|
||||
".wp/anime_blue.png".source = ./raw/wp/anime_blue.png;
|
||||
".wp/fuji.png".source = ./raw/wp/fuji.png;
|
||||
".wp/orbit.png".source = ./raw/wp/orbit.png;
|
||||
".wp/hollow_knight.png".source = ./raw/wp/hollow_knight.png;
|
||||
".wp/ios.png".source = ./raw/wp/ios.png;
|
||||
".wp/manga.png".source = ./raw/wp/manga.png;
|
||||
".wp/bg.png".source = ./raw/wp/bg.png;
|
||||
".wp/wolf.png".source = ./raw/wp/wolf.png;
|
||||
".wp/nixos_dark.png".source = ./raw/wp/nixos_dark.png;
|
||||
".wp/GABE_Windows.png".source = ./raw/wp/GABE_Windows.png;
|
||||
".wp/soyuz.png".source = ./raw/wp/soyuz.png;
|
||||
".wp/bridge.png".source = ./raw/wp/bridge.png;
|
||||
".wp/skulls.png".source = ./raw/wp/skulls.png;
|
||||
".wp/purple_plants.png".source = ./raw/wp/purple_plants.png;
|
||||
".wp/black_hole.png".source = ./raw/wp/black_hole.png;
|
||||
};
|
||||
};
|
||||
}
|
Before Width: | Height: | Size: 534 KiB |
Before Width: | Height: | Size: 12 MiB |
Before Width: | Height: | Size: 2.3 MiB |
Before Width: | Height: | Size: 1.1 MiB |
Before Width: | Height: | Size: 60 KiB |
Before Width: | Height: | Size: 1.0 MiB |
Before Width: | Height: | Size: 181 KiB |
Before Width: | Height: | Size: 754 KiB |
Before Width: | Height: | Size: 1.8 MiB |
Before Width: | Height: | Size: 1.2 MiB |
Before Width: | Height: | Size: 164 KiB |
Before Width: | Height: | Size: 964 KiB |
Before Width: | Height: | Size: 6.2 MiB |
Before Width: | Height: | Size: 19 MiB |
Before Width: | Height: | Size: 410 KiB |
Before Width: | Height: | Size: 759 KiB |
Before Width: | Height: | Size: 486 KiB |
@ -1,117 +0,0 @@
|
||||
{config, pkgs, ... }:
|
||||
{
|
||||
home.packages = with pkgs; [
|
||||
grim
|
||||
swaybg
|
||||
slurp
|
||||
dunst
|
||||
|
||||
xdg-desktop-portal
|
||||
xdg-desktop-portal-gtk
|
||||
xdg-desktop-portal-wlr
|
||||
xdg-desktop-portal-gnome
|
||||
|
||||
];
|
||||
wayland.windowManager.sway = {
|
||||
enable = true;
|
||||
xwayland = true;
|
||||
package = pkgs.swayfx-unwrapped;
|
||||
wrapperFeatures.gtk = true;
|
||||
checkConfig = false;
|
||||
|
||||
extraSessionCommands = ''
|
||||
export _JAVA_AWT_WM_NONREPARENTING=1
|
||||
export QT_QPA_PLATFORM=wayland
|
||||
export XDG_CURRENT_DESKTOP=sway
|
||||
'';
|
||||
|
||||
config = rec {
|
||||
modifier = "Mod4";
|
||||
terminal = "alacritty";
|
||||
menu = "${pkgs.rofi}/bin/rofi -show drun -c .config/rofi/config.rasi";
|
||||
startup = [
|
||||
{command = "${pkgs.swaybg}/bin/swaybg -i $HOME/.wp/gruvbox-dark-blue.png; ${pkgs.dunst}/bin/dunst";}
|
||||
];
|
||||
bars = [{ command = "${pkgs.waybar}/bin/waybar"; }];
|
||||
gaps = {
|
||||
outer = 5;
|
||||
inner = 10;
|
||||
};
|
||||
window = {
|
||||
border = 0;
|
||||
};
|
||||
keybindings = {
|
||||
# IMPORTANT STUFF #
|
||||
"${modifier}+Return" = "exec ${terminal}";
|
||||
"${modifier}+space" = "exec ${menu}";
|
||||
"${modifier}+Q" = "kill";
|
||||
"${modifier}+Shift+R" = "reload";
|
||||
"Print" = "flameshot gui";
|
||||
|
||||
# WINDOW STUFF #
|
||||
"${modifier}+Shift+space" = "floating toggle";
|
||||
"${modifier}+Shift+F" = "fullscreen toggle";
|
||||
"${modifier}+Left" = "focus left";
|
||||
"${modifier}+Down" = "focus down";
|
||||
"${modifier}+Up" = "focus up";
|
||||
"${modifier}+Right" = "focus right";
|
||||
|
||||
"${modifier}+Ctrl+Right" = "resize shrink width 3 px or 3 ppt";
|
||||
"${modifier}+Ctrl+Down" = "resize grow height 3 px or 3 ppt";
|
||||
"${modifier}+Ctrl+Up" = "resize shrink height 3 px or 3 ppt";
|
||||
"${modifier}+Ctrl+Left" = "resize grow width 3 px or 3 ppt";
|
||||
|
||||
"${modifier}+Shift+Left" = "move left";
|
||||
"${modifier}+Shift+Down" = "move down";
|
||||
"${modifier}+Shift+Up" = "move up";
|
||||
"${modifier}+Shift+Right" = "move right";
|
||||
|
||||
# WORKSPACES #
|
||||
"${modifier}+1" = "workspace number 1";
|
||||
"${modifier}+2" = "workspace number 2";
|
||||
"${modifier}+3" = "workspace number 3";
|
||||
"${modifier}+4" = "workspace number 4";
|
||||
"${modifier}+5" = "workspace number 5";
|
||||
"${modifier}+6" = "workspace number 6";
|
||||
"${modifier}+7" = "workspace number 7";
|
||||
"${modifier}+8" = "workspace number 8";
|
||||
"${modifier}+9" = "workspace number 9";
|
||||
|
||||
# MOVE WINDOW TO OTHER WS #
|
||||
"${modifier}+Shift+1" = "move container to workspace number 1";
|
||||
"${modifier}+Shift+2" = "move container to workspace number 2";
|
||||
"${modifier}+Shift+3" = "move container to workspace number 3";
|
||||
"${modifier}+Shift+4" = "move container to workspace number 4";
|
||||
"${modifier}+Shift+5" = "move container to workspace number 5";
|
||||
"${modifier}+Shift+6" = "move container to workspace number 6";
|
||||
"${modifier}+Shift+7" = "move container to workspace number 7";
|
||||
"${modifier}+Shift+8" = "move container to workspace number 8";
|
||||
"${modifier}+Shift+9" = "move container to workspace number 9";
|
||||
|
||||
# Media
|
||||
"XF86AudioRaiseVolume" = "exec ${pkgs.pulseaudio}/bin/pactl set-sink-volume @DEFAULT_SINK@ +5%";
|
||||
"XF86AudioLowerVolume" = "exec ${pkgs.pulseaudio}/bin/pactl set-sink-volume @DEFAULT_SINK@ -5%";
|
||||
"XF86AudioMute" = "exec ${pkgs.pulseaudio}/bin/pactl set-sink-volume toggle-mute";
|
||||
|
||||
"XF86AudioStop" = "exec ${pkgs.playerctl}/bin/playerctl stop";
|
||||
"XF86AudioPrev" = "exec ${pkgs.playerctl}/bin/playerctl previous";
|
||||
"XF86AudioNext" = "exec ${pkgs.playerctl}/bin/playerctl next";
|
||||
"XF86AudioPlay" = "exec ${pkgs.playerctl}/bin/playerctl play-pause";
|
||||
|
||||
"XF86MonBrightnessDown" = "exec ${pkgs.brightnessctl}/bin/brightnessctl set 5%-";
|
||||
"XF86MonBrightnessUp" = "exec ${pkgs.brightnessctl}/bin/brightnessctl set +5%";
|
||||
|
||||
};
|
||||
};
|
||||
|
||||
extraConfig = ''
|
||||
shadows enable
|
||||
corner_radius 12
|
||||
default_dim_inactive 0.2
|
||||
|
||||
default_border pixel 0px
|
||||
default_floating_border none
|
||||
titlebar_border_thickness 0
|
||||
'';
|
||||
};
|
||||
}
|
@ -1,72 +0,0 @@
|
||||
{ config, pkgs, ... }:
|
||||
{
|
||||
programs = {
|
||||
tmux = {
|
||||
enable = true;
|
||||
disableConfirmationPrompt = true;
|
||||
mouse = true;
|
||||
keyMode = "vi";
|
||||
extraConfig = ''
|
||||
if "test ! -d ~/.tmux/plugins/tpm" \
|
||||
"run 'git clone https://github.com/tmux-plugins/tpm ~/.tmux/plugins/tpm && ~/.tmux/plugins/tpm/bin/install_plugins'"
|
||||
|
||||
unbind C-b
|
||||
set-option -g prefix C-a
|
||||
bind-key C-a send-prefix
|
||||
bind \\ split-window -h
|
||||
bind - split-window -v
|
||||
unbind '"'
|
||||
unbind %
|
||||
|
||||
bind t new-window
|
||||
bind -n M-w previous-window
|
||||
bind -n M-e next-window
|
||||
bind r source-file ~/.config/tmux/tmux.conf
|
||||
bind -n M-Left select-pane -L
|
||||
bind -n M-Right select-pane -R
|
||||
bind -n M-Up select-pane -U
|
||||
bind -n M-Down select-pane -D
|
||||
|
||||
set -g status-left-length 100
|
||||
set -g status-right-length 100
|
||||
set -g status-position top
|
||||
|
||||
### NOVA ###
|
||||
|
||||
set -g @plugin 'o0th/tmux-nova'
|
||||
|
||||
set -g @nova-nerdfonts true
|
||||
|
||||
set -g @nova-pane-active-border-style "#44475a"
|
||||
set -g @nova-pane-border-style "#282a36"
|
||||
set -g @nova-status-style-bg "#121212"
|
||||
set -g @nova-status-style-fg "#d8dee9"
|
||||
set -g @nova-status-style-active-bg "#af87ff"
|
||||
set -g @nova-status-style-active-fg "#121212"
|
||||
set -g @nova-status-style-double-bg "#2d3540"
|
||||
|
||||
set -g @nova-pane "#I#{?pane_in_mode, #{pane_mode},} #W"
|
||||
|
||||
set -g @nova-segment-mode "#{?client_prefix,Ω,ω}"
|
||||
set -g @nova-segment-mode-colors "#af87ff #121212"
|
||||
|
||||
set -g @nova-segment-whoami "#(whoami)@#h"
|
||||
set -g @nova-segment-whoami-colors "#af87ff #121212"
|
||||
|
||||
set -g @nova-segment-date " %H:%M:%S"
|
||||
set -g @nova-segment-date-colors "#87afff #121212"
|
||||
|
||||
set -g @nova-rows 0
|
||||
set -g @nova-segments-0-left "mode"
|
||||
set -g @nova-segments-0-right "date whoami "
|
||||
|
||||
|
||||
### END ###
|
||||
|
||||
run-shell ~/.tmux/plugins/tmux-nova/nova.tmux
|
||||
run '~/.tmux/plugins/tpm/tpm'
|
||||
|
||||
'';
|
||||
};
|
||||
};
|
||||
}
|
@ -1,328 +0,0 @@
|
||||
{ config, pkgs, ... }:
|
||||
{
|
||||
programs.waybar = {
|
||||
enable = true;
|
||||
style = ''
|
||||
@define-color foreground #f2f4f8;
|
||||
@define-color background #161616;
|
||||
@define-color alt_background #1a1a1a;
|
||||
@define-color accent #3ddbd9;
|
||||
|
||||
@define-color black #262626;
|
||||
@define-color red #ee5396;
|
||||
@define-color green #42be65;
|
||||
@define-color yellow #ffab91;
|
||||
@define-color blue #33b1ff;
|
||||
@define-color magenta #be95ff;
|
||||
@define-color cyan #3ddbd9;
|
||||
@define-color white #dde1e6;
|
||||
|
||||
@define-color alt_black #262626;
|
||||
@define-color alt_red #ee5396;
|
||||
@define-color alt_green #42be65;
|
||||
@define-color alt_yellow #ffab91;
|
||||
@define-color alt_blue #33b1ff;
|
||||
@define-color alt_magenta #be95ff;
|
||||
@define-color alt_cyan #3ddbd9;
|
||||
@define-color alt_white #dde1e6;
|
||||
|
||||
* {
|
||||
|
||||
border: none;
|
||||
font-family: Terminess Nerd Font, sans-serif;
|
||||
font-size: 14px;
|
||||
}
|
||||
|
||||
window#waybar {
|
||||
/* background-color: rgba(0, 0, 0, 0); */
|
||||
/* background-color: rgba(18, 21, 29, 0.98); */
|
||||
background-color: @background;
|
||||
border-radius: 6px;
|
||||
color: @foreground;
|
||||
opacity: 1;
|
||||
transition-property: background-color;
|
||||
transition-duration: .5s;
|
||||
margin-bottom: -7px;
|
||||
}
|
||||
|
||||
window#waybar.hidden {
|
||||
opacity: 0.2;
|
||||
}
|
||||
|
||||
window#hyprland-window {
|
||||
background-color: @background;
|
||||
}
|
||||
|
||||
#workspaces,
|
||||
#mode,
|
||||
#window,
|
||||
#cpu,
|
||||
#memory,
|
||||
#temperature,
|
||||
#custom-media,
|
||||
#custom-powermenu,
|
||||
#custom-fans,
|
||||
#custom-distro,
|
||||
#clock,
|
||||
#idle_inhibitor,
|
||||
#language,
|
||||
#pulseaudio,
|
||||
#backlight,
|
||||
#battery,
|
||||
#network,
|
||||
#tray {
|
||||
background-color: @alt_background;
|
||||
padding: 0 10px;
|
||||
margin: 5px 2px 5px 2px;
|
||||
border: 1px solid rgba(0, 0, 0, 0);
|
||||
border-radius: 6px;
|
||||
background-clip: padding-box;
|
||||
}
|
||||
|
||||
#workspaces button {
|
||||
background-color: @alt_background;
|
||||
padding: 0 5px;
|
||||
min-width: 20px;
|
||||
color: @foreground;
|
||||
}
|
||||
|
||||
#workspaces button:hover {
|
||||
background-color: rgba(0, 0, 0, 0)
|
||||
}
|
||||
|
||||
#workspaces button.active {
|
||||
color: @accent;
|
||||
}
|
||||
|
||||
#workspaces button.urgent {
|
||||
color: @red;
|
||||
}
|
||||
|
||||
#cpu {
|
||||
padding: 0 10px;
|
||||
color: @alt_cyan;
|
||||
}
|
||||
|
||||
#memory {
|
||||
padding: 0 10px;
|
||||
color: @alt_cyan;
|
||||
}
|
||||
|
||||
#temperature {
|
||||
padding: 0 10px;
|
||||
color: @blue;
|
||||
}
|
||||
|
||||
#temperature.critical {
|
||||
background-color: @red;
|
||||
padding: 0 10px;
|
||||
color: @background;
|
||||
}
|
||||
|
||||
#custom-media {
|
||||
color: #c678dd;
|
||||
padding: 0 10px;
|
||||
color: @background;
|
||||
}
|
||||
|
||||
#custom-fans {
|
||||
padding: 0 10px;
|
||||
color: @blue;
|
||||
}
|
||||
|
||||
#clock {
|
||||
padding: 0 10px;
|
||||
color: @blue;
|
||||
}
|
||||
|
||||
#idle_inhibitor {
|
||||
padding: 0 10px;
|
||||
color: @foreground;
|
||||
}
|
||||
|
||||
#language {
|
||||
padding: 0 10px;
|
||||
color: @blue;
|
||||
}
|
||||
|
||||
#pulseaudio {
|
||||
padding: 0 10px;
|
||||
color: @yellow;
|
||||
}
|
||||
|
||||
#pulseaudio.muted {
|
||||
padding: 0 10px;
|
||||
background-color: @red;
|
||||
color: @background;
|
||||
}
|
||||
|
||||
#backlight {
|
||||
padding: 0 10px;
|
||||
color: @yellow;
|
||||
}
|
||||
|
||||
#battery {
|
||||
padding: 0 10px;
|
||||
color: @alt_green;
|
||||
}
|
||||
|
||||
#battery.charging, #battery.plugged {
|
||||
padding: 0 10px;
|
||||
background-color: @alt_green;
|
||||
color: @background;
|
||||
}
|
||||
|
||||
@keyframes blink {
|
||||
to {
|
||||
background-color: @background;
|
||||
color: @red;
|
||||
}
|
||||
}
|
||||
|
||||
#battery.critical:not(.charging) {
|
||||
padding: 0 10px;
|
||||
background-color: @red;
|
||||
color: @background;
|
||||
animation-name: blink;
|
||||
animation-duration: 0.5s;
|
||||
animation-timing-function: linear;
|
||||
animation-iteration-count: infinite;
|
||||
animation-direction: alternate;
|
||||
}
|
||||
|
||||
#network {
|
||||
padding: 0 10px;
|
||||
color: @blue;
|
||||
}
|
||||
|
||||
#custom-distro {
|
||||
color: @accent;
|
||||
background-color: @background;
|
||||
font-size: 25px;
|
||||
margin: 1px;
|
||||
padding: 0px 0px 0px 6px;
|
||||
}
|
||||
|
||||
#network.disconnected {
|
||||
padding: 0 10px;
|
||||
background-color: @red;
|
||||
color: @background;
|
||||
}
|
||||
#custom-powermenu {
|
||||
background-color: @red;
|
||||
color: @background;
|
||||
font-size: 15px;
|
||||
padding-right: 6px;
|
||||
padding-left: 11px;
|
||||
margin: 5px;
|
||||
}
|
||||
|
||||
'';
|
||||
|
||||
settings = {
|
||||
mainBar = {
|
||||
#margin = "8px 10px -2px 10px";
|
||||
margin = "0px 10px 8px 10px";
|
||||
layer = "top";
|
||||
position = "bottom";
|
||||
|
||||
modules-left = [ "custom/distro" "battery" "sway/workspaces" ];
|
||||
modules-center = [ "sway/window" ];
|
||||
modules-right = [ "cpu" "memory" "backlight" "pulseaudio" "network" "tray" "clock" ];
|
||||
|
||||
"sway/workspaces" = {
|
||||
active-only = "false";
|
||||
disable-scroll = "true";
|
||||
all-outputs = "true";
|
||||
format = "{icon}";
|
||||
on-click = "activate";
|
||||
};
|
||||
|
||||
"idle_inhibitor" = {
|
||||
format = "{icon}";
|
||||
format-icons = {
|
||||
activated = " ";
|
||||
deactivated = " ";
|
||||
};
|
||||
};
|
||||
|
||||
"tray" = {
|
||||
spacing = 8;
|
||||
};
|
||||
|
||||
"clock" = {
|
||||
interval = 1;
|
||||
tooltip-format = "<big>{:%Y %B}</big>\n<tt><small>{calendar}</small></tt>";
|
||||
format = " {:%H:%M:%S}";
|
||||
format-alt = " {:%A, %B %d, %Y}";
|
||||
};
|
||||
|
||||
"cpu" = {
|
||||
format = " {usage}%";
|
||||
tooltip = "false";
|
||||
};
|
||||
|
||||
"memory" = {
|
||||
format = " {}%";
|
||||
};
|
||||
|
||||
"backlight" = {
|
||||
format = "{icon}{percent}%";
|
||||
format-icons = [" " " " " "];
|
||||
on-scroll-up = "light -A 1";
|
||||
on-scroll-down = "light -U 1";
|
||||
};
|
||||
|
||||
"battery" = {
|
||||
states = {
|
||||
warning = "30";
|
||||
critical = "15";
|
||||
};
|
||||
format = "{icon}{capacity}%";
|
||||
tooltip-format = "{timeTo} {capacity}%";
|
||||
format-charging = "{capacity}%";
|
||||
format-plugged = " {capacity}%";
|
||||
format-alt = "{time} {icon}";
|
||||
format-icons = [" " " " " " " " " "];
|
||||
};
|
||||
|
||||
"network" = {
|
||||
interval = 1;
|
||||
format-wifi = " {essid} {signalStrength}%";
|
||||
format-ethernet = " {bandwidthUpBits} / {bandwidthDownBits} | {ipaddr} ";
|
||||
format-linked = "{ifname} (No IP) ";
|
||||
format-disconnected = " Disconnected";
|
||||
on-click-release = "sleep 0";
|
||||
tooltip-format = "{essid} {signalStrength}%";
|
||||
};
|
||||
|
||||
"pulseaudio" = {
|
||||
interval = 1;
|
||||
format = "{icon}{volume}% {format_source}";
|
||||
format-bluetooth = "{icon} {volume}%";
|
||||
format-bluetooth-muted = " {volume}%";
|
||||
format-source = "";
|
||||
format-source-muted = "";
|
||||
format-muted = " {format_source}";
|
||||
format-icons = {
|
||||
headphone = " ";
|
||||
phone = " ";
|
||||
portable = " ";
|
||||
default = [" " " " " "];
|
||||
};
|
||||
tooltip-format = "{desc} {volume}%";
|
||||
on-click = "${pkgs.wireplumber}/bin/wpctl set-sink-mute @DEFAULT_SINK@ toggle";
|
||||
on-click-right = "${pkgs.wireplumber}/bin/pctl set-source-mute @DEFAULT_SOURCE@ toggle";
|
||||
on-click-middle = "${pkgs.pavucontrol}/bin/pavucontrol";
|
||||
on-click-release = "sleep 0";
|
||||
on-click-middle-release = "sleep 0";
|
||||
};
|
||||
|
||||
"custom/distro" = {
|
||||
format = " ";
|
||||
on-click-release = "sleep 0";
|
||||
};
|
||||
};
|
||||
};
|
||||
};
|
||||
}
|
@ -1,11 +0,0 @@
|
||||
{ config, pkgs, ... }:
|
||||
{
|
||||
boot = {
|
||||
loader = {
|
||||
systemd-boot = {
|
||||
enable = true;
|
||||
};
|
||||
};
|
||||
supportedFilesystems = [ "ntfs" ];
|
||||
};
|
||||
}
|
@ -1,32 +0,0 @@
|
||||
{
|
||||
config,
|
||||
pkgs,
|
||||
...
|
||||
}: {
|
||||
imports = [
|
||||
./editors/nvim/default.nix
|
||||
./networking.nix
|
||||
./users.nix
|
||||
./services.nix
|
||||
./firefox.nix
|
||||
./pkgs.nix
|
||||
./rf.nix
|
||||
];
|
||||
|
||||
xdg = {
|
||||
portal = {
|
||||
enable = true;
|
||||
xdgOpenUsePortal = true;
|
||||
config = {
|
||||
common.default = "*";
|
||||
};
|
||||
extraPortals = with pkgs; [
|
||||
xdg-desktop-portal-gnome
|
||||
xdg-desktop-portal-wlr
|
||||
xdg-desktop-portal-gtk
|
||||
];
|
||||
};
|
||||
};
|
||||
|
||||
|
||||
}
|
@ -1,29 +0,0 @@
|
||||
{
|
||||
pkgs,
|
||||
lib,
|
||||
...
|
||||
}: {
|
||||
programs.nvf.settings.vim = {
|
||||
extraLuaFiles = [
|
||||
(builtins.path {
|
||||
path = ./raw/cmp.lua;
|
||||
name = "my-lua-file";
|
||||
})
|
||||
];
|
||||
autocomplete = {
|
||||
nvim-cmp = {
|
||||
enable = true;
|
||||
setupOpts = {
|
||||
completion = {
|
||||
completeopt = "menu,menuone,noinsert,noselect";
|
||||
};
|
||||
};
|
||||
#sourcePlugins = [
|
||||
# "crates-nvim"
|
||||
# "cmp-nvim-lsp"
|
||||
# "rustaceanvim"
|
||||
#];
|
||||
};
|
||||
};
|
||||
};
|
||||
}
|
@ -1,41 +0,0 @@
|
||||
{
|
||||
pkgs,
|
||||
lib,
|
||||
...
|
||||
}: {
|
||||
imports = [
|
||||
./lsp.nix
|
||||
./terminal.nix
|
||||
./neotree.nix
|
||||
./cmp.nix
|
||||
./lualine.nix
|
||||
./snip.nix
|
||||
#./extraPlugins.nix
|
||||
];
|
||||
programs.nvf = {
|
||||
enable = true;
|
||||
settings = {
|
||||
vim = {
|
||||
ui = {
|
||||
noice = {
|
||||
enable = true;
|
||||
};
|
||||
};
|
||||
extraLuaFiles = [
|
||||
(builtins.path {
|
||||
path = ./raw/opts.lua;
|
||||
name = "opts.lua";
|
||||
})
|
||||
];
|
||||
autopairs.nvim-autopairs.enable = true;
|
||||
telescope.enable = true;
|
||||
theme = {
|
||||
enable = true;
|
||||
name = "oxocarbon";
|
||||
style = "dark";
|
||||
};
|
||||
};
|
||||
};
|
||||
};
|
||||
}
|
||||
|
@ -1,11 +0,0 @@
|
||||
{ pkgs, lib, ... }:
|
||||
{
|
||||
programs.nvf.settings.vim = {
|
||||
extraPlugins = with pkgs; {
|
||||
neocord = {
|
||||
package = vimPlugins.neocord;
|
||||
setup = "require('neocord').setup {}";
|
||||
};
|
||||
};
|
||||
};
|
||||
}
|
@ -1,81 +0,0 @@
|
||||
{
|
||||
pkgs,
|
||||
lib,
|
||||
...
|
||||
}: {
|
||||
programs.nvf.settings.vim = {
|
||||
languages = {
|
||||
clang = {
|
||||
enable = true;
|
||||
dap.enable = true;
|
||||
treesitter.enable = true;
|
||||
lsp.enable = true;
|
||||
};
|
||||
python = {
|
||||
enable = true;
|
||||
lsp.enable = true;
|
||||
treesitter.enable = true;
|
||||
};
|
||||
go = {
|
||||
enable = true;
|
||||
lsp.enable = true;
|
||||
treesitter.enable = true;
|
||||
};
|
||||
lua = {
|
||||
enable = true;
|
||||
};
|
||||
rust = {
|
||||
enable = true;
|
||||
dap.enable = true;
|
||||
format.enable = true;
|
||||
lsp.enable = true;
|
||||
};
|
||||
html = {
|
||||
enable = true;
|
||||
treesitter = {
|
||||
enable = true;
|
||||
autotagHtml = true;
|
||||
};
|
||||
};
|
||||
css = {
|
||||
enable = true;
|
||||
treesitter.enable = true;
|
||||
lsp.enable = true;
|
||||
};
|
||||
assembly = {
|
||||
enable = true;
|
||||
lsp.enable = true;
|
||||
treesitter.enable = true;
|
||||
};
|
||||
bash = {
|
||||
enable = true;
|
||||
lsp.enable = true;
|
||||
treesitter.enable = true;
|
||||
};
|
||||
ts = {
|
||||
enable = true;
|
||||
extraDiagnostics.enable = true;
|
||||
treesitter.enable = true;
|
||||
lsp.enable = true;
|
||||
};
|
||||
nix = {
|
||||
enable = true;
|
||||
extraDiagnostics = {
|
||||
enable = true;
|
||||
};
|
||||
format = {
|
||||
enable = true;
|
||||
type = "alejandra";
|
||||
};
|
||||
lsp.enable = true;
|
||||
treesitter.enable = true;
|
||||
};
|
||||
};
|
||||
lsp = {
|
||||
lspkind.enable = true;
|
||||
trouble = {
|
||||
enable = true;
|
||||
};
|
||||
};
|
||||
};
|
||||
}
|
@ -1,26 +0,0 @@
|
||||
{ pkgs, lib, ... }:
|
||||
{
|
||||
programs.nvf.settings.vim = {
|
||||
statusline = {
|
||||
lualine = {
|
||||
enable = true;
|
||||
theme = "oxocarbon";
|
||||
globalStatus = true;
|
||||
icons.enable = true;
|
||||
ignoreFocus = [
|
||||
"neo-tree"
|
||||
"filename"
|
||||
"location"
|
||||
];
|
||||
componentSeparator = {
|
||||
left = "";
|
||||
right = "";
|
||||
};
|
||||
sectionSeparator = {
|
||||
left = "";
|
||||
right = "";
|
||||
};
|
||||
};
|
||||
};
|
||||
};
|
||||
}
|
@ -1,21 +0,0 @@
|
||||
{
|
||||
pkgs,
|
||||
lib,
|
||||
...
|
||||
}: {
|
||||
programs.nvf.settings.vim = {
|
||||
filetree = {
|
||||
neo-tree = {
|
||||
enable = true;
|
||||
setupOpts = {
|
||||
enable = true;
|
||||
enable_git_status = true;
|
||||
enable_diagnostics = true;
|
||||
enable_refresh_on_write = true;
|
||||
auto_clean_after_session_restore = true;
|
||||
git_status_async = true;
|
||||
};
|
||||
};
|
||||
};
|
||||
};
|
||||
}
|
@ -1,77 +0,0 @@
|
||||
local cmp = require("cmp")
|
||||
local lspkind = require("lspkind")
|
||||
|
||||
vim.opt.completeopt = { "menu", "menuone", "noinsert", "noselect" }
|
||||
|
||||
cmp.setup({
|
||||
formatting = {
|
||||
format = function(entry, vim_item)
|
||||
vim_item.menu = ({
|
||||
nvim_lsp = "[LSP]",
|
||||
buffer = "[BUF]",
|
||||
path = "[PATH]",
|
||||
luasnip = "[SNIP]",
|
||||
nvim_lua = "[LUA]",
|
||||
})[entry.source.name]
|
||||
|
||||
vim_item.kind = lspkind.symbolic(vim_item.kind, { mode = "symbol" })
|
||||
return vim_item
|
||||
end,
|
||||
},
|
||||
sorting = {
|
||||
comparators = {
|
||||
cmp.config.compare.offset,
|
||||
cmp.config.compare.exact,
|
||||
cmp.config.compare.recently_used,
|
||||
cmp.config.compare.kind,
|
||||
cmp.config.compare.sort_text,
|
||||
cmp.config.compare.length,
|
||||
cmp.config.compare.order,
|
||||
},
|
||||
},
|
||||
window = {
|
||||
completion = {
|
||||
autocomplete = true,
|
||||
col_offset = -3,
|
||||
side_padding = 0,
|
||||
},
|
||||
completion = cmp.config.window.bordered({
|
||||
winhighlight = "Normal:Pmenu,FloatBorder:Pmenu,CursorLine:PmenuSel,Search:None",
|
||||
}),
|
||||
documentation = cmp.config.window.bordered({
|
||||
winhighlight = "Normal:Pmenu,FloatBorder:Pmenu,CursorLine:PmenuSel,Search:None",
|
||||
}),
|
||||
},
|
||||
mapping = cmp.mapping.preset.insert({
|
||||
["<Tab>"] = cmp.mapping(function(fallback)
|
||||
if cmp.visible() then
|
||||
cmp.select_next_item()
|
||||
else
|
||||
fallback()
|
||||
end
|
||||
end, { "i", "s" }),
|
||||
|
||||
["<S-Tab>"] = cmp.mapping(function(fallback)
|
||||
if cmp.visible() then
|
||||
cmp.select_prev_item()
|
||||
else
|
||||
fallback()
|
||||
end
|
||||
end, { "i", "s" }),
|
||||
|
||||
["<C-b>"] = cmp.mapping.scroll_docs(-4),
|
||||
["<C-f>"] = cmp.mapping.scroll_docs(4),
|
||||
["<C-Space>"] = cmp.mapping.complete(),
|
||||
["<C-e>"] = cmp.mapping.abort(),
|
||||
["<C-Left>"] = cmp.mapping.abort(),
|
||||
["<CR>"] = cmp.mapping.confirm({ select = false }),
|
||||
}),
|
||||
sources = cmp.config.sources({
|
||||
{ name = 'nvim_lsp' },
|
||||
{ name = 'luasnip' },
|
||||
{ name = 'buffer' },
|
||||
{ name = 'path' },
|
||||
{ name = 'nvim_lua' },
|
||||
}),
|
||||
})
|
||||
|
@ -1,40 +0,0 @@
|
||||
vim.opt.shiftwidth = 2
|
||||
vim.opt.tabstop = 2
|
||||
vim.opt.cursorline = true
|
||||
vim.opt.cursorcolumn = true
|
||||
vim.opt.expandtab = true
|
||||
vim.opt.autoindent = true
|
||||
vim.opt.smartindent = true
|
||||
vim.opt.softtabstop = 2
|
||||
vim.opt.relativenumber = true
|
||||
|
||||
vim.diagnostic.config({
|
||||
virtual_text = true,
|
||||
virtual_lines = true,
|
||||
})
|
||||
|
||||
local map = vim.api.nvim_set_keymap
|
||||
local opts = { noremap = true, silent = true }
|
||||
|
||||
vim.g.mapleader = "\\"
|
||||
map('n', '<c-t>', ":ToggleTerm size=15<CR>", opts)
|
||||
map('n', '<c-n>', ":Neotree filesystem reveal toggle<CR>", opts)
|
||||
map('v', '<Tab>', '>gv', opts)
|
||||
map('v', '<S-Tab>', '<gv', opts)
|
||||
map('n', '<leader>ff', 'Telescope find_files<CR>', opts)
|
||||
map('n', '<leader>gs', 'Telescope grep_string<CR>', opts)
|
||||
|
||||
vim.cmd [[
|
||||
set nobackup
|
||||
cnoreabbrev W! w!
|
||||
cnoreabbrev Q! q!
|
||||
cnoreabbrev Qall! qall!
|
||||
cnoreabbrev Wq wq
|
||||
cnoreabbrev Wa wa
|
||||
cnoreabbrev wQ wq
|
||||
cnoreabbrev WQ wq
|
||||
cnoreabbrev W w
|
||||
cnoreabbrev Q q
|
||||
cnoreabbrev Qall qall
|
||||
]]
|
||||
|
@ -1,21 +0,0 @@
|
||||
{ pkgs, lib,...}:
|
||||
{
|
||||
programs.nvf.settings.vim = {
|
||||
snippets = {
|
||||
luasnip = {
|
||||
enable = true;
|
||||
loaders = "require('luasnip.loaders.from_snipmate').lazy_load()";
|
||||
#providers = [
|
||||
# "friendly-snippets"
|
||||
# "crates-nvim"
|
||||
# "lspkind"
|
||||
# "lspsaga"
|
||||
# "rustaceanvim"
|
||||
#];
|
||||
setupOpts = {
|
||||
enable_autosnippets = false;
|
||||
};
|
||||
};
|
||||
};
|
||||
};
|
||||
}
|
@ -1,14 +0,0 @@
|
||||
{
|
||||
pkgs,
|
||||
lib,
|
||||
...
|
||||
}: {
|
||||
programs.nvf.settings.vim = {
|
||||
terminal = {
|
||||
toggleterm = {
|
||||
enable = true;
|
||||
lazygit.enable = true;
|
||||
};
|
||||
};
|
||||
};
|
||||
}
|
@ -1,18 +0,0 @@
|
||||
{ config, pkgs, ... }:
|
||||
{
|
||||
environment.systemPackages = with pkgs; [
|
||||
iperf3
|
||||
speedtest-cli
|
||||
dhcpcd
|
||||
];
|
||||
|
||||
services = {
|
||||
iperf3 = {
|
||||
enable = true;
|
||||
};
|
||||
};
|
||||
networking = {
|
||||
networkmanager.enable = true;
|
||||
};
|
||||
|
||||
}
|
@ -1,47 +0,0 @@
|
||||
{ config, pkgs, ... }:
|
||||
|
||||
{
|
||||
environment.systemPackages =
|
||||
let
|
||||
satdump = with pkgs;
|
||||
stdenv.mkDerivation rec {
|
||||
pname = "satdump";
|
||||
version = "1.2.0";
|
||||
|
||||
src = fetchgit {
|
||||
url = "https://github.com/SatDump/SatDump.git";
|
||||
rev = version;
|
||||
sha256 = "sha256-QGegi5/geL5U3/ecc3hsdW+gp25UE9fOYVLFJUo/N50=";
|
||||
};
|
||||
|
||||
nativeBuildInputs = [ cmake pkg-config ];
|
||||
buildInputs = [
|
||||
# required deps
|
||||
fftwFloat
|
||||
libpng
|
||||
libtiff
|
||||
jemalloc
|
||||
volk
|
||||
(nng.overrideAttrs (old: {
|
||||
cmakeFlags = old.cmakeFlags ++ [ "-DBUILD_SHARED_LIBS=ON" ];
|
||||
}))
|
||||
rtl-sdr-librtlsdr
|
||||
hackrf
|
||||
airspy
|
||||
airspyhf
|
||||
glfw
|
||||
zenity
|
||||
zstd
|
||||
|
||||
# optional hw support
|
||||
libad9361
|
||||
libiio
|
||||
];
|
||||
|
||||
cmakeFlags = [
|
||||
"-DCMAKE_BUILD_TYPE=Release"
|
||||
];
|
||||
};
|
||||
in
|
||||
[ satdump ];
|
||||
}
|
@ -9,7 +9,7 @@
|
||||
|
||||
imports = [
|
||||
./hardware-configuration.nix
|
||||
../default/default.nix
|
||||
../../modules/default.nix
|
||||
];
|
||||
|
||||
boot = {
|
||||
|
@ -25,7 +25,7 @@
|
||||
};
|
||||
fileSystems."/media/STUFF" =
|
||||
{ device = "/dev/disk/by-label/STUFF";
|
||||
fsType = "ext4";
|
||||
fsType = "ntfs";
|
||||
};
|
||||
|
||||
swapDevices = [ ];
|
||||
|
@ -9,7 +9,7 @@
|
||||
|
||||
imports = [
|
||||
./hardware-configuration.nix
|
||||
../default/default.nix
|
||||
../../modules/default.nix
|
||||
];
|
||||
|
||||
boot = {
|
||||
@ -21,12 +21,6 @@
|
||||
supportedFilesystems = [ "ntfs" ];
|
||||
};
|
||||
|
||||
programs = {
|
||||
steam = {
|
||||
enable = true;
|
||||
};
|
||||
};
|
||||
|
||||
nixpkgs = {
|
||||
config = {
|
||||
allowUnfree = true;
|
||||
@ -62,27 +56,6 @@
|
||||
};
|
||||
};
|
||||
|
||||
environment.etc = {
|
||||
"makepkg.conf".source = "${pkgs.pacman}/etc/makepkg.conf";
|
||||
"pacman.conf".text = ''
|
||||
[options]
|
||||
HoldPkg = pacman glibc
|
||||
UseSyslog
|
||||
Color
|
||||
ILoveCandy
|
||||
CheckSpace
|
||||
VerbosePkgLists
|
||||
ParallelDownloads = 5
|
||||
SigLevel = Never
|
||||
|
||||
[dkp-libs]
|
||||
Server = https://pkg.devkitpro.org/packages
|
||||
|
||||
[dkp-linux]
|
||||
Server = https://pkg.devkitpro.org/packages/linux/x86_64/
|
||||
'';
|
||||
};
|
||||
|
||||
system.stateVersion = "25.05";
|
||||
|
||||
}
|
||||
|
@ -14,19 +14,25 @@
|
||||
boot.extraModulePackages = [ ];
|
||||
|
||||
fileSystems."/" =
|
||||
{ device = "/dev/disk/by-label/NIXROOT";
|
||||
{ device = "/dev/disk/by-uuid/04b38f31-ff39-4bd9-9958-1ab012bdbd37";
|
||||
fsType = "ext4";
|
||||
};
|
||||
|
||||
fileSystems."/boot" =
|
||||
{ device = "/dev/disk/by-label/ESP";
|
||||
{ device = "/dev/disk/by-uuid/EA73-5CEC";
|
||||
fsType = "vfat";
|
||||
options = [ "fmask=0022" "dmask=0022" ];
|
||||
};
|
||||
|
||||
swapDevices = [ ];
|
||||
|
||||
# Enables DHCP on each ethernet and wireless interface. In case of scripted networking
|
||||
# (the default) this is the recommended approach. When using systemd-networkd it's
|
||||
# still possible to use this option, but it's recommended to use it in conjunction
|
||||
# with explicit per-interface declarations with `networking.interfaces.<interface>.useDHCP`.
|
||||
networking.useDHCP = lib.mkDefault true;
|
||||
# networking.interfaces.enp0s31f6.useDHCP = lib.mkDefault true;
|
||||
# networking.interfaces.wlp0s20f3.useDHCP = lib.mkDefault true;
|
||||
|
||||
nixpkgs.hostPlatform = lib.mkDefault "x86_64-linux";
|
||||
hardware.cpu.intel.updateMicrocode = lib.mkDefault config.hardware.enableRedistributableFirmware;
|
||||
|
39
modules/default.nix
Normal file
@ -0,0 +1,39 @@
|
||||
{ config, pkgs, ... }:
|
||||
{
|
||||
imports = [
|
||||
./pkgs.nix
|
||||
./services.nix
|
||||
./users.nix
|
||||
./firefox.nix
|
||||
./git.nix
|
||||
./tmux.nix
|
||||
#./alacritty.nix
|
||||
];
|
||||
|
||||
hardware = {
|
||||
bluetooth = {
|
||||
enable = true;
|
||||
};
|
||||
graphics = {
|
||||
enable = true;
|
||||
};
|
||||
};
|
||||
virtualisation = {
|
||||
docker = {
|
||||
enable = true;
|
||||
};
|
||||
};
|
||||
environment.systemPackages = with pkgs; [
|
||||
iperf3
|
||||
speedtest-cli
|
||||
dhcpcd
|
||||
];
|
||||
services = {
|
||||
iperf3 = {
|
||||
enable = true;
|
||||
};
|
||||
};
|
||||
networking = {
|
||||
networkmanager.enable = true;
|
||||
};
|
||||
}
|
12
modules/git.nix
Normal file
@ -0,0 +1,12 @@
|
||||
{ config, ... }:
|
||||
{
|
||||
programs.git = {
|
||||
enable = true;
|
||||
config = {
|
||||
user.name = "Sojus07";
|
||||
user.email = "Sojus07@0xcc01.de";
|
||||
init.defaultBranch = "master";
|
||||
core.editor = "nvim";
|
||||
};
|
||||
};
|
||||
}
|
63
modules/home.nix
Normal file
@ -0,0 +1,63 @@
|
||||
{ config, pkgs, ... }:
|
||||
{
|
||||
imports = [
|
||||
./git.nix
|
||||
./tmux.nix
|
||||
./alacritty.nix
|
||||
];
|
||||
home = {
|
||||
enableNixpkgsReleaseCheck = false;
|
||||
stateVersion = "24.11";
|
||||
file = {
|
||||
".wp/galaxy.png".source = ./raw/wp/galaxy.png;
|
||||
".wp/eye.png".source = ./raw/wp/eye.png;
|
||||
};
|
||||
};
|
||||
|
||||
programs.alacritty = {
|
||||
enable = true;
|
||||
settings = {
|
||||
window.dimensions = {
|
||||
lines = 4;
|
||||
columns = 200;
|
||||
};
|
||||
font = {
|
||||
size = 15;
|
||||
normal = {
|
||||
family = "TerminessNerdFont";
|
||||
style = "Regular";
|
||||
};
|
||||
};
|
||||
terminal = {
|
||||
shell = "tmux";
|
||||
};
|
||||
colors = {
|
||||
primary = {
|
||||
foreground = "#ffffff";
|
||||
background = "#000000";
|
||||
};
|
||||
normal = {
|
||||
black = "#000000";
|
||||
red = "#ffffff";
|
||||
green = "#ffffff";
|
||||
yellow = "#ffffff";
|
||||
blue = "#ffffff";
|
||||
magenta = "#ffffff";
|
||||
cyan = "#ffffff";
|
||||
white = "#ffffff";
|
||||
};
|
||||
bright = {
|
||||
black = "#000000";
|
||||
red = "#ffffff";
|
||||
green = "#ffffff";
|
||||
yellow = "#ffffff";
|
||||
blue = "#ffffff";
|
||||
magenta = "#ffffff";
|
||||
cyan = "#ffffff";
|
||||
white = "#ffffff";
|
||||
};
|
||||
};
|
||||
};
|
||||
};
|
||||
}
|
||||
|
@ -12,28 +12,27 @@
|
||||
usbutils
|
||||
alsa-utils
|
||||
pavucontrol
|
||||
(flameshot.override { enableWlrSupport = true; })
|
||||
flameshot
|
||||
feh
|
||||
gnumake
|
||||
tree
|
||||
gdb
|
||||
vscode
|
||||
neovide
|
||||
wireshark
|
||||
|
||||
# Command-line utilities
|
||||
neofetch
|
||||
fastfetch
|
||||
onefetch
|
||||
cpufetch
|
||||
vim
|
||||
weechat
|
||||
ranger
|
||||
eza
|
||||
fzf
|
||||
htop
|
||||
btop
|
||||
jq
|
||||
ffmpeg
|
||||
gh-dash
|
||||
|
||||
# Development & compilers
|
||||
rustup
|
||||
@ -42,7 +41,6 @@
|
||||
nodejs
|
||||
gccgo14
|
||||
go
|
||||
dotnet-sdk
|
||||
bear
|
||||
|
||||
# Android development
|
||||
@ -55,15 +53,10 @@
|
||||
winetricks
|
||||
|
||||
# Embedded & hardware development
|
||||
espup
|
||||
esphome
|
||||
esptool
|
||||
espflash
|
||||
minicom
|
||||
pulseview
|
||||
cp210x-program
|
||||
arduino-ide
|
||||
arduino-cli
|
||||
flashrom
|
||||
binwalk
|
||||
chirp
|
||||
@ -71,10 +64,6 @@
|
||||
minipro
|
||||
ethtool
|
||||
|
||||
# Language servers (LSPs)
|
||||
nixd
|
||||
arduino-language-server
|
||||
|
||||
# Libraries
|
||||
python312Packages.pyserial
|
||||
python312Packages.meshtastic
|
||||
@ -82,28 +71,10 @@
|
||||
# Virtualization
|
||||
qemu
|
||||
|
||||
# Software Defined Radio (SDR)
|
||||
noaa-apt
|
||||
wsjtx
|
||||
qsstv
|
||||
gpredict
|
||||
sdrangel
|
||||
sdrpp
|
||||
gnuradio
|
||||
cubicsdr
|
||||
gqrx
|
||||
multimon-ng
|
||||
stellarium
|
||||
|
||||
# Miscellaneous
|
||||
cava
|
||||
vesktop
|
||||
pacman
|
||||
wf-recorder
|
||||
qbittorrent
|
||||
superTuxKart
|
||||
adwaita-icon-theme
|
||||
viewnior
|
||||
];
|
||||
|
||||
fonts = {
|
Before Width: | Height: | Size: 9.3 MiB After Width: | Height: | Size: 8.9 MiB |
BIN
modules/raw/wp/galaxy.png
Normal file
After Width: | Height: | Size: 94 KiB |
47
modules/tmux.nix
Normal file
@ -0,0 +1,47 @@
|
||||
{ config, pkgs, ... }:
|
||||
{
|
||||
programs = {
|
||||
tmux = {
|
||||
enable = true;
|
||||
keyMode = "vi";
|
||||
extraConfig = ''
|
||||
unbind C-b
|
||||
set-option -g prefix C-a
|
||||
bind-key C-a send-prefix
|
||||
bind \\ split-window -h
|
||||
bind - split-window -v
|
||||
unbind '"'
|
||||
unbind %
|
||||
|
||||
bind t new-window
|
||||
bind -n M-w previous-window
|
||||
bind -n M-e next-window
|
||||
bind r source-file ~/.config/tmux/tmux.conf
|
||||
bind -n M-Left select-pane -L
|
||||
bind -n M-Right select-pane -R
|
||||
bind -n M-Up select-pane -U
|
||||
bind -n M-Down select-pane -D
|
||||
|
||||
|
||||
set -g base-index 1
|
||||
set -g renumber-windows on
|
||||
|
||||
set-window-option -g clock-mode-colour colour167
|
||||
|
||||
set -g default-terminal "screen-256color"
|
||||
set -g status-bg black
|
||||
set -g status-fg white
|
||||
set -g status-position top
|
||||
set -g status-left-length 64
|
||||
set -g status-left "#[bg=black,fg=white,bold] [#S]"
|
||||
set -g status-right-length 64
|
||||
set -g status-right "#[bg=black,fg=white] #{pane_title} #[bg=black,fg=white,bold] | #[bg=black,fg=white,bold] %a %d %b | #[fg=white,bold]%H:%M "
|
||||
|
||||
set-window-option -g window-status-current-format "#[bg=white,fg=black,nobold,noitalics,nounderscore] #[bg=white,fg=black,bold] #I #[bg=white,fg=black,bold] #W#{?window_zoomed_flag,*Z,} #[bg=black,fg=white,nobold,noitalics,nounderscore]"
|
||||
set-window-option -g window-status-format "#[bg=black,fg=white,noitalics] #[bg=black,fg=white] #I #[bg=black,fg=white] #W #[bg=black,fg=white,noitalics]"
|
||||
|
||||
|
||||
'';
|
||||
};
|
||||
};
|
||||
}
|