more incomprehensible changes :)
This commit is contained in:
parent
c4449191dd
commit
2a0373dc73
14 changed files with 1267 additions and 47 deletions
|
|
@ -45,6 +45,26 @@ my dotfiles to also work on non-NixOS systems.
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
### Explaining my Vision with r/unixporn posts
|
||||||
|
I want the side panel from https://www.reddit.com/r/unixporn/comments/12wpvyf/hyprland_eww_is_all_i_need/
|
||||||
|
but not the colour scheme and I'm 50/50 on the bar being on th eleft side lol. Also I love the volume bar on the right!
|
||||||
|
|
||||||
|
https://www.reddit.com/r/unixporn/comments/12uy6q6/hyprland_first_time_trying_a_wm_ended_up/
|
||||||
|
I love love love their rofi theme, everything else is eh (except the background switching is cool)
|
||||||
|
|
||||||
|
https://www.reddit.com/r/unixporn/comments/1avnfjn/hyprland_animations_theme_generation_settings/
|
||||||
|
I love their settings apps
|
||||||
|
|
||||||
|
https://www.reddit.com/r/unixporn/comments/u7vgej/desktop_endeavouros_gnome_42/
|
||||||
|
I like to imagine they have the ability to have nothing but apps on their screen (like a do not disturb / focus mode)
|
||||||
|
|
||||||
|
https://www.reddit.com/r/unixporn/comments/xkvmhy/hyprland_dreamy/
|
||||||
|
Their window decorations and bar are great, also being able to hide everything upwards is so cool
|
||||||
|
|
||||||
|
https://www.reddit.com/r/unixporn/comments/vkcasz/i3gaps_i_prefer_light_mode/
|
||||||
|
If their colour scheme was a little less white I'd love it but overall one of my favourites every
|
||||||
|
|
||||||
|
|
||||||
### Credits
|
### Credits
|
||||||
1. https://github.com/XNM1/linux-nixos-hyprland-config-dotfiles
|
1. https://github.com/XNM1/linux-nixos-hyprland-config-dotfiles
|
||||||
The simplicity of their layout is amazing, was really good to pick out small modules and learn how something works / is configured.
|
The simplicity of their layout is amazing, was really good to pick out small modules and learn how something works / is configured.
|
||||||
|
|
@ -52,3 +72,5 @@ The simplicity of their layout is amazing, was really good to pick out small mod
|
||||||
Really great starter config for learning how parts interact and how to generally structure flakes
|
Really great starter config for learning how parts interact and how to generally structure flakes
|
||||||
3. https://nixos.wiki/wiki/Fonts
|
3. https://nixos.wiki/wiki/Fonts
|
||||||
Wiki page explaining how to install fonts and nerd fonts on NixOS
|
Wiki page explaining how to install fonts and nerd fonts on NixOS
|
||||||
|
4. https://github.com/adi1090x/rofi
|
||||||
|
For the Rofi theme
|
||||||
187
flake.lock
generated
187
flake.lock
generated
|
|
@ -50,6 +50,36 @@
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"flake-compat_2": {
|
"flake-compat_2": {
|
||||||
|
"locked": {
|
||||||
|
"lastModified": 1696426674,
|
||||||
|
"narHash": "sha256-kvjfFW7WAETZlt09AgDn1MrtKzP7t90Vf7vypd3OL1U=",
|
||||||
|
"rev": "0f9255e01c2351cc7d116c072cb317785dd33b33",
|
||||||
|
"revCount": 57,
|
||||||
|
"type": "tarball",
|
||||||
|
"url": "https://api.flakehub.com/f/pinned/edolstra/flake-compat/1.0.1/018afb31-abd1-7bff-a5e4-cff7e18efb7a/source.tar.gz"
|
||||||
|
},
|
||||||
|
"original": {
|
||||||
|
"type": "tarball",
|
||||||
|
"url": "https://flakehub.com/f/edolstra/flake-compat/1.tar.gz"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"flake-compat_3": {
|
||||||
|
"flake": false,
|
||||||
|
"locked": {
|
||||||
|
"lastModified": 1696426674,
|
||||||
|
"narHash": "sha256-kvjfFW7WAETZlt09AgDn1MrtKzP7t90Vf7vypd3OL1U=",
|
||||||
|
"owner": "edolstra",
|
||||||
|
"repo": "flake-compat",
|
||||||
|
"rev": "0f9255e01c2351cc7d116c072cb317785dd33b33",
|
||||||
|
"type": "github"
|
||||||
|
},
|
||||||
|
"original": {
|
||||||
|
"owner": "edolstra",
|
||||||
|
"repo": "flake-compat",
|
||||||
|
"type": "github"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"flake-compat_4": {
|
||||||
"flake": false,
|
"flake": false,
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1696426674,
|
"lastModified": 1696426674,
|
||||||
|
|
@ -87,6 +117,24 @@
|
||||||
"type": "github"
|
"type": "github"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
"grub2-themes": {
|
||||||
|
"inputs": {
|
||||||
|
"nixpkgs": "nixpkgs"
|
||||||
|
},
|
||||||
|
"locked": {
|
||||||
|
"lastModified": 1730004881,
|
||||||
|
"narHash": "sha256-8xVIqIW25o2uCL0fxAmP4Sj9sdebarQXmd1+64yMe8o=",
|
||||||
|
"owner": "vinceliuice",
|
||||||
|
"repo": "grub2-themes",
|
||||||
|
"rev": "42c232dfb46bf93c17506cbc1a574e5e89b5e09f",
|
||||||
|
"type": "github"
|
||||||
|
},
|
||||||
|
"original": {
|
||||||
|
"owner": "vinceliuice",
|
||||||
|
"repo": "grub2-themes",
|
||||||
|
"type": "github"
|
||||||
|
}
|
||||||
|
},
|
||||||
"home-manager": {
|
"home-manager": {
|
||||||
"inputs": {
|
"inputs": {
|
||||||
"nixpkgs": [
|
"nixpkgs": [
|
||||||
|
|
@ -144,7 +192,7 @@
|
||||||
"hyprlang": "hyprlang",
|
"hyprlang": "hyprlang",
|
||||||
"hyprutils": "hyprutils",
|
"hyprutils": "hyprutils",
|
||||||
"hyprwayland-scanner": "hyprwayland-scanner",
|
"hyprwayland-scanner": "hyprwayland-scanner",
|
||||||
"nixpkgs": "nixpkgs",
|
"nixpkgs": "nixpkgs_2",
|
||||||
"pre-commit-hooks": "pre-commit-hooks",
|
"pre-commit-hooks": "pre-commit-hooks",
|
||||||
"systems": "systems",
|
"systems": "systems",
|
||||||
"xdph": "xdph"
|
"xdph": "xdph"
|
||||||
|
|
@ -267,18 +315,37 @@
|
||||||
"type": "github"
|
"type": "github"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
"nixcord": {
|
||||||
|
"inputs": {
|
||||||
|
"flake-compat": "flake-compat_2",
|
||||||
|
"nixpkgs": "nixpkgs_3"
|
||||||
|
},
|
||||||
|
"locked": {
|
||||||
|
"lastModified": 1730107956,
|
||||||
|
"narHash": "sha256-Ohwk5/RGhGjDXaD4v0Yc40J/79gHRcD92mKWY+6qHJU=",
|
||||||
|
"owner": "kaylorben",
|
||||||
|
"repo": "nixcord",
|
||||||
|
"rev": "5dcb476b924ad08ffd8521cca812052605cb5974",
|
||||||
|
"type": "github"
|
||||||
|
},
|
||||||
|
"original": {
|
||||||
|
"owner": "kaylorben",
|
||||||
|
"repo": "nixcord",
|
||||||
|
"type": "github"
|
||||||
|
}
|
||||||
|
},
|
||||||
"nixpkgs": {
|
"nixpkgs": {
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1729413321,
|
"lastModified": 1730370246,
|
||||||
"narHash": "sha256-I4tuhRpZFa6Fu6dcH9Dlo5LlH17peT79vx1y1SpeKt0=",
|
"narHash": "sha256-UD2XmS6IWT+G/scUpPItb0dNijT5Dxa7WMuVqRhiaxU=",
|
||||||
"owner": "NixOS",
|
"owner": "NixOS",
|
||||||
"repo": "nixpkgs",
|
"repo": "nixpkgs",
|
||||||
"rev": "1997e4aa514312c1af7e2bda7fad1644e778ff26",
|
"rev": "88f31ac8837ab15748102da8bbc6e96a9330be0d",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
"owner": "NixOS",
|
"owner": "NixOS",
|
||||||
"ref": "nixos-unstable",
|
"ref": "master",
|
||||||
"repo": "nixpkgs",
|
"repo": "nixpkgs",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
}
|
}
|
||||||
|
|
@ -300,6 +367,38 @@
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"nixpkgs_2": {
|
"nixpkgs_2": {
|
||||||
|
"locked": {
|
||||||
|
"lastModified": 1729413321,
|
||||||
|
"narHash": "sha256-I4tuhRpZFa6Fu6dcH9Dlo5LlH17peT79vx1y1SpeKt0=",
|
||||||
|
"owner": "NixOS",
|
||||||
|
"repo": "nixpkgs",
|
||||||
|
"rev": "1997e4aa514312c1af7e2bda7fad1644e778ff26",
|
||||||
|
"type": "github"
|
||||||
|
},
|
||||||
|
"original": {
|
||||||
|
"owner": "NixOS",
|
||||||
|
"ref": "nixos-unstable",
|
||||||
|
"repo": "nixpkgs",
|
||||||
|
"type": "github"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"nixpkgs_3": {
|
||||||
|
"locked": {
|
||||||
|
"lastModified": 1730170245,
|
||||||
|
"narHash": "sha256-PRq4vJjDa+m1mNwkV9H7zVzMhuMqsHJrTGx0iJZ0e0w=",
|
||||||
|
"owner": "NixOS",
|
||||||
|
"repo": "nixpkgs",
|
||||||
|
"rev": "30c9efeef01e2ad4880bff6a01a61dd99536b3c9",
|
||||||
|
"type": "github"
|
||||||
|
},
|
||||||
|
"original": {
|
||||||
|
"owner": "NixOS",
|
||||||
|
"ref": "nixpkgs-unstable",
|
||||||
|
"repo": "nixpkgs",
|
||||||
|
"type": "github"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"nixpkgs_4": {
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1729413321,
|
"lastModified": 1729413321,
|
||||||
"narHash": "sha256-I4tuhRpZFa6Fu6dcH9Dlo5LlH17peT79vx1y1SpeKt0=",
|
"narHash": "sha256-I4tuhRpZFa6Fu6dcH9Dlo5LlH17peT79vx1y1SpeKt0=",
|
||||||
|
|
@ -315,6 +414,22 @@
|
||||||
"type": "github"
|
"type": "github"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
"nixpkgs_5": {
|
||||||
|
"locked": {
|
||||||
|
"lastModified": 1727634051,
|
||||||
|
"narHash": "sha256-S5kVU7U82LfpEukbn/ihcyNt2+EvG7Z5unsKW9H/yFA=",
|
||||||
|
"owner": "nixos",
|
||||||
|
"repo": "nixpkgs",
|
||||||
|
"rev": "06cf0e1da4208d3766d898b7fdab6513366d45b9",
|
||||||
|
"type": "github"
|
||||||
|
},
|
||||||
|
"original": {
|
||||||
|
"owner": "nixos",
|
||||||
|
"ref": "nixos-unstable",
|
||||||
|
"repo": "nixpkgs",
|
||||||
|
"type": "github"
|
||||||
|
}
|
||||||
|
},
|
||||||
"pre-commit-hooks": {
|
"pre-commit-hooks": {
|
||||||
"inputs": {
|
"inputs": {
|
||||||
"flake-compat": "flake-compat",
|
"flake-compat": "flake-compat",
|
||||||
|
|
@ -341,15 +456,18 @@
|
||||||
},
|
},
|
||||||
"root": {
|
"root": {
|
||||||
"inputs": {
|
"inputs": {
|
||||||
|
"grub2-themes": "grub2-themes",
|
||||||
"home-manager": "home-manager",
|
"home-manager": "home-manager",
|
||||||
"hyprland": "hyprland",
|
"hyprland": "hyprland",
|
||||||
"nixpkgs": "nixpkgs_2",
|
"nixcord": "nixcord",
|
||||||
"spicetify-nix": "spicetify-nix"
|
"nixpkgs": "nixpkgs_4",
|
||||||
|
"spicetify-nix": "spicetify-nix",
|
||||||
|
"swww": "swww"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"spicetify-nix": {
|
"spicetify-nix": {
|
||||||
"inputs": {
|
"inputs": {
|
||||||
"flake-compat": "flake-compat_2",
|
"flake-compat": "flake-compat_3",
|
||||||
"nixpkgs": [
|
"nixpkgs": [
|
||||||
"nixpkgs"
|
"nixpkgs"
|
||||||
]
|
]
|
||||||
|
|
@ -368,6 +486,26 @@
|
||||||
"type": "github"
|
"type": "github"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
"swww": {
|
||||||
|
"inputs": {
|
||||||
|
"flake-compat": "flake-compat_4",
|
||||||
|
"nixpkgs": "nixpkgs_5",
|
||||||
|
"utils": "utils"
|
||||||
|
},
|
||||||
|
"locked": {
|
||||||
|
"lastModified": 1730050836,
|
||||||
|
"narHash": "sha256-6xCp6rTJ5MWxfUXUYxWRZz1CA5V9/gGqgb0+34BMF6U=",
|
||||||
|
"owner": "LGFae",
|
||||||
|
"repo": "swww",
|
||||||
|
"rev": "36808dfd90223e648fcc45075ca57392b3d6a297",
|
||||||
|
"type": "github"
|
||||||
|
},
|
||||||
|
"original": {
|
||||||
|
"owner": "LGFae",
|
||||||
|
"repo": "swww",
|
||||||
|
"type": "github"
|
||||||
|
}
|
||||||
|
},
|
||||||
"systems": {
|
"systems": {
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1689347949,
|
"lastModified": 1689347949,
|
||||||
|
|
@ -383,6 +521,39 @@
|
||||||
"type": "github"
|
"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"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"utils": {
|
||||||
|
"inputs": {
|
||||||
|
"systems": "systems_2"
|
||||||
|
},
|
||||||
|
"locked": {
|
||||||
|
"lastModified": 1726560853,
|
||||||
|
"narHash": "sha256-X6rJYSESBVr3hBoH0WbKE5KvhPU5bloyZ2L4K60/fPQ=",
|
||||||
|
"owner": "numtide",
|
||||||
|
"repo": "flake-utils",
|
||||||
|
"rev": "c1dfcf08411b08f6b8615f7d8971a2bfa81d5e8a",
|
||||||
|
"type": "github"
|
||||||
|
},
|
||||||
|
"original": {
|
||||||
|
"owner": "numtide",
|
||||||
|
"repo": "flake-utils",
|
||||||
|
"type": "github"
|
||||||
|
}
|
||||||
|
},
|
||||||
"xdph": {
|
"xdph": {
|
||||||
"inputs": {
|
"inputs": {
|
||||||
"hyprland-protocols": [
|
"hyprland-protocols": [
|
||||||
|
|
|
||||||
18
flake.nix
18
flake.nix
|
|
@ -13,9 +13,21 @@
|
||||||
url = "github:Gerg-L/spicetify-nix";
|
url = "github:Gerg-L/spicetify-nix";
|
||||||
inputs.nixpkgs.follows = "nixpkgs";
|
inputs.nixpkgs.follows = "nixpkgs";
|
||||||
};
|
};
|
||||||
|
|
||||||
|
#stylix.url = "github:danth/stylix";
|
||||||
|
|
||||||
|
nixcord = {
|
||||||
|
url = "github:kaylorben/nixcord";
|
||||||
|
};
|
||||||
|
|
||||||
|
grub2-themes = {
|
||||||
|
url = "github:vinceliuice/grub2-themes";
|
||||||
|
};
|
||||||
|
|
||||||
# is this necessary? (aren't I enabling it in `configuration.nix` anyways?)
|
# is this necessary? (aren't I enabling it in `configuration.nix` anyways?)
|
||||||
hyprland.url = "github:hyprwm/Hyprland";
|
hyprland.url = "github:hyprwm/Hyprland";
|
||||||
|
|
||||||
|
swww.url = "github:LGFae/swww";
|
||||||
};
|
};
|
||||||
|
|
||||||
outputs = {
|
outputs = {
|
||||||
|
|
@ -23,11 +35,12 @@
|
||||||
nixpkgs,
|
nixpkgs,
|
||||||
home-manager,
|
home-manager,
|
||||||
hyprland,
|
hyprland,
|
||||||
|
grub2-themes,
|
||||||
|
#stylix,
|
||||||
...
|
...
|
||||||
}@inputs:
|
}@inputs:
|
||||||
let
|
let
|
||||||
system = "x86_64-linux";
|
system = "x86_64-linux";
|
||||||
#system = pkgs.stdenv.hostPlatform.system;
|
|
||||||
|
|
||||||
pkgs = import nixpkgs {
|
pkgs = import nixpkgs {
|
||||||
inherit system;
|
inherit system;
|
||||||
|
|
@ -48,7 +61,8 @@
|
||||||
|
|
||||||
modules = [
|
modules = [
|
||||||
./hosts/myputer
|
./hosts/myputer
|
||||||
#home-manager.nixosModules.default
|
grub2-themes.nixosModules.default
|
||||||
|
#stylix.nixosModules.stylix
|
||||||
];
|
];
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -13,8 +13,9 @@
|
||||||
};
|
};
|
||||||
|
|
||||||
imports = [
|
imports = [
|
||||||
|
# inputs.nixcord.homeManagerModules.nixcord
|
||||||
# inputs.spicetify-nix.homeManagerModules.default
|
# inputs.spicetify-nix.homeManagerModules.default
|
||||||
#./wofi.nix
|
# ./wofi.nix
|
||||||
];
|
];
|
||||||
|
|
||||||
/*
|
/*
|
||||||
|
|
@ -34,6 +35,25 @@
|
||||||
};
|
};
|
||||||
*/
|
*/
|
||||||
|
|
||||||
|
# ----- STYLIX -----
|
||||||
|
|
||||||
|
#stylix = {
|
||||||
|
# enable = true;
|
||||||
|
#
|
||||||
|
# image = pkgs.fetchurl {
|
||||||
|
# url = "https://www.pixelstalk.net/wp-content/uploads/2016/05/Epic-Anime-Awesome-Wallpapers.jpg";
|
||||||
|
# sha256 = "enQo3wqhgf0FEPHj2coOCvo7DuZv+x5rL/WIo4qPI50=";
|
||||||
|
# };
|
||||||
|
#
|
||||||
|
# # Stylix will automatically theme applications
|
||||||
|
# autoEnable = true;
|
||||||
|
# targets = {
|
||||||
|
# # disable Stylix's themes for ones I will theme manually
|
||||||
|
# firefox.enable = false;
|
||||||
|
# wofi.enable = false;
|
||||||
|
# };
|
||||||
|
#};
|
||||||
|
|
||||||
home = {
|
home = {
|
||||||
username = "me";
|
username = "me";
|
||||||
homeDirectory = "/home/me";
|
homeDirectory = "/home/me";
|
||||||
|
|
@ -42,18 +62,58 @@
|
||||||
programs = {
|
programs = {
|
||||||
# these are both required for home-manager to work
|
# these are both required for home-manager to work
|
||||||
home-manager.enable = true;
|
home-manager.enable = true;
|
||||||
git.enable = true;
|
|
||||||
|
|
||||||
|
git = {
|
||||||
|
enable = true;
|
||||||
|
userName = "emileclarkb";
|
||||||
|
userEmail = "eclarkboman@gmail.com";
|
||||||
|
};
|
||||||
|
|
||||||
# like `/bin/cat` but with syntax highlighting
|
# like `/bin/cat` but with syntax highlighting
|
||||||
# TODO: change the pager (maybe use Github:sachaos/viddy instead)
|
# TODO: change the pager (maybe use Github:sachaos/viddy instead)
|
||||||
bat = {
|
bat = {
|
||||||
enable = true;
|
enable = true;
|
||||||
config = {
|
config = {
|
||||||
pager = "less -FR";
|
pager = "less -FR";
|
||||||
theme = "Dracula";
|
# let Stylix control the theme
|
||||||
|
#theme = "Dracula";
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
|
|
||||||
|
firefox = {
|
||||||
|
enable = true;
|
||||||
|
policies = {
|
||||||
|
#BlockAboutConfig = true;
|
||||||
|
DefaultDownloadDirectory = "\${home}/downloads";
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
# I want to use fish as my login shell but it always
|
||||||
|
# goes terrible cause it isn't POSIX compliant, so
|
||||||
|
# instead Bash is my login and it will just exec fish
|
||||||
|
#bash = {
|
||||||
|
# interactiveShellInit = ''
|
||||||
|
# if [[ $(${pkgs.procps}/bin/ps --no-header --pid=$PPID --format=comm) != "fish" && -z ''${BASH_EXECUTION_STRING} ]]
|
||||||
|
# then
|
||||||
|
# shopt -q login_shell && LOGIN_OPTION='--login' || LOGIN_OPTION=""
|
||||||
|
# exec ${pkgs.fish}/bin/fish $LOGIN_OPTION
|
||||||
|
# fi
|
||||||
|
# '';
|
||||||
|
#};
|
||||||
|
|
||||||
|
fish = {
|
||||||
|
enable = true;
|
||||||
|
interactiveShellInit = ''
|
||||||
|
set -g fish_greeting "Welcome weary traveler to my shop"
|
||||||
|
'';
|
||||||
|
plugins = [
|
||||||
|
{
|
||||||
|
name = "grc";
|
||||||
|
src = pkgs.fishPlugins.grc.src;
|
||||||
|
}
|
||||||
|
];
|
||||||
|
};
|
||||||
|
|
||||||
/*
|
/*
|
||||||
spicetify =
|
spicetify =
|
||||||
let
|
let
|
||||||
|
|
@ -88,7 +148,7 @@
|
||||||
|
|
||||||
# lines = (accumulated scroll * multiplier / divider)
|
# lines = (accumulated scroll * multiplier / divider)
|
||||||
scroll = {
|
scroll = {
|
||||||
multiplier = 1.0;
|
multiplier = 3.0;
|
||||||
divider = 1.0;
|
divider = 1.0;
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|
@ -141,7 +201,8 @@
|
||||||
allow_markup = true;
|
allow_markup = true;
|
||||||
width = 250;
|
width = 250;
|
||||||
};
|
};
|
||||||
style = ''
|
# Force the style to stop Stylix being a bitch and overwriting it
|
||||||
|
style = lib.mkForce ''
|
||||||
@define-color rosewater #f2d5cf;
|
@define-color rosewater #f2d5cf;
|
||||||
@define-color rosewater-rgb rgb(242, 213, 207);
|
@define-color rosewater-rgb rgb(242, 213, 207);
|
||||||
@define-color flamingo #eebebe;
|
@define-color flamingo #eebebe;
|
||||||
|
|
@ -309,13 +370,19 @@
|
||||||
}
|
}
|
||||||
'';
|
'';
|
||||||
};
|
};
|
||||||
|
|
||||||
|
rofi = {
|
||||||
|
enable = true;
|
||||||
|
package = pkgs.rofi-wayland;
|
||||||
|
font = "JetBrains Mono Nerd Font 10";
|
||||||
|
location = "center";
|
||||||
|
terminal = "${pkgs.rio}/bin/rio";
|
||||||
|
};
|
||||||
|
|
||||||
};
|
};
|
||||||
|
|
||||||
# Nicely reload system units when changing configs
|
|
||||||
systemd.user.startServices = "sd-switch";
|
|
||||||
|
|
||||||
home.stateVersion = "24.05"; # don't change this
|
|
||||||
|
|
||||||
|
# ----- SERVICES -----
|
||||||
services = {
|
services = {
|
||||||
# Change monitor positions
|
# Change monitor positions
|
||||||
# TODO: find a way to make this modular (ie put something different for my laptop)
|
# TODO: find a way to make this modular (ie put something different for my laptop)
|
||||||
|
|
@ -353,4 +420,10 @@
|
||||||
];
|
];
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|
||||||
|
# Nicely reload system units when changing configs
|
||||||
|
systemd.user.startServices = "sd-switch";
|
||||||
|
|
||||||
|
home.stateVersion = "24.05"; # don't change this
|
||||||
}
|
}
|
||||||
|
|
|
||||||
207
homes/me/default.nix.bak
Normal file
207
homes/me/default.nix.bak
Normal file
|
|
@ -0,0 +1,207 @@
|
||||||
|
{
|
||||||
|
inputs,
|
||||||
|
outputs,
|
||||||
|
lib,
|
||||||
|
config,
|
||||||
|
pkgs,
|
||||||
|
...
|
||||||
|
}:
|
||||||
|
|
||||||
|
{
|
||||||
|
nixpkgs = {
|
||||||
|
config.allowUnfree = true;
|
||||||
|
};
|
||||||
|
|
||||||
|
imports = [
|
||||||
|
# inputs.spicetify-nix.homeManagerModules.default
|
||||||
|
#./wofi.nix
|
||||||
|
];
|
||||||
|
|
||||||
|
/*
|
||||||
|
programs.spicetify =
|
||||||
|
let
|
||||||
|
spicePkgs = inputs.spicetify-nix.legacyPackages.${pkgs.system};
|
||||||
|
in
|
||||||
|
{
|
||||||
|
enable = true;
|
||||||
|
enabledExtensions = with spicePkgs.extensions; [
|
||||||
|
adblock
|
||||||
|
hidePodcasts
|
||||||
|
shuffle # shuffle+ (special characters are sanitized out of extension names)
|
||||||
|
];
|
||||||
|
theme = spicePkgs.themes.catppuccin;
|
||||||
|
colorScheme = "mocha";
|
||||||
|
};
|
||||||
|
*/
|
||||||
|
|
||||||
|
#wayland.windowManager.hyprland.enable = true;
|
||||||
|
|
||||||
|
home = {
|
||||||
|
username = "me";
|
||||||
|
homeDirectory = "/home/me";
|
||||||
|
};
|
||||||
|
|
||||||
|
programs = {
|
||||||
|
# these are both required for home-manager to work
|
||||||
|
home-manager.enable = true;
|
||||||
|
git.enable = true;
|
||||||
|
|
||||||
|
# like `/bin/cat` but with syntax highlighting
|
||||||
|
# TODO: change the pager (maybe use Github:sachaos/viddy instead)
|
||||||
|
bat = {
|
||||||
|
enable = true;
|
||||||
|
config = {
|
||||||
|
pager = "less -FR";
|
||||||
|
#theme = "Dracula";
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
/*
|
||||||
|
spicetify =
|
||||||
|
let
|
||||||
|
spicePkgs = inputs.spicetify-nix.legacyPackages.${pkgs.system};
|
||||||
|
in
|
||||||
|
{
|
||||||
|
enable = true;
|
||||||
|
enabledExtensions = with spicePkgs.extensions; [
|
||||||
|
adblock
|
||||||
|
hidePodcasts
|
||||||
|
#shuffle
|
||||||
|
];
|
||||||
|
theme = spicePkgs.themes.catppuccin;
|
||||||
|
colorScheme = "mocha";
|
||||||
|
};
|
||||||
|
*/
|
||||||
|
|
||||||
|
# The terminal I use
|
||||||
|
# TODO: this is dependent on nvim being installed
|
||||||
|
# TODO: make this into a module with a configurable editor option
|
||||||
|
rio = {
|
||||||
|
enable = true;
|
||||||
|
# Rio Config Docs: https://raphamorim.io/rio/docs/config
|
||||||
|
settings = {
|
||||||
|
theme = "dracula";
|
||||||
|
hide-mouse-cursor-when-typing = true;
|
||||||
|
|
||||||
|
use-fork = true; # fork (dont spawn) Rio
|
||||||
|
|
||||||
|
padding-x = 10;
|
||||||
|
padding-y = [ 15 10 ]; # top, left
|
||||||
|
|
||||||
|
# lines = (accumulated scroll * multiplier / divider)
|
||||||
|
scroll = {
|
||||||
|
multiplier = 1.0;
|
||||||
|
divider = 1.0;
|
||||||
|
};
|
||||||
|
|
||||||
|
fonts = {
|
||||||
|
size = 15;
|
||||||
|
features = [];
|
||||||
|
|
||||||
|
regular = {
|
||||||
|
family = "FiraCode Nerd Font"; # "IosevkaTerm Nerd Font"
|
||||||
|
style = "Normal";
|
||||||
|
weight = 400;
|
||||||
|
};
|
||||||
|
|
||||||
|
bold = {
|
||||||
|
family = "FiraCode Nerd Font";
|
||||||
|
style = "Normal";
|
||||||
|
weight = 800;
|
||||||
|
};
|
||||||
|
|
||||||
|
italic = {
|
||||||
|
family = "FiraCode Nerd Font";
|
||||||
|
style = "Italic";
|
||||||
|
weight = 400;
|
||||||
|
};
|
||||||
|
|
||||||
|
bold-italic = {
|
||||||
|
family = "FiraCode Nerd Font";
|
||||||
|
style = "Italic";
|
||||||
|
weight = 800;
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
# Run when the `OpenConfigEditor` keybinding is triggered
|
||||||
|
editor = {
|
||||||
|
program = "nvim";
|
||||||
|
args = [];
|
||||||
|
};
|
||||||
|
|
||||||
|
renderer = {
|
||||||
|
performance = "High";
|
||||||
|
backend = "Automatic"; # Vulkan
|
||||||
|
};
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
wofi = {
|
||||||
|
enable = true;
|
||||||
|
settings = {
|
||||||
|
location = "center";
|
||||||
|
allow_markup = true;
|
||||||
|
width = 250;
|
||||||
|
};
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
# ----- SERVICES -----
|
||||||
|
services = {
|
||||||
|
# Hyprland Wallpaper
|
||||||
|
#hyprpaper = {
|
||||||
|
# enable = true;
|
||||||
|
# settings = {
|
||||||
|
# preload = [ "~/nixdots/wallpapers/ghibli-esque-valley.png" ];
|
||||||
|
# wallpaper = [
|
||||||
|
# "DP-2,~/nixdots/wallpapers/ghibli-esque-valley.png"
|
||||||
|
# "HDMI-A-1,~/nixdots/wallpapers/ghibli-esque-valley.png"
|
||||||
|
# ];
|
||||||
|
# };
|
||||||
|
#};
|
||||||
|
|
||||||
|
hyprpaper.enable = true; # so stylix can see it
|
||||||
|
|
||||||
|
# Change monitor positions
|
||||||
|
# TODO: find a way to make this modular (ie put something different for my laptop)
|
||||||
|
# my idea is to have a "monitors" module and use kanshi for wayland
|
||||||
|
kanshi = {
|
||||||
|
enable = true;
|
||||||
|
systemdTarget = "hyprland-session.target";
|
||||||
|
# You can find your monitors in hyprland by using `hyprctl monitors all`
|
||||||
|
settings = [
|
||||||
|
{ # 1920x1080@144 gaming monitor
|
||||||
|
output.criteria = "HDMI-A-1";
|
||||||
|
output.mode = "1920x1080@119.98Hz";
|
||||||
|
output.scale = 1.0;
|
||||||
|
output.adaptiveSync = false; # Variable Refresh Rate (this can be changed for gaming)
|
||||||
|
}
|
||||||
|
{ # 4k side monitor
|
||||||
|
output.criteria = "DP-2";
|
||||||
|
output.mode = "3840x2160@60.00Hz";
|
||||||
|
output.scale = 2.0;
|
||||||
|
}
|
||||||
|
|
||||||
|
{ # This is my default setup
|
||||||
|
profile.name = "default";
|
||||||
|
profile.outputs = [
|
||||||
|
{
|
||||||
|
criteria = "DP-2";
|
||||||
|
position = "0,0";
|
||||||
|
}
|
||||||
|
{
|
||||||
|
criteria = "HDMI-A-1";
|
||||||
|
position = "3840,0";
|
||||||
|
}
|
||||||
|
];
|
||||||
|
}
|
||||||
|
];
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
|
||||||
|
# Nicely reload system units when changing configs
|
||||||
|
systemd.user.startServices = "sd-switch";
|
||||||
|
|
||||||
|
home.stateVersion = "24.05"; # don't change this
|
||||||
|
}
|
||||||
410
homes/me/default.nix.bak13
Normal file
410
homes/me/default.nix.bak13
Normal file
|
|
@ -0,0 +1,410 @@
|
||||||
|
{
|
||||||
|
inputs,
|
||||||
|
outputs,
|
||||||
|
lib,
|
||||||
|
config,
|
||||||
|
pkgs,
|
||||||
|
...
|
||||||
|
}:
|
||||||
|
|
||||||
|
{
|
||||||
|
nixpkgs = {
|
||||||
|
config.allowUnfree = true;
|
||||||
|
};
|
||||||
|
|
||||||
|
imports = [
|
||||||
|
#inputs.nixcord.homeManagerModules.nixcord
|
||||||
|
# inputs.spicetify-nix.homeManagerModules.default
|
||||||
|
#./wofi.nix
|
||||||
|
];
|
||||||
|
|
||||||
|
/*
|
||||||
|
programs.spicetify =
|
||||||
|
let
|
||||||
|
spicePkgs = inputs.spicetify-nix.legacyPackages.${pkgs.system};
|
||||||
|
in
|
||||||
|
{
|
||||||
|
enable = true;
|
||||||
|
enabledExtensions = with spicePkgs.extensions; [
|
||||||
|
adblock
|
||||||
|
hidePodcasts
|
||||||
|
shuffle # shuffle+ (special characters are sanitized out of extension names)
|
||||||
|
];
|
||||||
|
theme = spicePkgs.themes.catppuccin;
|
||||||
|
colorScheme = "mocha";
|
||||||
|
};
|
||||||
|
*/
|
||||||
|
|
||||||
|
# ----- STYLIX -----
|
||||||
|
|
||||||
|
#stylix = {
|
||||||
|
# enable = true;
|
||||||
|
#
|
||||||
|
# image = pkgs.fetchurl {
|
||||||
|
# url = "https://www.pixelstalk.net/wp-content/uploads/2016/05/Epic-Anime-Awesome-Wallpapers.jpg";
|
||||||
|
# sha256 = "enQo3wqhgf0FEPHj2coOCvo7DuZv+x5rL/WIo4qPI50=";
|
||||||
|
# };
|
||||||
|
#
|
||||||
|
# # Stylix will automatically theme applications
|
||||||
|
# autoEnable = true;
|
||||||
|
# targets = {
|
||||||
|
# # disable Stylix's themes for ones I will theme manually
|
||||||
|
# firefox.enable = false;
|
||||||
|
# wofi.enable = false;
|
||||||
|
# };
|
||||||
|
#};
|
||||||
|
|
||||||
|
home = {
|
||||||
|
username = "me";
|
||||||
|
homeDirectory = "/home/me";
|
||||||
|
};
|
||||||
|
|
||||||
|
programs = {
|
||||||
|
# these are both required for home-manager to work
|
||||||
|
home-manager.enable = true;
|
||||||
|
git.enable = true;
|
||||||
|
|
||||||
|
# like `/bin/cat` but with syntax highlighting
|
||||||
|
# TODO: change the pager (maybe use Github:sachaos/viddy instead)
|
||||||
|
bat = {
|
||||||
|
enable = true;
|
||||||
|
config = {
|
||||||
|
pager = "less -FR";
|
||||||
|
# let Stylix control the theme
|
||||||
|
#theme = "Dracula";
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
firefox = {
|
||||||
|
enable = true;
|
||||||
|
policies = {
|
||||||
|
#BlockAboutConfig = true;
|
||||||
|
DefaultDownloadDirectory = "\${home}/downloads";
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
/*
|
||||||
|
spicetify =
|
||||||
|
let
|
||||||
|
spicePkgs = inputs.spicetify-nix.legacyPackages.${pkgs.system};
|
||||||
|
in
|
||||||
|
{
|
||||||
|
enable = true;
|
||||||
|
enabledExtensions = with spicePkgs.extensions; [
|
||||||
|
adblock
|
||||||
|
hidePodcasts
|
||||||
|
#shuffle
|
||||||
|
];
|
||||||
|
theme = spicePkgs.themes.catppuccin;
|
||||||
|
colorScheme = "mocha";
|
||||||
|
};
|
||||||
|
*/
|
||||||
|
|
||||||
|
# The terminal I use
|
||||||
|
# TODO: this is dependent on nvim being installed
|
||||||
|
# TODO: make this into a module with a configurable editor option
|
||||||
|
rio = {
|
||||||
|
enable = true;
|
||||||
|
# Rio Config Docs: https://raphamorim.io/rio/docs/config
|
||||||
|
settings = {
|
||||||
|
theme = "dracula";
|
||||||
|
hide-mouse-cursor-when-typing = true;
|
||||||
|
|
||||||
|
use-fork = true; # fork (dont spawn) Rio
|
||||||
|
|
||||||
|
padding-x = 10;
|
||||||
|
padding-y = [ 15 10 ]; # top, left
|
||||||
|
|
||||||
|
# lines = (accumulated scroll * multiplier / divider)
|
||||||
|
scroll = {
|
||||||
|
multiplier = 3.0;
|
||||||
|
divider = 1.0;
|
||||||
|
};
|
||||||
|
|
||||||
|
fonts = {
|
||||||
|
size = 15;
|
||||||
|
features = [];
|
||||||
|
|
||||||
|
regular = {
|
||||||
|
family = "FiraCode Nerd Font"; # "IosevkaTerm Nerd Font"
|
||||||
|
style = "Normal";
|
||||||
|
weight = 400;
|
||||||
|
};
|
||||||
|
|
||||||
|
bold = {
|
||||||
|
family = "FiraCode Nerd Font";
|
||||||
|
style = "Normal";
|
||||||
|
weight = 800;
|
||||||
|
};
|
||||||
|
|
||||||
|
italic = {
|
||||||
|
family = "FiraCode Nerd Font";
|
||||||
|
style = "Italic";
|
||||||
|
weight = 400;
|
||||||
|
};
|
||||||
|
|
||||||
|
bold-italic = {
|
||||||
|
family = "FiraCode Nerd Font";
|
||||||
|
style = "Italic";
|
||||||
|
weight = 800;
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
# Run when the `OpenConfigEditor` keybinding is triggered
|
||||||
|
editor = {
|
||||||
|
program = "nvim";
|
||||||
|
args = [];
|
||||||
|
};
|
||||||
|
|
||||||
|
renderer = {
|
||||||
|
performance = "High";
|
||||||
|
backend = "Automatic"; # Vulkan
|
||||||
|
};
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
wofi = {
|
||||||
|
enable = true;
|
||||||
|
settings = {
|
||||||
|
location = "center";
|
||||||
|
allow_markup = true;
|
||||||
|
width = 250;
|
||||||
|
};
|
||||||
|
# Force the style to stop Stylix being a bitch and overwriting it
|
||||||
|
style = lib.mkForce ''
|
||||||
|
@define-color rosewater #f2d5cf;
|
||||||
|
@define-color rosewater-rgb rgb(242, 213, 207);
|
||||||
|
@define-color flamingo #eebebe;
|
||||||
|
@define-color flamingo-rgb rgb(238, 190, 190);
|
||||||
|
@define-color pink #f4b8e4;
|
||||||
|
@define-color pink-rgb rgb(244, 184, 228);
|
||||||
|
@define-color mauve #ca9ee6;
|
||||||
|
@define-color mauve-rgb rgb(202, 158, 230);
|
||||||
|
@define-color red #e78284;
|
||||||
|
@define-color red-rgb rgb(231, 130, 132);
|
||||||
|
@define-color maroon #ea999c;
|
||||||
|
@define-color maroon-rgb rgb(234, 153, 156);
|
||||||
|
@define-color peach #ef9f76;
|
||||||
|
@define-color peach-rgb rgb(239, 159, 118);
|
||||||
|
@define-color yellow #e5c890;
|
||||||
|
@define-color yellow-rgb rgb(229, 200, 144);
|
||||||
|
@define-color green #a6d189;
|
||||||
|
@define-color green-rgb rgb(166, 209, 137);
|
||||||
|
@define-color teal #81c8be;
|
||||||
|
@define-color teal-rgb rgb(129, 200, 190);
|
||||||
|
@define-color sky #99d1db;
|
||||||
|
@define-color sky-rgb rgb(153, 209, 219);
|
||||||
|
@define-color sapphire #85c1dc;
|
||||||
|
@define-color sapphire-rgb rgb(133, 193, 220);
|
||||||
|
@define-color blue #8caaee;
|
||||||
|
@define-color blue-rgb rgb(140, 170, 238);
|
||||||
|
@define-color lavender #babbf1;
|
||||||
|
@define-color lavender-rgb rgb(186, 187, 241);
|
||||||
|
@define-color text #c6d0f5;
|
||||||
|
@define-color text-rgb rgb(198, 208, 245);
|
||||||
|
@define-color subtext1 #b5bfe2;
|
||||||
|
@define-color subtext1-rgb rgb(181, 191, 226);
|
||||||
|
@define-color subtext0 #a5adce;
|
||||||
|
@define-color subtext0-rgb rgb(165, 173, 206);
|
||||||
|
@define-color overlay2 #949cbb;
|
||||||
|
@define-color overlay2-rgb rgb(148, 156, 187);
|
||||||
|
@define-color overlay1 #838ba7;
|
||||||
|
@define-color overlay1-rgb rgb(131, 139, 167);
|
||||||
|
@define-color overlay0 #737994;
|
||||||
|
@define-color overlay0-rgb rgb(115, 121, 148);
|
||||||
|
@define-color surface2 #626880;
|
||||||
|
@define-color surface2-rgb rgb(98, 104, 128);
|
||||||
|
@define-color surface1 #51576d;
|
||||||
|
@define-color surface1-rgb rgb(81, 87, 109);
|
||||||
|
@define-color surface0 #414559;
|
||||||
|
@define-color surface0-rgb rgb(65, 69, 89);
|
||||||
|
@define-color base #303446;
|
||||||
|
@define-color base-rgb rgb(48, 52, 70);
|
||||||
|
@define-color mantle #292c3c;
|
||||||
|
@define-color mantle-rgb rgb(41, 44, 60);
|
||||||
|
@define-color crust #232634;
|
||||||
|
@define-color crust-rgb rgb(35, 38, 52);
|
||||||
|
|
||||||
|
* {
|
||||||
|
font-family: 'FiraCode Nerd Font';
|
||||||
|
font-size: 16px;
|
||||||
|
}
|
||||||
|
|
||||||
|
/* Window */
|
||||||
|
window {
|
||||||
|
margin: 0px;
|
||||||
|
padding: 10px;
|
||||||
|
border: 0.16em solid @teal;
|
||||||
|
border-radius: 0.5em;
|
||||||
|
background-color: @base;
|
||||||
|
animation: slideIn 0.25s ease-in-out both;
|
||||||
|
}
|
||||||
|
|
||||||
|
/* Slide In */
|
||||||
|
@keyframes slideIn {
|
||||||
|
0% {
|
||||||
|
opacity: 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
100% {
|
||||||
|
opacity: 1;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
/* Inner Box */
|
||||||
|
#inner-box {
|
||||||
|
margin: 5px;
|
||||||
|
padding: 10px;
|
||||||
|
border: none;
|
||||||
|
background-color: @base;
|
||||||
|
/*animation: fadeIn 0.5s ease-in-out both;*/
|
||||||
|
}
|
||||||
|
|
||||||
|
/* Fade In */
|
||||||
|
@keyframes fadeIn {
|
||||||
|
0% {
|
||||||
|
opacity: 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
100% {
|
||||||
|
opacity: 1;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
/* Outer Box */
|
||||||
|
#outer-box {
|
||||||
|
margin: 5px;
|
||||||
|
padding: 10px;
|
||||||
|
border: none;
|
||||||
|
background-color: @base;
|
||||||
|
}
|
||||||
|
|
||||||
|
/* Scroll */
|
||||||
|
#scroll {
|
||||||
|
margin: 0px;
|
||||||
|
padding: 10px;
|
||||||
|
border: none;
|
||||||
|
background-color: @base;
|
||||||
|
}
|
||||||
|
|
||||||
|
/* Input */
|
||||||
|
#input {
|
||||||
|
margin: 5px 20px;
|
||||||
|
padding: 10px;
|
||||||
|
border: none;
|
||||||
|
border-radius: 0.25em;
|
||||||
|
color: @text;
|
||||||
|
background-color: @base;
|
||||||
|
animation: fadeIn 0.25s ease-in-out both;
|
||||||
|
}
|
||||||
|
|
||||||
|
#input image {
|
||||||
|
border: none;
|
||||||
|
color: @red;
|
||||||
|
}
|
||||||
|
|
||||||
|
#input * {
|
||||||
|
outline: 4px solid @red!important;
|
||||||
|
}
|
||||||
|
|
||||||
|
/* Text */
|
||||||
|
#text {
|
||||||
|
margin: 5px;
|
||||||
|
border: none;
|
||||||
|
color: @text;
|
||||||
|
animation: fadeIn 0.5s ease-in-out both;
|
||||||
|
}
|
||||||
|
|
||||||
|
#entry {
|
||||||
|
background-color: @base;
|
||||||
|
}
|
||||||
|
|
||||||
|
#entry arrow {
|
||||||
|
border: none;
|
||||||
|
color: @teal;
|
||||||
|
}
|
||||||
|
|
||||||
|
/* Selected Entry */
|
||||||
|
#entry:selected {
|
||||||
|
border: 0.10em solid @teal;
|
||||||
|
border-radius: 0.25em;
|
||||||
|
}
|
||||||
|
|
||||||
|
#entry:selected #text {
|
||||||
|
color: @teal;
|
||||||
|
}
|
||||||
|
|
||||||
|
#entry:drop(active) {
|
||||||
|
background-color: @lavender!important;
|
||||||
|
}
|
||||||
|
'';
|
||||||
|
};
|
||||||
|
|
||||||
|
rofi = {
|
||||||
|
enable = true;
|
||||||
|
package = pkgs.rofi-wayland;
|
||||||
|
font = "JetBrains Mono Nerd Font 10";
|
||||||
|
location = "center";
|
||||||
|
terminal = "${pkgs.rio}/bin/rio";
|
||||||
|
};
|
||||||
|
|
||||||
|
};
|
||||||
|
|
||||||
|
|
||||||
|
# ----- SERVICES -----
|
||||||
|
services = {
|
||||||
|
# Hyprland Wallpaper
|
||||||
|
#hyprpaper = {
|
||||||
|
# enable = true;
|
||||||
|
# settings = {
|
||||||
|
# preload = [ "/home/me/nixdots/wallpapers/wall.png" ];
|
||||||
|
# wallpaper = [
|
||||||
|
# "DP-2,/home/me/nixdots/wallpapers/wall.png"
|
||||||
|
# "HDMI-A-1,/home/me/nixdots/wallpapers/wall.png"
|
||||||
|
# ];
|
||||||
|
# };
|
||||||
|
#};
|
||||||
|
|
||||||
|
# Change monitor positions
|
||||||
|
# TODO: find a way to make this modular (ie put something different for my laptop)
|
||||||
|
# my idea is to have a "monitors" module and use kanshi for wayland
|
||||||
|
kanshi = {
|
||||||
|
enable = true;
|
||||||
|
systemdTarget = "hyprland-session.target";
|
||||||
|
# You can find your monitors in hyprland by using `hyprctl monitors all`
|
||||||
|
settings = [
|
||||||
|
{ # 1920x1080@144 gaming monitor
|
||||||
|
output.criteria = "HDMI-A-1";
|
||||||
|
output.mode = "1920x1080@119.98Hz";
|
||||||
|
output.scale = 1.0;
|
||||||
|
output.adaptiveSync = false; # Variable Refresh Rate (this can be changed for gaming)
|
||||||
|
}
|
||||||
|
{ # 4k side monitor
|
||||||
|
output.criteria = "DP-2";
|
||||||
|
output.mode = "3840x2160@60.00Hz";
|
||||||
|
output.scale = 2.0;
|
||||||
|
}
|
||||||
|
|
||||||
|
{ # This is my default setup
|
||||||
|
profile.name = "default";
|
||||||
|
profile.outputs = [
|
||||||
|
{
|
||||||
|
criteria = "DP-2";
|
||||||
|
position = "0,0";
|
||||||
|
}
|
||||||
|
{
|
||||||
|
criteria = "HDMI-A-1";
|
||||||
|
position = "3840,0";
|
||||||
|
}
|
||||||
|
];
|
||||||
|
}
|
||||||
|
];
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
|
||||||
|
# Nicely reload system units when changing configs
|
||||||
|
systemd.user.startServices = "sd-switch";
|
||||||
|
|
||||||
|
home.stateVersion = "24.05"; # don't change this
|
||||||
|
}
|
||||||
209
homes/me/theme.rasi
Normal file
209
homes/me/theme.rasi
Normal file
|
|
@ -0,0 +1,209 @@
|
||||||
|
/**
|
||||||
|
*
|
||||||
|
* Author : Aditya Shakya (adi1090x)
|
||||||
|
* Github : @adi1090x
|
||||||
|
*
|
||||||
|
* Rofi Theme File
|
||||||
|
* Rofi Version: 1.7.3
|
||||||
|
**/
|
||||||
|
|
||||||
|
/*****----- Configuration -----*****/
|
||||||
|
configuration {
|
||||||
|
modi: "drun,run,filebrowser,window";
|
||||||
|
show-icons: true;
|
||||||
|
display-drun: "APPS";
|
||||||
|
display-run: "RUN";
|
||||||
|
display-filebrowser: "FILES";
|
||||||
|
display-window: "WINDOW";
|
||||||
|
drun-display-format: "{name}";
|
||||||
|
window-format: "{w} · {c} · {t}";
|
||||||
|
}
|
||||||
|
|
||||||
|
/*****----- Global Properties -----*****/
|
||||||
|
* {
|
||||||
|
font: "JetBrains Mono Nerd Font 10";
|
||||||
|
background: #11092D;
|
||||||
|
background-alt: #281657;
|
||||||
|
foreground: #FFFFFF;
|
||||||
|
selected: #DF5296;
|
||||||
|
active: #6E77FF;
|
||||||
|
urgent: #8E3596;
|
||||||
|
}
|
||||||
|
|
||||||
|
/*****----- Main Window -----*****/
|
||||||
|
window {
|
||||||
|
/* properties for window widget */
|
||||||
|
transparency: "real";
|
||||||
|
location: center;
|
||||||
|
anchor: center;
|
||||||
|
fullscreen: false;
|
||||||
|
width: 1000px;
|
||||||
|
x-offset: 0px;
|
||||||
|
y-offset: 0px;
|
||||||
|
|
||||||
|
/* properties for all widgets */
|
||||||
|
enabled: true;
|
||||||
|
border-radius: 15px;
|
||||||
|
cursor: "default";
|
||||||
|
background-color: @background;
|
||||||
|
}
|
||||||
|
|
||||||
|
/*****----- Main Box -----*****/
|
||||||
|
mainbox {
|
||||||
|
enabled: true;
|
||||||
|
spacing: 0px;
|
||||||
|
background-color: transparent;
|
||||||
|
orientation: horizontal;
|
||||||
|
children: [ "imagebox", "listbox" ];
|
||||||
|
}
|
||||||
|
|
||||||
|
imagebox {
|
||||||
|
padding: 20px;
|
||||||
|
background-color: transparent;
|
||||||
|
background-image: url("~/.config/rofi/images/j.jpg", height);
|
||||||
|
orientation: vertical;
|
||||||
|
children: [ "inputbar", "dummy", "mode-switcher" ];
|
||||||
|
}
|
||||||
|
|
||||||
|
listbox {
|
||||||
|
spacing: 20px;
|
||||||
|
padding: 20px;
|
||||||
|
background-color: transparent;
|
||||||
|
orientation: vertical;
|
||||||
|
children: [ "message", "listview" ];
|
||||||
|
}
|
||||||
|
|
||||||
|
dummy {
|
||||||
|
background-color: transparent;
|
||||||
|
}
|
||||||
|
|
||||||
|
/*****----- Inputbar -----*****/
|
||||||
|
inputbar {
|
||||||
|
enabled: true;
|
||||||
|
spacing: 10px;
|
||||||
|
padding: 15px;
|
||||||
|
border-radius: 10px;
|
||||||
|
background-color: @background-alt;
|
||||||
|
text-color: @foreground;
|
||||||
|
children: [ "textbox-prompt-colon", "entry" ];
|
||||||
|
}
|
||||||
|
textbox-prompt-colon {
|
||||||
|
enabled: true;
|
||||||
|
expand: false;
|
||||||
|
str: "";
|
||||||
|
background-color: inherit;
|
||||||
|
text-color: inherit;
|
||||||
|
}
|
||||||
|
entry {
|
||||||
|
enabled: true;
|
||||||
|
background-color: inherit;
|
||||||
|
text-color: inherit;
|
||||||
|
cursor: text;
|
||||||
|
placeholder: "Search";
|
||||||
|
placeholder-color: inherit;
|
||||||
|
}
|
||||||
|
|
||||||
|
/*****----- Mode Switcher -----*****/
|
||||||
|
mode-switcher{
|
||||||
|
enabled: true;
|
||||||
|
spacing: 20px;
|
||||||
|
background-color: transparent;
|
||||||
|
text-color: @foreground;
|
||||||
|
}
|
||||||
|
button {
|
||||||
|
padding: 15px;
|
||||||
|
border-radius: 10px;
|
||||||
|
background-color: @background-alt;
|
||||||
|
text-color: inherit;
|
||||||
|
cursor: pointer;
|
||||||
|
}
|
||||||
|
button selected {
|
||||||
|
background-color: @selected;
|
||||||
|
text-color: @foreground;
|
||||||
|
}
|
||||||
|
|
||||||
|
/*****----- Listview -----*****/
|
||||||
|
listview {
|
||||||
|
enabled: true;
|
||||||
|
columns: 1;
|
||||||
|
lines: 8;
|
||||||
|
cycle: true;
|
||||||
|
dynamic: true;
|
||||||
|
scrollbar: false;
|
||||||
|
layout: vertical;
|
||||||
|
reverse: false;
|
||||||
|
fixed-height: true;
|
||||||
|
fixed-columns: true;
|
||||||
|
|
||||||
|
spacing: 10px;
|
||||||
|
background-color: transparent;
|
||||||
|
text-color: @foreground;
|
||||||
|
cursor: "default";
|
||||||
|
}
|
||||||
|
|
||||||
|
/*****----- Elements -----*****/
|
||||||
|
element {
|
||||||
|
enabled: true;
|
||||||
|
spacing: 15px;
|
||||||
|
padding: 8px;
|
||||||
|
border-radius: 10px;
|
||||||
|
background-color: transparent;
|
||||||
|
text-color: @foreground;
|
||||||
|
cursor: pointer;
|
||||||
|
}
|
||||||
|
element normal.normal {
|
||||||
|
background-color: inherit;
|
||||||
|
text-color: inherit;
|
||||||
|
}
|
||||||
|
element normal.urgent {
|
||||||
|
background-color: @urgent;
|
||||||
|
text-color: @foreground;
|
||||||
|
}
|
||||||
|
element normal.active {
|
||||||
|
background-color: @active;
|
||||||
|
text-color: @foreground;
|
||||||
|
}
|
||||||
|
element selected.normal {
|
||||||
|
background-color: @selected;
|
||||||
|
text-color: @foreground;
|
||||||
|
}
|
||||||
|
element selected.urgent {
|
||||||
|
background-color: @urgent;
|
||||||
|
text-color: @foreground;
|
||||||
|
}
|
||||||
|
element selected.active {
|
||||||
|
background-color: @urgent;
|
||||||
|
text-color: @foreground;
|
||||||
|
}
|
||||||
|
element-icon {
|
||||||
|
background-color: transparent;
|
||||||
|
text-color: inherit;
|
||||||
|
size: 32px;
|
||||||
|
cursor: inherit;
|
||||||
|
}
|
||||||
|
element-text {
|
||||||
|
background-color: transparent;
|
||||||
|
text-color: inherit;
|
||||||
|
cursor: inherit;
|
||||||
|
vertical-align: 0.5;
|
||||||
|
horizontal-align: 0.0;
|
||||||
|
}
|
||||||
|
|
||||||
|
/*****----- Message -----*****/
|
||||||
|
message {
|
||||||
|
background-color: transparent;
|
||||||
|
}
|
||||||
|
textbox {
|
||||||
|
padding: 15px;
|
||||||
|
border-radius: 10px;
|
||||||
|
background-color: @background-alt;
|
||||||
|
text-color: @foreground;
|
||||||
|
vertical-align: 0.5;
|
||||||
|
horizontal-align: 0.0;
|
||||||
|
}
|
||||||
|
error-message {
|
||||||
|
padding: 15px;
|
||||||
|
border-radius: 20px;
|
||||||
|
background-color: @background;
|
||||||
|
text-color: @foreground;
|
||||||
|
}
|
||||||
|
|
@ -36,19 +36,19 @@ in
|
||||||
|
|
||||||
# Use the systemd-boot EFI boot loader.
|
# Use the systemd-boot EFI boot loader.
|
||||||
# TODO: use GRUB2 instead
|
# TODO: use GRUB2 instead
|
||||||
boot.loader.systemd-boot.enable = true;
|
#boot.loader.systemd-boot.enable = true;
|
||||||
boot.loader.efi.canTouchEfiVariables = true;
|
#boot.loader.efi.canTouchEfiVariables = true;
|
||||||
#boot.loader = {
|
boot.loader = {
|
||||||
# efi = {
|
efi = {
|
||||||
# canTouchEfiVariables = true;
|
canTouchEfiVariables = true;
|
||||||
# efiSysMountPoint = "/boot/efi";
|
efiSysMountPoint = "/boot/efi";
|
||||||
# };
|
};
|
||||||
# grub = {
|
grub = {
|
||||||
# efiSupport = true;
|
efiSupport = true;
|
||||||
# #efiInstallAsRemovable = true; # in case canTouchEfiVariables doesn't work on this system
|
#efiInstallAsRemovable = true; # in case canTouchEfiVariables doesn't work on this system
|
||||||
# device = "nodev";
|
device = "nodev";
|
||||||
# };
|
};
|
||||||
#};
|
};
|
||||||
|
|
||||||
# Set your time zone.
|
# Set your time zone.
|
||||||
time.timeZone = "Australia/Brisbane";
|
time.timeZone = "Australia/Brisbane";
|
||||||
|
|
@ -97,6 +97,10 @@ in
|
||||||
};
|
};
|
||||||
|
|
||||||
users = {
|
users = {
|
||||||
|
# using fish as the login shell tends
|
||||||
|
# to go very poorly because it isn't
|
||||||
|
# POSIX compliant, so we'll just use
|
||||||
|
# simple Bash then :)
|
||||||
defaultUserShell = pkgs.bash;
|
defaultUserShell = pkgs.bash;
|
||||||
|
|
||||||
users = {
|
users = {
|
||||||
|
|
@ -104,7 +108,7 @@ in
|
||||||
me = {
|
me = {
|
||||||
isNormalUser = true;
|
isNormalUser = true;
|
||||||
extraGroups = [ "wheel" ];
|
extraGroups = [ "wheel" ];
|
||||||
shell = pkgs.fish;
|
shell = pkgs.bash; #pkgs.fish
|
||||||
packages = with pkgs; [
|
packages = with pkgs; [
|
||||||
firefox
|
firefox
|
||||||
nitch
|
nitch
|
||||||
|
|
@ -117,7 +121,7 @@ in
|
||||||
dev = {
|
dev = {
|
||||||
isNormalUser = true;
|
isNormalUser = true;
|
||||||
extraGroups = [ "wheel" ];
|
extraGroups = [ "wheel" ];
|
||||||
shell = pkgs.zsh;
|
shell = pkgs.bash; #pkgs.zsh
|
||||||
packages = with pkgs; [
|
packages = with pkgs; [
|
||||||
];
|
];
|
||||||
};
|
};
|
||||||
|
|
@ -126,7 +130,7 @@ in
|
||||||
ae = {
|
ae = {
|
||||||
isNormalUser = true;
|
isNormalUser = true;
|
||||||
extraGroups = [ "wheel" ];
|
extraGroups = [ "wheel" ];
|
||||||
shell = pkgs.fish;
|
shell = pkgs.bash; #pkgs.fish
|
||||||
packages = with pkgs; [
|
packages = with pkgs; [
|
||||||
];
|
];
|
||||||
};
|
};
|
||||||
|
|
@ -137,29 +141,44 @@ in
|
||||||
|
|
||||||
# ---- SYSTEM PACKAGES -----
|
# ---- SYSTEM PACKAGES -----
|
||||||
environment.systemPackages = with pkgs; [
|
environment.systemPackages = with pkgs; [
|
||||||
# Applications
|
# User Environment
|
||||||
#kitty (switched to Rio)
|
inputs.swww.packages.${pkgs.system}.swww
|
||||||
vesktop
|
#vesktop
|
||||||
helvum
|
helvum
|
||||||
easyeffects
|
easyeffects
|
||||||
|
ani-cli
|
||||||
|
|
||||||
|
wl-clipboard # clipboard for wayland
|
||||||
|
|
||||||
|
python310 # I use 3.10 since it's in a pretty stable state now
|
||||||
|
|
||||||
|
# fish plugins
|
||||||
|
grc # colorise command outputs
|
||||||
|
|
||||||
# Pretty necessary
|
# Pretty necessary
|
||||||
#vim
|
|
||||||
git
|
git
|
||||||
|
|
||||||
# Super duper necessary
|
# Unix Commands
|
||||||
wget
|
wget
|
||||||
tree
|
tree
|
||||||
];
|
];
|
||||||
|
|
||||||
|
|
||||||
# Enable the use of certain programs
|
# Enable the use of certain programs
|
||||||
programs = {
|
programs = {
|
||||||
hyprland.enable = true;
|
hyprland = {
|
||||||
fish.enable = true;
|
enable = true;
|
||||||
zsh.enable = true;
|
# set the flake package
|
||||||
|
package = inputs.hyprland.packages.${pkgs.stdenv.hostPlatform.system}.hyprland;
|
||||||
|
# make sure to also set the portal package, so that they are in sync
|
||||||
|
portalPackage = inputs.hyprland.packages.${pkgs.stdenv.hostPlatform.system}.xdg-desktop-portal-hyprland;
|
||||||
|
|
||||||
git.enable = true;
|
xwayland.enable = true;
|
||||||
|
#systemd.enable = true;
|
||||||
|
};
|
||||||
|
|
||||||
|
|
||||||
|
zsh.enable = true;
|
||||||
|
fish.enable = true;
|
||||||
|
|
||||||
neovim = {
|
neovim = {
|
||||||
enable = true;
|
enable = true;
|
||||||
|
|
@ -172,9 +191,21 @@ in
|
||||||
set tabstop=4
|
set tabstop=4
|
||||||
set shiftwidth=4
|
set shiftwidth=4
|
||||||
'';
|
'';
|
||||||
# set cc=80
|
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
|
|
||||||
|
# I want to use fish as my login shell but it always goes terrible
|
||||||
|
# cause it isn't POSIX compliant, so instead Bash is my login and
|
||||||
|
# will just exec fish (^-^)
|
||||||
|
bash = {
|
||||||
|
interactiveShellInit = ''
|
||||||
|
if [[ $(${pkgs.procps}/bin/ps --no-header --pid=$PPID --format=comm) != "fish" && -z ''${BASH_EXECUTION_STRING} ]]
|
||||||
|
then
|
||||||
|
shopt -q login_shell && LOGIN_OPTION='--login' || LOGIN_OPTION=""
|
||||||
|
exec ${pkgs.fish}/bin/fish $LOGIN_OPTION
|
||||||
|
fi
|
||||||
|
'';
|
||||||
|
};
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|
||||||
|
|
@ -188,6 +219,7 @@ in
|
||||||
"IosevkaTerm" # big nah
|
"IosevkaTerm" # big nah
|
||||||
"CascadiaCode" # potential
|
"CascadiaCode" # potential
|
||||||
"FiraCode" # potential
|
"FiraCode" # potential
|
||||||
|
"JetBrainsMono" # for my rofi theme
|
||||||
"Hasklig"
|
"Hasklig"
|
||||||
"Hack"]; })
|
"Hack"]; })
|
||||||
|
|
||||||
|
|
@ -206,6 +238,21 @@ in
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|
||||||
|
# ----- STYLIX -----
|
||||||
|
|
||||||
|
#stylix = {
|
||||||
|
# enable = true;
|
||||||
|
# image = pkgs.fetchurl {
|
||||||
|
# url = "https://www.pixelstalk.net/wp-content/uploads/2016/05/Epic-Anime-Awesome-Wallpapers.jpg";
|
||||||
|
# sha256 = "enQo3wqhgf0FEPHj2coOCvo7DuZv+x5rL/WIo4qPI50=";
|
||||||
|
# };
|
||||||
|
#
|
||||||
|
# # Stylix will automatically theme applications
|
||||||
|
# #autoEnable = true;
|
||||||
|
# #image = ../../wallpapers/wall.png;
|
||||||
|
# #image = "/home/me/nixdots/wallpapers/ghibli-esque-valley.png";
|
||||||
|
#};
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
# Enable the new CLI commands and the flakes as experimental features
|
# Enable the new CLI commands and the flakes as experimental features
|
||||||
|
|
@ -225,6 +272,13 @@ in
|
||||||
# Enable the OpenSSH daemon.
|
# Enable the OpenSSH daemon.
|
||||||
# services.openssh.enable = true;
|
# services.openssh.enable = true;
|
||||||
|
|
||||||
|
|
||||||
|
# Enable OpenGL
|
||||||
|
hardware = {
|
||||||
|
graphics.enable = true;
|
||||||
|
};
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
# DO NOT MODIFY
|
# DO NOT MODIFY
|
||||||
system.stateVersion = "24.05"; # Did you read the comment?
|
system.stateVersion = "24.05"; # Did you read the comment?
|
||||||
|
|
|
||||||
|
|
@ -18,7 +18,8 @@
|
||||||
fsType = "ext4";
|
fsType = "ext4";
|
||||||
};
|
};
|
||||||
|
|
||||||
fileSystems."/boot" =
|
#fileSystems."/boot" = # BIOS
|
||||||
|
fileSystems."/boot" = # UEFI
|
||||||
{ device = "/dev/disk/by-uuid/7046-177A";
|
{ device = "/dev/disk/by-uuid/7046-177A";
|
||||||
fsType = "vfat";
|
fsType = "vfat";
|
||||||
options = [ "fmask=0077" "dmask=0077" ];
|
options = [ "fmask=0077" "dmask=0077" ];
|
||||||
|
|
|
||||||
|
|
@ -0,0 +1,15 @@
|
||||||
|
{...}:
|
||||||
|
|
||||||
|
{
|
||||||
|
boot.loader = {
|
||||||
|
efi = {
|
||||||
|
canTouchEfiVariables = true;
|
||||||
|
efiSysMountPoint = "/boot/efi";
|
||||||
|
};
|
||||||
|
grub = {
|
||||||
|
efiSupport = true;
|
||||||
|
#efiInstallAsRemovable = true; # in case canTouchEfiVariables doesn't work on your system
|
||||||
|
device = "nodev";
|
||||||
|
};
|
||||||
|
};
|
||||||
|
}
|
||||||
|
|
@ -0,0 +1,8 @@
|
||||||
|
{...}:
|
||||||
|
|
||||||
|
{
|
||||||
|
boot.loader = {
|
||||||
|
systemd-boot.enable = true;
|
||||||
|
efi.canTouchEfiVariables = true;
|
||||||
|
};
|
||||||
|
}
|
||||||
29
modules/discord/nixcord.nix
Normal file
29
modules/discord/nixcord.nix
Normal file
|
|
@ -0,0 +1,29 @@
|
||||||
|
{
|
||||||
|
lib,
|
||||||
|
pkgs,
|
||||||
|
config,
|
||||||
|
inputs,
|
||||||
|
outputs,
|
||||||
|
...
|
||||||
|
}:
|
||||||
|
|
||||||
|
{
|
||||||
|
imports = [
|
||||||
|
inputs.nixcord.homeManagerModules.nixcord
|
||||||
|
];
|
||||||
|
|
||||||
|
programs.nixcord = {
|
||||||
|
enable = true;
|
||||||
|
config = {
|
||||||
|
themeLinks = [
|
||||||
|
""
|
||||||
|
];
|
||||||
|
|
||||||
|
# no surrounding window frame
|
||||||
|
frameless = true;
|
||||||
|
|
||||||
|
plugins = {
|
||||||
|
};
|
||||||
|
};
|
||||||
|
};
|
||||||
|
}
|
||||||
7
typescript
Normal file
7
typescript
Normal file
|
|
@ -0,0 +1,7 @@
|
||||||
|
Script started on 2024-11-02 18:26:40+10:00 [TERM="rio" TTY="/dev/pts/1" COLUMNS="162" LINES="70"]
|
||||||
|
You need to install grc!
|
||||||
|
Welcome weary traveler mmm mm mmm to my shop
|
||||||
|
[?2004h]0;~/nixdots[30m(B[m
[38;2;139;233;253mme(B[m@[38;2;189;147;249mmyputer(B[m:[38;2;80;250;123m~/nixdots(B[m|[31mmain⚡[34m*(B[m[33m?(B[m[K
|
||||||
|
➤ (B[m[38;2;248;248;242m[K
[C[Ce
[3C[38;2;98;114;164mxit[38;2;248;248;242m
[3C[38;2;255;85;85me[38;2;98;114;164mxit[38;2;248;248;242m
[3C[38;2;255;85;85mx[38;2;98;114;164mit[38;2;248;248;242m
[4C[38;2;255;85;85mi[38;2;98;114;164mt[38;2;248;248;242m
[5C[38;2;255;85;85mt[38;2;248;248;242m
[6C
[6C[38;2;139;233;253mexit[38;2;248;248;242m
[6C
[6C
|
||||||
|
[30m(B[m[?2004l]0;exit ~/nixdots[30m(B[m
[30m(B[m[30m(B[m[?2004l
|
||||||
|
Script done on 2024-11-02 18:26:46+10:00 [COMMAND_EXIT_CODE="0"]
|
||||||
Loading…
Add table
Add a link
Reference in a new issue