This commit is contained in:
Hadi 2024-06-27 19:42:08 +02:00
parent ae6818ed65
commit 84f87f9833
13 changed files with 138 additions and 95 deletions

View File

@ -7,35 +7,35 @@
The laptop configuration is used by an Omen 16 laptop w/ nvidia and an amd gpu running NixOS. The laptop configuration is used by an Omen 16 laptop w/ nvidia and an amd gpu running NixOS.
The configurations files can be found in the `hosts/laptop` directory. The configurations files can be found in the `hosts/laptop` directory.
| Category | Name | | Category | Name |
|----------------|---------------| |-----------------------------------------|----------------|
| WM | Hyprland | | WM | Hyprland |
| | hyprlock | | | hyprlock |
| | hyprpaper | | | hyprpaper |
| | hypridle | | | hypridle |
| | wlogout | | | wlogout |
| Bar | waybar | | Bar | waybar |
| Terminal | kitty | | Terminal | kitty |
| Shell | zsh | | Shell | zsh |
| | tmux | | | tmux |
| | starship | | | starship |
| | bat | | | bat |
| | eza | | | eza |
| | zoxide | | | zoxide |
| | fzf | | | fzf |
| Editor | neovim(nixvim)| | Editor | neovim(nixvim) |
| File manager | lf | | File manager | lf |
| | thunar | | | thunar |
| Browser | qutebrowser | | Browser | qutebrowser |
| Music | spicetify | | Music | spicetify |
| Notifications | dunst | | Notifications | dunst |
| Launcher | wofi | | Launcher | wofi |
| DM | tuigreet | | DM | tuigreet |
| Secrets | sops-nix | | Secrets | sops-nix |
| Misc | lazygit | | Misc | lazygit |
| | neofetch | | | neofetch |
| | cava | | | cava |
| See [hosts/laptop](../hosts/laptop/)... | | | See [hosts/laptop](../hosts/laptop/)... | |
## Server ## Server

View File

@ -2,37 +2,37 @@
The list of the keybindings working on Hyprland: The list of the keybindings working on Hyprland:
| Description | Keybinding | Command | | Description | Keybinding | Command |
| -- | -- | -- | |-----------------------------|------------------------|--------------------------------------------------------------------|
| Switch Workspace | SUPER + {Number} | workspace {Number} | | Switch Workspace | SUPER + {Number} | workspace {Number} |
| Move app to Workspace | SUPER SHIFT + {Number} | movetoworkspace {Number} | | Move app to Workspace | SUPER SHIFT + {Number} | movetoworkspace {Number} |
| Kitty | SUPER + RETURN | exec ${pkgs.kitty}/bin/kitty | | Kitty | SUPER + RETURN | exec \${pkgs.kitty}/bin/kitty |
| Thunar | SUPER + E | exec ${pkgs.xfce.thunar}/bin/thunar | | Thunar | SUPER + E | exec \${pkgs.xfce.thunar}/bin/thunar |
| Qutebrowser | SUPER + B | exec ${pkgs.qutebrowser}/bin/qutebrowser | | Qutebrowser | SUPER + B | exec \${pkgs.qutebrowser}/bin/qutebrowser |
| Bitwarden | SUPER + K | exec ${pkgs.bitwarden}/bin/bitwarden | | Bitwarden | SUPER + K | exec \${pkgs.bitwarden}/bin/bitwarden |
| Peaclock | SUPER + C | exec ${pkgs.kitty}/bin/kitty --class peaclock peaclock | | Peaclock | SUPER + C | exec \${pkgs.kitty}/bin/kitty --class peaclock peaclock |
| Lock | SUPER + L | exec ${pkgs.hyprlock}/bin/hyprlock | | Lock | SUPER + L | exec \${pkgs.hyprlock}/bin/hyprlock |
| Powermenu | SUPER + X | exec powermenu | | Powermenu | SUPER + X | exec powermenu |
| Launcher | SUPER + SPACE | exec menu | | Launcher | SUPER + SPACE | exec menu |
| Close window | SUPER + Q | killactive | | Close window | SUPER + Q | killactive |
| Toggle Floating | SUPER + T | togglefloating | | Toggle Floating | SUPER + T | togglefloating |
| Toggle Fullscreen | SUPER + F | fullscreen | | Toggle Fullscreen | SUPER + F | fullscreen |
| Move focus left | SUPER + left | movefocus l | | Move focus left | SUPER + left | movefocus l |
| Move focus Right | SUPER + right | movefocus r | | Move focus Right | SUPER + right | movefocus r |
| Move focus Up | SUPER + up | movefocus u | | Move focus Up | SUPER + up | movefocus u |
| Move focus Down | SUPER + down | movefocus d | | Move focus Down | SUPER + down | movefocus d |
| Screenshot window | SUPER + PRINT | exec screenshot window | | Screenshot window | SUPER + PRINT | exec screenshot window |
| Screenshot monitor | PRINT | exec screenshot monitor | | Screenshot monitor | PRINT | exec screenshot monitor |
| Screenshot region | SUPER SHIFT + PRINT | exec screenshot region | | Screenshot region | SUPER SHIFT + PRINT | exec screenshot region |
| Screenshot region then edit | ALT PRINT | exec screenshot region swappy | | Screenshot region then edit | ALT PRINT | exec screenshot region swappy |
| Turn off night shift | SUPER + F2 | exec night-shift-off | | Turn off night shift | SUPER + F2 | exec night-shift-off |
| Turn on night shift | SUPER + F3 | exec night-shift-on | | Turn on night shift | SUPER + F3 | exec night-shift-on |
| Choose sound output | SUPER + F5 | exec ${pkgs.kitty}/bin/kitty --class floating zsh -c sound-output | | Choose sound output | SUPER + F5 | exec \${pkgs.kitty}/bin/kitty --class floating zsh -c sound-output |
| Move Window (mouse) | SUPER + mouse:272 | movewindow | | Move Window (mouse) | SUPER + mouse:272 | movewindow |
| Resize Window (mouse) | SUPER + R | resizewindow | | Resize Window (mouse) | SUPER + R | resizewindow |
| Toggle Mute | XF86AudioMute | exec sound-toggle | | Toggle Mute | XF86AudioMute | exec sound-toggle |
| Lock when closing Lid | switch:Lid Switch | exec ${pkgs.hyprlock}/bin/hyprlock | | Lock when closing Lid | switch:Lid Switch | exec \${pkgs.hyprlock}/bin/hyprlock |
| Sound Up | XF86AudioRaiseVolume | exec sound-up | | Sound Up | XF86AudioRaiseVolume | exec sound-up |
| Sound Down | XF86AudioLowerVolume | exec sound-down | | Sound Down | XF86AudioLowerVolume | exec sound-down |
| Brightness Up | XF86MonBrightnessUp | exec brightness-up | | Brightness Up | XF86MonBrightnessUp | exec brightness-up |
| Brightness Down | XF86MonBrightnessDown | exec brightness-down | | Brightness Down | XF86MonBrightnessDown | exec brightness-down |

