From a53ffaea44d9c99c7f4352d24b503cb32f79dc94 Mon Sep 17 00:00:00 2001 From: Julien Malka Date: Mon, 12 Feb 2024 11:33:21 +0100 Subject: [PATCH] add machine --- flake.lock | 224 +++++++++------------- home-manager-modules/hyprland/default.nix | 196 +++++++++++++++++++ lib/luj.nix | 6 + machines/enigma/default.nix | 27 +-- 4 files changed, 303 insertions(+), 150 deletions(-) create mode 100644 home-manager-modules/hyprland/default.nix diff --git a/flake.lock b/flake.lock index 9aeb961..8ca35db 100644 --- a/flake.lock +++ b/flake.lock @@ -15,11 +15,11 @@ ] }, "locked": { - "lastModified": 1698258239, - "narHash": "sha256-qnhoYYIJ0L/P7H/f56lQUEvpzNlXh4sxuHpRERV+B44=", + "lastModified": 1705617092, + "narHash": "sha256-n9PK4O4X4S1JkwpkMuYm1wHZYJzRqif8g3RuVIPD+rY=", "owner": "zhaofengli", "repo": "attic", - "rev": "e9918bc6be268da6fa97af6ced15193d8a0421c0", + "rev": "fbe252a5c21febbe920c025560cbd63b20e24f3b", "type": "github" }, "original": { @@ -87,26 +87,17 @@ }, "crane": { "inputs": { - "flake-compat": [ - "attic", - "flake-compat" - ], - "flake-utils": [ - "attic", - "flake-utils" - ], "nixpkgs": [ "attic", "nixpkgs" - ], - "rust-overlay": "rust-overlay" + ] }, "locked": { - "lastModified": 1677892403, - "narHash": "sha256-/Wi0L1spSWLFj+UQxN3j0mPYMoc7ZoAujpUF/juFVII=", + "lastModified": 1702918879, + "narHash": "sha256-tWJqzajIvYcaRWxn+cLUB9L9Pv4dQ3Bfit/YjU5ze3g=", "owner": "ipetkov", "repo": "crane", - "rev": "105e27adb70a9890986b6d543a67761cbc1964a2", + "rev": "7195c00c272fdd92fc74e7d5a0a2844b9fadb2fb", "type": "github" }, "original": { @@ -123,11 +114,11 @@ ] }, "locked": { - "lastModified": 1699218802, - "narHash": "sha256-5l0W4Q7z7A4BCstaF5JuBqXOVrZ3Vqst5+hUnP7EdUc=", + "lastModified": 1704819371, + "narHash": "sha256-oFUfPWrWGQTZaCM3byxwYwrMLwshDxVGOrMH5cVP/X8=", "owner": "ipetkov", "repo": "crane", - "rev": "2d6c2aaff5a05e443eb15efddc21f9c73720340c", + "rev": "5c234301a1277e4cc759c23a2a7a00a06ddd7111", "type": "github" }, "original": { @@ -176,11 +167,11 @@ "nixpkgs-stable": "nixpkgs-stable" }, "locked": { - "lastModified": 1701829164, - "narHash": "sha256-1b09sNIyYcUsXRR2rk3yxKDPCtnKrsM81d8FRXs96HU=", + "lastModified": 1705683304, + "narHash": "sha256-C9Ghs+660LMmAzO16e3pAssXWKcDRQcTorkY72ofaXY=", "owner": "nix-community", "repo": "emacs-overlay", - "rev": "384abdc7504cb95d3df0ea1f72f01f1b5b2b039f", + "rev": "e812fbf7ec5c1e9fa44fb74a3f456cdf68fb7a4f", "type": "github" }, "original": { @@ -395,11 +386,11 @@ ] }, "locked": { - "lastModified": 1698882062, - "narHash": "sha256-HkhafUayIqxXyHH1X8d9RDl1M2CkFgZLjKD3MzabiEo=", + "lastModified": 1704982712, + "narHash": "sha256-2Ptt+9h8dczgle2Oo6z5ni5rt/uLMG47UFTR1ry/wgg=", "owner": "hercules-ci", "repo": "flake-parts", - "rev": "8c9fa2545007b49a5db5f650ae91f227672c3877", + "rev": "07f6395285469419cf9d078f59b5b49993198c00", "type": "github" }, "original": { @@ -413,11 +404,11 @@ "nixpkgs-lib": "nixpkgs-lib" }, "locked": { - "lastModified": 1685662779, - "narHash": "sha256-cKDDciXGpMEjP1n6HlzKinN0H+oLmNpgeCTzYnsA2po=", + "lastModified": 1701473968, + "narHash": "sha256-YcVE5emp1qQ8ieHUnxt1wCZCC3ZfAS+SRRWZ2TMda7E=", "owner": "hercules-ci", "repo": "flake-parts", - "rev": "71fb97f0d875fd4de4994dfb849f2c75e17eb6c3", + "rev": "34fed993f1674c8d06d58b37ce1e0fe5eebcb9f5", "type": "github" }, "original": { @@ -446,11 +437,11 @@ "systems": "systems" }, "locked": { - "lastModified": 1701680307, - "narHash": "sha256-kAuep2h5ajznlPMD9rnQyffWG8EM/C73lejGofXvdM8=", + "lastModified": 1705309234, + "narHash": "sha256-uNRRNRKmJyCRC/8y1RqBkqWBLM034y4qN7EprSdmgyA=", "owner": "numtide", "repo": "flake-utils", - "rev": "4022d587cbbfd70fe950c1e2083a02621806a725", + "rev": "1ef2e671c3b0c19053962c07dbda38332dcebf26", "type": "github" }, "original": { @@ -464,11 +455,11 @@ "systems": "systems_2" }, "locked": { - "lastModified": 1694529238, - "narHash": "sha256-zsNZZGTGnMOf9YpHKJqMSsa0dXbfmxeoJ7xHlrt+xmY=", + "lastModified": 1705309234, + "narHash": "sha256-uNRRNRKmJyCRC/8y1RqBkqWBLM034y4qN7EprSdmgyA=", "owner": "numtide", "repo": "flake-utils", - "rev": "ff7b65b44d01cf9ba6a71320833626af21126384", + "rev": "1ef2e671c3b0c19053962c07dbda38332dcebf26", "type": "github" }, "original": { @@ -482,11 +473,11 @@ "systems": "systems_3" }, "locked": { - "lastModified": 1694529238, - "narHash": "sha256-zsNZZGTGnMOf9YpHKJqMSsa0dXbfmxeoJ7xHlrt+xmY=", + "lastModified": 1705309234, + "narHash": "sha256-uNRRNRKmJyCRC/8y1RqBkqWBLM034y4qN7EprSdmgyA=", "owner": "numtide", "repo": "flake-utils", - "rev": "ff7b65b44d01cf9ba6a71320833626af21126384", + "rev": "1ef2e671c3b0c19053962c07dbda38332dcebf26", "type": "github" }, "original": { @@ -539,11 +530,11 @@ ] }, "locked": { - "lastModified": 1660459072, - "narHash": "sha256-8DFJjXG8zqoONA1vXtgeKXy68KdJL5UaXR8NtVMUbx8=", + "lastModified": 1703887061, + "narHash": "sha256-gGPa9qWNc6eCXT/+Z5/zMkyYOuRZqeFZBDbopNZQkuY=", "owner": "hercules-ci", "repo": "gitignore.nix", - "rev": "a20de23b925fd8264fd7fad6454652e142fd7f73", + "rev": "43e1aa1308018f37118e34d3a9cb4f5e75dc11d5", "type": "github" }, "original": { @@ -559,11 +550,11 @@ ] }, "locked": { - "lastModified": 1700814205, - "narHash": "sha256-lWqDPKHRbQfi+zNIivf031BUeyciVOtwCwTjyrhDB5g=", + "lastModified": 1705659542, + "narHash": "sha256-WA3xVfAk1AYmFdwghT7mt/erYpsU6JPu9mdTEP/e9HQ=", "owner": "nix-community", "repo": "home-manager", - "rev": "aeb2232d7a32530d3448318790534d196bf9427a", + "rev": "10cd9c53115061aa6a0a90aad0b0dde6a999cdb9", "type": "github" }, "original": { @@ -578,11 +569,11 @@ "nixpkgs": "nixpkgs_4" }, "locked": { - "lastModified": 1701071203, - "narHash": "sha256-lQywA7QU/vzTdZ1apI0PfgCWNyQobXUYghVrR5zuIeM=", + "lastModified": 1705660020, + "narHash": "sha256-1tOuNh+UbiZlaC8RrpQzzypgnLBC67eRlBunfkE4sbQ=", "owner": "nix-community", "repo": "home-manager", - "rev": "db1878f013b52ba5e4034db7c1b63e8d04173a86", + "rev": "2064348e555b6aa963da6372a8f14e6acb80a176", "type": "github" }, "original": { @@ -616,14 +607,14 @@ "flake-utils": "flake-utils_4", "nixpkgs": "nixpkgs_5", "pre-commit-hooks-nix": "pre-commit-hooks-nix", - "rust-overlay": "rust-overlay_2" + "rust-overlay": "rust-overlay" }, "locked": { - "lastModified": 1700811440, - "narHash": "sha256-wrJpW3JCJ9egZpYUMne4c3PFEp+vmkTj5VFpPAT4xdY=", + "lastModified": 1705341977, + "narHash": "sha256-gDV6qK2yBM6o/m09RVDXiBmwXx5oy3H5dO4vsiHxoaA=", "owner": "nix-community", "repo": "lanzaboote", - "rev": "cbafc8f8fe388fba6f2c27224276f5f984f9ae47", + "rev": "5667bbc1f40df129dc093ad73a29e0c39c3dcbee", "type": "github" }, "original": { @@ -688,11 +679,11 @@ "ws-butler": "ws-butler" }, "locked": { - "lastModified": 1697814738, - "narHash": "sha256-mwQmykamvRuHmO6I2VTm8+TOIhhmgy2g5YrMjoCHawY=", + "lastModified": 1701264882, + "narHash": "sha256-MBXR7x7Ua8qystlGr+lenwjQd7dsFNFpEFmtHhh10zM=", "owner": "nix-community", "repo": "nix-doom-emacs", - "rev": "c1c99cf41694440d76e31126dc394f52faeb691e", + "rev": "f7413022370f24bb53cb450bfb2803233510113e", "type": "github" }, "original": { @@ -708,11 +699,11 @@ ] }, "locked": { - "lastModified": 1700968077, - "narHash": "sha256-Lax+2g7G3Fe+ckMrHLYTl+97unbmNDmN1qS9MLBkxr4=", + "lastModified": 1705282324, + "narHash": "sha256-LnURMA7yCM5t7et9O2+2YfGQh0FKAfE5GyahNDDzJVM=", "owner": "Mic92", "repo": "nix-index-database", - "rev": "bd3aec0ecb0fdde863a7ed2c6caa220c47e22c07", + "rev": "49aaeecf41ae0a0944e2c627cb515bcde428a1d1", "type": "github" }, "original": { @@ -746,11 +737,11 @@ ] }, "locked": { - "lastModified": 1699966122, - "narHash": "sha256-zEN3ET7jfXpIKYeYh/z4xekOBOoaFS+n0q3oL3sVh+0=", + "lastModified": 1705649974, + "narHash": "sha256-5YiH326VGTW9RtY5DbWfPIZqq/wawLbWO8w8YvLTz70=", "owner": "nix-community", "repo": "nixd", - "rev": "b3bb9ea7cd3c2f07c89779a474d6468b2c11e303", + "rev": "62d3a0a21308047e84db26b2f492ff9bc0d8c75e", "type": "github" }, "original": { @@ -778,11 +769,11 @@ "nixpkgs-lib": { "locked": { "dir": "lib", - "lastModified": 1685564631, - "narHash": "sha256-8ywr3AkblY4++3lIVxmrWZFzac7+f32ZEhH/A8pNscI=", + "lastModified": 1701253981, + "narHash": "sha256-ztaDIyZ7HrTAfEEUt9AtTDNoCYxUdSd6NrRHaYOIxtk=", "owner": "NixOS", "repo": "nixpkgs", - "rev": "4f53efe34b3a8877ac923b9350c874e3dcd5dc0a", + "rev": "e92039b55bcd58469325ded85d4f58dd5a4eaf58", "type": "github" }, "original": { @@ -795,32 +786,32 @@ }, "nixpkgs-stable": { "locked": { - "lastModified": 1701540982, - "narHash": "sha256-5ajSy6ODgGmAbmymRdHnjfVnuVrACjI8wXoGVvrtvww=", + "lastModified": 1705458851, + "narHash": "sha256-uQvEhiv33Zj/Pv364dTvnpPwFSptRZgVedDzoM+HqVg=", "owner": "NixOS", "repo": "nixpkgs", - "rev": "6386d8aafc28b3a7ed03880a57bdc6eb4465491d", + "rev": "8bf65f17d8070a0a490daf5f1c784b87ee73982c", "type": "github" }, "original": { "owner": "NixOS", - "ref": "nixos-23.05", + "ref": "nixos-23.11", "repo": "nixpkgs", "type": "github" } }, "nixpkgs-stable_2": { "locked": { - "lastModified": 1685801374, - "narHash": "sha256-otaSUoFEMM+LjBI1XL/xGB5ao6IwnZOXc47qhIgJe8U=", + "lastModified": 1704874635, + "narHash": "sha256-YWuCrtsty5vVZvu+7BchAxmcYzTMfolSPP5io8+WYCg=", "owner": "NixOS", "repo": "nixpkgs", - "rev": "c37ca420157f4abc31e26f436c1145f8951ff373", + "rev": "3dc440faeee9e889fe2d1b4d25ad0f430d449356", "type": "github" }, "original": { "owner": "NixOS", - "ref": "nixos-23.05", + "ref": "nixos-23.11", "repo": "nixpkgs", "type": "github" } @@ -843,11 +834,11 @@ }, "nixpkgs_3": { "locked": { - "lastModified": 1701436327, - "narHash": "sha256-tRHbnoNI8SIM5O5xuxOmtSLnswEByzmnQcGGyNRjxsE=", + "lastModified": 1705496572, + "narHash": "sha256-rPIe9G5EBLXdBdn9ilGc0nq082lzQd0xGGe092R/5QE=", "owner": "NixOS", "repo": "nixpkgs", - "rev": "91050ea1e57e50388fa87a3302ba12d188ef723a", + "rev": "842d9d80cfd4560648c785f8a4e6f3b096790e19", "type": "github" }, "original": { @@ -859,11 +850,11 @@ }, "nixpkgs_4": { "locked": { - "lastModified": 1700794826, - "narHash": "sha256-RyJTnTNKhO0yqRpDISk03I/4A67/dp96YRxc86YOPgU=", + "lastModified": 1705316053, + "narHash": "sha256-J2Ey5mPFT8gdfL2XC0JTZvKaBw/b2pnyudEXFvl+dQM=", "owner": "NixOS", "repo": "nixpkgs", - "rev": "5a09cb4b393d58f9ed0d9ca1555016a8543c2ac8", + "rev": "c3e128f3c0ecc1fb04aef9f72b3dcc2f6cecf370", "type": "github" }, "original": { @@ -875,11 +866,11 @@ }, "nixpkgs_5": { "locked": { - "lastModified": 1699354722, - "narHash": "sha256-abmqUReg4PsyQSwv4d0zjcWpMHrd3IFJiTb2tZpfF04=", + "lastModified": 1705249824, + "narHash": "sha256-ZLPa6YWHeX+/yzaxU7uMWq9eMMncffrzkgOXe6AODMU=", "owner": "NixOS", "repo": "nixpkgs", - "rev": "cfbb29d76949ae53c457f152c52c173ea4bdd862", + "rev": "0c741cd9fbdc435b7ca88e17efc371b48e7c23b8", "type": "github" }, "original": { @@ -906,11 +897,11 @@ }, "nixpkgs_7": { "locked": { - "lastModified": 1701058557, - "narHash": "sha256-fux7HlrnoNs93MN0kET4AfiYwg/expoasndRCFeDRyk=", + "lastModified": 1705458851, + "narHash": "sha256-uQvEhiv33Zj/Pv364dTvnpPwFSptRZgVedDzoM+HqVg=", "owner": "NixOS", "repo": "nixpkgs", - "rev": "070b5cf9f70bc7ef2dfd739a1f7d6c563fe64bd1", + "rev": "8bf65f17d8070a0a490daf5f1c784b87ee73982c", "type": "github" }, "original": { @@ -922,11 +913,11 @@ }, "nixpkgs_8": { "locked": { - "lastModified": 1700924682, - "narHash": "sha256-7vP/KtJdKSWnghtPVDoE7MD+rCY3gFj68NwOMNdrGbs=", + "lastModified": 1701156937, + "narHash": "sha256-jpMJOFvOTejx211D8z/gz0ErRtQPy6RXxgD2ZB86mso=", "owner": "NixOS", "repo": "nixpkgs", - "rev": "21af6ad5395bce8fab79a6bdc8dd2c33e4673650", + "rev": "7c4c20509c4363195841faa6c911777a134acdf3", "type": "github" }, "original": { @@ -953,11 +944,11 @@ }, "nur": { "locked": { - "lastModified": 1701172531, - "narHash": "sha256-Y3ANl+NgZ9Tu9JABzOvTqCz83m69GxJ+QzxjqfFk9lQ=", + "lastModified": 1705674901, + "narHash": "sha256-sXJAurZAOfIZgs5x+CuBCopWKLRn5XY+jAeYqzNpHCM=", "owner": "nix-community", "repo": "NUR", - "rev": "5c53b8b1e0021f673f42dfabe68fa082779cb487", + "rev": "750734b35cbc48450a8bfa04586fbe3610e2f2c3", "type": "github" }, "original": { @@ -1064,11 +1055,11 @@ "nixpkgs-stable": "nixpkgs-stable_2" }, "locked": { - "lastModified": 1699271226, - "narHash": "sha256-8Jt1KW3xTjolD6c6OjJm9USx/jmL+VVmbooADCkdDfU=", + "lastModified": 1705229514, + "narHash": "sha256-itILy0zimR/iyUGq5Dgg0fiW8plRDyxF153LWGsg3Cw=", "owner": "cachix", "repo": "pre-commit-hooks.nix", - "rev": "ea758da1a6dcde6dc36db348ed690d09b9864128", + "rev": "ffa9a5b90b0acfaa03b1533b83eaf5dead819a05", "type": "github" }, "original": { @@ -1135,33 +1126,6 @@ } }, "rust-overlay": { - "inputs": { - "flake-utils": [ - "attic", - "crane", - "flake-utils" - ], - "nixpkgs": [ - "attic", - "crane", - "nixpkgs" - ] - }, - "locked": { - "lastModified": 1675391458, - "narHash": "sha256-ukDKZw922BnK5ohL9LhwtaDAdCsJL7L6ScNEyF1lO9w=", - "owner": "oxalica", - "repo": "rust-overlay", - "rev": "383a4acfd11d778d5c2efcf28376cbd845eeaedf", - "type": "github" - }, - "original": { - "owner": "oxalica", - "repo": "rust-overlay", - "type": "github" - } - }, - "rust-overlay_2": { "inputs": { "flake-utils": [ "lanzaboote", @@ -1173,11 +1137,11 @@ ] }, "locked": { - "lastModified": 1699409596, - "narHash": "sha256-L3g1smIol3dGTxkUQOlNShJtZLvjLzvtbaeTRizwZBU=", + "lastModified": 1705285102, + "narHash": "sha256-e7uridAdtZOiUZD7fjrWkUB6qr1HM2thQpDRRgJfLNc=", "owner": "oxalica", "repo": "rust-overlay", - "rev": "58240e1ac627cef3ea30c7732fedfb4f51afd8e7", + "rev": "d681ac8a92a1cce066df1d3a5a7f7c909688f4be", "type": "github" }, "original": { @@ -1240,11 +1204,11 @@ ] }, "locked": { - "lastModified": 1701127353, - "narHash": "sha256-qVNX0wOl0b7+I35aRu78xUphOyELh+mtUp1KBx89K1Q=", + "lastModified": 1705356877, + "narHash": "sha256-274jL1cH64DcXUXebVMZBRUsTs3FvFlPIPkCN/yhSnI=", "owner": "Mic92", "repo": "sops-nix", - "rev": "b1edbf5c0464b4cced90a3ba6f999e671f0af631", + "rev": "87755331580fdf23df7e39b46d63ac88236bf42c", "type": "github" }, "original": { @@ -1383,11 +1347,11 @@ }, "unstable": { "locked": { - "lastModified": 1700794826, - "narHash": "sha256-RyJTnTNKhO0yqRpDISk03I/4A67/dp96YRxc86YOPgU=", + "lastModified": 1705496572, + "narHash": "sha256-rPIe9G5EBLXdBdn9ilGc0nq082lzQd0xGGe092R/5QE=", "owner": "NixOS", "repo": "nixpkgs", - "rev": "5a09cb4b393d58f9ed0d9ca1555016a8543c2ac8", + "rev": "842d9d80cfd4560648c785f8a4e6f3b096790e19", "type": "github" }, "original": { @@ -1452,11 +1416,11 @@ "utils": "utils" }, "locked": { - "lastModified": 1701136245, - "narHash": "sha256-YiGtdDpzfgbYzodUz3EfSJTyT8YbrYEg09yITkp8rdE=", + "lastModified": 1701344164, + "narHash": "sha256-5PLKGJaIKnsUX9jl/Xkgrwuiy0k0rIzpd9dM54nEVAc=", "owner": "camillemndn", "repo": "zotero-nix", - "rev": "ee2c4bec07103ae75ca9bb91b3d98ccbfebc1de6", + "rev": "057a141f85d9780b22f0f60f2f510ac74afd2420", "type": "github" }, "original": { diff --git a/home-manager-modules/hyprland/default.nix b/home-manager-modules/hyprland/default.nix new file mode 100644 index 0000000..147077e --- /dev/null +++ b/home-manager-modules/hyprland/default.nix @@ -0,0 +1,196 @@ +{ config, pkgs, lib, inputs, ... }: +let + cfg = config.luj.programs.hyprland; + terminal = "${pkgs.kitty}/bin/kitty"; + menu = "${pkgs.rofi-wayland}/bin/rofi -no-lazy-grab -show"; +in +with lib; +{ + options.luj.programs.hyprland = { + enable = mkEnableOption "Enable HyprLand"; + }; + + config = mkIf cfg.enable + { + wayland.windowManager.hyprland = { + enable = true; + package = pkgs.hyprland; + + }; + + xdg.configFile."hypr/hyprland.conf".text = '' + exec-once = waybar & hyprpaper + exec-once=dbus-update-activation-environment --systemd DISPLAY WAYLAND_DISPLAY + exec-once = nm-applet --indicator + # Monitors + monitor = eDP-1, preferred, auto, auto + + # Input + input { + kb_layout = fr + follow_mouse = 1 + sensitivity = 0 # -1.0 - 1.0, 0 means no modification. + } + + # General + general { + gaps_in = 3 + gaps_out = 5 + border_size = 2 + col.active_border = rgb(11111b) + col.inactive_border = rgb(11111b) + cursor_inactive_timeout = 1 + layout = dwindle + } + + # Misc + misc { + disable_hyprland_logo = true + disable_splash_rendering = true + } + + # Decorations + decoration { + rounding = 4 + } + + animations { + enabled = false + } + + + # Gestures + gestures { + workspace_swipe = true + workspace_swipe_fingers = 4 + } + + + # Variables + $term = ${terminal} + $browser = chromium + $editor = nvim + $files = nemo + $launcher = ${menu} + + # Apps + bind = SUPER, RETURN, exec, kitty + bind = SUPER SHIFT, E, exec, $editor + bind = SUPER SHIFT, F, exec, $files + bind = SUPER SHIFT, B, exec, $browser + bind = SUPER, SPACE, exec, $launcher + bind = SUPER, X, exec, power-menu + + # Function keys + bind = ,XF86MonBrightnessUp, exec, brightnessctl s +10% + bind = ,XF86MonBrightnessDown, exec, brightnessctl s 10%- + + # Screenshots + bind = , Print, exec, $screenshotarea + bind = CTRL, Print, exec, grimblast --notify --cursor copysave output + bind = SUPER SHIFT CTRL, R, exec, grimblast --notify --cursor copysave output + bind = ALT, Print, exec, grimblast --notify --cursor copysave screen + bind = SUPER SHIFT ALT, R, exec, grimblast --notify --cursor copysave screen + + # Misc + bind = CTRL ALT, L, exec, swaylock + + # Window management + bind = SUPER, Q, killactive, + bind = SUPER, M, exit, + bind = SUPER, F, fullscreen, + bind = SUPER, D, togglefloating, + bind = SUPER, P, pseudo, # dwindle + bind = SUPER, J, togglesplit, # dwindle + + # Focus + bind = SUPER, left, movefocus, l + bind = SUPER, right, movefocus, r + bind = SUPER, up, movefocus, u + bind = SUPER, down, movefocus, d + + # Move + bind = SUPER SHIFT, left, movewindow, l + bind = SUPER SHIFT, right, movewindow, r + bind = SUPER SHIFT, up, movewindow, u + bind = SUPER SHIFT, down, movewindow, d + + # Resize + bind = SUPER CTRL, left, resizeactive, -20 0 + bind = SUPER CTRL, right, resizeactive, 20 0 + bind = SUPER CTRL, up, resizeactive, 0 -20 + bind = SUPER CTRL, down, resizeactive, 0 20 + + # Tabbed + bind= SUPER, g, togglegroup + bind= SUPER, tab, changegroupactive + + # Special workspace + bind = SUPER, grave, togglespecialworkspace + bind = SUPERSHIFT, grave, movetoworkspace, special + + # Switch workspaces + bind = SUPER, ampersand, workspace, 1 + bind = SUPER, eacute, workspace, 2 + bind = SUPER, quotedbl, workspace, 3 + bind = SUPER, apostrophe, workspace, 4 + bind = SUPER, parenleft, workspace, 5 + bindm = SUPER, mouse:272, movewindow + bindm = SUPER, mouse:273, resizewindow + bind = SUPER, mouse_down, workspace, e+1 + bind = SUPER, mouse_up, workspace, e-1 + + bind = SUPER SHIFT, ampersand, movetoworkspace, 1 + bind = SUPER SHIFT, eacute, movetoworkspace, 2 + bind = SUPER SHIFT, quotedbl, movetoworkspace, 3 + bind = SUPER SHIFT, apostrophe, movetoworkspace, 4 + bind = SUPER, parenleft, movetoworkspace, 5 + + ''; + + services.swayidle = { + enable = true; + systemdTarget = "hyprland-session.target"; + events = [ + { event = "before-sleep"; command = "${pkgs.swaylock-effects}/bin/swaylock --config /home/julien/.config/swaylock/config"; } + ]; + }; + + + programs.swaylock = + { + enable = true; + package = pkgs.swaylock-effects; + settings = { + screenshots = true; + clock = true; + indicator = true; + indicator-radius = 200; + indicator-thickness = 20; + grace = 0; + grace-no-mouse = true; + grace-no-touch = true; + line-uses-ring = false; + ignore-empty-password = true; + show-failed-attempts = false; + + font = "Fira Code"; + timestr = "%H:%M"; + datestr = ""; + effect-blur = "8x5"; + effect-vignette = "0.5:0.5"; + color = "00000000"; + + }; + + }; + + + + + home.packages = with pkgs; + [ qt6.qtwayland libsForQt5.qt5.qtwayland ]; + + }; +} + diff --git a/lib/luj.nix b/lib/luj.nix index 6197ec9..13659c8 100644 --- a/lib/luj.nix +++ b/lib/luj.nix @@ -166,6 +166,12 @@ inputs: lib: with lib; let sshUser = "root"; }; + wiki = { + subdomains = [ "wiki.staging.julienmalka.me" ]; + ipv4.public = "65.21.240.250"; + ipv6.public = "2a01:4f9:c012:8178::"; + }; + }; }; diff --git a/machines/enigma/default.nix b/machines/enigma/default.nix index d7ad4ea..98c7829 100644 --- a/machines/enigma/default.nix +++ b/machines/enigma/default.nix @@ -13,7 +13,6 @@ boot.loader.systemd-boot.enable = true; boot.loader.efi.canTouchEfiVariables = true; - services.gnome.gnome-browser-connector.enable = true; services.tailscale.enable = true; @@ -22,7 +21,6 @@ networking.networkmanager.dns = "systemd-resolved"; services.resolved.enable = true; - security.pam.loginLimits = [{ domain = "*"; type = "-"; @@ -32,10 +30,7 @@ services.xserver.enable = true; - services.xserver.displayManager.gdm.enable = true; - services.xserver.desktopManager.gnome.enable = true; - # Enable OpenGL hardware.opengl = { enable = true; @@ -77,21 +72,12 @@ boot.initrd.kernelModules = [ "nvidia" ]; boot.extraModulePackages = [ config.boot.kernelPackages.nvidia_x11 ]; - - services.spotifyd = { - enable = true; - settings = { - global = { - username = "julienmalka@icloud.com"; - password_cmd = "cat /root/spotify_pw"; - use_mpris = false; - }; - }; - }; - - systemd.services.spotifyd.serviceConfig.DynamicUser = lib.mkForce false; - programs.xwayland.enable = true; + programs.hyprland = + { + enable = true; + enableNvidiaPatches = true; + }; time.timeZone = "Europe/Paris"; @@ -105,7 +91,7 @@ programs.dconf.enable = true; services.emacs = { enable = true; - package = pkgs.emacs29; + package = pkgs.emacs29-gtk3; }; security.polkit.enable = true; @@ -127,6 +113,7 @@ }; + programs.ssh.startAgent = true; environment.systemPackages = with pkgs; [ tailscale