diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..26f5c15 --- /dev/null +++ b/.gitignore @@ -0,0 +1 @@ +.github diff --git a/flake.lock b/flake.lock index be98b4a..375b95e 100644 --- a/flake.lock +++ b/flake.lock @@ -5,11 +5,11 @@ "nixpkgs": "nixpkgs" }, "locked": { - "lastModified": 1631325864, - "narHash": "sha256-bBvrjUS0qfgC4LPFthGJ5E8Fl0f5UvlrCB3o5Bnn9ys=", + "lastModified": 1637793790, + "narHash": "sha256-oPXavjxETEWGXq8g7kQHyRLKUmLX2yPtGn+t3V0mrTY=", "owner": "ryantm", "repo": "agenix", - "rev": "5c5bc282565f03f9c5b3d6e72b7cb985706148a6", + "rev": "f85eea0e29fa9a8924571d0e398215e175f80d55", "type": "github" }, "original": { @@ -36,11 +36,11 @@ }, "emacs": { "locked": { - "lastModified": 1631467754, - "narHash": "sha256-lZbeo1Y/jni/KW1W+DnaeCPgIu+W+ks8qp3xlRtUYFQ=", + "lastModified": 1638146980, + "narHash": "sha256-tb5Wj3NI812IiMHhYruw3UVt6vPicHC1NpLGKyTP2uI=", "owner": "nix-community", "repo": "emacs-overlay", - "rev": "e00f171142307b3c9bb962beeaaf09d0254f9e31", + "rev": "58236c2d03c4405a560f12cb7536251973f551e0", "type": "github" }, "original": { @@ -66,6 +66,21 @@ } }, "flake-utils": { + "locked": { + "lastModified": 1623875721, + "narHash": "sha256-A8BU7bjS5GirpAUv4QA+QnJ4CceLHkcXdRp4xITDB0s=", + "owner": "numtide", + "repo": "flake-utils", + "rev": "f7e004a55b120c02ecb6219596820fcd32ca8772", + "type": "github" + }, + "original": { + "owner": "numtide", + "repo": "flake-utils", + "type": "github" + } + }, + "flake-utils_2": { "locked": { "lastModified": 1629481132, "narHash": "sha256-JHgasjPR0/J1J3DRm4KxM4zTyAj4IOJY8vIl75v/kPI=", @@ -85,11 +100,29 @@ "nixpkgs": "nixpkgs_2" }, "locked": { - "lastModified": 1630076227, - "narHash": "sha256-p3YdtqSPLnMudWsLMgd6XMEhQKB2oz1hvDkHtOlz5/Q=", + "lastModified": 1638150501, + "narHash": "sha256-aWH3MRmjUtx8ciSGLegBJC5mhymsuroHPs74ZldrNTU=", "owner": "nix-community", "repo": "home-manager", - "rev": "f5adb9be829f487f99bcc0f1884f74ddb85f70c8", + "rev": "9de77227d7780518cfeaee5a917970247f3ecc56", + "type": "github" + }, + "original": { + "owner": "nix-community", + "repo": "home-manager", + "type": "github" + } + }, + "home-manager-stable": { + "inputs": { + "nixpkgs": "nixpkgs_3" + }, + "locked": { + "lastModified": 1637917894, + "narHash": "sha256-mzkyjq+OW1K5XHG43zrnjJX/K1ehahVWlKjMzWX/Vvg=", + "owner": "nix-community", + "repo": "home-manager", + "rev": "7efd99ef876c220848553ae10218685d5e5d79cb", "type": "github" }, "original": { @@ -99,24 +132,6 @@ "type": "github" } }, - "home-manager-unstable": { - "inputs": { - "nixpkgs": "nixpkgs_3" - }, - "locked": { - "lastModified": 1631134124, - "narHash": "sha256-C17wJ2HyuFZllJ/PbpFuuDjkzWvg8np9UIAdSrpuwS0=", - "owner": "nix-community", - "repo": "home-manager", - "rev": "039f786e609fdb3cfd9c5520ff3791750c3eaebf", - "type": "github" - }, - "original": { - "owner": "nix-community", - "repo": "home-manager", - "type": "github" - } - }, "mailserver": { "inputs": { "blobs": "blobs", @@ -125,11 +140,11 @@ "utils": "utils" }, "locked": { - "lastModified": 1628684416, - "narHash": "sha256-zm7JHe/K2NthgV57QhnmfT9i7azGa2tc5fJOzEiYlLo=", + "lastModified": 1637902663, + "narHash": "sha256-6ExA+6vPfkHodMoAaCIVLC3BGeF/q28sShHoiusXD6g=", "owner": "simple-nixos-mailserver", "repo": "nixos-mailserver", - "rev": "fb85a3fe9e4f673f9c017a23ada00b05d61cdc6a", + "rev": "822c5f22bd6e43b6b4a772045756ebf6a00cd884", "type": "gitlab" }, "original": { @@ -140,11 +155,11 @@ }, "master": { "locked": { - "lastModified": 1631384788, - "narHash": "sha256-qud6zLYwwXoTGcPcI60oZv91djhNW79cwkgkVALaXww=", + "lastModified": 1638168345, + "narHash": "sha256-QiqE2KqhYvZOSNSGjtj2z5+d3TJTHl7ziGdN2hxek0s=", "owner": "nixos", "repo": "nixpkgs", - "rev": "73489348f63950e9e6089cdb1ca9342aa2bf213d", + "rev": "9a3b63e9f1f11d0434432ac91a750f6e6d963a78", "type": "github" }, "original": { @@ -176,18 +191,19 @@ }, "neovim-flake": { "inputs": { - "flake-utils": "flake-utils", + "flake-utils": "flake-utils_2", "nixpkgs": [ + "nvim", "nixpkgs" ] }, "locked": { "dir": "contrib", - "lastModified": 1631326779, - "narHash": "sha256-/T3QznIhQFVdpQLGk24JDI8bfFiPQOJ6+Ly4G6meiE4=", + "lastModified": 1638043901, + "narHash": "sha256-/ptPh9yDIFYik13bOv6nhPWlWaozOI9SVPe7F/nCzrw=", "owner": "neovim", "repo": "neovim", - "rev": "086631cd92d7b60f122963f9fd1779583b19004c", + "rev": "07223fae54b5b8095da16c598fc1395ec3677691", "type": "github" }, "original": { @@ -197,6 +213,27 @@ "type": "github" } }, + "nix-gaming": { + "inputs": { + "nixpkgs": "nixpkgs_6", + "oglfPatches": "oglfPatches", + "tkgPatches": "tkgPatches", + "utils": "utils_3" + }, + "locked": { + "lastModified": 1637691862, + "narHash": "sha256-ZkUW8JfjDmFZnRQKeBKQvqlWLRgIq4p6v2QfLrjSm0s=", + "owner": "fufexan", + "repo": "nix-gaming", + "rev": "caf86b1dd4b4cdd59970590eaaa9c009c9f1e6ea", + "type": "github" + }, + "original": { + "owner": "fufexan", + "repo": "nix-gaming", + "type": "github" + } + }, "nixpkgs": { "locked": { "lastModified": 1618628710, @@ -227,11 +264,11 @@ }, "nixpkgs_2": { "locked": { - "lastModified": 1631384788, - "narHash": "sha256-qud6zLYwwXoTGcPcI60oZv91djhNW79cwkgkVALaXww=", + "lastModified": 1638168345, + "narHash": "sha256-QiqE2KqhYvZOSNSGjtj2z5+d3TJTHl7ziGdN2hxek0s=", "owner": "NixOS", "repo": "nixpkgs", - "rev": "73489348f63950e9e6089cdb1ca9342aa2bf213d", + "rev": "9a3b63e9f1f11d0434432ac91a750f6e6d963a78", "type": "github" }, "original": { @@ -241,11 +278,11 @@ }, "nixpkgs_3": { "locked": { - "lastModified": 1631384788, - "narHash": "sha256-qud6zLYwwXoTGcPcI60oZv91djhNW79cwkgkVALaXww=", + "lastModified": 1638168345, + "narHash": "sha256-QiqE2KqhYvZOSNSGjtj2z5+d3TJTHl7ziGdN2hxek0s=", "owner": "NixOS", "repo": "nixpkgs", - "rev": "73489348f63950e9e6089cdb1ca9342aa2bf213d", + "rev": "9a3b63e9f1f11d0434432ac91a750f6e6d963a78", "type": "github" }, "original": { @@ -286,27 +323,42 @@ }, "nixpkgs_6": { "locked": { - "lastModified": 1631275245, - "narHash": "sha256-vROU1OFI2zvKSBjbMpbpl9R08Or3eUwaW5HJLq88QWY=", - "owner": "nixos", + "lastModified": 1628417749, + "narHash": "sha256-LI00lL97qfnVPYLM50nh9BhHY9viHziuLjkMzBrIuTE=", + "owner": "NixOS", "repo": "nixpkgs", - "rev": "8b0b81dab17753ab344a44c04be90a61dc55badf", + "rev": "3a8b5de9f0db6be3eccf4987b09af26499ceff6f", "type": "github" }, "original": { - "owner": "nixos", - "ref": "nixos-21.05", + "owner": "NixOS", "repo": "nixpkgs", "type": "github" } }, "nixpkgs_7": { "locked": { - "lastModified": 1631206977, - "narHash": "sha256-o3Dct9aJ5ht5UaTUBzXrRcK1RZt2eG5/xSlWJuUCVZM=", + "lastModified": 1638097282, + "narHash": "sha256-EXCzj9b8X/lqDPJapxZThIOKL5ASbpsJZ+8L1LnY1ig=", "owner": "nixos", "repo": "nixpkgs", - "rev": "4f6d8095fd51954120a1d08ea5896fe42dc3923b", + "rev": "78cb77b29d37a9663e05b61abb4fa09465da4b70", + "type": "github" + }, + "original": { + "owner": "nixos", + "ref": "nixpkgs-unstable", + "repo": "nixpkgs", + "type": "github" + } + }, + "nixpkgs_8": { + "locked": { + "lastModified": 1637841632, + "narHash": "sha256-QYqiKHdda0EOnLGQCHE+GluD/Lq2EJj4hVTooPM55Ic=", + "owner": "nixos", + "repo": "nixpkgs", + "rev": "73369f8d0864854d1acfa7f1e6217f7d6b6e3fa1", "type": "github" }, "original": { @@ -318,11 +370,11 @@ }, "nur": { "locked": { - "lastModified": 1631381877, - "narHash": "sha256-tJIiLHD8hFT/k3B23uSKRwo1uy/8pO7ow94hECjHAEQ=", + "lastModified": 1638151156, + "narHash": "sha256-UOCvbXBpU8SbxiR4yLEW1CTDvxR8aA2dBOsw6Iai07I=", "owner": "nix-community", "repo": "NUR", - "rev": "c965f192aaacb1d7fbf8afb049422043fe125dbe", + "rev": "b873821f8bbac6d185728a6e3482c8acb8ed285a", "type": "github" }, "original": { @@ -335,14 +387,14 @@ "inputs": { "flake-compat": "flake-compat", "neovim-flake": "neovim-flake", - "nixpkgs": "nixpkgs_7" + "nixpkgs": "nixpkgs_8" }, "locked": { - "lastModified": 1631347924, - "narHash": "sha256-JRVeXBlGp8eCic7HxEj/H9KEh9MLbbWq+rbMhDFLNkk=", + "lastModified": 1638087178, + "narHash": "sha256-2Z1bFOdtqJz3259xIXaAqu3n0iD0uaKOG53uSCQEr34=", "owner": "nix-community", "repo": "neovim-nightly-overlay", - "rev": "3b416a38ba8f853aaeba9626712b3e64b85232c2", + "rev": "e1a53537b1c7ad2a16da1493cd75b773635a9319", "type": "github" }, "original": { @@ -351,38 +403,73 @@ "type": "github" } }, + "oglfPatches": { + "flake": false, + "locked": { + "lastModified": 1629854275, + "narHash": "sha256-hnj86MirD0jU4NzkdRoaODuryGRPUavA9qhGWlixk2Y=", + "owner": "openglfreak", + "repo": "wine-tkg-userpatches", + "rev": "c5d849279c8a90123162d92413aa249c2f044dc0", + "type": "github" + }, + "original": { + "owner": "openglfreak", + "repo": "wine-tkg-userpatches", + "rev": "c5d849279c8a90123162d92413aa249c2f044dc0", + "type": "github" + } + }, "root": { "inputs": { "agenix": "agenix", "emacs": "emacs", "home-manager": "home-manager", - "home-manager-unstable": "home-manager-unstable", + "home-manager-stable": "home-manager-stable", "mailserver": "mailserver", "master": "master", "nbfc": "nbfc", - "nixpkgs": "nixpkgs_6", + "nix-gaming": "nix-gaming", + "nixpkgs": "nixpkgs_7", "nur": "nur", "nvim": "nvim", - "unstable": "unstable", - "utils": "utils_3" + "stable": "stable", + "utils": "utils_4" } }, - "unstable": { + "stable": { "locked": { - "lastModified": 1631315520, - "narHash": "sha256-Y8j0JYtZMifrHaWdTfTp1mYVXZ2PLJO/P0XZxMvo7KU=", + "lastModified": 1637973395, + "narHash": "sha256-wp/QgsnnKJAIMZeQgJT1bWQ/OutZ+80lHwtpYAUWDfE=", "owner": "nixos", "repo": "nixpkgs", - "rev": "b72ad04a8a324697d3fb92e19cd840379a902813", + "rev": "4f37689c8a219a9d756c5ff38525ad09349f422f", "type": "github" }, "original": { "owner": "nixos", - "ref": "nixpkgs-unstable", + "ref": "nixos-21.05", "repo": "nixpkgs", "type": "github" } }, + "tkgPatches": { + "flake": false, + "locked": { + "lastModified": 1628767531, + "narHash": "sha256-tcprbnfojbCQLiebOaiOp0Occ/6f0m38N56bzgGKuJc=", + "owner": "Frogging-Family", + "repo": "wine-tkg-git", + "rev": "de6cd55961861c254bb4d96481a75bfb78553e5d", + "type": "github" + }, + "original": { + "owner": "Frogging-Family", + "ref": "6.14.r6.g1bc4da9d", + "repo": "wine-tkg-git", + "type": "github" + } + }, "utils": { "locked": { "lastModified": 1605370193, @@ -414,12 +501,31 @@ } }, "utils_3": { + "inputs": { + "flake-utils": "flake-utils" + }, "locked": { - "lastModified": 1629481132, - "narHash": "sha256-JHgasjPR0/J1J3DRm4KxM4zTyAj4IOJY8vIl75v/kPI=", + "lastModified": 1626816926, + "narHash": "sha256-mJKFdfc4UWL49ar2Tc4krKMnDUa0Dkhj8QmbR3SThHo=", + "owner": "gytis-ivaskevicius", + "repo": "flake-utils-plus", + "rev": "5dba7556e1c7f36152c9f65c16bc813ec73ee6a5", + "type": "github" + }, + "original": { + "owner": "gytis-ivaskevicius", + "ref": "staging", + "repo": "flake-utils-plus", + "type": "github" + } + }, + "utils_4": { + "locked": { + "lastModified": 1638122382, + "narHash": "sha256-sQzZzAbvKEqN9s0bzWuYmRaA03v40gaJ4+iL1LXjaeI=", "owner": "numtide", "repo": "flake-utils", - "rev": "997f7efcb746a9c140ce1f13c72263189225f482", + "rev": "74f7e4319258e287b0f9cb95426c9853b282730b", "type": "github" }, "original": { diff --git a/flake.nix b/flake.nix index 579643b..3fd81c0 100644 --- a/flake.nix +++ b/flake.nix @@ -1,10 +1,10 @@ { inputs = { - nixpkgs.url = github:nixos/nixpkgs/nixos-21.05; - unstable.url = github:nixos/nixpkgs/nixpkgs-unstable; + stable.url = github:nixos/nixpkgs/nixos-21.05; + nixpkgs.url = github:nixos/nixpkgs/nixpkgs-unstable; master.url = github:nixos/nixpkgs/master; - home-manager-unstable.url = github:nix-community/home-manager; - home-manager.url = github:nix-community/home-manager/release-21.05; + home-manager.url = github:nix-community/home-manager; + home-manager-stable.url = github:nix-community/home-manager/release-21.05; nur.url = github:nix-community/NUR; agenix.url = github:ryantm/agenix; utils.url = github:numtide/flake-utils; @@ -12,9 +12,10 @@ mailserver.url = gitlab:simple-nixos-mailserver/nixos-mailserver; nbfc.url = github:natto1784/nbfc-linux/yawr; emacs.url = github:nix-community/emacs-overlay; + nix-gaming.url = github:fufexan/nix-gaming; }; - outputs = inputs@{self, nixpkgs, unstable, master, ... }: + outputs = inputs@{self, nixpkgs, stable, master, ... }: inputs.utils.lib.eachDefaultSystem (system: let mkPkgs = channel: system: import channel { @@ -22,9 +23,9 @@ config.allowUnfree = true; }; channels = final: prev: { - unstable = mkPkgs unstable prev.system; - stable = mkPkgs nixpkgs prev.system; - master = mkPkgs master prev.system; + stable = mkPkgs stable prev.system; + unstable = mkPkgs nixpkgs prev.system; + master = mkPkgs master prev.system; }; overlays = [ (import ./overlays/overridesandshit.nix) @@ -39,7 +40,10 @@ inputs.nvim.overlay inputs.emacs.overlay channels - (_:_:{nbfc-linux=inputs.nbfc.defaultPackage.${system};}) + ( _: _: { + nbfc-linux=inputs.nbfc.defaultPackage.${system}; + games = inputs.nix-gaming.packages.${system}; + }) ]; config.allowUnfree = true; config.allowBroken = true; @@ -71,9 +75,14 @@ imports = [ ./home/natto.nix ]; - nixpkgs.overlays = self.legacyPackages.x86_64-linux.overlays; - nixpkgs.config.allowUnfree = true; - nixpkgs.config.allowBroken = true; + nixpkgs = { + overlays = self.legacyPackages.x86_64-linux.overlays; + config.allowUnfree = true; + config.allowBroken = true; + config.permittedInsecurePackages = [ + "electron-9.4.4" + ]; + }; }; homeDirectory = "/home/natto"; username = "natto"; @@ -87,7 +96,6 @@ modules = [ ./hosts/satori inputs.agenix.nixosModules.age - inputs.home-manager.nixosModules.home-manager { nixpkgs.pkgs = self.legacyPackages.x86_64-linux; } diff --git a/home/config/xmonad/xmonad.hs b/home/config/xmonad/xmonad.hs index 2ae8b27..8238089 100644 --- a/home/config/xmonad/xmonad.hs +++ b/home/config/xmonad/xmonad.hs @@ -57,13 +57,13 @@ myKeys conf@(XConfig {XMonad.modMask = modMask}) = M.fromList $ spawn "flameshot full -p /home/natto/Pictures -d 10000") , ((modMask, xK_p), - spawn "playerctl play-pause") + spawn "mpc toggle") - , ((modMask, xK_h), - spawn "playerctl next") + , ((modMask, xK_n), + spawn "mpc next") - , ((modMask, xK_k), - spawn "playerctl previous") + , ((modMask, xK_e), + spawn "mpc prev") , ((modMask .|. shiftMask, xK_a), spawn "mpc seek -00:00:05") @@ -110,45 +110,45 @@ myKeys conf@(XConfig {XMonad.modMask = modMask}) = M.fromList $ , ((modMask, xK_r), refresh) - , ((modMask, xK_n), + , ((modMask, xK_j), windows W.focusDown) - , ((modMask, xK_e), windows W.focusUp ) + , ((modMask, xK_k), windows W.focusUp ) - , ((modMask .|. shiftMask, xK_m), + , ((modMask .|. shiftMask, xK_h), windows W.focusMaster ) , ((modMask .|. shiftMask, xK_Return), windows W.swapMaster) - , ((modMask .|. shiftMask, xK_n), + , ((modMask .|. shiftMask, xK_j), windows W.swapDown ) - , ((modMask .|. shiftMask, xK_e), + , ((modMask .|. shiftMask, xK_k), windows W.swapUp ) - , ((mod1Mask, xK_m), + , ((mod1Mask, xK_h), sendMessage Expand) - , ((mod1Mask, xK_i), + , ((mod1Mask, xK_l), sendMessage Shrink) - , ((mod1Mask, xK_n), + , ((mod1Mask, xK_j), sendMessage MirrorExpand) - , ((mod1Mask, xK_e), + , ((mod1Mask, xK_k), sendMessage MirrorShrink) - , ((mod1Mask .|. shiftMask, xK_m), + , ((mod1Mask .|. shiftMask, xK_h), withFocused (keysMoveWindow (-30, 0))) - , ((mod1Mask .|. shiftMask, xK_i), + , ((mod1Mask .|. shiftMask, xK_l), withFocused (keysMoveWindow (30, 0))) - , ((mod1Mask .|. shiftMask, xK_n), + , ((mod1Mask .|. shiftMask, xK_j), withFocused (keysMoveWindow (0, 30))) - , ((mod1Mask .|. shiftMask, xK_e), + , ((mod1Mask .|. shiftMask, xK_k), withFocused (keysMoveWindow (0, -30))) , ((modMask, xK_t), diff --git a/home/config/zathura/zathurarc b/home/config/zathura/zathurarc index 94968e9..920b24d 100644 --- a/home/config/zathura/zathurarc +++ b/home/config/zathura/zathurarc @@ -8,7 +8,7 @@ map S rotate map f zoom in map q zoom out map p follow link -map m scroll left -map i scroll right -map n scroll down -map e scroll up +#map m scroll left +#map i scroll right +#map n scroll down +#map e scroll up diff --git a/home/natto.nix b/home/natto.nix index 9d00397..5c8240a 100644 --- a/home/natto.nix +++ b/home/natto.nix @@ -37,7 +37,9 @@ in }; home = { packages = with pkgs; [ - ffmpeg + /* (ffmpeg-full.override { + libaom = libaom; + })*/ sox rage curl @@ -48,14 +50,13 @@ in xfce.thunar xfce.xfconf xfce.tumbler - discord + master.discord customscripts mpd_discord_richpresence sox qbittorrent #tor-browser-bundle-bin - #mpc_cli - playerctl + mpc_cli hexchat luajit mpv @@ -80,18 +81,23 @@ in arc-theme arc-icon-theme tor-browser-bundle-bin - wineWowPackages.stable - (master.winetricks.override { wine = wineWowPackages.stable; }) + games.wine-tkg + master.winetricks + games.winestreamproxy + /* (games.osu-stable.overrideAttrs (_:{ + tricks = [ "gdiplus" "dotnet46" "meiryo" ]; + }))*/ csvtool pmidi dosbox authy unstable.premid - taa - (master.tauon.overrideAttrs (oa: { - pythonPath = oa.pythonPath ++ [ unstable.python39Packages.pypresence ]; - })) + (master.tauon.override { withDiscordRPC = true; }) nbfc-linux + pulseaudio + (texlive.combine { inherit (texlive) scheme-small babel lm graphics-def url; }) + qjackctl + carla ]; file = { diff --git a/home/stuff/programs.nix b/home/stuff/programs.nix index fd58aa5..8d033ca 100644 --- a/home/stuff/programs.nix +++ b/home/stuff/programs.nix @@ -33,6 +33,8 @@ force-window = "yes"; keep-open = "yes"; save-position-on-quit = "yes"; + # autofit="100%"; +# no-keepaspect-window = "yes"; }; }; go.enable = true; diff --git a/home/stuff/services.nix b/home/stuff/services.nix index 90989a9..a8f014e 100644 --- a/home/stuff/services.nix +++ b/home/stuff/services.nix @@ -5,40 +5,43 @@ in { services = { picom = { + experimentalBackends = true; enable = true; + shadow = true; + shadowOffsets = [ (6) (6) ]; + shadowExclude = [ + "! name~=''" + "window_type = 'dock'" + "name = 'Dunst'" + "_NET_WM_STATE@:32a *= '_NET_WM_STATE_HIDDEN'" + ]; + blur = true; + blurExclude = [ + "window_type = 'dock'" + "window_type = 'desktop'" + "class_g = 'dwm'" + ]; + inactiveOpacity = "0.92"; + activeOpacity = "0.97"; + fade = true; + fadeSteps = [ "0.04" "0.04" ]; + backend = "glx"; + menuOpacity = "0.8"; + vSync = false; + opacityRule = [ + "100:class_i='Tauon Music Box'" + "100:class_g='firefox'" + ]; extraOptions = '' - shadow = true; - shadow-radius = 20; - shadow-offset-x = 30; - shadow-offset-y = 30; - blurExclude = [ "class_g = 'dwm'" ] - - inactive-opacity = 0.92; - active-opacity = 0.97; + shadow-radius = 8; inactive-opacity-override = true; - blur-background = true; blur-method = "dual_kawase"; blur-strength = 3; blur-kern = "11x11gaussian"; - fading = true; - fade-in-step = 0.05; - fade-out-step = 0.05; - - backend = "glx"; detect-rounded-corners = true; detect-client-opacity = true; - experimental-backends = true; - vsync = false; - wintypes: - { - tooltip = { fade = true; shadow = true; opacity = 0.75; focus = true; }; - popup_menu={opacity=0.8;}; - dropdown_menu={opacity=0.8;}; - }; - shadow-exclude = ["x = 0 && y = 0 && override_redirect = true", "class_g = 'xmobar' && argb", "class_g = 'stalonetray' && argb"] - ''; - + ''; }; sxhkd = { enable = false; @@ -48,15 +51,17 @@ in mpd = { enable = true; musicDirectory = "${config.home.homeDirectory}/Music"; + dbFile = "${config.home.homeDirectory}/.config/mpd/database"; + dataDir = "${config.home.homeDirectory}/.config/mpd"; + network = { + startWhenNeeded = true; + listenAddress = "any"; + port = 6600; + }; extraConfig = '' - playlist_directory "~/.config/mpd/playlists" - db_file "~/.config/mpd/database" log_file "~/.config/mpd/log" pid_file "~/.config/mpd/pid" - state_file "~/.config/mpd/state" - bind_to_address "~/.config/mpd/socket" - bind_to_address "localhost" - port "6600" + # bind_to_address "~/.config/mpd/socket" restore_paused "yes" input { plugin "curl" @@ -71,9 +76,14 @@ in path "/tmp/g.fifo" format "44100:16:2" } + audio_output { + type "httpd" + name "My HTTP Stream" + port "8000" + max_clients "4" + } filesystem_charset "UTF-8" ''; - network.startWhenNeeded = true; }; stalonetray = { enable = true; diff --git a/hosts/satori/boot.nix b/hosts/satori/boot.nix index 258883e..513b705 100644 --- a/hosts/satori/boot.nix +++ b/hosts/satori/boot.nix @@ -2,7 +2,7 @@ { boot = { - kernelPackages = pkgs.unstable.linuxPackages_zen; + kernelPackages = pkgs.unstable.linuxPackages_latest; initrd={ availableKernelModules = [ "xhci_pci" "ahci" "nvme" "usb_storage" "sd_mod" "vfio-pci"]; /* preDeviceCommands = '' diff --git a/hosts/satori/hardware.nix b/hosts/satori/hardware.nix index f7a0a44..8a40a8b 100644 --- a/hosts/satori/hardware.nix +++ b/hosts/satori/hardware.nix @@ -51,7 +51,7 @@ }; powerManagement = { enable = true; - cpuFreqGovernor = "powersave"; + cpuFreqGovernor = "schedutil"; }; hardware = { bluetooth.enable = true; diff --git a/hosts/satori/networking.nix b/hosts/satori/networking.nix index 63b7e27..f7e054f 100644 --- a/hosts/satori/networking.nix +++ b/hosts/satori/networking.nix @@ -6,7 +6,7 @@ wireless.enable = true; wireless.interfaces = [ "wlp0s20f3" ]; firewall = { - allowedTCPPorts = [ 22 18172 ]; + allowedTCPPorts = [ 22 18172 6600 ]; allowedUDPPorts = [ 22 17840 18172 ]; }; interfaces = { diff --git a/hosts/satori/pkgs.nix b/hosts/satori/pkgs.nix index 2fdd466..23df0e5 100644 --- a/hosts/satori/pkgs.nix +++ b/hosts/satori/pkgs.nix @@ -16,9 +16,10 @@ cachix gcc rustc - openjdk + stable.openjdk virtmanager tree-sitter + docker-compose ]; programs = { @@ -71,7 +72,6 @@ dconf.enable = true; adb.enable = true; light.enable = true; - noisetorch.enable = true; proxychains = { enable = true; chain.type = "dynamic"; @@ -98,5 +98,14 @@ experimental-features = nix-command ca-references flakes ''; trustedUsers = [ "root" "natto" ]; + binaryCaches = [ + "https://nix-gaming.cachix.org" + "https://nix-community.cachix.org" + "https://mirrors.tuna.tsinghua.edu.cn/nix-channels/store" + ]; + binaryCachePublicKeys = [ + "nix-gaming.cachix.org-1:nbjlureqMbRAxR1gJ/f3hxemL9svXaZF/Ees8vCUUs4=" + "nix-community.cachix.org-1:mB9FSh9qf2dCimDSUo8Zy7bkq5CX+/rkCWyvRCYg3Fs=" + ]; }; } diff --git a/hosts/satori/services.nix b/hosts/satori/services.nix index b91d34d..115a811 100644 --- a/hosts/satori/services.nix +++ b/hosts/satori/services.nix @@ -12,9 +12,14 @@ udev.extraRules = '' ACTION=="add|change", KERNEL=="sda", ATTR{queue/rotational}=="0", ATTR{queue/scheduler}="bfq" ''; + mysql = { + enable = true; + package = pkgs.mysql; + }; }; systemd.services = { tor.wantedBy = lib.mkForce []; + mysql.wantedBy = lib.mkForce []; logmein-hamachi.wantedBy = lib.mkForce []; openssh.wantedBy = lib.mkForce []; #printing.wantedBy = lib.mkForce []; diff --git a/hosts/satori/stuff.nix b/hosts/satori/stuff.nix index dcc3579..7a4ec70 100644 --- a/hosts/satori/stuff.nix +++ b/hosts/satori/stuff.nix @@ -1,7 +1,15 @@ -{config, agenix, pkgs, ... }: +{lib, config, agenix, pkgs, ... }: { time.timeZone = "Asia/Kolkata"; + environment = { + etc."current-system-packages".text = + let + packages = builtins.map (p: "${p.name}") config.environment.systemPackages; + sortedUnique = builtins.sort builtins.lessThan (lib.unique packages); + formatted = builtins.concatStringsSep "\n" sortedUnique; + in + formatted; sessionVariables = { QT_X11_NO_MITSHM="1"; QT_QPA_PLATFORMTHEME = "gtk3"; @@ -34,7 +42,7 @@ isNormalUser = true; shell = pkgs.zsh; home = "/home/natto"; - extraGroups = [ "wheel" "adbusers" "video" "libvirtd" ]; + extraGroups = [ "wheel" "adbusers" "video" "libvirtd" "docker" ]; }; i18n = { inputMethod = { @@ -44,5 +52,6 @@ fcitx.engines = with pkgs.fcitx-engines; [ m17n mozc ]; }; }; + virtualisation.docker.enable = true; gtk.iconCache.enable = true; } diff --git a/modules/emacs/default.nix b/modules/emacs/default.nix index a4b2aac..243b459 100644 --- a/modules/emacs/default.nix +++ b/modules/emacs/default.nix @@ -1,63 +1,56 @@ -{ pkgs, config, ... }: +{pkgs, ... }: { - environment.systemPackages = with pkgs; [ - (emacsWithPackagesFromUsePackage { - config = ./init.el; - package = emacsGcc; - alwaysEnsure = true; - extraEmacsPackages = epkgs: with epkgs; [ - use-package - tsc - ]; - override = epkgs : epkgs // { - tsc = epkgs.melpaPackages.tsc.overrideAttrs(oa: - let - version = "0.15.1"; - tsc-dyn = fetchurl { - url = "https://github.com/emacs-tree-sitter/elisp-tree-sitter/releases/download/${version}/tsc-dyn.so"; - sha256 = "sha256-TrwyQZEfARHfafT4IhxR+p7vpjSuw9lUcgOSwCvPxe4="; - }; - version-file = writeText "DYN-VERSION" version; +services.emacs = { + enable = true; + package = with pkgs; emacsWithPackagesFromUsePackage { + config = ./init.el; + package = emacsGcc; + alwaysEnsure = true; + extraEmacsPackages = epkgs: with epkgs; [ + use-package + tsc + ]; + + #https://github.com/NixOS/nixpkgs/issues/108089 + override = epkgs : epkgs // { + tsc = epkgs.melpaPackages.tsc.overrideAttrs(oa: + let + version = "0.15.2"; + tsc-dyn = fetchurl { + url = "https://github.com/emacs-tree-sitter/elisp-tree-sitter/releases/download/${version}/tsc-dyn.so"; + sha256 = "sha256-oOq/TAooHRUo7JypCblrB/ztABowAHv2LRhFL/ZmVrg="; + }; in { -/* src = fetchFromGitHub { - owner = "emacs-tree-sitter"; - repo = "elisp-tree-sitter"; - rev = version; - sha256 = "sha256-dGWg4dj+85kxytvm+nNEJUN9UXdr9L6pSRz5OqDMFAM="; - };*/ postInstall = '' cp ${tsc-dyn} $out/share/emacs/site-lisp/elpa/tsc-${oa.version}/tsc-dyn.so - cp ${version-file} $out/share/emacs/site-lisp/elpa/tsc-${oa.version}/DYN-VERSION + echo -n ${version} > $out/share/emacs/site-lisp/elpa/tsc-${oa.version}/DYN-VERSION ''; }); - tree-sitter-langs = epkgs.melpaPackages.tree-sitter-langs.overrideAttrs (oa: - let - tree-sitter-grammars = super.stdenv.mkDerivation rec { - name = "tree-sitter-grammars"; - version = "0.10.4"; - src = fetchzip { - url = "https://github.com/emacs-tree-sitter/tree-sitter-langs/releases/download/${version}/tree-sitter-grammars-linux-${version}.tar.gz"; - sha256 = "sha256-Z+JtuGLTCVhCJBR60cbcDgWtdKcoYGWoeI5u9GcfvUQ="; - stripRoot = false; - }; + tree-sitter-langs = epkgs.melpaPackages.tree-sitter-langs.overrideAttrs (oa: + let + tree-sitter-grammars = super.stdenv.mkDerivation rec { + name = "tree-sitter-grammars"; + version = "0.10.7"; + src = fetchzip { + url = "https://github.com/emacs-tree-sitter/tree-sitter-langs/releases/download/${version}/tree-sitter-grammars-linux-${version}.tar.gz"; + sha256 = "sha256-pdSMyTUUAj4JsRLbJMUMbQSOaSEYlsaqVdmaXtXtSJw="; + stripRoot = false; + }; installPhase = '' install -d $out/langs/bin install -m444 * $out/langs/bin - echo -n $version > $out/langs/bin/BUNDLE-VERSION + ''; + postInstall = '' + echo -n "${version}" > $out/langs/bin/BUNDLE-VERSION ''; }; in { - postPatch = oa.postPatch or "" + '' - substituteInPlace ./tree-sitter-langs-build.el \ - --replace "tree-sitter-langs-grammar-dir tree-sitter-langs--dir" "tree-sitter-langs-grammar-dir \"${tree-sitter-grammars}/langs\"" - ''; -# postInstall = oa.postInstall or "" + '' - # mkdir $out/share/emacs/site-lisp/elpa/tree-sitter-langs-${oa.version}/bin - # cp ${binaries}/* $out/share/emacs/site-lisp/elpa/tree-sitter-langs-${oa.version}/bin/ - # ''; + postPatch = oa.postPatch or "" + '' + substituteInPlace ./tree-sitter-langs-build.el \ + --replace "tree-sitter-langs-grammar-dir tree-sitter-langs--dir" "tree-sitter-langs-grammar-dir \"${tree-sitter-grammars}/langs\"" + ''; }); - gruvbox-theme = epkgs.melpaPackages.gruvbox-theme.overrideAttrs(_: { patches = [ ./gruvbox-el.patch ]; } ); - }; - }) - ]; + gruvbox-theme = epkgs.melpaPackages.gruvbox-theme.overrideAttrs(_: { patches = [ ./gruvbox-el.patch ]; } ); + }; + };}; } diff --git a/modules/emacs/init.el b/modules/emacs/init.el index d797d34..49337d6 100644 --- a/modules/emacs/init.el +++ b/modules/emacs/init.el @@ -19,20 +19,19 @@ c-blue-2 "#83a598" c-magenta-2 "#d3869b" c-cyan-2 "#8ec07c" c-white-2 "#ebdbb2") -;(setq vc-handled-backends nil) ; vc is slow as fuck with git - ;;settings (setq display-line-numbers-type 'relative) (setq inhibit-startup-screen t) (set-face-attribute 'default nil :font "Monoid" :height 120) (global-hl-line-mode 1) -(scroll-bar-mode 0) -(tool-bar-mode 0) +(scroll-bar-mode 0) (tool-bar-mode 0) (menu-bar-mode 0) (fringe-mode 0) (global-display-line-numbers-mode 1) (setq initial-major-mode 'emacs-lisp-mode) (setq frame-resize-pixelwise t) +(setq auto-window-vscroll nil) +(setq scroll-step 1) ;;add packages and shit (require 'package) @@ -56,9 +55,13 @@ c-white-2 "#ebdbb2") :config (elcord-mode 1)) +(use-package undo-tree + :config + (global-undo-tree-mode 1)) + (use-package evil :config - (setq evil-undo-system 'undo-redo) + (evil-set-undo-system 'undo-tree) (evil-mode 1)) (use-package evil-colemak-basics @@ -82,7 +85,8 @@ c-white-2 "#ebdbb2") (define-key evil-treemacs-state-map (kbd "M-E") #'treemacs-previous-line-other-window) (define-key evil-treemacs-state-map (kbd "M") #'treemacs-collapse-parent-node) (evil-define-key 'treemacs treemacs-mode-map (kbd "m") #'treemacs-COLLAPSE-action) - (evil-define-key 'treemacs treemacs-mode-map (kbd "i") #'treemacs-RET-action)) + (evil-define-key 'treemacs treemacs-mode-map (kbd "i") #'treemacs-RET-action) + ) (use-package lsp-mode :config @@ -121,12 +125,22 @@ c-white-2 "#ebdbb2") (use-package magit) +(use-package nix-mode + :mode "\\.nix\\'") + (defface bufname `((t :foreground ,c-fg :background ,c-bg :weight bold )) - "Custom faces for buffer name" + "Custom face for buffer name" + :group 'mode-line-faces ) + +(defface majmode + `((t :foreground ,c-fg + :background ,c-bg + )) + "Custom face for major mode" :group 'mode-line-faces ) (defface gitmode @@ -134,13 +148,23 @@ c-white-2 "#ebdbb2") :background ,c-red-2 :weight bold )) - "Custom face for git branch" + "Custom face for VC" + :group 'mode-line-faces ) +(defface infomode + `((t :foreground ,c-bg + :background ,c-green + :weight bold + )) + "For showing line and column number" :group 'mode-line-faces ) -(setq-default mode-line-format - '((:propertize " %b " face bufname) - (vc-mode (:propertize (" " vc-mode " " ) face gitmode)))) +(setq-default mode-line-format + '((:propertize " %b " face bufname) + (vc-mode (:propertize (" " vc-mode " " ) face gitmode)) + (:propertize (" " mode-name " ") face majmode) + (:propertize ("[[ %l | %c || %p . %+%@ ]]") face infomode) + ("%-"))) (setq exclude-ln '(term-mode-hook eshell-mode-hook shell-mode-hook)) (while exclude-ln diff --git a/modules/nvidia-offload.nix b/modules/nvidia-offload.nix index ca71530..c9865d1 100644 --- a/modules/nvidia-offload.nix +++ b/modules/nvidia-offload.nix @@ -16,10 +16,12 @@ in opengl = { driSupport32Bit = true; #package = pkgs.mesa_drivers; + extraPackages32 = with pkgs.pkgsi686Linux; [ libva ]; enable = true; }; nvidia = { prime = { + # sync.enable = true; offload = { enable = true; }; intelBusId = "PCI:0:2:0"; nvidiaBusId = "PCI:1:0:0"; @@ -31,5 +33,8 @@ in }; }; }; - services.xserver.videoDrivers = [ "nvidia" ]; + services.xserver = { + videoDrivers = [ "nvidia" ]; + dpi = 96; + }; } diff --git a/modules/nvim/default.nix b/modules/nvim/default.nix index 2fcda6f..094e00d 100644 --- a/modules/nvim/default.nix +++ b/modules/nvim/default.nix @@ -3,9 +3,10 @@ { programs.neovim = { enable = true; - package = pkgs.neovim-unwrapped.overrideAttrs (_:{ - nativeBuildInputs = with pkgs.unstable; [ unzip cmake pkgconfig gettext tree-sitter ]; - }); + package = pkgs.neovim-nightly; + # package = pkgs.neovim-nightly.overrideAttrs (_:{ + # nativeBuildInputs = with pkgs; [ unzip cmake pkgconfig gettext tree-sitter ]; + # }); defaultEditor = true; configure = { customRC = '' @@ -19,7 +20,6 @@ auto-pairs vim-floaterm vim-closetag - vim-floaterm nerdcommenter nvim-compe nvim-lspconfig @@ -29,7 +29,7 @@ nvim-tree-lua vim-vsnip nvim-treesitter - vim-nix + vim-latex-live-preview (gruvbox.overrideAttrs (oa: { patches = [ ./gruvbox.patch ]; })) ]; }; diff --git a/modules/nvim/init.lua b/modules/nvim/init.lua index 0d2afc4..8bd7abd 100644 --- a/modules/nvim/init.lua +++ b/modules/nvim/init.lua @@ -1,5 +1,5 @@ vim.api.nvim_set_option("termguicolors", true) -local nvim_lsp = require('lspconfig') +local nvimlsp = require('lspconfig') local comm = vim.api.nvim_command local bind = vim.api.nvim_set_keymap local setvar = vim.api.nvim_set_var @@ -11,8 +11,6 @@ end --SETTINGS -comm("syntax enable") -comm("syntax sync minlines=100") vim.o.cmdheight = 1 vim.o.modifiable = true vim.o.cursorline = true @@ -25,7 +23,7 @@ vim.o.cmdheight = 1 vim.o.mouse = "a" vim.o.splitbelow = true vim.o.splitright = true -comm("set nowrap") +--comm("set nowrap") vim.o.conceallevel = 0 vim.o.tabstop = 2 vim.o.shiftwidth = 2 @@ -66,6 +64,7 @@ cdhbind('k', 'n') cdhbind('f', 'e') cdhbind('t', 'f') cdhbind('j', 't') + bind('n', "", ":w", {noremap=true}) bind('n', "", ":resize -2", {noremap=true, silent=true}) bind('n', "", ":resize +2", {noremap=true, silent=true}) @@ -90,9 +89,9 @@ function _G.CompileRun() ['java'] = 'java ' .. file, ['lisp'] = 'clisp ' .. file, ['python'] = 'python3 ' .. file, - ['c'] = 'gcc ' .. file .. ' -o ' .. noext .. ' && ' .. noext .. ' && rm ' .. noext, + ['c'] = 'gcc ' .. file .. ' -o ' .. noext .. ' -Wno-unused-result ' .. ' && ' .. noext .. ' && rm ' .. noext, ['rust'] = 'rustc ' .. file .. ' -o ' .. noext .. ' && ' .. noext .. ' && rm ' .. noext, - ['cpp'] = 'g++ -std=c++17 ' .. file .. ' -o ' .. noext .. ' && ' .. noext .. ' && rm ' .. noext, + ['cpp'] = 'g++ -std=c++17 ' .. file .. ' -o ' .. noext .. ' -Wno-unused-result ' .. ' && ' .. noext .. ' && rm ' .. noext, ['haskell'] = 'ghc -dynamic ' .. file .. ' && ' .. noext .. ' && rm ' .. noext .. ' ' .. noext .. '.o ' .. noext .. '.hi', ['sh'] = 'sh ' .. file, ['javascript']= 'node ' .. file, @@ -126,14 +125,15 @@ bind('n', "", ":call v:lua.Repl()", {silent=true}) --nvim-tree.lua -vim.g.nvim_tree_auto_close = 1 vim.g.nvim_tree_auto_ignore_ft = { "startify" } -vim.g.nvim_tree_follow = 1 vim.g.nvim_tree_git_hl = 1 vim.g.nvim_tree_highlight_opened_files = 1 vim.g.nvim_tree_width_allow_resize = 1 -vim.g.nvim_tree_lsp_diagnostics = 1 -vim.g.nvim_tree_lsp_diagnostics = 1 +require'nvim-tree'.setup { + nvim_tree_auto_close = 1, + nvim_tree_follow = 1, + nvim_tree_lsp_diagnostics = 1 +} vim.g.nvim_tree_window_picker_exclude = { ['buftype'] = { 'terminal' } } @@ -187,7 +187,7 @@ vim.g.presence_main_image = "file" --treesitter-nvim require'nvim-treesitter.configs'.setup { - ensure_installed = "all", + ensure_install = "all", highlight = { enable = true, additional_vim_regex_highlighting = true, @@ -197,7 +197,11 @@ require'nvim-treesitter.configs'.setup { } } ---misc +--vim-latex-live-preview +vim.g.livepreview_previewer = "zathura" + + + require'colorizer'.setup() --lsp and compe stuff i got from various places @@ -235,6 +239,7 @@ require'compe'.setup { spell = true; treesitter = true; nvim_lua = true; + vsnip = true; }; } @@ -250,6 +255,7 @@ local check_back_space = function() end end +vim.g.vsnip_snippet_dir = "/home/natto/.vsnip" -- Use (s-)tab to: --- move to prev/next item in completion menuone --- jump to prev/next snippet's placeholder @@ -335,7 +341,7 @@ local statusline = { } vim.o.statusline = table.concat(statusline) -local servers = { "ccls", "rust_analyzer", "tsserver", "hls", "pylsp" } +local servers = { "ccls", "rust_analyzer", "tsserver", "hls", "pylsp", "texlab", "rnix" } local capabilities = vim.lsp.protocol.make_client_capabilities() capabilities.textDocument.completion.completionItem.snippetSupport = true capabilities.textDocument.completion.completionItem.resolveSupport = { @@ -347,5 +353,8 @@ capabilities.textDocument.completion.completionItem.resolveSupport = { } for _, lsp in ipairs(servers) do - nvim_lsp[lsp].setup { capabilities = capabilities, on_attach = on_attach } + nvimlsp[lsp].setup { capabilities = capabilities, on_attach = on_attach } end + +vim.g.tex_flavor = "latex" +comm("set syntax=on") diff --git a/modules/pipewire.nix b/modules/pipewire.nix index c951abd..a670ddf 100644 --- a/modules/pipewire.nix +++ b/modules/pipewire.nix @@ -1,66 +1,77 @@ {lib, config, pkgs, ... }: { - services.pipewire = { - enable = true; - alsa = { + services = { + pipewire = { enable = true; - support32Bit = true; - }; - pulse = { - enable = true; - }; - config.pipewire = { - context.modules = [ - { - name = "libpipewire-module-rtkit"; - args = { - nice.level = -15; - rt.prio = 88; - rt.time.soft = 200000; - rt.time.hard = 200000; - }; - flags = [ "ifexists" "nofail" ]; - } - { name = "libpipewire-module-protocol-native"; } - { name = "libpipewire-module-profiler"; } - { name = "libpipewire-module-metadata"; } - { name = "libpipewire-module-spa-device-factory"; } - { name = "libpipewire-module-spa-node-factory"; } - { name = "libpipewire-module-client-node"; } - { name = "libpipewire-module-client-device"; } - { - name = "libpipewire-module-portal"; - flags = [ "ifexists" "nofail" ]; - } - { - name = "libpipewire-module-access"; - args = {}; - } - { name = "libpipewire-module-adapter"; } - { name = "libpipewire-module-link-factory"; } - { name = "libpipewire-module-session-manager"; } - ]; - }; + alsa = { + enable = true; + support32Bit = true; + }; + pulse.enable = true; + #jack.enable = true; + config.pipewire = { + context.objects = [ + { + factory = "spa-node-factory"; + args = { + factory.name = "support.node.driver"; + node.name = "Dummy-Driver"; + priority.driver = 8000; + }; + } + ]; + context.modules = [ + { + name = "libpipewire-module-rtkit"; + args = { + nice.level = -15; + rt.prio = 88; + rt.time.soft = 200000; + rt.time.hard = 200000; + }; + flags = [ "ifexists" "nofail" ]; + } + { name = "libpipewire-module-protocol-native"; } + { name = "libpipewire-module-profiler"; } + { name = "libpipewire-module-metadata"; } + { name = "libpipewire-module-spa-device-factory"; } + { name = "libpipewire-module-spa-node-factory"; } + { name = "libpipewire-module-client-node"; } + { name = "libpipewire-module-client-device"; } + { + name = "libpipewire-module-portal"; + flags = [ "ifexists" "nofail" ]; + } + { + name = "libpipewire-module-access"; + args = {}; + } + { name = "libpipewire-module-adapter"; } + { name = "libpipewire-module-link-factory"; } + { name = "libpipewire-module-session-manager"; } + ]; + }; - config.pipewire-pulse = { - context.modules = [ - { name = "libpipewire-module-protocol-native"; } - { name = "libpipewire-module-client-node"; } - { name = "libpipewire-module-adapter"; } - { name = "libpipewire-module-metadata"; } - { - name = "libpipewire-module-protocol-pulse"; - args = { - pulse.min.req = "32/48000"; - pulse.min.quantum = "32/48000"; - pulse.min.frag = "32/48000"; - }; - } - ]; - stream.properties = { - node.latency = "32/48000"; - resample.quality = 1; + config.pipewire-pulse = { + context.modules = [ + { name = "libpipewire-module-protocol-native"; } + { name = "libpipewire-module-client-node"; } + { name = "libpipewire-module-adapter"; } + { name = "libpipewire-module-metadata"; } + { + name = "libpipewire-module-protocol-pulse"; + args = { + pulse.min.req = "32/48000"; + pulse.min.quantum = "32/48000"; + pulse.min.frag = "32/48000"; + }; + } + ]; + stream.properties = { + node.latency = "32/48000"; + resample.quality = 1; + }; }; }; }; diff --git a/modules/xorg.nix b/modules/xorg.nix index 3e1a5a3..4d530ef 100644 --- a/modules/xorg.nix +++ b/modules/xorg.nix @@ -7,13 +7,15 @@ # ''; #in { + console.useXkbConfig = true; services = { xserver = { enable = true; libinput= { enable = true; mouse = { - accelSpeed = null; + accelSpeed = "0"; + # accelProfile = "flat"; }; touchpad = { middleEmulation = false; @@ -26,7 +28,8 @@ startx = { enable = true; }; -# sessionCommands = "${pkgs.xorg.xkbcomp}/bin/xkbcomp ${compiledLayout} $DISPLAY"; + # lightdm.enable = true; + # sessionCommands = "${pkgs.xorg.xkbcomp}/bin/xkbcomp ${compiledLayout} $DISPLAY"; }; extraLayouts = { us-colemak = { diff --git a/overlays/customscripts/src/osusens b/overlays/customscripts/src/osusens new file mode 100644 index 0000000..a910bdd --- /dev/null +++ b/overlays/customscripts/src/osusens @@ -0,0 +1,11 @@ +#!/usr/bin/env bash +if [ $# != 2 ]; then + echo "Two args required" + exit 1 +fi + +if [ $1 == "on" ]; then + xinput --set-prop $2 'libinput Accel Profile Enabled' 0, 1 +else + xinput --set-prop $2 'libinput Accel Profile Enabled' 1, 0 +fi diff --git a/overlays/overridesandshit.nix b/overlays/overridesandshit.nix index 8903354..c8f97e6 100644 --- a/overlays/overridesandshit.nix +++ b/overlays/overridesandshit.nix @@ -24,12 +24,6 @@ final: prev: { patches = [./patches/st.patch]; }); - kbd = prev.kbd.overrideAttrs (oldAttrs: rec{ - buildInputs = oldAttrs.buildInputs ++ [ prev.gzip ]; - colemak-dh = prev.writeText "colemak-dh.map" (builtins.readFile ./colemak-dh.map); - postInstall = "${oldAttrs.postInstall}\n cp ${colemak-dh} $out/share/keymaps/i386/colemak/colemak-dh.map\n gzip $out/share/keymaps/i386/colemak/colemak-dh.map"; - }); - ncmpcpp = prev.ncmpcpp.override { visualizerSupport = true; clockSupport = true; @@ -44,9 +38,6 @@ final: prev: { fetchSubmodules = true; }; }); - discord = prev.discord.overrideAttrs (_ : { - src = builtins.fetchTarball { url = "https://discord.com/api/download/stable?platform=linux&format=tar.gz"; sha256="1ahj4bhdfd58jcqh54qcgafljqxl1747fqqwxhknqlasa83li75n";}; - }); proxychains = prev.proxychains.overrideAttrs (_ : { postInstall = ":";