View File

@ -10,13 +10,14 @@ feel free to contribute <3 ([CONTRIBUTING.md](CONTRIBUTING.md))
- [ ] macOS theme - [ ] macOS theme
- [~] Tofi (Wofi, but terminal based) - [~] Tofi (Wofi, but terminal based)
- [ ] Add Vim Keybindings to KEYBINDINGS.md - [ ] Add Vim Keybindings to KEYBINDINGS.md
- [ ] Keybindings with Icons
- [ ] Qutebrowser - [ ] Qutebrowser
- [~] Bitwarden integration (I need this.) - [~] Bitwarden integration (I need this.)
- [ ] Waybar - [ ] Waybar
- [~] Caffeine status - [ ] Caffeine status on click
- [ ] Night-shift status - [ ] Night-shift status on click
- [ ] Hyprland - [ ] Hyprland
- [ ] Implement Hyprcursor (see home/system/hyprland/hyprcursor.nix: Not working, small cursor on some apps, big one on others) - [ ] Implement Hyprcursor (see home/system/hyprland/hyprcursor.nix: Not working, small cursor on some apps, big one on others)

View File

@ -59,3 +59,6 @@ echo "$keybindings" | while read line; do
echo "| $comment | $mod$key | $dispatcher $params |" >>"$KEYBINDINGS_FILE" echo "| $comment | $mod$key | $dispatcher $params |" >>"$KEYBINDINGS_FILE"
done done
pandoc -t commonmark_x "$KEYBINDINGS_FILE" -o "/tmp/keybindings.md"
mv "/tmp/keybindings.md" "$KEYBINDINGS_FILE"

View File

@ -24,7 +24,7 @@
./plugins/noice.nix ./plugins/noice.nix
./plugins/obsidian.nix ./plugins/obsidian.nix
./plugins/image.nix ./plugins/image.nix
./plugins/ltex.nix # ./plugins/ltex.nix
./plugins/flash.nix ./plugins/flash.nix
./plugins/zen-mode.nix ./plugins/zen-mode.nix
./options.nix ./options.nix

View File

