Made a seperate Configuration for Laptop and Default( Main PC )
20
flake.nix
@ -14,7 +14,7 @@
|
||||
home-manager,
|
||||
nvf,
|
||||
}: {
|
||||
nixosConfigurations.poggers = nixpkgs.lib.nixosSystem {
|
||||
nixosConfigurations.default = nixpkgs.lib.nixosSystem {
|
||||
system = "x86_64-linux";
|
||||
modules = [
|
||||
./configuration.nix
|
||||
@ -24,7 +24,23 @@
|
||||
home-manager = {
|
||||
useGlobalPkgs = true;
|
||||
useUserPackages = true;
|
||||
users.fabian = import ./modules/home/home.nix;
|
||||
users.fabian = import ./hosts/default/modules/home/home.nix;
|
||||
};
|
||||
}
|
||||
];
|
||||
};
|
||||
|
||||
nixosConfigurations.laptop = nixpkgs.lib.nixosSystem {
|
||||
system = "x86_64-linux";
|
||||
modules = [
|
||||
./hosts/laptop/configuration.nix
|
||||
nvf.nixosModules.default
|
||||
home-manager.nixosModules.home-manager
|
||||
{
|
||||
home-manager = {
|
||||
useGlobalPkgs = true;
|
||||
useUserPackages = true;
|
||||
users.fabian = import ./hosts/laptop/modules/home/home.nix;
|
||||
};
|
||||
}
|
||||
];
|
||||
|
Before Width: | Height: | Size: 534 KiB After Width: | Height: | Size: 534 KiB |
Before Width: | Height: | Size: 12 MiB After Width: | Height: | Size: 12 MiB |
Before Width: | Height: | Size: 2.3 MiB After Width: | Height: | Size: 2.3 MiB |
Before Width: | Height: | Size: 1.0 MiB After Width: | Height: | Size: 1.0 MiB |
Before Width: | Height: | Size: 181 KiB After Width: | Height: | Size: 181 KiB |
Before Width: | Height: | Size: 754 KiB After Width: | Height: | Size: 754 KiB |
Before Width: | Height: | Size: 1.8 MiB After Width: | Height: | Size: 1.8 MiB |
Before Width: | Height: | Size: 1.2 MiB After Width: | Height: | Size: 1.2 MiB |
Before Width: | Height: | Size: 164 KiB After Width: | Height: | Size: 164 KiB |
Before Width: | Height: | Size: 964 KiB After Width: | Height: | Size: 964 KiB |
Before Width: | Height: | Size: 6.2 MiB After Width: | Height: | Size: 6.2 MiB |
Before Width: | Height: | Size: 19 MiB After Width: | Height: | Size: 19 MiB |
Before Width: | Height: | Size: 410 KiB After Width: | Height: | Size: 410 KiB |
Before Width: | Height: | Size: 759 KiB After Width: | Height: | Size: 759 KiB |
Before Width: | Height: | Size: 486 KiB After Width: | Height: | Size: 486 KiB |
30
hosts/laptop/modules/home/home.nix
Normal file
@ -0,0 +1,30 @@
|
||||
{
|
||||
config,
|
||||
pkgs,
|
||||
...
|
||||
}: {
|
||||
imports = [
|
||||
./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/skulls.png".source = ./raw/wp/skulls.png;
|
||||
".wp/soyuz.png".source = ./raw/wp/soyuz.png;
|
||||
};
|
||||
};
|
||||
}
|
49
hosts/laptop/modules/home/nix/alacritty.nix
Normal file
@ -0,0 +1,49 @@
|
||||
{ config, pkgs, ... }:
|
||||
{
|
||||
programs.alacritty = {
|
||||
enable = true;
|
||||
settings = {
|
||||
window.dimensions = {
|
||||
lines = 4;
|
||||
columns = 200;
|
||||
};
|
||||
font = {
|
||||
size = 17;
|
||||
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";
|
||||
};
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
}
|
11
hosts/laptop/modules/home/nix/default.nix
Normal file
@ -0,0 +1,11 @@
|
||||
{ config, pkgs, ... }:
|
||||
{
|
||||
imports = [
|
||||
./sway/default.nix
|
||||
./alacritty.nix
|
||||
./shell.nix
|
||||
./git.nix
|
||||
./tmux.nix
|
||||
./mpd.nix
|
||||
];
|
||||
}
|
10
hosts/laptop/modules/home/nix/git.nix
Normal file
@ -0,0 +1,10 @@
|
||||
{ config, pkgs, ... }:
|
||||
{
|
||||
programs = {
|
||||
git = {
|
||||
enable = true;
|
||||
userName = "Sojus07";
|
||||
userEmail = "Sojus07";
|
||||
};
|
||||
};
|
||||
}
|
61
hosts/laptop/modules/home/nix/mpd.nix
Normal file
@ -0,0 +1,61 @@
|
||||
{ config, pkgs, ... }:
|
||||
{
|
||||
home.packages = with pkgs; [
|
||||
mpc
|
||||
mpd-discord-rpc
|
||||
mpv
|
||||
];
|
||||
services = {
|
||||
mpd = {
|
||||
enable = true;
|
||||
musicDirectory = "/home/fabian/.music";
|
||||
extraConfig = ''
|
||||
audio_output {
|
||||
type "pipewire"
|
||||
name "Pipewire Output"
|
||||
}
|
||||
|
||||
audio_output {
|
||||
type "fifo"
|
||||
name "Visualizer feed"
|
||||
path "/tmp/mpd.fifo"
|
||||
format "44100:16:2"
|
||||
}
|
||||
|
||||
'';
|
||||
};
|
||||
};
|
||||
|
||||
programs = {
|
||||
ncmpcpp = {
|
||||
enable = true;
|
||||
mpdMusicDir = "/home/fabian/.music";
|
||||
bindings = [
|
||||
];
|
||||
settings = {
|
||||
ncmpcpp_directory = "~/.ncmpcpp";
|
||||
mpd_host = "localhost";
|
||||
mpd_port = 6600;
|
||||
header_window_color = "cyan";
|
||||
progressbar_look = "━━━";
|
||||
visualizer_color = "cyan";
|
||||
visualizer_look = "┃│";
|
||||
now_playing_prefix = " ";
|
||||
visualizer_type = "wave";
|
||||
song_status_format = " $2%a $4⟫$3⟫ $8%t $4⟫$3⟫ $5%b ";
|
||||
autocenter_mode = "yes";
|
||||
centered_cursor = "yes";
|
||||
display_bitrate = "no";
|
||||
enable_window_title = "no";
|
||||
follow_now_playing_lyrics = "yes";
|
||||
ignore_leading_the = "yes";
|
||||
empty_tag_marker = "";
|
||||
visualizer_data_source = "/tmp/mpd.fifo";
|
||||
visualizer_output_name = "my_fifo";
|
||||
header_visibility = false;
|
||||
statusbar_visibility = true;
|
||||
titles_visibility = true;
|
||||
};
|
||||
};
|
||||
};
|
||||
}
|
103
hosts/laptop/modules/home/nix/shell.nix
Normal file
@ -0,0 +1,103 @@
|
||||
{ config, pkgs, ... }:
|
||||
{
|
||||
home.packages = with pkgs; [
|
||||
grc
|
||||
];
|
||||
programs = {
|
||||
fish = {
|
||||
enable = true;
|
||||
generateCompletions = true;
|
||||
interactiveShellInit = ''
|
||||
set -gx DEVKITPRO "/opt/devkitpro";
|
||||
set -gx DEVKITPPC "/opt/devkitpro/devkitPPC";
|
||||
set -gx DEVKITA64 "/opt/devkitpro/devkitA64";
|
||||
set -gx DEVKITARM "/opt/devkitpro/devkitARM";
|
||||
set -gx PATH "/opt/devkitpro/tools/bin:$PATH";
|
||||
'';
|
||||
shellAliases = {
|
||||
g = "git";
|
||||
gc = "git commit";
|
||||
ga = "git add -A";
|
||||
http = "python3 -m http.server";
|
||||
ls = "${pkgs.eza}/bin/eza -l --icons";
|
||||
tree = "${pkgs.eza}/bin/eza --tree --icons";
|
||||
cp = "cp -rv";
|
||||
mv = "mv -v";
|
||||
mkdir = "mkdir -pv";
|
||||
update = "sudo nixos-rebuild switch --flake /etc/nixos#poggers --impure";
|
||||
};
|
||||
plugins = [
|
||||
{
|
||||
name = "z";
|
||||
src = pkgs.fishPlugins.z.src;
|
||||
}
|
||||
{
|
||||
name = "pisces";
|
||||
src = pkgs.fishPlugins.pisces.src;
|
||||
}
|
||||
{
|
||||
name = "fzf-fish";
|
||||
src = pkgs.fishPlugins.fzf-fish.src;
|
||||
}
|
||||
{
|
||||
name = "hydro";
|
||||
src = pkgs.fishPlugins.hydro.src;
|
||||
}
|
||||
{
|
||||
name = "grc";
|
||||
src = pkgs.fishPlugins.grc.src;
|
||||
}
|
||||
{
|
||||
name = "git-abbr";
|
||||
src = pkgs.fishPlugins.git-abbr.src;
|
||||
}
|
||||
{
|
||||
name = "forgit";
|
||||
src = pkgs.fishPlugins.forgit.src;
|
||||
}
|
||||
{
|
||||
name = "colored-man-pages";
|
||||
src = pkgs.fishPlugins.colored-man-pages.src;
|
||||
}
|
||||
{
|
||||
name = "bobthefisher";
|
||||
src = pkgs.fishPlugins.bobthefisher.src;
|
||||
}
|
||||
];
|
||||
};
|
||||
|
||||
bash = {
|
||||
enable = false;
|
||||
enableCompletion = true;
|
||||
sessionVariables = {
|
||||
DEVKITPRO = "/opt/devkitpro";
|
||||
DEVKITPPC = "/opt/devkitpro/devkitPPC";
|
||||
DEVKITA64 = "/opt/devkitpro/devkitA64";
|
||||
DEVKITARM = "/opt/devkitpro/devkitARM";
|
||||
PATH = "/opt/devkitpro/tools/bin:$PATH";
|
||||
};
|
||||
shellAliases = {
|
||||
http = "python3 -m http.server";
|
||||
rm = "rm $@ -v -I";
|
||||
ls = "${pkgs.eza}/bin/eza -l --icons";
|
||||
cp = "cp -rv";
|
||||
mv = "mv -v";
|
||||
mkdir = "mkdir -pv";
|
||||
update = "doas nixos-rebuild switch";
|
||||
};
|
||||
shellOptions = [
|
||||
"histappend"
|
||||
"checkwinsize"
|
||||
"extglob"
|
||||
"globstar"
|
||||
"checkjobs"
|
||||
];
|
||||
initExtra = ''
|
||||
PS1="(\u) % "
|
||||
|
||||
eval "$(fzf --bash)"
|
||||
complete -cf doas
|
||||
'';
|
||||
};
|
||||
};
|
||||
}
|
19
hosts/laptop/modules/home/nix/sway/default.nix
Normal file
@ -0,0 +1,19 @@
|
||||
{ config, pkgs, ... }:
|
||||
{
|
||||
imports = [
|
||||
./sway.nix
|
||||
];
|
||||
home = {
|
||||
packages = with pkgs; [
|
||||
waybar
|
||||
swaybg
|
||||
slurp
|
||||
grim
|
||||
];
|
||||
file = {
|
||||
".config/rofi/config.rasi".source = ./raw/config.rasi;
|
||||
".config/waybar/style.css".source = ./raw/style.css;
|
||||
".config/waybar/config".source = ./raw/config;
|
||||
};
|
||||
};
|
||||
}
|
189
hosts/laptop/modules/home/nix/sway/raw/config
Normal file
@ -0,0 +1,189 @@
|
||||
[
|
||||
{
|
||||
"battery": {
|
||||
"format": "{icon} {capacity}%",
|
||||
"format-alt": "{icon} {time}",
|
||||
"format-charging": " {capacity}%",
|
||||
"format-icons": [
|
||||
"",
|
||||
"",
|
||||
"",
|
||||
"",
|
||||
""
|
||||
],
|
||||
"format-plugged": " {capacity}% ",
|
||||
"states": {
|
||||
"critical": 15,
|
||||
"good": 95,
|
||||
"warning": 30
|
||||
}
|
||||
},
|
||||
"cava#left": {
|
||||
"autosens": 1,
|
||||
"bar_delimiter": 0,
|
||||
"bars": 18,
|
||||
"format-icons": [
|
||||
"<span foreground='#cba6f7'>▁</span>",
|
||||
"<span foreground='#cba6f7'>▂</span>",
|
||||
"<span foreground='#cba6f7'>▃</span>",
|
||||
"<span foreground='#cba6f7'>▄</span>",
|
||||
"<span foreground='#89b4fa'>▅</span>",
|
||||
"<span foreground='#89b4fa'>▆</span>",
|
||||
"<span foreground='#89b4fa'>▇</span>",
|
||||
"<span foreground='#89b4fa'>█</span>"
|
||||
],
|
||||
"framerate": 60,
|
||||
"higher_cutoff_freq": 10000,
|
||||
"input_delay": 2,
|
||||
"lower_cutoff_freq": 50,
|
||||
"method": "pulse",
|
||||
"monstercat": false,
|
||||
"reverse": false,
|
||||
"source": "auto",
|
||||
"stereo": true,
|
||||
"waves": false
|
||||
},
|
||||
"cava#right": {
|
||||
"autosens": 1,
|
||||
"bar_delimiter": 0,
|
||||
"bars": 18,
|
||||
"format-icons": [
|
||||
"<span foreground='#cba6f7'>▁</span>",
|
||||
"<span foreground='#cba6f7'>▂</span>",
|
||||
"<span foreground='#cba6f7'>▃</span>",
|
||||
"<span foreground='#cba6f7'>▄</span>",
|
||||
"<span foreground='#89b4fa'>▅</span>",
|
||||
"<span foreground='#89b4fa'>▆</span>",
|
||||
"<span foreground='#89b4fa'>▇</span>",
|
||||
"<span foreground='#89b4fa'>█</span>"
|
||||
],
|
||||
"framerate": 60,
|
||||
"higher_cutoff_freq": 10000,
|
||||
"input_delay": 2,
|
||||
"lower_cutoff_freq": 50,
|
||||
"method": "pulse",
|
||||
"monstercat": false,
|
||||
"reverse": false,
|
||||
"source": "auto",
|
||||
"stereo": true,
|
||||
"waves": false
|
||||
},
|
||||
"clock": {
|
||||
"format": " {:%a, %d %b, %I:%M %p}",
|
||||
"format-alt": " {:%d/%m}",
|
||||
"tooltip": "true",
|
||||
"tooltip-format": "<big>{:%Y %B}</big>\n<tt><small>{calendar}</small></tt>"
|
||||
},
|
||||
"cpu": {
|
||||
"format": " {usage}%",
|
||||
"format-alt": " {avg_frequency} GHz",
|
||||
"interval": 5
|
||||
},
|
||||
"custom/launcher": {
|
||||
"format": "",
|
||||
"tooltip": "false"
|
||||
},
|
||||
"custom/playerctl#backward": {
|
||||
"format": " ",
|
||||
"on-click": "playerctl previous",
|
||||
"on-scroll-down": "playerctl volume .05-",
|
||||
"on-scroll-up": "playerctl volume .05+"
|
||||
},
|
||||
"custom/playerctl#foward": {
|
||||
"format": " ",
|
||||
"on-click": "playerctl next",
|
||||
"on-scroll-down": "playerctl volume .05-",
|
||||
"on-scroll-up": "playerctl volume .05+"
|
||||
},
|
||||
"custom/playerctl#play": {
|
||||
"exec": "playerctl -a metadata --format '{\"text\": \"{{artist}} - {{markup_escape(title)}}\", \"tooltip\": \"{{playerName}} : {{markup_escape(title)}}\", \"alt\": \"{{status}}\", \"class\": \"{{status}}\"}' -F",
|
||||
"format": "{icon}",
|
||||
"format-icons": {
|
||||
"Paused": "<span> </span>",
|
||||
"Playing": "<span> </span>",
|
||||
"Stopped": "<span> </span>"
|
||||
},
|
||||
"on-click": "playerctl play-pause",
|
||||
"on-scroll-down": "playerctl volume .05-",
|
||||
"on-scroll-up": "playerctl volume .05+",
|
||||
"return-type": "json"
|
||||
},
|
||||
"custom/playerlabel": {
|
||||
"exec": "playerctl -a metadata --format '{\"text\": \"{{artist}} - {{markup_escape(title)}}\", \"tooltip\": \"{{playerName}} : {{markup_escape(title)}}\", \"alt\": \"{{status}}\", \"class\": \"{{status}}\"}' -F",
|
||||
"format": "<span> {} </span>",
|
||||
"max-length": 40,
|
||||
"on-click": "",
|
||||
"return-type": "json"
|
||||
},
|
||||
"custom/randwall": {
|
||||
"format": ""
|
||||
},
|
||||
"height": 35,
|
||||
"layer": "top",
|
||||
"margin-bottom": 0,
|
||||
"margin-left": 0,
|
||||
"margin-right": 0,
|
||||
"margin-top": 0,
|
||||
"memory": {
|
||||
"format": " {}%",
|
||||
"format-alt": " {used}/{total} GiB",
|
||||
"interval": 5
|
||||
},
|
||||
"modules-center": [
|
||||
"custom/playerlabel",
|
||||
],
|
||||
"modules-left": [
|
||||
"cava#left",
|
||||
"custom/playerctl#backward",
|
||||
"custom/playerctl#play",
|
||||
"custom/playerctl#foward",
|
||||
],
|
||||
"modules-right": [
|
||||
"tray",
|
||||
"battery",
|
||||
"pulseaudio",
|
||||
"network",
|
||||
],
|
||||
|
||||
"network": {
|
||||
"format-disconnected": " 0% ",
|
||||
"format-ethernet": " 100% ",
|
||||
"format-linked": "{ifname} (No IP)",
|
||||
"format-wifi": " {signalStrength}%",
|
||||
"tooltip-format": "Connected to {essid} {ifname} via {gwaddr}"
|
||||
},
|
||||
"position": "top",
|
||||
"pulseaudio": {
|
||||
"format": "{icon} {volume}%",
|
||||
"format-icons": {
|
||||
"default": [
|
||||
"",
|
||||
"",
|
||||
""
|
||||
]
|
||||
},
|
||||
"format-muted": "",
|
||||
"on-click": "pavucontrol",
|
||||
"scroll-step": 5
|
||||
},
|
||||
"tray": {
|
||||
"icon-size": 20,
|
||||
"spacing": 8
|
||||
},
|
||||
"wlr/workspaces": {
|
||||
"active-only": false,
|
||||
"all-outputs": false,
|
||||
"disable-scroll": false,
|
||||
"format": "{name}",
|
||||
"format-icons": {
|
||||
"active": "",
|
||||
"default": "",
|
||||
"sort-by-number": true,
|
||||
"urgent": ""
|
||||
},
|
||||
"on-click": "activate",
|
||||
"on-scroll-down": "hyprctl dispatch workspace e+1",
|
||||
"on-scroll-up": "hyprctl dispatch workspace e-1"
|
||||
}
|
||||
}
|
||||
]
|
76
hosts/laptop/modules/home/nix/sway/raw/config.rasi
Normal file
@ -0,0 +1,76 @@
|
||||
configuration {
|
||||
display-drun: "Applications:";
|
||||
drun-display-format: "{icon} {name}";
|
||||
font: "JetBrainsMono Nerd Font Medium 10";
|
||||
show-icons: true;
|
||||
modi: "drun";
|
||||
}
|
||||
|
||||
@theme "/dev/null"
|
||||
|
||||
* {
|
||||
|
||||
opacity: 0.5;
|
||||
color0: #39305320;
|
||||
color1: #494d6420;
|
||||
color3: #d8dee9;
|
||||
color4: #7b68ee;
|
||||
color5: #cbe3e7;
|
||||
|
||||
|
||||
background-color: transparent;
|
||||
text-color: @color3;
|
||||
accent-color: @color5;
|
||||
|
||||
margin: 0px;
|
||||
border: 0px;
|
||||
padding: 0px;
|
||||
spacing: 0px;
|
||||
}
|
||||
|
||||
window {
|
||||
background-color: @color0;
|
||||
border-color: @accent-color;
|
||||
|
||||
width: 50%;
|
||||
border: 2px;
|
||||
}
|
||||
|
||||
inputbar {
|
||||
padding: 10px 12px;
|
||||
spacing: 12px;
|
||||
children: [ prompt, entry ];
|
||||
}
|
||||
|
||||
prompt, entry, element-text, element-icon {
|
||||
vertical-align: 0.5;
|
||||
}
|
||||
|
||||
prompt {
|
||||
text-color: @accent-color;
|
||||
enabled: true;
|
||||
text-color: @color4;
|
||||
}
|
||||
|
||||
listview {
|
||||
lines: 8;
|
||||
columns: 2;
|
||||
|
||||
}
|
||||
|
||||
element {
|
||||
padding: 8px;
|
||||
spacing: 8px;
|
||||
}
|
||||
|
||||
element selected {
|
||||
text-color: @color4;
|
||||
}
|
||||
|
||||
element-icon {
|
||||
size: 20;
|
||||
}
|
||||
|
||||
element-text {
|
||||
text-color: inherit;
|
||||
}
|
134
hosts/laptop/modules/home/nix/sway/raw/style.css
Normal file
@ -0,0 +1,134 @@
|
||||
* {
|
||||
border: none;
|
||||
border-radius: 0px;
|
||||
font-family: RobotoMono Nerd Font;
|
||||
font-size: 14px;
|
||||
min-height: 0;
|
||||
}
|
||||
|
||||
window#waybar {
|
||||
/* background: rgba(17,17,27,1); */
|
||||
background: transparent;
|
||||
}
|
||||
|
||||
#cava.left, #cava.right {
|
||||
/* background: #25253a; */
|
||||
|
||||
/*background: #25253a;*/
|
||||
background: #010101;
|
||||
margin: 5px;
|
||||
padding: 8px 16px;
|
||||
color: #cba6f7;
|
||||
}
|
||||
#cava.left {
|
||||
border-radius: 24px 24px 24px 24px;
|
||||
}
|
||||
#cava.right {
|
||||
border-radius: 10px 24px 10px 24px;
|
||||
}
|
||||
#workspaces {
|
||||
background: #11111b;
|
||||
margin: 5px 5px;
|
||||
padding: 8px 5px;
|
||||
border-radius: 16px;
|
||||
color: #cba6f7
|
||||
}
|
||||
#workspaces button {
|
||||
padding: 0px 5px;
|
||||
margin: 0px 3px;
|
||||
border-radius: 16px;
|
||||
color: transparent;
|
||||
background: rgba(17,17,27,1);
|
||||
transition: all 0.3s ease-in-out;
|
||||
}
|
||||
|
||||
#workspaces button.active {
|
||||
background-color: #89b4fa;
|
||||
color: #11111B;
|
||||
border-radius: 16px;
|
||||
min-width: 50px;
|
||||
background-size: 400% 400%;
|
||||
transition: all 0.3s ease-in-out;
|
||||
}
|
||||
|
||||
#workspaces button:hover {
|
||||
background-color: #f5f5f5;
|
||||
color: #11111B;
|
||||
border-radius: 16px;
|
||||
min-width: 50px;
|
||||
background-size: 400% 400%;
|
||||
}
|
||||
|
||||
#tray, #pulseaudio, #network, #battery,
|
||||
#custom-playerctl.backward, #custom-playerctl.play, #custom-playerctl.foward{
|
||||
background: #010101;
|
||||
font-weight: bold;
|
||||
margin: 5px 0px;
|
||||
opacity: 1;
|
||||
}
|
||||
#tray, #pulseaudio, #network, #battery{
|
||||
color: #f5f5f5;
|
||||
border-radius: 24px 24px 24px 24px;
|
||||
padding: 0 20px;
|
||||
margin-left: 7px;
|
||||
}
|
||||
#clock {
|
||||
color: #f5f5f5;
|
||||
background: #010101;
|
||||
border-radius: 0px 0px 0px 40px;
|
||||
padding: 10px 10px 15px 25px;
|
||||
margin-left: 7px;
|
||||
font-weight: bold;
|
||||
font-size: 16px;
|
||||
}
|
||||
#custom-launcher {
|
||||
color: #89b4fa;
|
||||
background: #010101;
|
||||
border-radius: 0px 0px 40px 0px;
|
||||
margin: 0px;
|
||||
padding: 0px 35px 0px 15px;
|
||||
font-size: 28px;
|
||||
}
|
||||
|
||||
#custom-playerctl.backward, #custom-playerctl.play, #custom-playerctl.foward {
|
||||
background: #010101;
|
||||
font-size: 22px;
|
||||
}
|
||||
#custom-playerctl.backward:hover, #custom-playerctl.play:hover, #custom-playerctl.foward:hover{
|
||||
color: #f5f5f5;
|
||||
}
|
||||
#custom-playerctl.backward {
|
||||
color: #cba6f7;
|
||||
border-radius: 24px 0px 0px 24px;
|
||||
padding-left: 16px;
|
||||
margin-left: 7px;
|
||||
}
|
||||
#custom-playerctl.play {
|
||||
color: #89b4fa;
|
||||
padding: 0 5px;
|
||||
}
|
||||
#custom-playerctl.foward {
|
||||
color: #cba6f7;
|
||||
border-radius: 0px 24px 24px 0px;
|
||||
padding-right: 12px;
|
||||
margin-right: 7px
|
||||
}
|
||||
#custom-playerlabel {
|
||||
background: #010101;
|
||||
color: #f5f5f5;
|
||||
padding: 0 20px;
|
||||
border-radius: 24px 24px 24px 24px;
|
||||
margin: 5px 0;
|
||||
font-weight: bold;
|
||||
}
|
||||
#window{
|
||||
/*background: #25253a; */
|
||||
padding-left: 15px;
|
||||
padding-right: 15px;
|
||||
border-radius: 16px;
|
||||
margin-top: 5px;
|
||||
margin-bottom: 5px;
|
||||
font-weight: normal;
|
||||
font-style: normal;
|
||||
opacity: 0.1;
|
||||
}
|
109
hosts/laptop/modules/home/nix/sway/sway.nix
Normal file
@ -0,0 +1,109 @@
|
||||
{config, pkgs, ... }:
|
||||
{
|
||||
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 run -c .config/rofi/config.rasi";
|
||||
startup = [
|
||||
{command = "swaybg -i $HOME/.wp/soyuz.png";}
|
||||
];
|
||||
bars = [{ command = "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";
|
||||
"${modifier}+Shift+S" = "${pkgs.grim}/bin/grim -g '$(${pkgs.slurp}/bin/slurp)'";
|
||||
# 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";
|
||||
|
||||
# Audio
|
||||
"XF86AudioRaiseVolume" = "exec ${pkgs.pulseaudio}/bin/pactl set-sink-volume @DEFAULT_SINK@ +10%";
|
||||
"XF86AudioLowerVolume" = "exec ${pkgs.pulseaudio}/bin/pactl set-sink-volume @DEFAULT_SINK@ -10%";
|
||||
"XF86AudioMute" = "exec ${pkgs.pulseaudio}/bin/pactl set-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 15%-";
|
||||
"XF86MonBrightnessUp" = "exec ${pkgs.brightnessctl}/bin/brightnessctl set +15%";
|
||||
};
|
||||
};
|
||||
|
||||
extraConfig = ''
|
||||
shadows enable
|
||||
corner_radius 12
|
||||
blur_radius 7
|
||||
blur_passes 4
|
||||
default_dim_inactive 0.2
|
||||
|
||||
for_window [app_id="wezterm"] blur enable
|
||||
for_window [app_id="code"] blur enable
|
||||
for_window [app_id="rofi"] blur enable
|
||||
|
||||
default_border pixel 0px
|
||||
default_floating_border none
|
||||
titlebar_border_thickness 0
|
||||
'';
|
||||
};
|
||||
}
|
54
hosts/laptop/modules/home/nix/tmux.nix
Normal file
@ -0,0 +1,54 @@
|
||||
{ config, pkgs, ... }:
|
||||
{
|
||||
programs = {
|
||||
tmux = {
|
||||
enable = true;
|
||||
plugins = with pkgs; [
|
||||
tmuxPlugins.net-speed
|
||||
tmuxPlugins.cpu
|
||||
tmuxPlugins.battery
|
||||
tmuxPlugins.gruvbox
|
||||
];
|
||||
disableConfirmationPrompt = true;
|
||||
mouse = 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
|
||||
|
||||
#setw -g window-status-current-format "[ #W ]"
|
||||
#setw -g window-status-format "#W"
|
||||
|
||||
set-option -s status-interval 1
|
||||
set -g status-right-length 100
|
||||
set -g @net_speed_interfaces "wg0-mullvad"
|
||||
set -g @download_speed_format "%1s"
|
||||
set -g @upload_speed_format "%1s"
|
||||
set -g @net_speed_format "D:%1s U:%1s"
|
||||
|
||||
set -g status-right '#{battery_icon} #{battery_percentage} [ #{net_speed}] [ #{cpu_percentage}] [ %H:%M] '
|
||||
|
||||
run-shell ${pkgs.tmuxPlugins.net-speed}/share/tmux-plugins/net-speed/net_speed.tmux
|
||||
run-shell ${pkgs.tmuxPlugins.cpu}/share/tmux-plugins/cpu/cpu.tmux
|
||||
run-shell ${pkgs.tmuxPlugins.battery}/share/tmux-plugins/battery/battery.tmux
|
||||
|
||||
set -g status-position top
|
||||
#set-option -g status-style bg=default
|
||||
'';
|
||||
};
|
||||
};
|
||||
}
|
Before Width: | Height: | Size: 534 KiB After Width: | Height: | Size: 534 KiB |
Before Width: | Height: | Size: 12 MiB After Width: | Height: | Size: 12 MiB |
Before Width: | Height: | Size: 2.3 MiB After Width: | Height: | Size: 2.3 MiB |
Before Width: | Height: | Size: 1.0 MiB After Width: | Height: | Size: 1.0 MiB |
Before Width: | Height: | Size: 181 KiB After Width: | Height: | Size: 181 KiB |
Before Width: | Height: | Size: 754 KiB After Width: | Height: | Size: 754 KiB |
Before Width: | Height: | Size: 1.8 MiB After Width: | Height: | Size: 1.8 MiB |
Before Width: | Height: | Size: 1.2 MiB After Width: | Height: | Size: 1.2 MiB |
Before Width: | Height: | Size: 164 KiB After Width: | Height: | Size: 164 KiB |
Before Width: | Height: | Size: 964 KiB After Width: | Height: | Size: 964 KiB |
Before Width: | Height: | Size: 6.2 MiB After Width: | Height: | Size: 6.2 MiB |
Before Width: | Height: | Size: 19 MiB After Width: | Height: | Size: 19 MiB |
Before Width: | Height: | Size: 410 KiB After Width: | Height: | Size: 410 KiB |
Before Width: | Height: | Size: 759 KiB After Width: | Height: | Size: 759 KiB |
Before Width: | Height: | Size: 486 KiB After Width: | Height: | Size: 486 KiB |
17
hosts/laptop/modules/system/nix/boot.nix
Normal file
@ -0,0 +1,17 @@
|
||||
{ config, pkgs, ... }:
|
||||
{
|
||||
boot = {
|
||||
loader = {
|
||||
systemd-boot = {
|
||||
enable = true;
|
||||
extraEntries = {
|
||||
"mint.conf" = ''
|
||||
title Linux Mint
|
||||
efi /EFI/ubuntu/shimx64.efi
|
||||
'';
|
||||
};
|
||||
};
|
||||
};
|
||||
supportedFilesystems = [ "ntfs" ];
|
||||
};
|
||||
}
|
20
hosts/laptop/modules/system/nix/default.nix
Normal file
@ -0,0 +1,20 @@
|
||||
{
|
||||
config,
|
||||
pkgs,
|
||||
...
|
||||
}: {
|
||||
imports = [
|
||||
./x/dwm/default.nix
|
||||
./nvim/default.nix
|
||||
./networking.nix
|
||||
./users.nix
|
||||
./services.nix
|
||||
./gaming.nix
|
||||
./firefox.nix
|
||||
./pkgs.nix
|
||||
./sec.nix
|
||||
./virt.nix
|
||||
./boot.nix
|
||||
./hw.nix
|
||||
];
|
||||
}
|
78
hosts/laptop/modules/system/nix/firefox.nix
Normal file
@ -0,0 +1,78 @@
|
||||
{ config, pkgs, ... }:
|
||||
|
||||
let
|
||||
lock-false = {
|
||||
Value = false;
|
||||
Status = "locked";
|
||||
};
|
||||
lock-true = {
|
||||
Value = true;
|
||||
Status = "locked";
|
||||
};
|
||||
in
|
||||
{
|
||||
programs = {
|
||||
firefox = {
|
||||
enable = true;
|
||||
languagePacks = [ "en-US" ];
|
||||
policies = {
|
||||
DisableTelemetry = true;
|
||||
DisableFirefoxStudies = true;
|
||||
EnableTrackingProtection = {
|
||||
Value = true;
|
||||
Locked = true;
|
||||
Cryptomining = true;
|
||||
Fingerprinting = true;
|
||||
};
|
||||
DisablePocket = true;
|
||||
DisableFirefoxAccounts = true;
|
||||
DisableAccounts = true;
|
||||
DisableFirefoxScreenshots = true;
|
||||
OverrideFirstRunPage = "";
|
||||
OverridePostUpdatePage = "";
|
||||
DontCheckDefaultBrowser = true;
|
||||
DisplayBookmarksToolbar = "newtab";
|
||||
DisplayMenuBar = "default-off";
|
||||
SearchBar = "unified";
|
||||
ExtensionSettings = {
|
||||
"uBlock0@raymondhill.net" = {
|
||||
install_url = "https://addons.mozilla.org/firefox/downloads/latest/ublock-origin/latest.xpi";
|
||||
installation_mode = "force_installed";
|
||||
};
|
||||
"78272b6fa58f4a1abaac99321d503a20@proton.me" = {
|
||||
install_url = "https://addons.mozilla.org/firefox/downloads/latest/proton-pass/latest.xpi";
|
||||
installation_mode = "force_installed";
|
||||
};
|
||||
"addon@darkreader.org" = {
|
||||
install_url = "https://addons.mozilla.org/firefox/downloads/latest/darkreader/latest.xpi";
|
||||
installation_mode = "force_installed";
|
||||
};
|
||||
"{f5bcc922-5c09-4ba5-9611-d7931812785c}" = {
|
||||
install_url = "https://addons.mozilla.org/firefox/downloads/file/4354513/oxocarbon-1.0.xpi";
|
||||
installation_mode = "force_installed";
|
||||
};
|
||||
};
|
||||
};
|
||||
preferences = {
|
||||
"browser.contentblocking.category" = true;
|
||||
"extensions.pocket.enabled" = false;
|
||||
"extensions.screenshots.disabled" = true;
|
||||
"browser.topsites.contile.enabled" = false;
|
||||
"browser.formfill.enable" = false;
|
||||
"browser.search.suggest.enabled" = false;
|
||||
"browser.search.suggest.enabled.private" = false;
|
||||
"browser.urlbar.suggest.searches" = false;
|
||||
"browser.urlbar.showSearchSuggestionsFirst" = false;
|
||||
"browser.newtabpage.activity-stream.feeds.section.topstories" = false;
|
||||
"browser.newtabpage.activity-stream.feeds.snippets" = false;
|
||||
"browser.newtabpage.activity-stream.section.highlights.includePocket" = false;
|
||||
"browser.newtabpage.activity-stream.section.highlights.includeBookmarks" = false;
|
||||
"browser.newtabpage.activity-stream.section.highlights.includeDownloads" = false;
|
||||
"browser.newtabpage.activity-stream.section.highlights.includeVisited" = false;
|
||||
"browser.newtabpage.activity-stream.showSponsored" = false;
|
||||
"browser.newtabpage.activity-stream.system.showSponsored" = false;
|
||||
"browser.newtabpage.activity-stream.showSponsoredTopSites" = false;
|
||||
};
|
||||
};
|
||||
};
|
||||
}
|
12
hosts/laptop/modules/system/nix/gaming.nix
Normal file
@ -0,0 +1,12 @@
|
||||
{
|
||||
config,
|
||||
pkgs,
|
||||
...
|
||||
}:
|
||||
{
|
||||
programs = {
|
||||
steam = {
|
||||
enable = true;
|
||||
};
|
||||
};
|
||||
}
|
15
hosts/laptop/modules/system/nix/hw.nix
Normal file
@ -0,0 +1,15 @@
|
||||
{ config, pkgs, ... }:
|
||||
{
|
||||
hardware = {
|
||||
bluetooth = {
|
||||
enable = true;
|
||||
};
|
||||
graphics = {
|
||||
enable = true;
|
||||
};
|
||||
rtl-sdr = {
|
||||
enable = true;
|
||||
};
|
||||
};
|
||||
|
||||
}
|
18
hosts/laptop/modules/system/nix/networking.nix
Normal file
@ -0,0 +1,18 @@
|
||||
{ config, pkgs, ... }:
|
||||
{
|
||||
networking = {
|
||||
hostName = "poggers";
|
||||
networkmanager.enable = true;
|
||||
firewall = {
|
||||
enable = true;
|
||||
allowedTCPPorts = [
|
||||
80
|
||||
1337
|
||||
8080
|
||||
3000
|
||||
8000
|
||||
];
|
||||
};
|
||||
};
|
||||
|
||||
}
|
29
hosts/laptop/modules/system/nix/nvim/cmp.nix
Normal file
@ -0,0 +1,29 @@
|
||||
{
|
||||
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"
|
||||
#];
|
||||
};
|
||||
};
|
||||
};
|
||||
}
|
41
hosts/laptop/modules/system/nix/nvim/default.nix
Normal file
@ -0,0 +1,41 @@
|
||||
{
|
||||
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";
|
||||
};
|
||||
};
|
||||
};
|
||||
};
|
||||
}
|
||||
|
11
hosts/laptop/modules/system/nix/nvim/extraPlugins.nix
Normal file
@ -0,0 +1,11 @@
|
||||
{ pkgs, lib, ... }:
|
||||
{
|
||||
programs.nvf.settings.vim = {
|
||||
extraPlugins = with pkgs; {
|
||||
neocord = {
|
||||
package = vimPlugins.neocord;
|
||||
setup = "require('neocord').setup {}";
|
||||
};
|
||||
};
|
||||
};
|
||||
}
|