diff --git a/flake.lock b/flake.lock index a61bf0e..ee6aeec 100644 --- a/flake.lock +++ b/flake.lock @@ -21,12 +21,33 @@ "type": "github" } }, + "Hyswipe": { + "inputs": { + "hyprland": [ + "hyprland" + ], + "systems": "systems_2" + }, + "locked": { + "lastModified": 1739005621, + "narHash": "sha256-IMipnrVIfjVNFm/pV4kI0y27gVBSTjxWNgRTO6lksjQ=", + "owner": "KZDKM", + "repo": "Hyswipe", + "rev": "cd6f1857e2991ac123b7c16e73a7f6e66244052a", + "type": "github" + }, + "original": { + "owner": "KZDKM", + "repo": "Hyswipe", + "type": "github" + } + }, "agenix": { "inputs": { "darwin": "darwin", "home-manager": "home-manager", "nixpkgs": "nixpkgs", - "systems": "systems_2" + "systems": "systems_3" }, "locked": { "lastModified": 1747575206, @@ -83,11 +104,11 @@ ] }, "locked": { - "lastModified": 1747864449, - "narHash": "sha256-PIjVAWghZhr3L0EFM2UObhX84UQxIACbON0IC0zzSKA=", + "lastModified": 1745357003, + "narHash": "sha256-jYwzQkv1r7HN/4qrAuKp+NR4YYNp2xDrOX5O9YVqkWo=", "owner": "hyprwm", "repo": "aquamarine", - "rev": "389372c5f4dc1ac0e7645ed29a35fd6d71672ef5", + "rev": "a19cf76ee1a15c1c12083fa372747ce46387289f", "type": "github" }, "original": { @@ -101,11 +122,11 @@ "nixpkgs": "nixpkgs_3" }, "locked": { - "lastModified": 1748080874, - "narHash": "sha256-sUebEzAkrY8Aq5G0GHFyRddmRNGP/a2iTtV7ISNvi/c=", + "lastModified": 1747519437, + "narHash": "sha256-uv9Wv59d+mckS2CkorOF484wp2G5TNGijdoBZ5RkAk0=", "owner": "catppuccin", "repo": "nix", - "rev": "0ba11b12be81f0849a89ed17ab635164ea8f0112", + "rev": "3ba714046ee32373e88166e6e9474d6ae6a5b734", "type": "github" }, "original": { @@ -255,7 +276,7 @@ }, "flake-utils": { "inputs": { - "systems": "systems_6" + "systems": "systems_7" }, "locked": { "lastModified": 1731533236, @@ -337,11 +358,11 @@ ] }, "locked": { - "lastModified": 1747978958, - "narHash": "sha256-pQQnbxWpY3IiZqgelXHIe/OAE/Yv4NSQq7fch7M6nXQ=", + "lastModified": 1747688838, + "narHash": "sha256-FZq4/3OtGV/cti9Vccsy2tGSUrxTO4hkDF9oeGRTen4=", "owner": "nix-community", "repo": "home-manager", - "rev": "7419250703fd5eb50e99bdfb07a86671939103ea", + "rev": "45c2985644b60ab64de2a2d93a4d132ecb87cf66", "type": "github" }, "original": { @@ -440,15 +461,15 @@ "nixpkgs" ], "pre-commit-hooks": "pre-commit-hooks", - "systems": "systems_3", + "systems": "systems_4", "xdph": "xdph" }, "locked": { - "lastModified": 1748112063, - "narHash": "sha256-+1wJYkfvw6weJJ2xTbcqCfhLR/DNy4ymTHsF8I8uj/g=", + "lastModified": 1747610850, + "narHash": "sha256-eGOtDlq3h+r/X/j4oSNo6cmQlt67TVolgUJMnGKTRt4=", "ref": "refs/heads/main", - "rev": "28c9122adbb9cba2ba19ad723eb0f36c19b21f2d", - "revCount": 6134, + "rev": "eb3b38d40baca5c05ddbc1507b3d3f02a0ccb164", + "revCount": 6127, "submodules": true, "type": "git", "url": "https://github.com/hyprwm/Hyprland" @@ -593,11 +614,11 @@ ] }, "locked": { - "lastModified": 1747484975, - "narHash": "sha256-+LAQ81HBwG0lwshHlWe0kfWg4KcChIPpnwtnwqmnoEU=", + "lastModified": 1746655412, + "narHash": "sha256-kVQ0bHVtX6baYxRWWIh4u3LNJZb9Zcm2xBeDPOGz5BY=", "owner": "hyprwm", "repo": "hyprlang", - "rev": "163c83b3db48a17c113729c220a60b94596c9291", + "rev": "557241780c179cf7ef224df392f8e67dab6cef83", "type": "github" }, "original": { @@ -611,7 +632,7 @@ "hyprutils": "hyprutils_2", "hyprwayland-scanner": "hyprwayland-scanner_2", "nixpkgs": "nixpkgs_5", - "systems": "systems_4" + "systems": "systems_5" }, "locked": { "lastModified": 1747584204, @@ -633,7 +654,7 @@ "hyprutils": "hyprutils_3", "hyprwayland-scanner": "hyprwayland-scanner_3", "nixpkgs": "nixpkgs_6", - "systems": "systems_5" + "systems": "systems_6" }, "locked": { "lastModified": 1746481417, @@ -736,11 +757,11 @@ ] }, "locked": { - "lastModified": 1747584298, - "narHash": "sha256-PH9qZqWLHvSBQiUnA0NzAyQA3tu2no2z8kz0ZeHWj4w=", + "lastModified": 1739870480, + "narHash": "sha256-SiDN5BGxa/1hAsqhgJsS03C3t2QrLgBT8u+ENJ0Qzwc=", "owner": "hyprwm", "repo": "hyprwayland-scanner", - "rev": "e511882b9c2e1d7a75d45d8fddd2160daeafcbc3", + "rev": "206367a08dc5ac4ba7ad31bdca391d098082e64b", "type": "github" }, "original": { @@ -835,11 +856,11 @@ "nixpkgs": "nixpkgs_7" }, "locked": { - "lastModified": 1747965612, - "narHash": "sha256-koAXv7H+cZBMOZkOekO7AIan0e75/ptPqkiOkO3x9lM=", + "lastModified": 1747620037, + "narHash": "sha256-M5yyl1Cp5rolwGBuCEKXG6qJj9lao16lshqPF83z0qs=", "owner": "fufexan", "repo": "nix-gaming", - "rev": "10e16d55b14d6d2f86d636d546be5130c0827933", + "rev": "5d7985a2d5c877f6a276a2b024fff6bb2995ff24", "type": "github" }, "original": { @@ -850,11 +871,11 @@ }, "nixos-hardware": { "locked": { - "lastModified": 1747900541, - "narHash": "sha256-dn64Pg9xLETjblwZs9Euu/SsjW80pd6lr5qSiyLY1pg=", + "lastModified": 1747684167, + "narHash": "sha256-l6jbonaboCBlB8lCjBkrqgh2zEnvt6F3f4dOU/8CLd4=", "owner": "nixos", "repo": "nixos-hardware", - "rev": "11f2d9ea49c3e964315215d6baa73a8d42672f06", + "rev": "e8f38b2c19c0647e39021c3d47172ff5469af8a9", "type": "github" }, "original": { @@ -927,11 +948,11 @@ }, "nixpkgs_11": { "locked": { - "lastModified": 1748026106, - "narHash": "sha256-6m1Y3/4pVw1RWTsrkAK2VMYSzG4MMIj7sqUy7o8th1o=", + "lastModified": 1747542820, + "narHash": "sha256-GaOZntlJ6gPPbbkTLjbd8BMWaDYafhuuYRNrxCGnPJw=", "owner": "nixos", "repo": "nixpkgs", - "rev": "063f43f2dbdef86376cc29ad646c45c46e93234c", + "rev": "292fa7d4f6519c074f0a50394dbbe69859bb6043", "type": "github" }, "original": { @@ -1039,11 +1060,11 @@ }, "nixpkgs_8": { "locked": { - "lastModified": 1748026106, - "narHash": "sha256-6m1Y3/4pVw1RWTsrkAK2VMYSzG4MMIj7sqUy7o8th1o=", + "lastModified": 1747542820, + "narHash": "sha256-GaOZntlJ6gPPbbkTLjbd8BMWaDYafhuuYRNrxCGnPJw=", "owner": "NixOS", "repo": "nixpkgs", - "rev": "063f43f2dbdef86376cc29ad646c45c46e93234c", + "rev": "292fa7d4f6519c074f0a50394dbbe69859bb6043", "type": "github" }, "original": { @@ -1116,11 +1137,11 @@ "treefmt-nix": "treefmt-nix" }, "locked": { - "lastModified": 1748115910, - "narHash": "sha256-XrtByWu6NjrGq1nysW4XsliVLslZXXKzCKHSC6QM5dY=", + "lastModified": 1747683907, + "narHash": "sha256-dgEK4d1QPNFhv0s5s9lpvEWOVBlRZENp7TVh8V8qYDU=", "owner": "nix-community", "repo": "NUR", - "rev": "24dcce023477b994838e387ae042c6b93a749288", + "rev": "64046fedb710701f87e5e86390b4dbe77f1d733b", "type": "github" }, "original": { @@ -1179,6 +1200,7 @@ "root": { "inputs": { "Hyprspace": "Hyprspace", + "Hyswipe": "Hyswipe", "agenix": "agenix", "alejandra": "alejandra", "catppuccin": "catppuccin", @@ -1227,21 +1249,6 @@ } }, "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" - } - }, - "systems_3": { "locked": { "lastModified": 1689347949, "narHash": "sha256-12tWmuL2zgBgZkdoB6qXZsgJEH9LR3oUgpaQq2RbI80=", @@ -1256,6 +1263,21 @@ "type": "github" } }, + "systems_3": { + "locked": { + "lastModified": 1681028828, + "narHash": "sha256-Vy1rq5AaRuLzOxct8nz4T6wlgyUR7zLU309k9mBC768=", + "owner": "nix-systems", + "repo": "default", + "rev": "da67096a3b9bf56a91d16901293e51ba5b49a27e", + "type": "github" + }, + "original": { + "owner": "nix-systems", + "repo": "default", + "type": "github" + } + }, "systems_4": { "locked": { "lastModified": 1689347949, @@ -1287,6 +1309,21 @@ } }, "systems_6": { + "locked": { + "lastModified": 1689347949, + "narHash": "sha256-12tWmuL2zgBgZkdoB6qXZsgJEH9LR3oUgpaQq2RbI80=", + "owner": "nix-systems", + "repo": "default-linux", + "rev": "31732fcf5e8fea42e59c2488ad31a0e651500f68", + "type": "github" + }, + "original": { + "owner": "nix-systems", + "repo": "default-linux", + "type": "github" + } + }, + "systems_7": { "locked": { "lastModified": 1681028828, "narHash": "sha256-Vy1rq5AaRuLzOxct8nz4T6wlgyUR7zLU309k9mBC768=", diff --git a/flake.nix b/flake.nix index 5371b3e..2e189ed 100644 --- a/flake.nix +++ b/flake.nix @@ -21,6 +21,10 @@ url = "github:KZDKM/Hyprspace"; inputs.hyprland.follows = "hyprland"; # Hyprspace uses latest Hyprland. We declare this to keep them in sync. }; + Hyswipe = { + url = "github:KZDKM/Hyswipe"; + inputs.hyprland.follows = "hyprland"; # Hyswipe uses latest Hyprland. We declare this to keep them in sync. + }; nixpkgs.url = "github:NixOS/nixpkgs/nixos-unstable"; nur.url = "github:nix-community/NUR"; nixos-hardware.url = "github:nixos/nixos-hardware"; diff --git a/modules/core/sshd.nix b/modules/core/sshd.nix index 6e1a9e8..012b44a 100644 --- a/modules/core/sshd.nix +++ b/modules/core/sshd.nix @@ -11,7 +11,7 @@ }; }; - networking.firewall.allowedTCPPorts = config.services.openssh.ports; + networking.firewall.allowedTCPPorts = [ config.services.openssh.ports ]; users.users.liv.openssh.authorizedKeys.keys = [ "ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIGXi00z/rxVrWLKgYr+tWIsbHsSQO75hUMSTThNm5wUw liv@sakura" # main laptop diff --git a/modules/home/hyprland/config.nix b/modules/home/hyprland/config.nix index bfcb509..8484878 100644 --- a/modules/home/hyprland/config.nix +++ b/modules/home/hyprland/config.nix @@ -214,7 +214,7 @@ bind = [ # keybindings "$mainMod, Return, exec, kitty" - "$mainMod SHIFT, Return, exec, [float; center; size 950 650] kitty" + "$mainMod, Backspace, exec, [float; center; size 950 650] kitty" "$mainMod, Q, killactive," "$mainMod, F, fullscreen, 0" # set 1 to 0 to set full screen without waybar "$mainMod, Space, togglefloating," @@ -222,11 +222,8 @@ "SUPER SHIFT, L, exec, hyprlock" "$mainMod, E, exec, thunar" "$mainMod SHIFT, B, exec, pkill -SIGUSR1 .waybar-wrapped" - "$mainMod, C,exec, hyprpicker -a" - "$mainMod, W,exec, wallpaper-picker" - "$mainMod, G, togglegroup," - "SUPER, N, changegroupactive, f" - "SUPER, P, changegroupactive, b" + "$mainMod, C ,exec, hyprpicker -a" + "$mainMod, W ,exec, wallpaper-picker" # clipboard manager "$mainMod SHIFT, V, exec, cliphist list | bemenu -l 5 --ignorecase | cliphist decode | wl-copy" @@ -238,7 +235,7 @@ "$mainMod SHIFT, T, exec, thunderbird" "$mainMod SHIFT, E, exec, element-desktop" "$mainMod SHIFT, P, exec, pavucontrol-qt" - "$mainMod SHIFT, N ,exec, notes" + "$mainMod SHIFT, N ,exec, notes" # should be added by scripts/custom packages "$mainMod, N,exec, swaync-client -t" # screenshot @@ -319,11 +316,6 @@ "$mainMod, mouse:273, resizewindow" ]; - workspace = [ - "w[tv1], gapsout:0, gapsin:0" - "f[1], gapsout:0, gapsin:0" - ]; - # windowrule windowrule = [ "float,title:^(float_kitty)$" @@ -334,10 +326,6 @@ "move 0 0,title:^(Librewolf — Sharing Indicator)$" "size 700 450,title:^(Volume Control)$" "move 40 55%,title:^(Volume Control)$" - "bordersize 0, floating:0, onworkspace:w[tv1]" - "rounding 0, floating:0, onworkspace:w[tv1]" - "bordersize 0, floating:0, onworkspace:f[1]" - "rounding 0, floating:0, onworkspace:f[1]" ]; # windowrulev2 diff --git a/modules/home/scripts/scripts.nix b/modules/home/scripts/scripts.nix index a999f8f..30afa56 100644 --- a/modules/home/scripts/scripts.nix +++ b/modules/home/scripts/scripts.nix @@ -1,23 +1,37 @@ { pkgs, ... }: let + wall-change = pkgs.writeShellScriptBin "wall-change" (builtins.readFile ./scripts/wall-change.sh); + wallpaper-picker = pkgs.writeShellScriptBin "wallpaper-picker" ( + builtins.readFile ./scripts/wallpaper-picker.sh + ); runbg = pkgs.writeShellScriptBin "runbg" (builtins.readFile ./scripts/runbg.sh); + notes = pkgs.writeShellScriptBin "notes" (builtins.readFile ./scripts/notes.sh); grabtext = pkgs.writeShellScriptBin "grabtext" (builtins.readFile ./scripts/grabtext.sh); unfuck = pkgs.writeShellScriptBin "unfuck" (builtins.readFile ./scripts/unfuck.sh); + toggle_blur = pkgs.writeScriptBin "toggle_blur" (builtins.readFile ./scripts/toggle_blur.sh); toggle_oppacity = pkgs.writeScriptBin "toggle_oppacity" ( builtins.readFile ./scripts/toggle_oppacity.sh ); + ascii = pkgs.writeScriptBin "ascii" (builtins.readFile ./scripts/ascii.sh); in { home.packages = with pkgs; [ + wall-change + wallpaper-picker + + toggle_blur + toggle_oppacity + runbg + notes grabtext unfuck - toggle_blur - toggle_oppacity + ascii + ]; } diff --git a/modules/home/scripts/scripts/compress.sh b/modules/home/scripts/scripts/compress.sh new file mode 100755 index 0000000..5c31e62 --- /dev/null +++ b/modules/home/scripts/scripts/compress.sh @@ -0,0 +1,10 @@ +#!/usr/bin/env bash + +if (( $# == 1 )) then + # echo -ne "Archive name: " + # read name + # tar -cvzf "$name.tar.gz" $1 + tar -cvzf "$1.tar.gz" $1 +else + echo "Wrong number of arguments..." +fi \ No newline at end of file diff --git a/modules/home/scripts/scripts/extract.sh b/modules/home/scripts/scripts/extract.sh new file mode 100755 index 0000000..ecc25dd --- /dev/null +++ b/modules/home/scripts/scripts/extract.sh @@ -0,0 +1,6 @@ +#!/usr/bin/env bash + +for i in "$@" ; do + tar -xvzf $i + break +done diff --git a/modules/home/scripts/scripts/maxfetch.sh b/modules/home/scripts/scripts/maxfetch.sh new file mode 100755 index 0000000..486f411 --- /dev/null +++ b/modules/home/scripts/scripts/maxfetch.sh @@ -0,0 +1,53 @@ +#!/usr/bin/env bash + +unicode=" " +version="1.2.0" + +_black=$(tput setaf 0) +red=$(tput setaf 1) +green=$(tput setaf 2) +yellow=$(tput setaf 3) +blue=$(tput setaf 4) +magenta=$(tput setaf 5) +cyan=$(tput setaf 6) +_white=$(tput setaf 7) +_bright=$(tput bold) +normal=$(tput sgr0) +_underline=$(tput smul) + +up=$(uptime | awk -F'( |,|:)+' '{ + d=h=m=0; + if ($7=="min") + m=$6; + else { + if ($7~/^day/) { d=$6; h=$8; m=$9} + else {h=$6;m=$7} + } + } + { print h+0,"h",m+0,"m" } +') +up=$(sed -e "s/ h/h/g" <<< ${up}) +up=$(sed -e "s/ m/m/g" <<< ${up}) + +pkgs=$(nix-store --query --requisites /run/current-system | wc -l) + +fetch() { + echo "${cyan}$(tput bold) _ ___ ____ ____ ${normal}$(tput sgr0)" + echo "${cyan}$(tput bold) / |/ (_)_ __/ __ \/ __/ ${normal}$(tput sgr0)" + echo "${cyan}$(tput bold) / / /\ \ / /_/ /\ \ ${normal}$(tput sgr0)" + echo "${cyan}$(tput bold) /_/|_/_//_\_"'\\'"____/___/ ${normal}$(tput sgr0)" + echo "" + echo " ╭─────────────╮ " + echo " │ ${red} ${normal} user │ ${red}$(whoami)${normal}" + echo " │ ${yellow} ${normal} distro │ ${yellow}$(sed -nE "s@PRETTY_NAME=\"([^\"]*)\"@\1@p" /etc/os-release)${normal} " + echo " │ ${green} ${normal} kernel │ ${green}$(uname -r)${normal} " + echo " │ ${cyan}󱂬 ${normal} de/wm │ ${cyan}$XDG_CURRENT_DESKTOP${normal} " + echo " │ ${blue} ${normal} uptime │ ${blue}${up}${normal} " + echo " │ ${magenta} ${normal} shell │ ${magenta}$(echo ${SHELL##*/})${normal} " + echo " │ ${red}󰏖 ${normal} pkgs │ ${red}${pkgs}${normal} " + echo " ├─────────────┤ " + echo " │ ${_white} ${normal}colors │${_white}$unicode${normal}${red}$unicode${normal}${yellow}$unicode${normal}${green}$unicode${normal}${cyan}$unicode${normal}${blue}$unicode${normal}${magenta}$unicode${normal}${_black}$unicode${normal}" + echo " ╰─────────────╯ " +} + +fetch && exit 0 \ No newline at end of file diff --git a/modules/home/scripts/scripts/music.sh b/modules/home/scripts/scripts/music.sh new file mode 100755 index 0000000..4cebae1 --- /dev/null +++ b/modules/home/scripts/scripts/music.sh @@ -0,0 +1,10 @@ +#!/usr/bin/env bash + +if (ps aux | grep audacious | grep -v grep > /dev/null) then + pkill audacious +else + hyprctl dispatch exec "[workspace 5 silent] audacious -t" + sleep 0.5 + audtool playlist-repeat-status |grep "on" || audtool playlist-repeat-toggle + audtool playlist-shuffle-status|grep "on" || audtool playlist-shuffle-toggle +fi \ No newline at end of file diff --git a/modules/home/scripts/scripts/vm-start.sh b/modules/home/scripts/scripts/vm-start.sh new file mode 100755 index 0000000..ba2fd15 --- /dev/null +++ b/modules/home/scripts/scripts/vm-start.sh @@ -0,0 +1,11 @@ +#!/usr/bin/env zsh + +# VM name +vm_name="win10" +export LIBVIRT_DEFAULT_URI="qemu:///system" + +# change workspace +hyprctl dispatch workspace 6 + +virsh start ${vm_name} +virt-viewer -f -w -a ${vm_name} \ No newline at end of file