stuffs
This commit is contained in:
parent
09232be6a3
commit
e55f9661a3
|
@ -23,6 +23,7 @@
|
|||
agenix = mkInput "ryantm/agenix";
|
||||
catppuccin = mkInput "catppuccin/nix";
|
||||
chaotic = mkInput "chaotic-cx/nyx/nyxpkgs-unstable";
|
||||
emacs = mkCustomUrl "git+https://git.pupbrained.xyz/pupbrained/nixmacs.git";
|
||||
hyprland = mkWithSubmodules "https://github.com/hyprwm/Hyprland";
|
||||
hyprland-plugins = mkFollowing "hyprwm/hyprland-plugins" "hyprland";
|
||||
impermanence = mkInput "nix-community/impermanence";
|
||||
|
|
450
flake.lock
450
flake.lock
|
@ -41,11 +41,11 @@
|
|||
]
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1722347739,
|
||||
"narHash": "sha256-rAoh+K6KG+b1DwSWtqRVocdojnH6nGk6q07mNltoUSM=",
|
||||
"lastModified": 1723405438,
|
||||
"narHash": "sha256-bpmC2m7OhlDvqgQZdZ2jBLyeIkq/Jld3X4bqRAxBSp8=",
|
||||
"owner": "hyprwm",
|
||||
"repo": "aquamarine",
|
||||
"rev": "7c3565f9bedc7cb601cc0baa14792247e4dc1d5a",
|
||||
"rev": "9312aa28271c91e5d67ecb9def527b2bbcff0e66",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
|
@ -97,11 +97,11 @@
|
|||
"yafas": "yafas"
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1723389140,
|
||||
"narHash": "sha256-CYcXNzK5YMHeSCCproj64kwtonaavbCnDnq6koYXi88=",
|
||||
"lastModified": 1723489118,
|
||||
"narHash": "sha256-UCsoBuUTLHcwv4e9RzVZ1yzgQZHFs49yPx4FXuOSR2s=",
|
||||
"owner": "chaotic-cx",
|
||||
"repo": "nyx",
|
||||
"rev": "a512107512f8d527db7152d48dedd6ebb764f9b9",
|
||||
"rev": "54148c6f5370689f50a069db3e7497ae4714004a",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
|
@ -113,8 +113,8 @@
|
|||
},
|
||||
"codeium": {
|
||||
"inputs": {
|
||||
"flake-utils": "flake-utils_2",
|
||||
"nixpkgs": "nixpkgs_6"
|
||||
"flake-utils": "flake-utils_4",
|
||||
"nixpkgs": "nixpkgs_9"
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1720551955,
|
||||
|
@ -209,6 +209,47 @@
|
|||
"type": "github"
|
||||
}
|
||||
},
|
||||
"emacs": {
|
||||
"inputs": {
|
||||
"emacs-overlay": "emacs-overlay",
|
||||
"flake-utils": "flake-utils_2",
|
||||
"nixpkgs": "nixpkgs_4",
|
||||
"treefmt-nix": "treefmt-nix"
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1723525014,
|
||||
"narHash": "sha256-hW/uF5yIJ0rEDfeZbsY3FX8HS+Nx+FZ+zgzxKPi38mY=",
|
||||
"ref": "refs/heads/main",
|
||||
"rev": "40d6599358cd66ee3b7f7b19452e8e2a9d9b2e97",
|
||||
"revCount": 3,
|
||||
"type": "git",
|
||||
"url": "https://git.pupbrained.xyz/pupbrained/nixmacs.git"
|
||||
},
|
||||
"original": {
|
||||
"type": "git",
|
||||
"url": "https://git.pupbrained.xyz/pupbrained/nixmacs.git"
|
||||
}
|
||||
},
|
||||
"emacs-overlay": {
|
||||
"inputs": {
|
||||
"flake-utils": "flake-utils",
|
||||
"nixpkgs": "nixpkgs_3",
|
||||
"nixpkgs-stable": "nixpkgs-stable"
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1723482913,
|
||||
"narHash": "sha256-wzIUWp672DHcFYhfKBxzfs4nSlm6W34tOmTOlFwwETE=",
|
||||
"owner": "nix-community",
|
||||
"repo": "emacs-overlay",
|
||||
"rev": "463ee3b4d1c63385c58d7742d33dbe6bdc8fd2a1",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
"owner": "nix-community",
|
||||
"repo": "emacs-overlay",
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"fenix": {
|
||||
"inputs": {
|
||||
"nixpkgs": [
|
||||
|
@ -218,11 +259,11 @@
|
|||
"rust-analyzer-src": "rust-analyzer-src"
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1723357708,
|
||||
"narHash": "sha256-y0FYxyHd45FQkl1S4PIq9eNaEe2tEemHpQ3sp+C19Pk=",
|
||||
"lastModified": 1723444276,
|
||||
"narHash": "sha256-ErWXmB84hedrDmeaHOaFFfNShC21AopTfM4x4rlvk3c=",
|
||||
"owner": "nix-community",
|
||||
"repo": "fenix",
|
||||
"rev": "344945339ec0e01c62195b849ae8a67eaa1004a3",
|
||||
"rev": "70c22198ab822aa93c92a7ec0933908b17131edd",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
|
@ -368,12 +409,15 @@
|
|||
}
|
||||
},
|
||||
"flake-utils": {
|
||||
"inputs": {
|
||||
"systems": "systems_3"
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1667395993,
|
||||
"narHash": "sha256-nuEHfE/LcWyuSWnS8t12N1wc105Qtau+/OdUAjtQ0rA=",
|
||||
"lastModified": 1710146030,
|
||||
"narHash": "sha256-SZ5L6eA7HJ/nmkzGG7/ISclqe6oZdOZTNoesiInkXPQ=",
|
||||
"owner": "numtide",
|
||||
"repo": "flake-utils",
|
||||
"rev": "5aed5285a952e0b949eb3ba02c12fa4fcfef535f",
|
||||
"rev": "b1d9ab70662946ef0850d488da1c9019f3a9752a",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
|
@ -384,7 +428,7 @@
|
|||
},
|
||||
"flake-utils-plus": {
|
||||
"inputs": {
|
||||
"flake-utils": "flake-utils_5"
|
||||
"flake-utils": "flake-utils_7"
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1715533576,
|
||||
|
@ -403,7 +447,7 @@
|
|||
},
|
||||
"flake-utils-plus_2": {
|
||||
"inputs": {
|
||||
"flake-utils": "flake-utils_6"
|
||||
"flake-utils": "flake-utils_8"
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1715533576,
|
||||
|
@ -422,7 +466,40 @@
|
|||
},
|
||||
"flake-utils_2": {
|
||||
"inputs": {
|
||||
"systems": "systems_5"
|
||||
"systems": "systems_4"
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1710146030,
|
||||
"narHash": "sha256-SZ5L6eA7HJ/nmkzGG7/ISclqe6oZdOZTNoesiInkXPQ=",
|
||||
"owner": "numtide",
|
||||
"repo": "flake-utils",
|
||||
"rev": "b1d9ab70662946ef0850d488da1c9019f3a9752a",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
"owner": "numtide",
|
||||
"repo": "flake-utils",
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"flake-utils_3": {
|
||||
"locked": {
|
||||
"lastModified": 1667395993,
|
||||
"narHash": "sha256-nuEHfE/LcWyuSWnS8t12N1wc105Qtau+/OdUAjtQ0rA=",
|
||||
"owner": "numtide",
|
||||
"repo": "flake-utils",
|
||||
"rev": "5aed5285a952e0b949eb3ba02c12fa4fcfef535f",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
"owner": "numtide",
|
||||
"repo": "flake-utils",
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"flake-utils_4": {
|
||||
"inputs": {
|
||||
"systems": "systems_7"
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1701680307,
|
||||
|
@ -438,43 +515,43 @@
|
|||
"type": "github"
|
||||
}
|
||||
},
|
||||
"flake-utils_3": {
|
||||
"inputs": {
|
||||
"systems": "systems_6"
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1710146030,
|
||||
"narHash": "sha256-SZ5L6eA7HJ/nmkzGG7/ISclqe6oZdOZTNoesiInkXPQ=",
|
||||
"owner": "numtide",
|
||||
"repo": "flake-utils",
|
||||
"rev": "b1d9ab70662946ef0850d488da1c9019f3a9752a",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
"owner": "numtide",
|
||||
"repo": "flake-utils",
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"flake-utils_4": {
|
||||
"inputs": {
|
||||
"systems": "systems_7"
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1710146030,
|
||||
"narHash": "sha256-SZ5L6eA7HJ/nmkzGG7/ISclqe6oZdOZTNoesiInkXPQ=",
|
||||
"owner": "numtide",
|
||||
"repo": "flake-utils",
|
||||
"rev": "b1d9ab70662946ef0850d488da1c9019f3a9752a",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
"owner": "numtide",
|
||||
"repo": "flake-utils",
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"flake-utils_5": {
|
||||
"inputs": {
|
||||
"systems": "systems_8"
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1710146030,
|
||||
"narHash": "sha256-SZ5L6eA7HJ/nmkzGG7/ISclqe6oZdOZTNoesiInkXPQ=",
|
||||
"owner": "numtide",
|
||||
"repo": "flake-utils",
|
||||
"rev": "b1d9ab70662946ef0850d488da1c9019f3a9752a",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
"owner": "numtide",
|
||||
"repo": "flake-utils",
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"flake-utils_6": {
|
||||
"inputs": {
|
||||
"systems": "systems_9"
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1710146030,
|
||||
"narHash": "sha256-SZ5L6eA7HJ/nmkzGG7/ISclqe6oZdOZTNoesiInkXPQ=",
|
||||
"owner": "numtide",
|
||||
"repo": "flake-utils",
|
||||
"rev": "b1d9ab70662946ef0850d488da1c9019f3a9752a",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
"owner": "numtide",
|
||||
"repo": "flake-utils",
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"flake-utils_7": {
|
||||
"locked": {
|
||||
"lastModified": 1644229661,
|
||||
"narHash": "sha256-1YdnJAsNy69bpcjuoKdOYQX0YxZBiCYZo4Twxerqv7k=",
|
||||
|
@ -489,9 +566,9 @@
|
|||
"type": "github"
|
||||
}
|
||||
},
|
||||
"flake-utils_6": {
|
||||
"flake-utils_8": {
|
||||
"inputs": {
|
||||
"systems": "systems_8"
|
||||
"systems": "systems_10"
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1694529238,
|
||||
|
@ -509,7 +586,7 @@
|
|||
},
|
||||
"flakegen": {
|
||||
"inputs": {
|
||||
"systems": "systems_3"
|
||||
"systems": "systems_5"
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1707120544,
|
||||
|
@ -610,11 +687,11 @@
|
|||
]
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1723015306,
|
||||
"narHash": "sha256-jQnFEtH20/OsDPpx71ntZzGdRlpXhUENSQCGTjn//NA=",
|
||||
"lastModified": 1723399884,
|
||||
"narHash": "sha256-97wn0ihhGqfMb8WcUgzzkM/TuAxce2Gd20A8oiruju4=",
|
||||
"owner": "nix-community",
|
||||
"repo": "home-manager",
|
||||
"rev": "b3d5ea65d88d67d4ec578ed11d4d2d51e3de525e",
|
||||
"rev": "086f619dd991a4d355c07837448244029fc2d9ab",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
|
@ -681,11 +758,11 @@
|
|||
]
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1721330371,
|
||||
"narHash": "sha256-aYlHTWylczLt6ERJyg6E66Y/XSCbVL7leVcRuJmVbpI=",
|
||||
"lastModified": 1722623071,
|
||||
"narHash": "sha256-sLADpVgebpCBFXkA1FlCXtvEPu1tdEsTfqK1hfeHySE=",
|
||||
"owner": "hyprwm",
|
||||
"repo": "hyprcursor",
|
||||
"rev": "4493a972b48f9c3014befbbf381ed5fff91a65dc",
|
||||
"rev": "912d56025f03d41b1ad29510c423757b4379eb1c",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
|
@ -701,16 +778,16 @@
|
|||
"hyprlang": "hyprlang",
|
||||
"hyprutils": "hyprutils",
|
||||
"hyprwayland-scanner": "hyprwayland-scanner",
|
||||
"nixpkgs": "nixpkgs_3",
|
||||
"systems": "systems_4",
|
||||
"nixpkgs": "nixpkgs_6",
|
||||
"systems": "systems_6",
|
||||
"xdph": "xdph"
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1723405096,
|
||||
"narHash": "sha256-2C5YJ3lYuRFTixTIfi5XL4IbMaf+bZ/qowyhZ5XKITs=",
|
||||
"lastModified": 1723488592,
|
||||
"narHash": "sha256-nPYQrQD8rldLIhrz6px0YHGB4WwIaWLdmBtWsMgLLNI=",
|
||||
"ref": "refs/heads/main",
|
||||
"rev": "118d4e1001d5847aa42d1e5d5fa9623954ae751d",
|
||||
"revCount": 5078,
|
||||
"rev": "77cf651825c2afac69e3a827ff910a62c73e1218",
|
||||
"revCount": 5083,
|
||||
"submodules": true,
|
||||
"type": "git",
|
||||
"url": "https://github.com/hyprwm/Hyprland"
|
||||
|
@ -819,11 +896,11 @@
|
|||
]
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1722098849,
|
||||
"narHash": "sha256-D3wIZlBNh7LuZ0NaoCpY/Pvu+xHxIVtSN+KkWZYvvVs=",
|
||||
"lastModified": 1722869141,
|
||||
"narHash": "sha256-0KU4qhyMp441qfwbirNg3+wbm489KnEjXOz2I/RbeFs=",
|
||||
"owner": "hyprwm",
|
||||
"repo": "hyprutils",
|
||||
"rev": "5dcbbc1e3de40b2cecfd2007434d86e924468f1f",
|
||||
"rev": "0252fd13e78e60fb0da512a212e56007515a49f7",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
|
@ -999,7 +1076,7 @@
|
|||
"flake-compat": "flake-compat",
|
||||
"flake-parts": "flake-parts",
|
||||
"libgit2": "libgit2",
|
||||
"nixpkgs": "nixpkgs_4",
|
||||
"nixpkgs": "nixpkgs_7",
|
||||
"nixpkgs-regression": "nixpkgs-regression",
|
||||
"pre-commit-hooks": "pre-commit-hooks"
|
||||
},
|
||||
|
@ -1064,7 +1141,70 @@
|
|||
"type": "github"
|
||||
}
|
||||
},
|
||||
"nixpkgs-stable": {
|
||||
"locked": {
|
||||
"lastModified": 1723282977,
|
||||
"narHash": "sha256-oTK91aOlA/4IsjNAZGMEBz7Sq1zBS0Ltu4/nIQdYDOg=",
|
||||
"owner": "NixOS",
|
||||
"repo": "nixpkgs",
|
||||
"rev": "a781ff33ae258bbcfd4ed6e673860c3e923bf2cc",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
"owner": "NixOS",
|
||||
"ref": "nixos-24.05",
|
||||
"repo": "nixpkgs",
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"nixpkgs_10": {
|
||||
"locked": {
|
||||
"lastModified": 1723421421,
|
||||
"narHash": "sha256-ohKD5dTOkz2wUa2od3G5COc0iAF2sV4HcNVeoPOfp7U=",
|
||||
"owner": "NixOS",
|
||||
"repo": "nixpkgs",
|
||||
"rev": "4e7d996aa858660e3261b4834ab00415cfe9b0fe",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
"owner": "NixOS",
|
||||
"repo": "nixpkgs",
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"nixpkgs_11": {
|
||||
"locked": {
|
||||
"lastModified": 1723175592,
|
||||
"narHash": "sha256-M0xJ3FbDUc4fRZ84dPGx5VvgFsOzds77KiBMW/mMTnI=",
|
||||
"owner": "NixOS",
|
||||
"repo": "nixpkgs",
|
||||
"rev": "5e0ca22929f3342b19569b21b2f3462f053e497b",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
"owner": "NixOS",
|
||||
"ref": "nixos-unstable",
|
||||
"repo": "nixpkgs",
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"nixpkgs_12": {
|
||||
"locked": {
|
||||
"lastModified": 1720957393,
|
||||
"narHash": "sha256-oedh2RwpjEa+TNxhg5Je9Ch6d3W1NKi7DbRO1ziHemA=",
|
||||
"owner": "nixos",
|
||||
"repo": "nixpkgs",
|
||||
"rev": "693bc46d169f5af9c992095736e82c3488bf7dbb",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
"owner": "nixos",
|
||||
"ref": "nixos-unstable",
|
||||
"repo": "nixpkgs",
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"nixpkgs_13": {
|
||||
"locked": {
|
||||
"lastModified": 1720957393,
|
||||
"narHash": "sha256-oedh2RwpjEa+TNxhg5Je9Ch6d3W1NKi7DbRO1ziHemA=",
|
||||
|
@ -1098,11 +1238,11 @@
|
|||
},
|
||||
"nixpkgs_3": {
|
||||
"locked": {
|
||||
"lastModified": 1722185531,
|
||||
"narHash": "sha256-veKR07psFoJjINLC8RK4DiLniGGMgF3QMlS4tb74S6k=",
|
||||
"lastModified": 1723175592,
|
||||
"narHash": "sha256-M0xJ3FbDUc4fRZ84dPGx5VvgFsOzds77KiBMW/mMTnI=",
|
||||
"owner": "NixOS",
|
||||
"repo": "nixpkgs",
|
||||
"rev": "52ec9ac3b12395ad677e8b62106f0b98c1f8569d",
|
||||
"rev": "5e0ca22929f3342b19569b21b2f3462f053e497b",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
|
@ -1113,22 +1253,6 @@
|
|||
}
|
||||
},
|
||||
"nixpkgs_4": {
|
||||
"locked": {
|
||||
"lastModified": 1709083642,
|
||||
"narHash": "sha256-7kkJQd4rZ+vFrzWu8sTRtta5D1kBG0LSRYAfhtmMlSo=",
|
||||
"owner": "NixOS",
|
||||
"repo": "nixpkgs",
|
||||
"rev": "b550fe4b4776908ac2a861124307045f8e717c8e",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
"owner": "NixOS",
|
||||
"ref": "release-23.11",
|
||||
"repo": "nixpkgs",
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"nixpkgs_5": {
|
||||
"locked": {
|
||||
"lastModified": 1723175592,
|
||||
"narHash": "sha256-M0xJ3FbDUc4fRZ84dPGx5VvgFsOzds77KiBMW/mMTnI=",
|
||||
|
@ -1144,33 +1268,50 @@
|
|||
"type": "github"
|
||||
}
|
||||
},
|
||||
"nixpkgs_5": {
|
||||
"locked": {
|
||||
"lastModified": 1720957393,
|
||||
"narHash": "sha256-oedh2RwpjEa+TNxhg5Je9Ch6d3W1NKi7DbRO1ziHemA=",
|
||||
"owner": "nixos",
|
||||
"repo": "nixpkgs",
|
||||
"rev": "693bc46d169f5af9c992095736e82c3488bf7dbb",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
"owner": "nixos",
|
||||
"ref": "nixos-unstable",
|
||||
"repo": "nixpkgs",
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"nixpkgs_6": {
|
||||
"locked": {
|
||||
"lastModified": 1702346276,
|
||||
"narHash": "sha256-eAQgwIWApFQ40ipeOjVSoK4TEHVd6nbSd9fApiHIw5A=",
|
||||
"lastModified": 1723175592,
|
||||
"narHash": "sha256-M0xJ3FbDUc4fRZ84dPGx5VvgFsOzds77KiBMW/mMTnI=",
|
||||
"owner": "NixOS",
|
||||
"repo": "nixpkgs",
|
||||
"rev": "cf28ee258fd5f9a52de6b9865cdb93a1f96d09b7",
|
||||
"rev": "5e0ca22929f3342b19569b21b2f3462f053e497b",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
"owner": "NixOS",
|
||||
"ref": "nixos-23.11",
|
||||
"ref": "nixos-unstable",
|
||||
"repo": "nixpkgs",
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"nixpkgs_7": {
|
||||
"locked": {
|
||||
"lastModified": 1723421421,
|
||||
"narHash": "sha256-ohKD5dTOkz2wUa2od3G5COc0iAF2sV4HcNVeoPOfp7U=",
|
||||
"lastModified": 1709083642,
|
||||
"narHash": "sha256-7kkJQd4rZ+vFrzWu8sTRtta5D1kBG0LSRYAfhtmMlSo=",
|
||||
"owner": "NixOS",
|
||||
"repo": "nixpkgs",
|
||||
"rev": "4e7d996aa858660e3261b4834ab00415cfe9b0fe",
|
||||
"rev": "b550fe4b4776908ac2a861124307045f8e717c8e",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
"owner": "NixOS",
|
||||
"ref": "release-23.11",
|
||||
"repo": "nixpkgs",
|
||||
"type": "github"
|
||||
}
|
||||
|
@ -1193,16 +1334,16 @@
|
|||
},
|
||||
"nixpkgs_9": {
|
||||
"locked": {
|
||||
"lastModified": 1720957393,
|
||||
"narHash": "sha256-oedh2RwpjEa+TNxhg5Je9Ch6d3W1NKi7DbRO1ziHemA=",
|
||||
"owner": "nixos",
|
||||
"lastModified": 1702346276,
|
||||
"narHash": "sha256-eAQgwIWApFQ40ipeOjVSoK4TEHVd6nbSd9fApiHIw5A=",
|
||||
"owner": "NixOS",
|
||||
"repo": "nixpkgs",
|
||||
"rev": "693bc46d169f5af9c992095736e82c3488bf7dbb",
|
||||
"rev": "cf28ee258fd5f9a52de6b9865cdb93a1f96d09b7",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
"owner": "nixos",
|
||||
"ref": "nixos-unstable",
|
||||
"owner": "NixOS",
|
||||
"ref": "nixos-23.11",
|
||||
"repo": "nixpkgs",
|
||||
"type": "github"
|
||||
}
|
||||
|
@ -1210,10 +1351,10 @@
|
|||
"nixvim": {
|
||||
"inputs": {
|
||||
"codeium": "codeium",
|
||||
"flake-utils": "flake-utils_3",
|
||||
"nixpkgs": "nixpkgs_7",
|
||||
"flake-utils": "flake-utils_5",
|
||||
"nixpkgs": "nixpkgs_10",
|
||||
"nixvim": "nixvim_2",
|
||||
"treefmt-nix": "treefmt-nix_2"
|
||||
"treefmt-nix": "treefmt-nix_3"
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1723434584,
|
||||
|
@ -1237,9 +1378,9 @@
|
|||
"git-hooks": "git-hooks",
|
||||
"home-manager": "home-manager_4",
|
||||
"nix-darwin": "nix-darwin",
|
||||
"nixpkgs": "nixpkgs_8",
|
||||
"nixpkgs": "nixpkgs_11",
|
||||
"nuschtosSearch": "nuschtosSearch",
|
||||
"treefmt-nix": "treefmt-nix"
|
||||
"treefmt-nix": "treefmt-nix_2"
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1723323133,
|
||||
|
@ -1257,7 +1398,7 @@
|
|||
},
|
||||
"nuschtosSearch": {
|
||||
"inputs": {
|
||||
"flake-utils": "flake-utils_4",
|
||||
"flake-utils": "flake-utils_6",
|
||||
"nixpkgs": [
|
||||
"nixvim",
|
||||
"nixvim",
|
||||
|
@ -1283,7 +1424,7 @@
|
|||
"flake-compat": [
|
||||
"nix-super"
|
||||
],
|
||||
"flake-utils": "flake-utils",
|
||||
"flake-utils": "flake-utils_3",
|
||||
"gitignore": [
|
||||
"nix-super"
|
||||
],
|
||||
|
@ -1316,6 +1457,7 @@
|
|||
"catppuccin": "catppuccin",
|
||||
"chaotic": "chaotic",
|
||||
"darwin": "darwin_2",
|
||||
"emacs": "emacs",
|
||||
"flakegen": "flakegen",
|
||||
"home-manager": "home-manager_3",
|
||||
"hyprland": "hyprland",
|
||||
|
@ -1324,11 +1466,11 @@
|
|||
"nix-colors": "nix-colors",
|
||||
"nix-index-database": "nix-index-database",
|
||||
"nix-super": "nix-super",
|
||||
"nixpkgs": "nixpkgs_5",
|
||||
"nixpkgs": "nixpkgs_8",
|
||||
"nixvim": "nixvim",
|
||||
"snowfall-flake": "snowfall-flake",
|
||||
"snowfall-lib": "snowfall-lib_2",
|
||||
"treefmt-nix": "treefmt-nix_3"
|
||||
"treefmt-nix": "treefmt-nix_4"
|
||||
}
|
||||
},
|
||||
"rust-analyzer-src": {
|
||||
|
@ -1432,6 +1574,21 @@
|
|||
"type": "github"
|
||||
}
|
||||
},
|
||||
"systems_10": {
|
||||
"locked": {
|
||||
"lastModified": 1681028828,
|
||||
"narHash": "sha256-Vy1rq5AaRuLzOxct8nz4T6wlgyUR7zLU309k9mBC768=",
|
||||
"owner": "nix-systems",
|
||||
"repo": "default",
|
||||
"rev": "da67096a3b9bf56a91d16901293e51ba5b49a27e",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
"owner": "nix-systems",
|
||||
"repo": "default",
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"systems_2": {
|
||||
"locked": {
|
||||
"lastModified": 1689347949,
|
||||
|
@ -1464,16 +1621,16 @@
|
|||
},
|
||||
"systems_4": {
|
||||
"locked": {
|
||||
"lastModified": 1689347949,
|
||||
"narHash": "sha256-12tWmuL2zgBgZkdoB6qXZsgJEH9LR3oUgpaQq2RbI80=",
|
||||
"lastModified": 1681028828,
|
||||
"narHash": "sha256-Vy1rq5AaRuLzOxct8nz4T6wlgyUR7zLU309k9mBC768=",
|
||||
"owner": "nix-systems",
|
||||
"repo": "default-linux",
|
||||
"rev": "31732fcf5e8fea42e59c2488ad31a0e651500f68",
|
||||
"repo": "default",
|
||||
"rev": "da67096a3b9bf56a91d16901293e51ba5b49a27e",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
"owner": "nix-systems",
|
||||
"repo": "default-linux",
|
||||
"repo": "default",
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
|
@ -1494,16 +1651,16 @@
|
|||
},
|
||||
"systems_6": {
|
||||
"locked": {
|
||||
"lastModified": 1681028828,
|
||||
"narHash": "sha256-Vy1rq5AaRuLzOxct8nz4T6wlgyUR7zLU309k9mBC768=",
|
||||
"lastModified": 1689347949,
|
||||
"narHash": "sha256-12tWmuL2zgBgZkdoB6qXZsgJEH9LR3oUgpaQq2RbI80=",
|
||||
"owner": "nix-systems",
|
||||
"repo": "default",
|
||||
"rev": "da67096a3b9bf56a91d16901293e51ba5b49a27e",
|
||||
"repo": "default-linux",
|
||||
"rev": "31732fcf5e8fea42e59c2488ad31a0e651500f68",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
"owner": "nix-systems",
|
||||
"repo": "default",
|
||||
"repo": "default-linux",
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
|
@ -1537,7 +1694,40 @@
|
|||
"type": "github"
|
||||
}
|
||||
},
|
||||
"systems_9": {
|
||||
"locked": {
|
||||
"lastModified": 1681028828,
|
||||
"narHash": "sha256-Vy1rq5AaRuLzOxct8nz4T6wlgyUR7zLU309k9mBC768=",
|
||||
"owner": "nix-systems",
|
||||
"repo": "default",
|
||||
"rev": "da67096a3b9bf56a91d16901293e51ba5b49a27e",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
"owner": "nix-systems",
|
||||
"repo": "default",
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"treefmt-nix": {
|
||||
"inputs": {
|
||||
"nixpkgs": "nixpkgs_5"
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1723454642,
|
||||
"narHash": "sha256-S0Gvsenh0II7EAaoc9158ZB4vYyuycvMGKGxIbERNAM=",
|
||||
"owner": "numtide",
|
||||
"repo": "treefmt-nix",
|
||||
"rev": "349de7bc435bdff37785c2466f054ed1766173be",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
"owner": "numtide",
|
||||
"repo": "treefmt-nix",
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"treefmt-nix_2": {
|
||||
"inputs": {
|
||||
"nixpkgs": [
|
||||
"nixvim",
|
||||
|
@ -1559,9 +1749,9 @@
|
|||
"type": "github"
|
||||
}
|
||||
},
|
||||
"treefmt-nix_2": {
|
||||
"treefmt-nix_3": {
|
||||
"inputs": {
|
||||
"nixpkgs": "nixpkgs_9"
|
||||
"nixpkgs": "nixpkgs_12"
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1723402464,
|
||||
|
@ -1577,16 +1767,16 @@
|
|||
"type": "github"
|
||||
}
|
||||
},
|
||||
"treefmt-nix_3": {
|
||||
"treefmt-nix_4": {
|
||||
"inputs": {
|
||||
"nixpkgs": "nixpkgs_10"
|
||||
"nixpkgs": "nixpkgs_13"
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1723402464,
|
||||
"narHash": "sha256-xjunKUFQs9D7u0TpVoXhrRYb4tbVkutRoFUHj0lEydE=",
|
||||
"lastModified": 1723454642,
|
||||
"narHash": "sha256-S0Gvsenh0II7EAaoc9158ZB4vYyuycvMGKGxIbERNAM=",
|
||||
"owner": "numtide",
|
||||
"repo": "treefmt-nix",
|
||||
"rev": "c9f97032be6816fa234f24803b8ae79dc7753a91",
|
||||
"rev": "349de7bc435bdff37785c2466f054ed1766173be",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
|
|
|
@ -1,4 +1,5 @@
|
|||
# Do not modify! This file is generated.
|
||||
|
||||
{
|
||||
inputs = {
|
||||
agenix.url = "github:ryantm/agenix";
|
||||
|
@ -8,6 +9,7 @@
|
|||
inputs.nixpkgs.follows = "nixpkgs";
|
||||
url = "github:LnL7/nix-darwin/master";
|
||||
};
|
||||
emacs.url = "git+https://git.pupbrained.xyz/pupbrained/nixmacs.git";
|
||||
flakegen.url = "github:jorsn/flakegen";
|
||||
home-manager = {
|
||||
inputs.nixpkgs.follows = "nixpkgs";
|
||||
|
@ -42,4 +44,4 @@
|
|||
treefmt-nix.url = "github:numtide/treefmt-nix";
|
||||
};
|
||||
outputs = inputs: inputs.flakegen ./flake.in.nix inputs;
|
||||
}
|
||||
}
|
|
@ -71,34 +71,6 @@
|
|||
tealdeer.enable = false;
|
||||
wezterm.extraConfig = builtins.readFile ./wezterm.lua;
|
||||
|
||||
emacs.package = with pkgs;
|
||||
emacs29-pgtk.overrideAttrs (old: {
|
||||
patches =
|
||||
(old.patches or [])
|
||||
++ [
|
||||
# Fix OS window role (needed for window managers like yabai)
|
||||
(fetchpatch {
|
||||
url = "https://raw.githubusercontent.com/d12frosted/homebrew-emacs-plus/master/patches/emacs-28/fix-window-role.patch";
|
||||
sha256 = "0c41rgpi19vr9ai740g09lka3nkjk48ppqyqdnncjrkfgvm2710z";
|
||||
})
|
||||
# Use poll instead of select to get file descriptors
|
||||
(fetchpatch {
|
||||
url = "https://raw.githubusercontent.com/d12frosted/homebrew-emacs-plus/master/patches/emacs-29/poll.patch";
|
||||
sha256 = "0j26n6yma4n5wh4klikza6bjnzrmz6zihgcsdx36pn3vbfnaqbh5";
|
||||
})
|
||||
# Enable rounded window with no decoration
|
||||
(fetchpatch {
|
||||
url = "https://raw.githubusercontent.com/d12frosted/homebrew-emacs-plus/master/patches/emacs-29/round-undecorated-frame.patch";
|
||||
sha256 = "0x187xvjakm2730d1wcqbz2sny07238mabh5d97fah4qal7zhlbl";
|
||||
})
|
||||
# Make Emacs aware of OS-level light/dark mode
|
||||
(fetchpatch {
|
||||
url = "https://raw.githubusercontent.com/d12frosted/homebrew-emacs-plus/master/patches/emacs-28/system-appearance.patch";
|
||||
sha256 = "14ndp2fqqc95s70fwhpxq58y8qqj4gzvvffp77snm2xk76c1bvnn";
|
||||
})
|
||||
];
|
||||
});
|
||||
|
||||
git = {
|
||||
extraConfig.credential.helper = "osxkeychain";
|
||||
signing.key = "874E22DF2F9DFCB5";
|
||||
|
|
|
@ -41,6 +41,7 @@
|
|||
neovide
|
||||
playerctl
|
||||
prismlauncher
|
||||
python3
|
||||
slack
|
||||
telegram-desktop
|
||||
vesktop
|
||||
|
@ -139,151 +140,7 @@
|
|||
programs = {
|
||||
emacs = {
|
||||
enable = true;
|
||||
package = pkgs.emacs29-pgtk;
|
||||
|
||||
extraPackages = epkgs:
|
||||
with epkgs; [
|
||||
catppuccin-theme
|
||||
company
|
||||
dashboard
|
||||
direnv
|
||||
doom-modeline
|
||||
eglot
|
||||
evil
|
||||
evil-leader
|
||||
flycheck
|
||||
flycheck-inline
|
||||
nix-mode
|
||||
treemacs
|
||||
treemacs-evil
|
||||
treesit-auto
|
||||
treesit-grammars.with-all-grammars
|
||||
tree-sitter-langs
|
||||
vterm
|
||||
];
|
||||
|
||||
extraConfig = ''
|
||||
; Catppuccin theme
|
||||
(load-theme 'catppuccin :no-confirm)
|
||||
|
||||
; Doom modeline
|
||||
(require 'doom-modeline)
|
||||
(doom-modeline-mode 1)
|
||||
|
||||
; Set font
|
||||
(set-frame-font "Maple Mono NF 12" nil t)
|
||||
|
||||
; Change default indent size to 2 spaces
|
||||
(setq-default indent-tabs-mode nil) ;; Use spaces instead of tabs
|
||||
(setq-default standard-indent 2) ;; Change indent
|
||||
(setq-default tab-width 2) ;; Change tab width
|
||||
|
||||
; Evil mode
|
||||
(setq evil-want-C-u-scroll t)
|
||||
(require 'evil)
|
||||
(evil-mode 1)
|
||||
|
||||
;; Treemacs (+ evil mode support)
|
||||
(require 'treemacs)
|
||||
(require 'treemacs-evil) ; Optional: if you want Evil keybindings for Treemacs
|
||||
|
||||
;; Evil leader
|
||||
(global-evil-leader-mode)
|
||||
(evil-leader/set-leader "<SPC>")
|
||||
(evil-leader/set-key "e" 'treemacs)
|
||||
|
||||
;; Centered scrolling
|
||||
(defun my/evil-scroll-up ()
|
||||
"Scroll up half a screen and center the line."
|
||||
(interactive)
|
||||
(evil-scroll-up nil)
|
||||
(recenter))
|
||||
|
||||
(defun my/evil-scroll-down ()
|
||||
"Scroll down half a screen and center the line."
|
||||
(interactive)
|
||||
(evil-scroll-down nil)
|
||||
(recenter))
|
||||
|
||||
(define-key evil-normal-state-map (kbd "C-u") 'my/evil-scroll-up)
|
||||
(define-key evil-normal-state-map (kbd "C-d") 'my/evil-scroll-down)
|
||||
|
||||
; Disable menubar and toolbar
|
||||
(menu-bar-mode -1)
|
||||
(tool-bar-mode -1)
|
||||
|
||||
; Dashboard
|
||||
(require 'dashboard)
|
||||
(dashboard-setup-startup-hook)
|
||||
(setq dashboard-startup-banner 'logo)
|
||||
|
||||
; Direnv
|
||||
(direnv-mode)
|
||||
|
||||
; Nix setup
|
||||
(require 'nix-mode)
|
||||
(add-to-list 'auto-mode-alist '("\\.nix\\'" . nix-mode))
|
||||
|
||||
; Tree-sitter setup
|
||||
(require 'treesit)
|
||||
(require 'tree-sitter-langs)
|
||||
(require 'treesit-auto)
|
||||
(global-treesit-auto-mode)
|
||||
|
||||
(add-hook 'prog-mode-hook #'tree-sitter-mode)
|
||||
(add-hook 'prog-mode-hook #'tree-sitter-hl-mode)
|
||||
|
||||
;; Use Tree-sitter for better syntax highlighting
|
||||
(dolist (lang treesit-language-source-alist)
|
||||
(let ((mode (intern (format "%s-ts-mode" (car lang)))))
|
||||
(when (fboundp mode)
|
||||
(add-to-list 'major-mode-remap-alist
|
||||
(cons (intern (car lang)) mode)))))
|
||||
|
||||
; Eglot setup
|
||||
(add-hook 'prog-mode-hook 'eglot-ensure)
|
||||
(add-hook 'nix-mode-hook 'eglot-ensure)
|
||||
|
||||
;; Function to format the buffer using Eglot
|
||||
(defun my/eglot-format-buffer-on-save ()
|
||||
"Format the current buffer if Eglot is active."
|
||||
(when (bound-and-true-p eglot--managed-p)
|
||||
(eglot-format-buffer)))
|
||||
|
||||
;; Add the function to the save-hook
|
||||
(add-hook 'before-save-hook #'my/eglot-format-buffer-on-save)
|
||||
|
||||
; Flycheck setup
|
||||
(require 'flycheck)
|
||||
(global-flycheck-mode)
|
||||
|
||||
; Flycheck-inline setup
|
||||
(require 'flycheck-inline)
|
||||
(add-hook 'flycheck-mode-hook #'flycheck-inline-mode)
|
||||
|
||||
; Disable Flycheck modeline error messages
|
||||
(setq-default flycheck-mode-line-prefix "")
|
||||
(setq-default flycheck-display-errors-function #'flycheck-inline-display-errors)
|
||||
|
||||
; Company mode setup
|
||||
(require 'company)
|
||||
(global-company-mode) ; Enable Company mode globally
|
||||
|
||||
; Key bindings for company mode
|
||||
(setq company-idle-delay 0.2) ; Start completion after a short delay
|
||||
(setq company-minimum-prefix-length 1) ; Start completion after typing 1 character
|
||||
(setq company-show-numbers t) ; Show numbers for completion candidates
|
||||
(global-set-key (kbd "M-/") 'company-complete) ; Trigger completion manually with M-/
|
||||
|
||||
(defun my/compile-and-focus-treemacs ()
|
||||
"Run `compile` and focus on the project root in `Treemacs`."
|
||||
(interactive)
|
||||
(let ((default-directory (project-root (project-current t))))
|
||||
(compile (read-shell-command "Compile command: " (concat (or compile-command "make") " ")))
|
||||
(treemacs-select-window)))
|
||||
|
||||
(global-set-key (kbd "C-c C-c") 'my/compile-and-focus-treemacs)
|
||||
'';
|
||||
package = inputs.emacs.packages.${pkgs.system}.default;
|
||||
};
|
||||
|
||||
wezterm.extraConfig = builtins.readFile ./wezterm.lua;
|
||||
|
@ -300,6 +157,14 @@
|
|||
};
|
||||
};
|
||||
|
||||
services.emacs = {
|
||||
enable = true;
|
||||
package = inputs.emacs.packages.${pkgs.system}.default;
|
||||
defaultEditor = true;
|
||||
socketActivation.enable = true;
|
||||
client.enable = true;
|
||||
};
|
||||
|
||||
systemd.user.startServices = "sd-switch";
|
||||
|
||||
nix.package = lib.mkForce inputs.nix-super.packages.${pkgs.system}.default;
|
||||
|
|
|
@ -1,199 +0,0 @@
|
|||
; Catppuccin theme
|
||||
(load-theme 'catppuccin :no-confirm)
|
||||
|
||||
; Doom modeline
|
||||
(require 'doom-modeline)
|
||||
(doom-modeline-mode 1)
|
||||
|
||||
; Set titlebar
|
||||
(when (eq system-type 'darwin) (ns-auto-titlebar-mode))
|
||||
|
||||
; Set font
|
||||
(set-frame-font "Maple Mono NF 16" nil t)
|
||||
|
||||
; Show line numbers
|
||||
(add-hook 'prog-mode-hook 'display-line-numbers-mode)
|
||||
(setq display-line-numbers-type 'relative)
|
||||
|
||||
; Change default indent size to 2 spaces
|
||||
(setq-default indent-tabs-mode nil) ;; Use spaces instead of tabs
|
||||
(setq-default standard-indent 2) ;; Change indent
|
||||
(setq-default tab-width 2) ;; Change tab width
|
||||
|
||||
; Vim-like Scrolling
|
||||
(setq scroll-step 3)
|
||||
(setq scroll-margin 3)
|
||||
(setq scroll-conservatively 9999)
|
||||
|
||||
; Evil mode
|
||||
(setq evil-want-C-u-scroll t)
|
||||
(require 'evil)
|
||||
(evil-mode 1)
|
||||
|
||||
;; Treemacs (+ evil mode support)
|
||||
(require 'treemacs)
|
||||
(require 'treemacs-evil) ; Optional: if you want Evil keybindings for Treemacs
|
||||
|
||||
;; Evil leader
|
||||
(global-evil-leader-mode)
|
||||
(evil-leader/set-leader "<SPC>")
|
||||
(evil-leader/set-key "e" 'treemacs)
|
||||
|
||||
;; Centered scrolling
|
||||
(defun my/evil-scroll-up ()
|
||||
"Scroll up half a screen and center the line."
|
||||
(interactive)
|
||||
(evil-scroll-up nil)
|
||||
(recenter))
|
||||
|
||||
(defun my/evil-scroll-down ()
|
||||
"Scroll down half a screen and center the line."
|
||||
(interactive)
|
||||
(evil-scroll-down nil)
|
||||
(recenter))
|
||||
|
||||
(define-key evil-normal-state-map (kbd "C-u") 'my/evil-scroll-up)
|
||||
(define-key evil-normal-state-map (kbd "C-d") 'my/evil-scroll-down)
|
||||
|
||||
; Disable unnecessary bars
|
||||
(menu-bar-mode -1)
|
||||
(scroll-bar-mode -1)
|
||||
(tool-bar-mode -1)
|
||||
|
||||
; Dashboard
|
||||
(require 'dashboard)
|
||||
(dashboard-setup-startup-hook)
|
||||
(setq dashboard-startup-banner 'logo)
|
||||
|
||||
; Direnv
|
||||
(direnv-mode)
|
||||
|
||||
; Nix setup
|
||||
(require 'nix-mode)
|
||||
(add-to-list 'auto-mode-alist '("\\.nix\\'" . nix-mode))
|
||||
(add-to-list 'interpreter-mode-alist '("nix" . nix-mode))
|
||||
|
||||
; Lua setup
|
||||
(require 'lua-mode)
|
||||
(add-to-list 'auto-mode-alist '("\\.lua$" . lua-mode))
|
||||
(add-to-list 'interpreter-mode-alist '("lua" . lua-mode))
|
||||
|
||||
; Tree-sitter setup
|
||||
(require 'treesit)
|
||||
(require 'tree-sitter-langs)
|
||||
(require 'treesit-auto)
|
||||
(global-treesit-auto-mode)
|
||||
|
||||
(add-hook 'prog-mode-hook #'tree-sitter-mode)
|
||||
(add-hook 'prog-mode-hook #'tree-sitter-hl-mode)
|
||||
|
||||
;; Use Tree-sitter for better syntax highlighting
|
||||
(dolist (lang treesit-language-source-alist)
|
||||
(let ((mode (intern (format "%s-ts-mode" (car lang)))))
|
||||
(when (fboundp mode)
|
||||
(add-to-list 'major-mode-remap-alist
|
||||
(cons (intern (car lang)) mode)))))
|
||||
|
||||
; Eglot setup
|
||||
(add-hook 'prog-mode-hook 'eglot-ensure)
|
||||
(add-hook 'nix-mode-hook 'eglot-ensure)
|
||||
|
||||
;; Function to format the buffer using Eglot
|
||||
(defun my/eglot-format-buffer-on-save ()
|
||||
"Format the current buffer if Eglot is active."
|
||||
(when (bound-and-true-p eglot--managed-p)
|
||||
(eglot-format-buffer)))
|
||||
|
||||
;; Add the function to the save-hook
|
||||
(add-hook 'before-save-hook #'my/eglot-format-buffer-on-save)
|
||||
|
||||
; Flycheck setup
|
||||
(require 'flycheck)
|
||||
(flycheck-mode . sideline-mode)
|
||||
(require 'sideline-flycheck)
|
||||
(flycheck-mode . sideline-flycheck-setup)
|
||||
|
||||
; Key bindings for company mode
|
||||
(setq company-idle-delay 0.2) ; Start completion after a short delay
|
||||
(setq company-minimum-prefix-length 1) ; Start completion after typing 1 character
|
||||
(setq company-show-numbers t) ; Show numbers for completion candidates
|
||||
(global-set-key (kbd "M-/") 'company-complete) ; Trigger completion manually with M-/
|
||||
|
||||
(defun my/compile-and-focus-treemacs ()
|
||||
"Run `compile` and focus on the project root in `Treemacs`."
|
||||
(interactive)
|
||||
(let ((default-directory (project-root (project-current t))))
|
||||
(compile (read-shell-command "Compile command: " (concat (or compile-command "make") " ")))
|
||||
(treemacs-select-window)))
|
||||
|
||||
(global-set-key (kbd "C-c C-c") 'my/compile-and-focus-treemacs)
|
||||
|
||||
; Ligatures
|
||||
(setq maple-ligatures
|
||||
'(;; coding ligatures
|
||||
"==" "===" "!=" "=/=" "!==" ">=" "<=" "<<<"
|
||||
"->" "=>" "-->" "==>" "<->" "<=>" "<==>"
|
||||
"->>" "-<<" "=<<" ">>=" ">>-" "<<-" "<-<"
|
||||
"</" "/>" "<>" "</>" "<!--" "<--" "-<"
|
||||
"|>" "||>" "|||>" "<|>" ">=>" "=>>" "<|"
|
||||
"<||" "<|||" "<<=" ">-" "<-" "++" "--"
|
||||
"&&" "||" "!!" "??" ".." "::" "##" "###"
|
||||
"####" "#####" "######" "#_(" "|->" ">->"
|
||||
"<==" "<=<" "<~>" "<~~" "~~>" "-~" ".="
|
||||
"#_" "<~" "~-" "~@" "~>" "~~" "---" "..."
|
||||
"{|" "[|" ":::" "::=" ":=" ":>" ":<" "!!!"
|
||||
"?." "?:" "***" "*/" "/*" "//" "/**" "///"
|
||||
"|}" "|]" "+++" "+>" "=:=" "=!=" ">:" ">>"
|
||||
">>>" "<:" "<*" "<*>" "<$>" "<+" "<+>" "<<"
|
||||
|
||||
;; misc. ligatures
|
||||
"[TODO]" "TODO))" "todo))" "[FIXME]" "FIXME))" "fixme))"
|
||||
"[TRACE]" "[DEBUG]" "[INFO]" "[WARN]" "[ERROR]" "[FATAL]"))
|
||||
(ligature-set-ligatures 'prog-mode maple-ligatures)
|
||||
(global-ligature-mode t)
|
||||
|
||||
; Codeium
|
||||
(add-to-list 'completion-at-point-functions #'codeium-completion-at-point)
|
||||
(setq use-dialog-box nil) ;; do not use popup boxes
|
||||
|
||||
;; if you don't want to use customize to save the api-key
|
||||
;; (setq codeium/metadata/api_key "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx")
|
||||
|
||||
;; get codeium status in the modeline
|
||||
(setq codeium-mode-line-enable
|
||||
(lambda (api) (not (memq api '(CancelRequest Heartbeat AcceptCompletion)))))
|
||||
(add-to-list 'mode-line-format '(:eval (car-safe codeium-mode-line)) t)
|
||||
|
||||
;; use M-x codeium-diagnose to see apis/fields that would be sent to the local language server
|
||||
(setq codeium-api-enabled
|
||||
(lambda (api)
|
||||
(memq api '(GetCompletions Heartbeat CancelRequest GetAuthToken RegisterUser auth-redirect AcceptCompletion))))
|
||||
|
||||
;; You can overwrite all the codeium configs!
|
||||
;; for example, we recommend limiting the string sent to codeium for better performance
|
||||
(defun my-codeium/document/text ()
|
||||
(buffer-substring-no-properties (max (- (point) 3000) (point-min)) (min (+ (point) 1000) (point-max))))
|
||||
|
||||
;; if you change the text, you should also change the cursor_offset
|
||||
;; warning: this is measured by UTF-8 encoded bytes
|
||||
(defun my-codeium/document/cursor_offset ()
|
||||
(codeium-utf8-byte-length
|
||||
(buffer-substring-no-properties (max (- (point) 3000) (point-min)) (point))))
|
||||
|
||||
(setq codeium/document/text 'my-codeium/document/text)
|
||||
(setq codeium/document/cursor_offset 'my-codeium/document/cursor_offset)
|
||||
|
||||
; Corfu mode setup
|
||||
(require 'corfu)
|
||||
(global-corfu-mode) ; Enable Corfu mode globally
|
||||
(setq corfu-auto t)
|
||||
|
||||
(defun corfu-codeium-completion-at-point ()
|
||||
"Completion at point with codeium using corfu."
|
||||
(when (and (bound-and-true-p codeium-mode)
|
||||
(or (not (bound-and-true-p corfu-mode))
|
||||
corfu-mode))
|
||||
(codeium--completion-at-point)))
|
||||
|
||||
;; Add corfu-codeium-completion-at-point to the completion-at-point-functions
|
||||
(add-hook 'completion-at-point-functions #'corfu-codeium-completion-at-point)
|
|
@ -1,32 +0,0 @@
|
|||
{...}: {
|
||||
programs.emacs = {
|
||||
enable = true;
|
||||
|
||||
extraPackages = epkgs:
|
||||
with epkgs; [
|
||||
catppuccin-theme
|
||||
codeium
|
||||
corfu
|
||||
dashboard
|
||||
direnv
|
||||
doom-modeline
|
||||
evil
|
||||
evil-leader
|
||||
flycheck
|
||||
ligature
|
||||
lua-mode
|
||||
nix-mode
|
||||
ns-auto-titlebar
|
||||
sideline
|
||||
sideline-flycheck
|
||||
tree-sitter-langs
|
||||
treemacs
|
||||
treemacs-evil
|
||||
treesit-auto
|
||||
treesit-grammars.with-all-grammars
|
||||
vterm
|
||||
];
|
||||
|
||||
extraConfig = builtins.readFile ./config/init.el;
|
||||
};
|
||||
}
|
|
@ -40,7 +40,7 @@ with lib // pkgs // inputs; {
|
|||
];
|
||||
|
||||
systemd.user.extraConfig = let
|
||||
path = lib.concatStringsSep ":" [
|
||||
path = concatStringsSep ":" [
|
||||
"/run/wrappers/bin"
|
||||
"/etc/profiles/per-user/%u/bin"
|
||||
"/nix/var/nix/profiles/default/bin"
|
||||
|
@ -177,7 +177,7 @@ with lib // pkgs // inputs; {
|
|||
(x: x // {nixpkgs.flake = nixpkgs;})
|
||||
];
|
||||
|
||||
nixSuper = inputs.nix-super.packages.${pkgs.system}.default;
|
||||
nixSuper = nix-super.packages.${system}.default;
|
||||
in {
|
||||
package = mkForce nixSuper;
|
||||
registry = mappedRegistry // optionalAttrs (config.nix.package == nixSuper) {default = mappedRegistry.nixpkgs;};
|
||||
|
@ -258,7 +258,7 @@ with lib // pkgs // inputs; {
|
|||
|
||||
hyprland = {
|
||||
enable = true;
|
||||
package = inputs.hyprland.packages.${pkgs.system}.hyprland;
|
||||
package = hyprland.packages.${system}.hyprland;
|
||||
};
|
||||
|
||||
nh = {
|
||||
|
|
Loading…
Reference in a new issue