@ -10,7 +10,11 @@
action = "<CMD>lua vim.lsp.buf.format()<CR>"; action = "<CMD>lua vim.lsp.buf.format()<CR>";
options.desc = "LSP Format"; options.desc = "LSP Format";
} }
{
key = "<leader>ox";
action = "vip:!pandoc -t commonmark_x<cr>";
options.desc = "Format Markdown Tables";
}
{ {
key = "<leader>ot"; key = "<leader>ot";
action = "<cmd>lua require('obsidian').util.toggle_checkbox()<cr>"; action = "<cmd>lua require('obsidian').util.toggle_checkbox()<cr>";

View File

@ -13,9 +13,9 @@
svelte.enable = true; svelte.enable = true;
marksman.enable = true; marksman.enable = true;
ltex = { ltex = {
enable = true; enable = false;
settings = { settings = {
enabled = true; enabled = false;
language = "en"; language = "en";
}; };
}; };

View File

@ -17,4 +17,13 @@ let
notif "caffeine" "$message" notif "caffeine" "$message"
''; '';
in { home.packages = [ caffeine-status caffeine ]; } caffeine-status-icon = pkgs.writeShellScriptBin "caffeine-status-icon" ''
status=$(caffeine-status)
if [[ $status == "active" ]]; then
echo "󰅶"
else
echo "󰾪"
fi
'';
in { home.packages = [ caffeine-status caffeine caffeine-status-icon ]; }

View File

@ -24,11 +24,27 @@ let
''; '';
night-shift-status = pkgs.writeShellScriptBin "night-shift-status" '' night-shift-status = pkgs.writeShellScriptBin "night-shift-status" ''
if pgrep wlsunset; then if [[ $(pgrep wlsunset) ]]; then
echo "1" echo "1"
else else
echo "0" echo "0"
fi fi
''; '';
in { home.packages = [ night-shift-on night-shift-off night-shift-toggle night-shift-status ]; } night-shift-status-icon =
pkgs.writeShellScriptBin "night-shift-status-icon" ''
if [[ $(pgrep wlsunset) ]]; then
echo "󰖔"
else
echo "󰖕"
fi
'';
in {
home.packages = [
night-shift-on
night-shift-off
night-shift-toggle
night-shift-status
night-shift-status-icon
];
}

View File

@ -1,7 +1,6 @@
{ {
services.udiskie = { services.udiskie = {
enable = true; enable = true;
tray = "always";
notify = true; notify = true;
automount = true; automount = true;
}; };

View File

@ -33,8 +33,16 @@
height = 44; height = 44;
modules-left = [ "custom/logo" "hyprland/window" ]; modules-left = [ "custom/logo" "hyprland/window" ];
modules-center = [ "hyprland/workspaces" ]; modules-center = [ "hyprland/workspaces" ];
modules-right = modules-right = [
[ "tray" "backlight" "pulseaudio" "battery" "clock" "custom/power" ]; "tray"
"backlight"
"pulseaudio"
"custom/caffeine"
"custom/night-shift"
"battery"
"clock"
"custom/power"
];
"wlr/taskbar" = { "wlr/taskbar" = {
format = "{icon}"; format = "{icon}";
@ -124,14 +132,20 @@
tooltip = false; tooltip = false;
on-click = "powermenu"; on-click = "powermenu";
}; };
# "custom/caffeine": { "custom/caffeine" = {
# "format": "{}", format = "{}";
# "max-length": 5, max-length = 5;
# "interval": 10, interval = 10;
# "exec": "caffeine-status-icon", exec = "caffeine-status-icon";
# "exec-if": "pgrep spotify", # exec-if = "pgrep spotify";
# "return-type": "" # return-type = "";
#} };
"custom/night-shift" = {
format = "{}";
max-length = 5;
interval = 10;
exec = "night-shift-status-icon";
};
backlight = { backlight = {
device = "nvidia_0"; device = "nvidia_0";
format = "{icon}"; format = "{icon}";
@ -218,6 +232,8 @@
#memory, #memory,
#custom-power, #custom-power,
#custom-caffeine,
#custom-night-shift,
#battery, #battery,
#backlight, #backlight,
#pulseaudio, #pulseaudio,

View File

@ -78,6 +78,7 @@
optipng optipng
pfetch pfetch
usbutils usbutils
pandoc
# Just cool # Just cool
peaclock peaclock

View File

@ -1,19 +1,12 @@
{ lib, ... }: { { lib, ... }: {
options = { options = {
var = { var = {
hostname = lib.mkOption {
type = lib.types.string;
default = "";
description = "";
};
hostname = lib.mkOption { hostname = lib.mkOption {
type = lib.types.string; type = lib.types.string;
default = "nixy"; default = "nixy";
description = "Hostname"; description = "Hostname";
}; };
username = lib.mkOption { username = lib.mkOption {
type = lib.types.string; type = lib.types.string;
default = "user"; default = "user";
@ -26,7 +19,6 @@
description = "Home directory (/home/user)"; description = "Home directory (/home/user)";
}; };
configDirectory = lib.mkOption { configDirectory = lib.mkOption {
type = lib.types.string; type = lib.types.string;
default = "/home/user/.config/nixos"; default = "/home/user/.config/nixos";
@ -78,13 +70,15 @@
sops = lib.mkOption { sops = lib.mkOption {
type = lib.types.bool; type = lib.types.bool;
default = false; default = false;
description = "Enable sops (You should set up sops for your own config)"; description =
"Enable sops (You should set up sops for your own config)";
}; };
obsidian = lib.mkOption { obsidian = lib.mkOption {
type = lib.types.bool; type = lib.types.bool;
default = false; default = false;
description = "Enable obsidian.nvim (You should set up obsidian.nvim for your own config)"; description =
"Enable obsidian.nvim (You should set up obsidian.nvim for your own config)";
}; };
tailscale = lib.mkOption { tailscale = lib.mkOption {
@ -124,7 +118,7 @@
type = lib.types.string; type = lib.types.string;
default = "FiraCode Nerd Font Mono"; default = "FiraCode Nerd Font Mono";
description = "Monospace Font"; description = "Monospace Font";
}; };
}; };
}; };