init: init
This commit is contained in:
@@ -0,0 +1 @@
|
||||
nixos/hardware-configuration.nix
|
||||
@@ -1,3 +1,3 @@
|
||||
# nix-config
|
||||
# **❄️ autumn-the-kitty-cat's NixOS Configuration ❄️**
|
||||
|
||||
Configuration of my NixOS-based computers
|
||||

|
||||
|
||||
Generated
+762
@@ -0,0 +1,762 @@
|
||||
{
|
||||
"nodes": {
|
||||
"base16": {
|
||||
"inputs": {
|
||||
"fromYaml": "fromYaml"
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1755819240,
|
||||
"narHash": "sha256-qcMhnL7aGAuFuutH4rq9fvAhCpJWVHLcHVZLtPctPlo=",
|
||||
"owner": "SenchoPens",
|
||||
"repo": "base16.nix",
|
||||
"rev": "75ed5e5e3fce37df22e49125181fa37899c3ccd6",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
"owner": "SenchoPens",
|
||||
"repo": "base16.nix",
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"base16-fish": {
|
||||
"flake": false,
|
||||
"locked": {
|
||||
"lastModified": 1754405784,
|
||||
"narHash": "sha256-l9xHIy+85FN+bEo6yquq2IjD1rSg9fjfjpyGP1W8YXo=",
|
||||
"owner": "tomyun",
|
||||
"repo": "base16-fish",
|
||||
"rev": "23ae20a0093dca0d7b39d76ba2401af0ccf9c561",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
"owner": "tomyun",
|
||||
"repo": "base16-fish",
|
||||
"rev": "23ae20a0093dca0d7b39d76ba2401af0ccf9c561",
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"base16-helix": {
|
||||
"flake": false,
|
||||
"locked": {
|
||||
"lastModified": 1752979451,
|
||||
"narHash": "sha256-0CQM+FkYy0fOO/sMGhOoNL80ftsAzYCg9VhIrodqusM=",
|
||||
"owner": "tinted-theming",
|
||||
"repo": "base16-helix",
|
||||
"rev": "27cf1e66e50abc622fb76a3019012dc07c678fac",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
"owner": "tinted-theming",
|
||||
"repo": "base16-helix",
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"base16-vim": {
|
||||
"flake": false,
|
||||
"locked": {
|
||||
"lastModified": 1732806396,
|
||||
"narHash": "sha256-e0bpPySdJf0F68Ndanwm+KWHgQiZ0s7liLhvJSWDNsA=",
|
||||
"owner": "tinted-theming",
|
||||
"repo": "base16-vim",
|
||||
"rev": "577fe8125d74ff456cf942c733a85d769afe58b7",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
"owner": "tinted-theming",
|
||||
"repo": "base16-vim",
|
||||
"rev": "577fe8125d74ff456cf942c733a85d769afe58b7",
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"firefox-gnome-theme": {
|
||||
"flake": false,
|
||||
"locked": {
|
||||
"lastModified": 1758112371,
|
||||
"narHash": "sha256-lizRM2pj6PHrR25yimjyFn04OS4wcdbc38DCdBVa2rk=",
|
||||
"owner": "rafaelmardojai",
|
||||
"repo": "firefox-gnome-theme",
|
||||
"rev": "0909cfe4a2af8d358ad13b20246a350e14c2473d",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
"owner": "rafaelmardojai",
|
||||
"repo": "firefox-gnome-theme",
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"flake-compat": {
|
||||
"flake": false,
|
||||
"locked": {
|
||||
"lastModified": 1696426674,
|
||||
"narHash": "sha256-kvjfFW7WAETZlt09AgDn1MrtKzP7t90Vf7vypd3OL1U=",
|
||||
"owner": "edolstra",
|
||||
"repo": "flake-compat",
|
||||
"rev": "0f9255e01c2351cc7d116c072cb317785dd33b33",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
"owner": "edolstra",
|
||||
"repo": "flake-compat",
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"flake-parts": {
|
||||
"inputs": {
|
||||
"nixpkgs-lib": "nixpkgs-lib"
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1749398372,
|
||||
"narHash": "sha256-tYBdgS56eXYaWVW3fsnPQ/nFlgWi/Z2Ymhyu21zVM98=",
|
||||
"owner": "hercules-ci",
|
||||
"repo": "flake-parts",
|
||||
"rev": "9305fe4e5c2a6fcf5ba6a3ff155720fbe4076569",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
"owner": "hercules-ci",
|
||||
"repo": "flake-parts",
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"flake-parts_2": {
|
||||
"inputs": {
|
||||
"nixpkgs-lib": [
|
||||
"nixvim",
|
||||
"nixpkgs"
|
||||
]
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1762440070,
|
||||
"narHash": "sha256-xxdepIcb39UJ94+YydGP221rjnpkDZUlykKuF54PsqI=",
|
||||
"owner": "hercules-ci",
|
||||
"repo": "flake-parts",
|
||||
"rev": "26d05891e14c88eb4a5d5bee659c0db5afb609d8",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
"owner": "hercules-ci",
|
||||
"repo": "flake-parts",
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"flake-parts_3": {
|
||||
"inputs": {
|
||||
"nixpkgs-lib": [
|
||||
"stylix",
|
||||
"nixpkgs"
|
||||
]
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1756770412,
|
||||
"narHash": "sha256-+uWLQZccFHwqpGqr2Yt5VsW/PbeJVTn9Dk6SHWhNRPw=",
|
||||
"owner": "hercules-ci",
|
||||
"repo": "flake-parts",
|
||||
"rev": "4524271976b625a4a605beefd893f270620fd751",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
"owner": "hercules-ci",
|
||||
"repo": "flake-parts",
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"flake-utils": {
|
||||
"inputs": {
|
||||
"systems": [
|
||||
"mango",
|
||||
"scenefx",
|
||||
"systems"
|
||||
]
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1731533236,
|
||||
"narHash": "sha256-l0KFg5HjrsfsO/JpG+r7fRrqm12kzFHyUHqHCVpMMbI=",
|
||||
"owner": "numtide",
|
||||
"repo": "flake-utils",
|
||||
"rev": "11707dc2f618dd54ca8739b309ec4fc024de578b",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
"owner": "numtide",
|
||||
"repo": "flake-utils",
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"flake-utils_2": {
|
||||
"inputs": {
|
||||
"systems": "systems_2"
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1731533236,
|
||||
"narHash": "sha256-l0KFg5HjrsfsO/JpG+r7fRrqm12kzFHyUHqHCVpMMbI=",
|
||||
"owner": "numtide",
|
||||
"repo": "flake-utils",
|
||||
"rev": "11707dc2f618dd54ca8739b309ec4fc024de578b",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
"owner": "numtide",
|
||||
"repo": "flake-utils",
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"flake-utils_3": {
|
||||
"inputs": {
|
||||
"systems": "systems_3"
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1731533236,
|
||||
"narHash": "sha256-l0KFg5HjrsfsO/JpG+r7fRrqm12kzFHyUHqHCVpMMbI=",
|
||||
"owner": "numtide",
|
||||
"repo": "flake-utils",
|
||||
"rev": "11707dc2f618dd54ca8739b309ec4fc024de578b",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
"owner": "numtide",
|
||||
"repo": "flake-utils",
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"fromYaml": {
|
||||
"flake": false,
|
||||
"locked": {
|
||||
"lastModified": 1731966426,
|
||||
"narHash": "sha256-lq95WydhbUTWig/JpqiB7oViTcHFP8Lv41IGtayokA8=",
|
||||
"owner": "SenchoPens",
|
||||
"repo": "fromYaml",
|
||||
"rev": "106af9e2f715e2d828df706c386a685698f3223b",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
"owner": "SenchoPens",
|
||||
"repo": "fromYaml",
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"gitignore": {
|
||||
"inputs": {
|
||||
"nixpkgs": [
|
||||
"nix-wallpaper",
|
||||
"pre-commit-hooks",
|
||||
"nixpkgs"
|
||||
]
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1709087332,
|
||||
"narHash": "sha256-HG2cCnktfHsKV0s4XW83gU3F57gaTljL9KNSuG6bnQs=",
|
||||
"owner": "hercules-ci",
|
||||
"repo": "gitignore.nix",
|
||||
"rev": "637db329424fd7e46cf4185293b9cc8c88c95394",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
"owner": "hercules-ci",
|
||||
"repo": "gitignore.nix",
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"gnome-shell": {
|
||||
"flake": false,
|
||||
"locked": {
|
||||
"lastModified": 1748186689,
|
||||
"narHash": "sha256-UaD7Y9f8iuLBMGHXeJlRu6U1Ggw5B9JnkFs3enZlap0=",
|
||||
"owner": "GNOME",
|
||||
"repo": "gnome-shell",
|
||||
"rev": "8c88f917db0f1f0d80fa55206c863d3746fa18d0",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
"owner": "GNOME",
|
||||
"ref": "48.2",
|
||||
"repo": "gnome-shell",
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"home-manager": {
|
||||
"inputs": {
|
||||
"nixpkgs": [
|
||||
"nixpkgs"
|
||||
]
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1762721397,
|
||||
"narHash": "sha256-E428EuouA4nFTNlLuqlL4lVR78X+EbBIqDqsBFnB79w=",
|
||||
"owner": "nix-community",
|
||||
"repo": "home-manager",
|
||||
"rev": "b8645b18b0f5374127bbade6de7381ef0b3d5720",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
"owner": "nix-community",
|
||||
"repo": "home-manager",
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"home-manager_2": {
|
||||
"inputs": {
|
||||
"nixpkgs": [
|
||||
"zen-browser",
|
||||
"nixpkgs"
|
||||
]
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1762351818,
|
||||
"narHash": "sha256-0ptUDbYwxv1kk/uzEX4+NJjY2e16MaAhtzAOJ6K0TG0=",
|
||||
"owner": "nix-community",
|
||||
"repo": "home-manager",
|
||||
"rev": "b959c67241cae17fc9e4ee7eaf13dfa8512477ea",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
"owner": "nix-community",
|
||||
"repo": "home-manager",
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"ixx": {
|
||||
"inputs": {
|
||||
"flake-utils": [
|
||||
"nixvim",
|
||||
"nuschtosSearch",
|
||||
"flake-utils"
|
||||
],
|
||||
"nixpkgs": [
|
||||
"nixvim",
|
||||
"nuschtosSearch",
|
||||
"nixpkgs"
|
||||
]
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1754860581,
|
||||
"narHash": "sha256-EM0IE63OHxXCOpDHXaTyHIOk2cNvMCGPqLt/IdtVxgk=",
|
||||
"owner": "NuschtOS",
|
||||
"repo": "ixx",
|
||||
"rev": "babfe85a876162c4acc9ab6fb4483df88fa1f281",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
"owner": "NuschtOS",
|
||||
"ref": "v0.1.1",
|
||||
"repo": "ixx",
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"mango": {
|
||||
"inputs": {
|
||||
"flake-parts": "flake-parts",
|
||||
"nixpkgs": [
|
||||
"nixpkgs"
|
||||
],
|
||||
"scenefx": "scenefx"
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1762701589,
|
||||
"narHash": "sha256-xB9F2URQwqUPX4YU9ggWPLrAvEGegO/Inlvs835lMJg=",
|
||||
"owner": "DreamMaoMao",
|
||||
"repo": "mango",
|
||||
"rev": "d0a51f47856b62ed1d135eaa2a1824377efc85a4",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
"owner": "DreamMaoMao",
|
||||
"repo": "mango",
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"nix-wallpaper": {
|
||||
"inputs": {
|
||||
"flake-utils": "flake-utils_2",
|
||||
"nixpkgs": [
|
||||
"nixpkgs"
|
||||
],
|
||||
"pre-commit-hooks": "pre-commit-hooks"
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1750526611,
|
||||
"narHash": "sha256-RuP01U7zaS9S3zTNw4R0P87PY0A1szG8K5NTlOrqG18=",
|
||||
"owner": "lunik1",
|
||||
"repo": "nix-wallpaper",
|
||||
"rev": "fb2a848f01cd1b08c5d9029984f034eb883e318a",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
"owner": "lunik1",
|
||||
"repo": "nix-wallpaper",
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"nixpkgs": {
|
||||
"locked": {
|
||||
"lastModified": 1762596750,
|
||||
"narHash": "sha256-rXXuz51Bq7DHBlfIjN7jO8Bu3du5TV+3DSADBX7/9YQ=",
|
||||
"owner": "NixOS",
|
||||
"repo": "nixpkgs",
|
||||
"rev": "b6a8526db03f735b89dd5ff348f53f752e7ddc8e",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
"owner": "NixOS",
|
||||
"ref": "nixos-unstable",
|
||||
"repo": "nixpkgs",
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"nixpkgs-lib": {
|
||||
"locked": {
|
||||
"lastModified": 1748740939,
|
||||
"narHash": "sha256-rQaysilft1aVMwF14xIdGS3sj1yHlI6oKQNBRTF40cc=",
|
||||
"owner": "nix-community",
|
||||
"repo": "nixpkgs.lib",
|
||||
"rev": "656a64127e9d791a334452c6b6606d17539476e2",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
"owner": "nix-community",
|
||||
"repo": "nixpkgs.lib",
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"nixvim": {
|
||||
"inputs": {
|
||||
"flake-parts": "flake-parts_2",
|
||||
"nixpkgs": [
|
||||
"nixpkgs"
|
||||
],
|
||||
"nuschtosSearch": "nuschtosSearch",
|
||||
"systems": "systems_4"
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1762691346,
|
||||
"narHash": "sha256-dyYnqvYrgViB22inBqNern/XSWtOiweP8NTfJQJeTis=",
|
||||
"owner": "nix-community",
|
||||
"repo": "nixvim",
|
||||
"rev": "faf1fb4b7cd069ce44469e45c3259b7bcf106f81",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
"owner": "nix-community",
|
||||
"repo": "nixvim",
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"nur": {
|
||||
"inputs": {
|
||||
"flake-parts": [
|
||||
"stylix",
|
||||
"flake-parts"
|
||||
],
|
||||
"nixpkgs": [
|
||||
"stylix",
|
||||
"nixpkgs"
|
||||
]
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1758998580,
|
||||
"narHash": "sha256-VLx0z396gDCGSiowLMFz5XRO/XuNV+4EnDYjdJhHvUk=",
|
||||
"owner": "nix-community",
|
||||
"repo": "NUR",
|
||||
"rev": "ba8d9c98f5f4630bcb0e815ab456afd90c930728",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
"owner": "nix-community",
|
||||
"repo": "NUR",
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"nuschtosSearch": {
|
||||
"inputs": {
|
||||
"flake-utils": "flake-utils_3",
|
||||
"ixx": "ixx",
|
||||
"nixpkgs": [
|
||||
"nixvim",
|
||||
"nixpkgs"
|
||||
]
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1761730856,
|
||||
"narHash": "sha256-t1i5p/vSWwueZSC0Z2BImxx3BjoUDNKyC2mk24krcMY=",
|
||||
"owner": "NuschtOS",
|
||||
"repo": "search",
|
||||
"rev": "e29de6db0cb3182e9aee75a3b1fd1919d995d85b",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
"owner": "NuschtOS",
|
||||
"repo": "search",
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"pre-commit-hooks": {
|
||||
"inputs": {
|
||||
"flake-compat": "flake-compat",
|
||||
"gitignore": "gitignore",
|
||||
"nixpkgs": [
|
||||
"nix-wallpaper",
|
||||
"nixpkgs"
|
||||
]
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1742649964,
|
||||
"narHash": "sha256-DwOTp7nvfi8mRfuL1escHDXabVXFGT1VlPD1JHrtrco=",
|
||||
"owner": "cachix",
|
||||
"repo": "pre-commit-hooks.nix",
|
||||
"rev": "dcf5072734cb576d2b0c59b2ac44f5050b5eac82",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
"owner": "cachix",
|
||||
"repo": "pre-commit-hooks.nix",
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"root": {
|
||||
"inputs": {
|
||||
"home-manager": "home-manager",
|
||||
"mango": "mango",
|
||||
"nix-wallpaper": "nix-wallpaper",
|
||||
"nixpkgs": "nixpkgs",
|
||||
"nixvim": "nixvim",
|
||||
"stylix": "stylix",
|
||||
"zen-browser": "zen-browser"
|
||||
}
|
||||
},
|
||||
"scenefx": {
|
||||
"inputs": {
|
||||
"flake-utils": "flake-utils",
|
||||
"nixpkgs": [
|
||||
"mango",
|
||||
"nixpkgs"
|
||||
],
|
||||
"systems": "systems"
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1762447505,
|
||||
"narHash": "sha256-VEBQ8KXkSS4c+kdAhmvq06lEd9WNeCXdRK1U+qSilFw=",
|
||||
"owner": "wlrfx",
|
||||
"repo": "scenefx",
|
||||
"rev": "7f9e7409f6169fa637f1265895c121a8f8b70272",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
"owner": "wlrfx",
|
||||
"repo": "scenefx",
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"stylix": {
|
||||
"inputs": {
|
||||
"base16": "base16",
|
||||
"base16-fish": "base16-fish",
|
||||
"base16-helix": "base16-helix",
|
||||
"base16-vim": "base16-vim",
|
||||
"firefox-gnome-theme": "firefox-gnome-theme",
|
||||
"flake-parts": "flake-parts_3",
|
||||
"gnome-shell": "gnome-shell",
|
||||
"nixpkgs": [
|
||||
"nixpkgs"
|
||||
],
|
||||
"nur": "nur",
|
||||
"systems": "systems_5",
|
||||
"tinted-foot": "tinted-foot",
|
||||
"tinted-kitty": "tinted-kitty",
|
||||
"tinted-schemes": "tinted-schemes",
|
||||
"tinted-tmux": "tinted-tmux",
|
||||
"tinted-zed": "tinted-zed"
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1762264356,
|
||||
"narHash": "sha256-QVfC53Ri+8n3e7Ujx9kq6all3+TLBRRPRnc6No5qY5w=",
|
||||
"owner": "danth",
|
||||
"repo": "stylix",
|
||||
"rev": "647bb8dd96a206a1b79c4fd714affc88b409e10b",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
"owner": "danth",
|
||||
"repo": "stylix",
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"systems": {
|
||||
"locked": {
|
||||
"lastModified": 1689347949,
|
||||
"narHash": "sha256-12tWmuL2zgBgZkdoB6qXZsgJEH9LR3oUgpaQq2RbI80=",
|
||||
"owner": "nix-systems",
|
||||
"repo": "default-linux",
|
||||
"rev": "31732fcf5e8fea42e59c2488ad31a0e651500f68",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
"owner": "nix-systems",
|
||||
"repo": "default-linux",
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"systems_2": {
|
||||
"locked": {
|
||||
"lastModified": 1681028828,
|
||||
"narHash": "sha256-Vy1rq5AaRuLzOxct8nz4T6wlgyUR7zLU309k9mBC768=",
|
||||
"owner": "nix-systems",
|
||||
"repo": "default",
|
||||
"rev": "da67096a3b9bf56a91d16901293e51ba5b49a27e",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
"owner": "nix-systems",
|
||||
"repo": "default",
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"systems_3": {
|
||||
"locked": {
|
||||
"lastModified": 1681028828,
|
||||
"narHash": "sha256-Vy1rq5AaRuLzOxct8nz4T6wlgyUR7zLU309k9mBC768=",
|
||||
"owner": "nix-systems",
|
||||
"repo": "default",
|
||||
"rev": "da67096a3b9bf56a91d16901293e51ba5b49a27e",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
"owner": "nix-systems",
|
||||
"repo": "default",
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"systems_4": {
|
||||
"locked": {
|
||||
"lastModified": 1681028828,
|
||||
"narHash": "sha256-Vy1rq5AaRuLzOxct8nz4T6wlgyUR7zLU309k9mBC768=",
|
||||
"owner": "nix-systems",
|
||||
"repo": "default",
|
||||
"rev": "da67096a3b9bf56a91d16901293e51ba5b49a27e",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
"owner": "nix-systems",
|
||||
"repo": "default",
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"systems_5": {
|
||||
"locked": {
|
||||
"lastModified": 1681028828,
|
||||
"narHash": "sha256-Vy1rq5AaRuLzOxct8nz4T6wlgyUR7zLU309k9mBC768=",
|
||||
"owner": "nix-systems",
|
||||
"repo": "default",
|
||||
"rev": "da67096a3b9bf56a91d16901293e51ba5b49a27e",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
"owner": "nix-systems",
|
||||
"repo": "default",
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"tinted-foot": {
|
||||
"flake": false,
|
||||
"locked": {
|
||||
"lastModified": 1726913040,
|
||||
"narHash": "sha256-+eDZPkw7efMNUf3/Pv0EmsidqdwNJ1TaOum6k7lngDQ=",
|
||||
"owner": "tinted-theming",
|
||||
"repo": "tinted-foot",
|
||||
"rev": "fd1b924b6c45c3e4465e8a849e67ea82933fcbe4",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
"owner": "tinted-theming",
|
||||
"repo": "tinted-foot",
|
||||
"rev": "fd1b924b6c45c3e4465e8a849e67ea82933fcbe4",
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"tinted-kitty": {
|
||||
"flake": false,
|
||||
"locked": {
|
||||
"lastModified": 1735730497,
|
||||
"narHash": "sha256-4KtB+FiUzIeK/4aHCKce3V9HwRvYaxX+F1edUrfgzb8=",
|
||||
"owner": "tinted-theming",
|
||||
"repo": "tinted-kitty",
|
||||
"rev": "de6f888497f2c6b2279361bfc790f164bfd0f3fa",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
"owner": "tinted-theming",
|
||||
"repo": "tinted-kitty",
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"tinted-schemes": {
|
||||
"flake": false,
|
||||
"locked": {
|
||||
"lastModified": 1757716333,
|
||||
"narHash": "sha256-d4km8W7w2zCUEmPAPUoLk1NlYrGODuVa3P7St+UrqkM=",
|
||||
"owner": "tinted-theming",
|
||||
"repo": "schemes",
|
||||
"rev": "317a5e10c35825a6c905d912e480dfe8e71c7559",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
"owner": "tinted-theming",
|
||||
"repo": "schemes",
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"tinted-tmux": {
|
||||
"flake": false,
|
||||
"locked": {
|
||||
"lastModified": 1757811970,
|
||||
"narHash": "sha256-n5ZJgmzGZXOD9pZdAl1OnBu3PIqD+X3vEBUGbTi4JiI=",
|
||||
"owner": "tinted-theming",
|
||||
"repo": "tinted-tmux",
|
||||
"rev": "d217ba31c846006e9e0ae70775b0ee0f00aa6b1e",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
"owner": "tinted-theming",
|
||||
"repo": "tinted-tmux",
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"tinted-zed": {
|
||||
"flake": false,
|
||||
"locked": {
|
||||
"lastModified": 1757811247,
|
||||
"narHash": "sha256-4EFOUyLj85NRL3OacHoLGEo0wjiRJzfsXtR4CZWAn6w=",
|
||||
"owner": "tinted-theming",
|
||||
"repo": "base16-zed",
|
||||
"rev": "824fe0aacf82b3c26690d14e8d2cedd56e18404e",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
"owner": "tinted-theming",
|
||||
"repo": "base16-zed",
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"zen-browser": {
|
||||
"inputs": {
|
||||
"home-manager": "home-manager_2",
|
||||
"nixpkgs": [
|
||||
"nixpkgs"
|
||||
]
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1762721850,
|
||||
"narHash": "sha256-DM2z2mMtHqo7SQkhTRws538Aa9MUxH3pw6u6ZQrfeKk=",
|
||||
"owner": "0xc000022070",
|
||||
"repo": "zen-browser-flake",
|
||||
"rev": "f0c7e6dafa5641880eaa49736526f9101aa0bdb4",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
"owner": "0xc000022070",
|
||||
"repo": "zen-browser-flake",
|
||||
"type": "github"
|
||||
}
|
||||
}
|
||||
},
|
||||
"root": "root",
|
||||
"version": 7
|
||||
}
|
||||
@@ -0,0 +1,66 @@
|
||||
{
|
||||
description = "autumn's NixOS & home-manager Configuration";
|
||||
inputs = {
|
||||
nixpkgs.url = "github:NixOS/nixpkgs/nixos-unstable";
|
||||
home-manager = {
|
||||
url = "github:nix-community/home-manager";
|
||||
inputs.nixpkgs.follows = "nixpkgs";
|
||||
};
|
||||
nixvim = {
|
||||
url = "github:nix-community/nixvim";
|
||||
inputs.nixpkgs.follows = "nixpkgs";
|
||||
};
|
||||
stylix = {
|
||||
url = "github:danth/stylix";
|
||||
inputs.nixpkgs.follows = "nixpkgs";
|
||||
};
|
||||
zen-browser = {
|
||||
url = "github:0xc000022070/zen-browser-flake";
|
||||
inputs.nixpkgs.follows = "nixpkgs";
|
||||
};
|
||||
nix-wallpaper = {
|
||||
url = "github:lunik1/nix-wallpaper";
|
||||
inputs.nixpkgs.follows = "nixpkgs";
|
||||
};
|
||||
mango = {
|
||||
url = "github:DreamMaoMao/mango";
|
||||
inputs.nixpkgs.follows = "nixpkgs";
|
||||
};
|
||||
};
|
||||
outputs =
|
||||
{ ... }@inputs:
|
||||
let
|
||||
system = "x86_64-linux";
|
||||
pkgs = import inputs.nixpkgs {
|
||||
inherit system;
|
||||
config.allowUnfree = true;
|
||||
};
|
||||
in
|
||||
{
|
||||
nixosConfigurations."nixos" = inputs.nixpkgs.lib.nixosSystem {
|
||||
inherit system;
|
||||
inherit pkgs;
|
||||
modules = [
|
||||
./nixos/configuration.nix
|
||||
|
||||
inputs.home-manager.nixosModules.home-manager
|
||||
{
|
||||
home-manager.backupFileExtension = "hm-bak";
|
||||
|
||||
home-manager.extraSpecialArgs = { inherit inputs; };
|
||||
|
||||
home-manager.sharedModules = [
|
||||
inputs.nixvim.homeModules.nixvim
|
||||
inputs.stylix.homeModules.stylix
|
||||
inputs.zen-browser.homeModules.default
|
||||
];
|
||||
|
||||
home-manager.useGlobalPkgs = true;
|
||||
home-manager.useUserPackages = true;
|
||||
|
||||
home-manager.users."autumn" = ./home-manager/home.nix;
|
||||
}
|
||||
];
|
||||
};
|
||||
};
|
||||
}
|
||||
@@ -0,0 +1,37 @@
|
||||
{pkgs, ...}:
|
||||
{
|
||||
home.packages = with pkgs; [
|
||||
clang
|
||||
];
|
||||
|
||||
home.file.".clang-format".text = ''
|
||||
---
|
||||
BasedOnStyle: WebKit
|
||||
AlignAfterOpenBracket: Align
|
||||
BraceWrapping:
|
||||
AfterCaseLabel: true
|
||||
AfterClass: true
|
||||
AfterControlStatement: Always
|
||||
AfterEnum: true
|
||||
AfterFunction: true
|
||||
AfterNamespace: true
|
||||
AfterObjCDeclaration: true
|
||||
AfterStruct: true
|
||||
AfterUnion: true
|
||||
AfterExternBlock: true
|
||||
BeforeCatch: true
|
||||
BeforeElse: true
|
||||
BeforeLambdaBody: true
|
||||
BeforeWhile: true
|
||||
IndentBraces: false
|
||||
SplitEmptyFunction: true
|
||||
SplitEmptyRecord: true
|
||||
SplitEmptyNamespace: true
|
||||
BreakBeforeBraces: Custom
|
||||
ColumnLimit: 80
|
||||
IndentCaseLabels: true
|
||||
InsertBraces: true
|
||||
TabWidth: 4
|
||||
|
||||
'';
|
||||
}
|
||||
@@ -0,0 +1,24 @@
|
||||
{ pkgs, ... }:
|
||||
{
|
||||
imports = [
|
||||
./programs
|
||||
|
||||
./clangd.nix
|
||||
./hyprland.nix
|
||||
./packages.nix
|
||||
./stylix.nix
|
||||
./xdg.nix
|
||||
];
|
||||
|
||||
home.username = "autumn";
|
||||
home.homeDirectory = "/home/autumn";
|
||||
home.stateVersion = "25.05";
|
||||
|
||||
home.pointerCursor = {
|
||||
name = "Adwaita";
|
||||
package = pkgs.adwaita-icon-theme;
|
||||
size = 12;
|
||||
};
|
||||
|
||||
programs.home-manager.enable = true;
|
||||
}
|
||||
@@ -0,0 +1,143 @@
|
||||
{ config, pkgs, ... }:
|
||||
{
|
||||
home.packages = with pkgs; [
|
||||
hyprpicker
|
||||
swww
|
||||
];
|
||||
|
||||
home.file.".config/hypr/hyprland.conf".text = ''
|
||||
$mainMod=SUPER
|
||||
$menu=rofi -show drun
|
||||
$powerMenu=rofi -show power-menu -modi "power-menu:rofi-power-menu --choices lockscreen/suspend/reboot/shutdown"
|
||||
$screenshot=slurp | grim -g - - | wl-copy
|
||||
$terminal=foot
|
||||
animations {
|
||||
bezier=myBezier, 0.05, 0.9, 0.1, 1.05
|
||||
animation=windows, 1, 7, myBezier
|
||||
animation=windowsOut, 1, 7, default, popin 80%
|
||||
animation=border, 1, 10, default
|
||||
animation=borderangle, 1, 8, default
|
||||
animation=fade, 1, 7, default
|
||||
animation=workspaces, 1, 6, default
|
||||
enabled=true
|
||||
}
|
||||
|
||||
decoration {
|
||||
blur {
|
||||
enabled=yes
|
||||
ignore_opacity=on
|
||||
new_optimizations=on
|
||||
passes=3
|
||||
size=6
|
||||
special=true
|
||||
xray=false
|
||||
}
|
||||
# active_opacity=1.000000
|
||||
# inactive_opacity=1.000000
|
||||
rounding=10
|
||||
shadow {
|
||||
color=rgba(00000099)
|
||||
enabled=true
|
||||
range=4
|
||||
render_power=3
|
||||
}
|
||||
}
|
||||
|
||||
dwindle {
|
||||
preserve_split=true
|
||||
pseudotile=true
|
||||
}
|
||||
|
||||
xwayland {
|
||||
force_zero_scaling=true
|
||||
}
|
||||
|
||||
general {
|
||||
allow_tearing=false
|
||||
border_size=2
|
||||
col.active_border=rgb(${config.stylix.base16Scheme.palette.base0D})
|
||||
col.inactive_border=rgba(595959aa)
|
||||
gaps_in=5
|
||||
gaps_out=10
|
||||
layout=dwindle
|
||||
resize_on_border=false
|
||||
}
|
||||
|
||||
input {
|
||||
touchpad {
|
||||
natural_scroll=true
|
||||
disable_while_typing=0
|
||||
}
|
||||
|
||||
kb_layout=us
|
||||
}
|
||||
|
||||
misc {
|
||||
disable_hyprland_logo=true
|
||||
force_default_wallpaper=0
|
||||
}
|
||||
|
||||
monitor = DP-2, 2560x1440@180, 0x0, 1#, bitdepth, 10, cm, hdr
|
||||
monitor = HDMI-A-1, 1920x1080@60, 2560x0, 1
|
||||
|
||||
bind=$mainMod, Q, exec, $terminal
|
||||
bind=$mainMod, C, killactive
|
||||
bind=$mainMod, M, exit
|
||||
bind=$mainMod, V, togglefloating
|
||||
bind=$mainMod, D, exec, $menu
|
||||
bind=$mainMod, P, pseudo
|
||||
bind=$mainMod, T, togglesplit
|
||||
bind=$mainMod, S, exec, $screenshot
|
||||
bind=$mainMod SHIFT, P, exec, $powerMenu
|
||||
bind=$mainMod SHIFT, S, exec, $screenshot
|
||||
bind=$mainMod, F, fullscreen
|
||||
bind=$mainMod, left, movefocus, l
|
||||
bind=$mainMod, right, movefocus, r
|
||||
bind=$mainMod, up, movefocus, u
|
||||
bind=$mainMod, down, movefocus, d
|
||||
bind=$mainMod, H, movefocus, l
|
||||
bind=$mainMod, L, movefocus, r
|
||||
bind=$mainMod, K, movefocus, u
|
||||
bind=$mainMod, J, movefocus, d
|
||||
bind=$mainMod SHIFT, H, movewindow, l
|
||||
bind=$mainMod SHIFT, L, movewindow, r
|
||||
bind=$mainMod SHIFT, K, movewindow, u
|
||||
bind=$mainMod SHIFT, J, movewindow, d
|
||||
bind=$mainMod SHIFT, left, movewindow, l
|
||||
bind=$mainMod SHIFT, right, movewindow, r
|
||||
bind=$mainMod SHIFT, up, movewindow, u
|
||||
bind=$mainMod SHIFT, down, movewindow, d
|
||||
bind=$mainMod, 1, workspace, 1
|
||||
bind=$mainMod, 2, workspace, 2
|
||||
bind=$mainMod, 3, workspace, 3
|
||||
bind=$mainMod, 4, workspace, 4
|
||||
bind=$mainMod, 5, workspace, 5
|
||||
bind=$mainMod, 6, workspace, 6
|
||||
bind=$mainMod, 7, workspace, 7
|
||||
bind=$mainMod, 8, workspace, 8
|
||||
bind=$mainMod, 9, workspace, 9
|
||||
bind=$mainMod, 0, workspace, 10
|
||||
bind=$mainMod SHIFT, 1, movetoworkspace, 1
|
||||
bind=$mainMod SHIFT, 2, movetoworkspace, 2
|
||||
bind=$mainMod SHIFT, 3, movetoworkspace, 3
|
||||
bind=$mainMod SHIFT, 4, movetoworkspace, 4
|
||||
bind=$mainMod SHIFT, 5, movetoworkspace, 5
|
||||
bind=$mainMod SHIFT, 6, movetoworkspace, 6
|
||||
bind=$mainMod SHIFT, 7, movetoworkspace, 7
|
||||
bind=$mainMod SHIFT, 8, movetoworkspace, 8
|
||||
bind=$mainMod SHIFT, 9, movetoworkspace, 9
|
||||
bind=$mainMod SHIFT, 0, movetoworkspace, 10
|
||||
bind=$mainMod, mouse_down, workspace, e+1
|
||||
bind=$mainMod, mouse_up, workspace, e-1
|
||||
bindm=$mainMod, mouse:272, movewindow
|
||||
bindm=$mainMod, mouse:273, resizewindow
|
||||
env=XCURSOR_SIZE,24
|
||||
env=HYPRCURSOR_SIZE,24
|
||||
exec-once=swww-daemon
|
||||
exec=swww img ${config.stylix.image}
|
||||
exec-once=waybar
|
||||
exec=pkill waybar; waybar
|
||||
windowrulev2=suppressevent maximize, class:.*
|
||||
#windowrulev2 = opacity 0.9, class:(com.mitchellh.ghostty)
|
||||
'';
|
||||
}
|
||||
@@ -0,0 +1,220 @@
|
||||
{ config, ... }:
|
||||
{
|
||||
wayland.windowManager.mango = {
|
||||
enable = true;
|
||||
settings = ''
|
||||
# More option see https://github.com/DreamMaoMao/mango/wiki/
|
||||
|
||||
# Window effect
|
||||
blur=0
|
||||
blur_layer=0
|
||||
blur_optimized=1
|
||||
blur_params_num_passes = 2
|
||||
blur_params_radius = 5
|
||||
blur_params_noise = 0.02
|
||||
blur_params_brightness = 0.9
|
||||
blur_params_contrast = 0.9
|
||||
blur_params_saturation = 1.2
|
||||
|
||||
shadows = 1
|
||||
layer_shadows = 0
|
||||
shadow_only_floating = 0
|
||||
shadows_size = 10
|
||||
shadows_blur = 15
|
||||
shadows_position_x = 0
|
||||
shadows_position_y = 0
|
||||
shadowscolor= 0x00000099
|
||||
|
||||
border_radius=10
|
||||
no_radius_when_single=0
|
||||
focused_opacity=1.0
|
||||
unfocused_opacity=1.0
|
||||
|
||||
# Animation Configuration(support type:zoom,slide)
|
||||
# tag_animation_direction: 0-horizontal,1-vertical
|
||||
animations=1
|
||||
layer_animations=1
|
||||
animation_type_open=zoom
|
||||
animation_type_close=zoom
|
||||
animation_fade_in=1
|
||||
animation_fade_out=1
|
||||
tag_animation_direction=1
|
||||
zoom_initial_ratio=0.3
|
||||
zoom_end_ratio=0.8
|
||||
fadein_begin_opacity=0.5
|
||||
fadeout_begin_opacity=0.8
|
||||
animation_duration_move=500
|
||||
animation_duration_open=400
|
||||
animation_duration_tag=350
|
||||
animation_duration_close=800
|
||||
animation_curve_open=0.46,1.0,0.29,1
|
||||
animation_curve_move=0.46,1.0,0.29,1
|
||||
animation_curve_tag=0.46,1.0,0.29,1
|
||||
animation_curve_close=0.08,0.92,0,1
|
||||
|
||||
# Master-Stack Layout Setting
|
||||
new_is_master=1
|
||||
default_mfact=0.55
|
||||
default_nmaster=1
|
||||
smartgaps=0
|
||||
|
||||
# Overview Setting
|
||||
hotarea_size=10
|
||||
enable_hotarea=1
|
||||
ov_tab_mode=0
|
||||
overviewgappi=5
|
||||
overviewgappo=30
|
||||
|
||||
# Misc
|
||||
no_border_when_single=0
|
||||
axis_bind_apply_timeout=100
|
||||
focus_on_activate=1
|
||||
inhibit_regardless_of_visibility=0
|
||||
sloppyfocus=1
|
||||
warpcursor=1
|
||||
focus_cross_monitor=1
|
||||
focus_cross_tag=0
|
||||
enable_floating_snap=0
|
||||
snap_distance=30
|
||||
cursor_size=24
|
||||
drag_tile_to_tile=1
|
||||
|
||||
# keyboard
|
||||
repeat_rate=25
|
||||
repeat_delay=600
|
||||
numlockon=0
|
||||
xkb_rules_layout=us
|
||||
|
||||
# Trackpad
|
||||
# need relogin to make it apply
|
||||
disable_trackpad=0
|
||||
tap_to_click=1
|
||||
tap_and_drag=1
|
||||
drag_lock=1
|
||||
trackpad_natural_scrolling=0
|
||||
disable_while_typing=1
|
||||
left_handed=0
|
||||
middle_button_emulation=0
|
||||
swipe_min_threshold=1
|
||||
|
||||
# mouse
|
||||
# need relogin to make it apply
|
||||
mouse_natural_scrolling=0
|
||||
|
||||
# Appearance
|
||||
gappih=5
|
||||
gappiv=5
|
||||
gappoh=10
|
||||
gappov=10
|
||||
scratchpad_width_ratio=0.8
|
||||
scratchpad_height_ratio=0.9
|
||||
borderpx=2
|
||||
rootcolor=0x201b14ff
|
||||
bordercolor=0x595959aa
|
||||
focuscolor=${config.stylix.base16Scheme.palette.base0D}ff
|
||||
maximizescreencolor=0x89aa61ff
|
||||
urgentcolor=0xad401fff
|
||||
scratchpadcolor=0x516c93ff
|
||||
globalcolor=0xb153a7ff
|
||||
overlaycolor=0x14a57cff
|
||||
|
||||
# layout support:
|
||||
# tile,scroller,grid,deck,monocle,center_tile,vertical_tile,vertical_scroller
|
||||
tagrule=id:1,layout_name:tile
|
||||
tagrule=id:2,layout_name:tile
|
||||
tagrule=id:3,layout_name:tile
|
||||
tagrule=id:4,layout_name:tile
|
||||
tagrule=id:5,layout_name:tile
|
||||
tagrule=id:6,layout_name:tile
|
||||
tagrule=id:7,layout_name:tile
|
||||
tagrule=id:8,layout_name:tile
|
||||
tagrule=id:9,layout_name:tile
|
||||
|
||||
# Key Bindings
|
||||
# key name refer to `xev` or ``grid command output,
|
||||
# mod keys name: super,ctrl,alt,shift,none
|
||||
|
||||
# reload config
|
||||
bind=SUPER,r,reload_config
|
||||
|
||||
# menu and terminal
|
||||
bind=SUPER,q,spawn,foot
|
||||
bind=SUPER,d,spawn,rofi -show drun
|
||||
bind=SUPER+SHIFT,p,spawn,rofi -show power-menu -modi power-menu:rofi-power-menu
|
||||
|
||||
# exit
|
||||
bind=SUPER,c,killclient
|
||||
bind=SUPER,m,quit
|
||||
|
||||
# switch window focus
|
||||
bind=SUPER,Tab,focusstack,next
|
||||
bind=SUPER,Left,focusdir,left
|
||||
bind=SUPER,Right,focusdir,right
|
||||
bind=SUPER,Up,focusdir,up
|
||||
bind=SUPER,Down,focusdir,down
|
||||
|
||||
# swap window
|
||||
bind=SUPER+SHIFT,Up,exchange_client,up
|
||||
bind=SUPER+SHIFT,Down,exchange_client,down
|
||||
bind=SUPER+SHIFT,Left,exchange_client,left
|
||||
bind=SUPER+SHIFT,Right,exchange_client,right
|
||||
|
||||
# switch window status
|
||||
bind=SUPER,g,toggleglobal,
|
||||
bind=SUPER,Tab,toggleoverview,
|
||||
bind=SUPER,v,togglefloating
|
||||
bind=SUPER,f,togglefullscreen,
|
||||
bind=SUPER,o,toggleoverlay,
|
||||
bind=SUPER,z,toggle_scratchpad
|
||||
|
||||
# tag switch
|
||||
bind=SUPER,1,view,1,0
|
||||
bind=SUPER,2,view,2,0
|
||||
bind=SUPER,3,view,3,0
|
||||
bind=SUPER,4,view,4,0
|
||||
bind=SUPER,5,view,5,0
|
||||
bind=SUPER,6,view,6,0
|
||||
bind=SUPER,7,view,7,0
|
||||
bind=SUPER,8,view,8,0
|
||||
bind=SUPER,9,view,9,0
|
||||
|
||||
# tag: move client to the tag and focus it
|
||||
# tagsilent: move client to the tag and not focus it
|
||||
# bind=Alt,1,tagsilent,1
|
||||
bind=SUPER+SHIFT,1,tag,1,0
|
||||
bind=SUPER+SHIFT,2,tag,2,0
|
||||
bind=SUPER+SHIFT,3,tag,3,0
|
||||
bind=SUPER+SHIFT,4,tag,4,0
|
||||
bind=SUPER+SHIFT,5,tag,5,0
|
||||
bind=SUPER+SHIFT,6,tag,6,0
|
||||
bind=SUPER+SHIFT,7,tag,7,0
|
||||
bind=SUPER+SHIFT,8,tag,8,0
|
||||
bind=SUPER+SHIFT,9,tag,9,0
|
||||
|
||||
# Mouse Button Bindings
|
||||
# NONE mode key only work in ov mode
|
||||
mousebind=SUPER,btn_left,moveresize,curmove
|
||||
mousebind=NONE,btn_middle,togglemaximizescreen,0
|
||||
mousebind=SUPER,btn_right,moveresize,curresize
|
||||
mousebind=NONE,btn_left,toggleoverview,-1
|
||||
mousebind=NONE,btn_right,killclient,0
|
||||
|
||||
# Axis Bindings
|
||||
axisbind=SUPER,UP,viewtoleft_have_client
|
||||
axisbind=SUPER,DOWN,viewtoright_have_client
|
||||
|
||||
# layer rule
|
||||
layerrule=animation_type_open:zoom,layer_name:rofi
|
||||
layerrule=animation_type_close:zoom,layer_name:rofi
|
||||
|
||||
exec-once=swww-daemon
|
||||
exec=swww img ${config.stylix.image}
|
||||
exec=pkill waybar; waybar
|
||||
|
||||
env=XCURSOR_SIZE,24
|
||||
|
||||
monitorrule=DP-2,0.55,1,tile,0,1,0,0,2560,1440,180
|
||||
monitorrule=HDMI-A-1,0.55,1,tile,0,1,2560,0,1920,1080,60
|
||||
'';
|
||||
};
|
||||
}
|
||||
@@ -0,0 +1,15 @@
|
||||
# Rofi
|
||||
- [x] package search (nix-search-tv + television)
|
||||
- [x] power menu log out -> sddm // remove log out all together; super+m works just fine
|
||||
- [ ] package search (nix-search-tv + rofi) // can use -dmenu with pipes
|
||||
- [ ] figure out rofi-calc | dict.sh
|
||||
|
||||
# Misc.
|
||||
- [x] setup some proper shell shortcuts
|
||||
- [x] ❌ cancelled : dynamic auto-tab depending on filetype // just deal with the standards, silly !
|
||||
- [ ] COMMENTS
|
||||
|
||||
# Nix
|
||||
- [ ] combine home-manager and nixos configuration
|
||||
- [ ] custom nixos iso
|
||||
|
||||
@@ -0,0 +1,50 @@
|
||||
{ pkgs, ... }:
|
||||
{
|
||||
home.packages = with pkgs; [
|
||||
anki
|
||||
arduino-ide
|
||||
audacity
|
||||
blender
|
||||
cava
|
||||
cmus
|
||||
eza
|
||||
fd
|
||||
file
|
||||
ffmpeg
|
||||
fzf
|
||||
gimp3-with-plugins
|
||||
git
|
||||
ghidra-bin
|
||||
grim
|
||||
kdePackages.kdenlive
|
||||
kicad
|
||||
killall
|
||||
krita
|
||||
lazygit
|
||||
ldtk
|
||||
libresprite
|
||||
logisim-evolution
|
||||
lunar-client
|
||||
man-pages
|
||||
man-pages-posix
|
||||
musikcube
|
||||
obs-studio
|
||||
pandoc
|
||||
python3
|
||||
prismlauncher
|
||||
ripgrep
|
||||
rusty-man
|
||||
slurp
|
||||
stm32cubemx
|
||||
telegram-desktop
|
||||
texlive.combined.scheme-small
|
||||
tokei
|
||||
tor-browser
|
||||
unzip
|
||||
vial
|
||||
virtualboxKvm
|
||||
vlc
|
||||
wiki-tui
|
||||
wl-clipboard
|
||||
];
|
||||
}
|
||||
@@ -0,0 +1,9 @@
|
||||
{...}: {
|
||||
programs.btop = {
|
||||
enable = true;
|
||||
settings = {
|
||||
vim_keys = true;
|
||||
theme_background = false;
|
||||
};
|
||||
};
|
||||
}
|
||||
@@ -0,0 +1,7 @@
|
||||
{...}:
|
||||
{
|
||||
programs.carapace = {
|
||||
enable = true;
|
||||
enableNushellIntegration = true;
|
||||
};
|
||||
}
|
||||
@@ -0,0 +1,24 @@
|
||||
{
|
||||
imports = [
|
||||
./nvim
|
||||
./rofi
|
||||
|
||||
./btop.nix
|
||||
./carapace.nix
|
||||
./fastfetch.nix
|
||||
./foot.nix
|
||||
./hyfetch.nix
|
||||
./mako.nix
|
||||
./ncspot.nix
|
||||
./nix-search-tv.nix
|
||||
./nushell.nix
|
||||
./starship.nix
|
||||
./tmux.nix
|
||||
./vesktop.nix
|
||||
./waybar.nix
|
||||
./yazi.nix
|
||||
./zathura.nix
|
||||
./zoxide.nix
|
||||
./zen.nix
|
||||
];
|
||||
}
|
||||
@@ -0,0 +1,156 @@
|
||||
{...}: {
|
||||
programs.fastfetch = {
|
||||
enable = true;
|
||||
settings = {
|
||||
logo = {
|
||||
padding = {
|
||||
top = 2;
|
||||
};
|
||||
};
|
||||
display = {
|
||||
separator = " -> ";
|
||||
};
|
||||
modules = [
|
||||
{
|
||||
type = "custom";
|
||||
format = "┌────────────────────────────────────────────────────────────┐";
|
||||
outputColor = "90";
|
||||
}
|
||||
{
|
||||
type = "title";
|
||||
keyWidth = 10;
|
||||
}
|
||||
{
|
||||
type = "custom";
|
||||
format = "└────────────────────────────────────────────────────────────┘";
|
||||
outputColor = "90";
|
||||
}
|
||||
{
|
||||
type = "custom";
|
||||
format = " {#90} {#31} {#32} {#33} {#34} {#35} {#36} {#37} {#38} {#39} {#38} {#37} {#36} {#35} {#34} {#33} {#32} {#31} {#90}";
|
||||
}
|
||||
{
|
||||
type = "custom";
|
||||
format = "┌────────────────────────────────────────────────────────────┐";
|
||||
outputColor = "90";
|
||||
}
|
||||
{
|
||||
type = "os";
|
||||
key = " OS";
|
||||
keyColor = "yellow";
|
||||
format = "{2} {8} {1}";
|
||||
}
|
||||
{
|
||||
type = "kernel";
|
||||
key = "│ ├";
|
||||
keyColor = "yellow";
|
||||
}
|
||||
{
|
||||
type = "packages";
|
||||
key = "│ ├";
|
||||
keyColor = "yellow";
|
||||
}
|
||||
{
|
||||
type = "shell";
|
||||
key = "│ └";
|
||||
keyColor = "yellow";
|
||||
}
|
||||
{
|
||||
type = "wm";
|
||||
key = " DE/WM";
|
||||
keyColor = "blue";
|
||||
}
|
||||
{
|
||||
type = "lm";
|
||||
key = "│ ├";
|
||||
keyColor = "blue";
|
||||
}
|
||||
{
|
||||
type = "wmtheme";
|
||||
key = "│ ├";
|
||||
keyColor = "blue";
|
||||
}
|
||||
{
|
||||
type = "icons";
|
||||
key = "│ ├";
|
||||
keyColor = "blue";
|
||||
}
|
||||
{
|
||||
type = "terminal";
|
||||
key = "│ ├";
|
||||
keyColor = "blue";
|
||||
}
|
||||
{
|
||||
type = "wallpaper";
|
||||
key = "│ └";
|
||||
keyColor = "blue";
|
||||
}
|
||||
{
|
||||
type = "host";
|
||||
key = " PC";
|
||||
keyColor = "green";
|
||||
}
|
||||
{
|
||||
type = "cpu";
|
||||
key = "│ ├";
|
||||
keyColor = "green";
|
||||
}
|
||||
{
|
||||
type = "gpu";
|
||||
key = "│ ├";
|
||||
keyColor = "green";
|
||||
}
|
||||
{
|
||||
type = "disk";
|
||||
key = "│ ├";
|
||||
keyColor = "green";
|
||||
}
|
||||
{
|
||||
type = "memory";
|
||||
key = "│ ├";
|
||||
keyColor = "green";
|
||||
}
|
||||
{
|
||||
type = "swap";
|
||||
key = "│ ├";
|
||||
keyColor = "green";
|
||||
}
|
||||
{
|
||||
type = "uptime";
|
||||
key = "│ ├";
|
||||
keyColor = "green";
|
||||
}
|
||||
{
|
||||
type = "display";
|
||||
key = "│ └";
|
||||
keyColor = "green";
|
||||
}
|
||||
{
|
||||
type = "sound";
|
||||
key = " SND";
|
||||
keyColor = "cyan";
|
||||
}
|
||||
{
|
||||
type = "player";
|
||||
key = "│ ├";
|
||||
keyColor = "cyan";
|
||||
}
|
||||
{
|
||||
type = "media";
|
||||
key = "│ └";
|
||||
keyColor = "cyan";
|
||||
}
|
||||
{
|
||||
type = "custom";
|
||||
format = "└────────────────────────────────────────────────────────────┘";
|
||||
outputColor = "90";
|
||||
}
|
||||
"break"
|
||||
{
|
||||
type = "custom";
|
||||
format = " {#90} {#31} {#32} {#33} {#34} {#35} {#36} {#37} {#38} {#39} {#38} {#37} {#36} {#35} {#34} {#33} {#32} {#31} {#90}";
|
||||
}
|
||||
];
|
||||
};
|
||||
};
|
||||
}
|
||||
@@ -0,0 +1,13 @@
|
||||
{...}: {
|
||||
programs.foot = {
|
||||
enable = true;
|
||||
settings = {
|
||||
cursor = {
|
||||
style = "beam";
|
||||
};
|
||||
key-bindings = {
|
||||
spawn-terminal = "none";
|
||||
};
|
||||
};
|
||||
};
|
||||
}
|
||||
@@ -0,0 +1,13 @@
|
||||
{ ... }:
|
||||
{
|
||||
programs.hyfetch = {
|
||||
enable = true;
|
||||
settings = {
|
||||
preset = "transgender";
|
||||
mode = "rgb";
|
||||
color_align.mode = "horizontal";
|
||||
backend = "fastfetch";
|
||||
pride_month_disable = true;
|
||||
};
|
||||
};
|
||||
}
|
||||
@@ -0,0 +1,9 @@
|
||||
{...}: {
|
||||
services.mako = {
|
||||
enable = true;
|
||||
settings = {
|
||||
default-timeout = 5000;
|
||||
ignore-timeout = true;
|
||||
};
|
||||
};
|
||||
}
|
||||
@@ -0,0 +1,6 @@
|
||||
{...}:
|
||||
{
|
||||
programs.ncspot = {
|
||||
enable = true;
|
||||
};
|
||||
}
|
||||
@@ -0,0 +1,8 @@
|
||||
{ ... }:
|
||||
{
|
||||
programs.television.enable = true;
|
||||
programs.nix-search-tv = {
|
||||
enable = true;
|
||||
enableTelevisionIntegration = true;
|
||||
};
|
||||
}
|
||||
@@ -0,0 +1,223 @@
|
||||
{ config, pkgs, ... }:
|
||||
{
|
||||
home.packages = [ pkgs.nix-your-shell ];
|
||||
|
||||
programs.nushell = {
|
||||
enable = true;
|
||||
plugins = with pkgs.nushellPlugins; [
|
||||
formats
|
||||
polars
|
||||
gstat
|
||||
query
|
||||
];
|
||||
settings = {
|
||||
show_banner = false;
|
||||
edit_mode = "vi";
|
||||
cursor_shape = {
|
||||
emacs = "line";
|
||||
vi_insert = "line";
|
||||
vi_normal = "block";
|
||||
};
|
||||
};
|
||||
shellAliases = {
|
||||
c = "clear";
|
||||
meow = "_meow";
|
||||
|
||||
hf = "nix flake update --flake ${config.home.homeDirectory}/.config/home-manager";
|
||||
hs = "nh home switch ~/.config/home-manager";
|
||||
hz = "z ~/.config/home-manager";
|
||||
|
||||
nsu = "_nsu";
|
||||
ns = "sudo nixos-rebuild switch";
|
||||
|
||||
se = "sudoedit";
|
||||
v = "nvim";
|
||||
};
|
||||
extraConfig = with config.stylix.base16Scheme.palette; ''
|
||||
def _meow () {
|
||||
clear
|
||||
hyfetch
|
||||
}
|
||||
|
||||
def _nsu () {
|
||||
sudo nix-channel --add https://channels.nixos.org/nixos-unstable nixos
|
||||
sudo nixos-rebuild switch --upgrade
|
||||
}
|
||||
|
||||
def _nix_your_shell (command: string, args: list<string>) {
|
||||
if not (which nix-your-shell | is-empty) {
|
||||
let args = ["--"] ++ $args
|
||||
run-external nix-your-shell nu $command ...$args
|
||||
} else {
|
||||
run-external $command ...$args
|
||||
}
|
||||
}
|
||||
|
||||
def --wrapped nix-shell (...args) {
|
||||
_nix_your_shell nix-shell $args
|
||||
}
|
||||
|
||||
def --wrapped nix (...args) {
|
||||
_nix_your_shell nix $args
|
||||
}
|
||||
|
||||
|
||||
let theme = {
|
||||
base00: "#${base00}"
|
||||
base01: "#${base01}"
|
||||
base02: "#${base02}"
|
||||
base03: "#${base03}"
|
||||
base04: "#${base04}"
|
||||
base05: "#${base05}"
|
||||
base06: "#${base06}"
|
||||
base07: "#${base07}"
|
||||
base08: "#${base08}"
|
||||
base09: "#${base09}"
|
||||
base0A: "#${base0A}"
|
||||
base0B: "#${base0B}"
|
||||
base0C: "#${base0C}"
|
||||
base0D: "#${base0D}"
|
||||
base0E: "#${base0E}"
|
||||
base0F: "#${base0F}"
|
||||
}
|
||||
|
||||
let scheme = {
|
||||
recognized_command: $theme.base0D
|
||||
unrecognized_command: $theme.base08
|
||||
constant: $theme.base09
|
||||
punctuation: $theme.base04
|
||||
operator: $theme.base0C
|
||||
string: $theme.base0B
|
||||
virtual_text: $theme.base04
|
||||
variable: { fg: $theme.base0F attr: i }
|
||||
filepath: $theme.base0A
|
||||
}
|
||||
|
||||
$env.config.color_config = {
|
||||
separator: { fg: $theme.base04 attr: b }
|
||||
leading_trailing_space_bg: { fg: $theme.base07 attr: u }
|
||||
header: { fg: $theme.base05 attr: b }
|
||||
row_index: $scheme.virtual_text
|
||||
record: $theme.base05
|
||||
list: $theme.base05
|
||||
hints: $scheme.virtual_text
|
||||
search_result: { fg: $theme.base00 bg: $theme.base0A }
|
||||
shape_closure: $theme.base0C
|
||||
closure: $theme.base0C
|
||||
shape_flag: { fg: $theme.base08 attr: i }
|
||||
shape_matching_brackets: { attr: u }
|
||||
shape_garbage: $theme.base08
|
||||
shape_keyword: $theme.base0E
|
||||
shape_match_pattern: $theme.base0B
|
||||
shape_signature: $theme.base0C
|
||||
shape_table: $scheme.punctuation
|
||||
cell-path: $scheme.punctuation
|
||||
shape_list: $scheme.punctuation
|
||||
shape_record: $scheme.punctuation
|
||||
shape_vardecl: $scheme.variable
|
||||
shape_variable: $scheme.variable
|
||||
empty: { attr: n }
|
||||
filesize: {||
|
||||
if $in < 1kb {
|
||||
$theme.base0C
|
||||
} else if $in < 10kb {
|
||||
$theme.base0B
|
||||
} else if $in < 100kb {
|
||||
$theme.base0A
|
||||
} else if $in < 10mb {
|
||||
$theme.base09
|
||||
} else if $in < 100mb {
|
||||
$theme.base08
|
||||
} else if $in < 1gb {
|
||||
$theme.base08
|
||||
} else {
|
||||
$theme.base0E
|
||||
}
|
||||
}
|
||||
duration: {||
|
||||
if $in < 1day {
|
||||
$theme.base0C
|
||||
} else if $in < 1wk {
|
||||
$theme.base0B
|
||||
} else if $in < 4wk {
|
||||
$theme.base0A
|
||||
} else if $in < 12wk {
|
||||
$theme.base09
|
||||
} else if $in < 24wk {
|
||||
$theme.base08
|
||||
} else if $in < 52wk {
|
||||
$theme.base08
|
||||
} else {
|
||||
$theme.base0E
|
||||
}
|
||||
}
|
||||
date: {|| (date now) - $in |
|
||||
if $in < 1day {
|
||||
$theme.base0C
|
||||
} else if $in < 1wk {
|
||||
$theme.base0B
|
||||
} else if $in < 4wk {
|
||||
$theme.base0A
|
||||
} else if $in < 12wk {
|
||||
$theme.base09
|
||||
} else if $in < 24wk {
|
||||
$theme.base08
|
||||
} else if $in < 52wk {
|
||||
$theme.base08
|
||||
} else {
|
||||
$theme.base0E
|
||||
}
|
||||
}
|
||||
shape_external: $scheme.unrecognized_command
|
||||
shape_internalcall: $scheme.recognized_command
|
||||
shape_external_resolved: $scheme.recognized_command
|
||||
shape_block: $scheme.recognized_command
|
||||
block: $scheme.recognized_command
|
||||
shape_custom: $theme.base0F
|
||||
custom: $theme.base0F
|
||||
background: $theme.base00
|
||||
foreground: $theme.base05
|
||||
cursor: { bg: $theme.base06 fg: $theme.base00 }
|
||||
shape_range: $scheme.operator
|
||||
range: $scheme.operator
|
||||
shape_pipe: $scheme.operator
|
||||
shape_operator: $scheme.operator
|
||||
shape_base08irection: $scheme.operator
|
||||
glob: $scheme.filepath
|
||||
shape_directory: $scheme.filepath
|
||||
shape_filepath: $scheme.filepath
|
||||
shape_glob_interpolation: $scheme.filepath
|
||||
shape_globpattern: $scheme.filepath
|
||||
shape_int: $scheme.constant
|
||||
int: $scheme.constant
|
||||
bool: $scheme.constant
|
||||
float: $scheme.constant
|
||||
nothing: $scheme.constant
|
||||
binary: $scheme.constant
|
||||
shape_nothing: $scheme.constant
|
||||
shape_bool: $scheme.constant
|
||||
shape_float: $scheme.constant
|
||||
shape_binary: $scheme.constant
|
||||
shape_datetime: $scheme.constant
|
||||
shape_literal: $scheme.constant
|
||||
string: $scheme.string
|
||||
shape_string: $scheme.string
|
||||
shape_string_interpolation: $theme.base0F
|
||||
shape_raw_string: $scheme.string
|
||||
shape_externalarg: $scheme.string
|
||||
}
|
||||
$env.config.highlight_resolved_externals = true
|
||||
$env.config.explore = {
|
||||
status_bar_background: { fg: $theme.base05, bg: $theme.base01 },
|
||||
command_bar_text: { fg: $theme.base05 },
|
||||
highlight: { fg: $theme.base00, bg: $theme.base0A },
|
||||
status: {
|
||||
error: $theme.base08,
|
||||
warn: $theme.base0A,
|
||||
info: $theme.base0D,
|
||||
},
|
||||
selected_cell: { bg: $theme.base0D fg: $theme.base00 },
|
||||
}
|
||||
'';
|
||||
};
|
||||
}
|
||||
@@ -0,0 +1,6 @@
|
||||
{...}: {
|
||||
imports = [
|
||||
./lsp.nix
|
||||
./none-ls.nix
|
||||
];
|
||||
}
|
||||
@@ -0,0 +1,124 @@
|
||||
{ ... }:
|
||||
{
|
||||
programs.nixvim.plugins = {
|
||||
lsp = {
|
||||
enable = true;
|
||||
inlayHints = true;
|
||||
servers = {
|
||||
asm_lsp.enable = true;
|
||||
lua_ls = {
|
||||
enable = true;
|
||||
settings.telemetry.enable = false;
|
||||
};
|
||||
pyright.enable = true;
|
||||
mlir_lsp_server.enable = true;
|
||||
nixd.enable = true;
|
||||
nil_ls.enable = true;
|
||||
clangd = {
|
||||
enable = true;
|
||||
cmd = [
|
||||
"clangd"
|
||||
];
|
||||
};
|
||||
eslint.enable = true;
|
||||
hls = {
|
||||
enable = true;
|
||||
installGhc = true;
|
||||
settings.haskell = {
|
||||
formattingProvider = "fourmolu";
|
||||
};
|
||||
};
|
||||
html.enable = true;
|
||||
jsonls.enable = true;
|
||||
ocamllsp.enable = true;
|
||||
nushell.enable = true;
|
||||
ts_ls.enable = true;
|
||||
zls.enable = true;
|
||||
};
|
||||
};
|
||||
cmp-emoji = {
|
||||
enable = true;
|
||||
};
|
||||
cmp = {
|
||||
enable = true;
|
||||
settings = {
|
||||
autoEnableSources = true;
|
||||
experimental = {
|
||||
ghost_text = true;
|
||||
};
|
||||
performance = {
|
||||
debounce = 60;
|
||||
fetchingTimeout = 200;
|
||||
};
|
||||
snippet = {
|
||||
expand = "luasnip";
|
||||
};
|
||||
formatting = {
|
||||
fields = [
|
||||
"kind"
|
||||
"abbr"
|
||||
"menu"
|
||||
];
|
||||
};
|
||||
sources = [
|
||||
{ name = "nvim_lsp"; }
|
||||
{ name = "emoji"; }
|
||||
|
||||
{
|
||||
name = "buffer"; # text within current buffer
|
||||
option.get_bufnrs.__raw = "vim.api.nvim_list_bufs";
|
||||
keywordLength = 3;
|
||||
}
|
||||
|
||||
{
|
||||
name = "path"; # file system paths
|
||||
keywordLength = 3;
|
||||
}
|
||||
|
||||
{
|
||||
name = "luasnip"; # snippets
|
||||
keywordLength = 3;
|
||||
}
|
||||
];
|
||||
|
||||
window = {
|
||||
completion.__raw = "cmp.config.window.bordered()";
|
||||
documentation.__raw = "cmp.config.window.bordered()";
|
||||
};
|
||||
|
||||
mapping = {
|
||||
"<Tab>" = "cmp.mapping(cmp.mapping.select_next_item(), {'i', 's'})";
|
||||
"<S-Tab>" = "cmp.mapping(cmp.mapping.select_prev_item(), {'i', 's'})";
|
||||
"<C-e>" = "cmp.mapping.abort()";
|
||||
"<C-b>" = "cmp.mapping.scroll_docs(-4)";
|
||||
"<C-f>" = "cmp.mapping.scroll_docs(4)";
|
||||
"<C-Space>" = "cmp.mapping.complete()";
|
||||
"<CR>" = "cmp.mapping.confirm({ select = true })";
|
||||
"<S-CR>" = "cmp.mapping.confirm({ behavior = cmp.ConfirmBehavior.Replace, select = true })";
|
||||
};
|
||||
};
|
||||
};
|
||||
cmp-nvim-lsp = {
|
||||
enable = true;
|
||||
}; # lsp
|
||||
cmp-buffer = {
|
||||
enable = true;
|
||||
};
|
||||
cmp-path = {
|
||||
enable = true;
|
||||
}; # file system paths
|
||||
cmp_luasnip = {
|
||||
enable = true;
|
||||
}; # snippets
|
||||
cmp-cmdline = {
|
||||
enable = false;
|
||||
}; # autocomplete for cmdline
|
||||
luasnip = {
|
||||
enable = true;
|
||||
settings = {
|
||||
enable_autosnippets = true;
|
||||
store_selection_keys = "<Tab>";
|
||||
};
|
||||
};
|
||||
};
|
||||
}
|
||||
@@ -0,0 +1,10 @@
|
||||
{ ... }:
|
||||
{
|
||||
programs.nixvim.plugins = {
|
||||
lsp-format.enable = true;
|
||||
none-ls = {
|
||||
enable = true;
|
||||
enableLspFormat = true;
|
||||
};
|
||||
};
|
||||
}
|
||||
@@ -0,0 +1,18 @@
|
||||
{ ... }:
|
||||
{
|
||||
imports = [
|
||||
./cmp
|
||||
./plugins
|
||||
|
||||
./keymaps.nix
|
||||
./options.nix
|
||||
];
|
||||
|
||||
programs.nixvim = {
|
||||
enable = true;
|
||||
defaultEditor = true;
|
||||
viAlias = true;
|
||||
vimAlias = true;
|
||||
colorschemes.catppuccin.enable = true;
|
||||
};
|
||||
}
|
||||
@@ -0,0 +1,94 @@
|
||||
{ ... }:
|
||||
{
|
||||
programs.nixvim = {
|
||||
globals.mapleader = " ";
|
||||
keymaps = [
|
||||
{
|
||||
mode = "n";
|
||||
key = "<leader>n";
|
||||
action = "<cmd>NvimTreeFindFileToggle<cr>";
|
||||
}
|
||||
|
||||
{
|
||||
mode = [
|
||||
"n"
|
||||
"i"
|
||||
"v"
|
||||
"t"
|
||||
];
|
||||
key = "<c-\\>";
|
||||
action = "<cmd>ToggleTerm<cr>";
|
||||
}
|
||||
|
||||
{
|
||||
mode = [
|
||||
"n"
|
||||
"i"
|
||||
"v"
|
||||
];
|
||||
key = "<c-l>";
|
||||
action = "<cmd>BufferLineCycleNext<cr>";
|
||||
}
|
||||
|
||||
{
|
||||
mode = [
|
||||
"n"
|
||||
"i"
|
||||
"v"
|
||||
];
|
||||
key = "<c-h>";
|
||||
action = "<cmd>BufferLineCyclePrev<cr>";
|
||||
}
|
||||
|
||||
{
|
||||
mode = [
|
||||
"n"
|
||||
"i"
|
||||
"v"
|
||||
];
|
||||
key = "<c-j>";
|
||||
action = "<cmd>BufferLineGoToBuffer 1<cr>";
|
||||
}
|
||||
|
||||
{
|
||||
mode = [
|
||||
"n"
|
||||
"i"
|
||||
"v"
|
||||
];
|
||||
key = "<c-k>";
|
||||
action = "<cmd>BufferLineGoToBuffer -1<cr>";
|
||||
}
|
||||
|
||||
{
|
||||
mode = "n";
|
||||
key = "<leader><leader>";
|
||||
action = "<cmd>Yazi<cr>";
|
||||
}
|
||||
|
||||
{
|
||||
mode = "n";
|
||||
key = "<leader>a";
|
||||
action = "<cmd>AerialToggle<cr>";
|
||||
}
|
||||
|
||||
{
|
||||
mode = "n";
|
||||
key = "{";
|
||||
action = "<cmd>AerialPrev<cr>";
|
||||
}
|
||||
|
||||
{
|
||||
mode = "n";
|
||||
key = "}";
|
||||
action = "<cmd>AerialNext<cr>";
|
||||
}
|
||||
|
||||
{
|
||||
mode = "n";
|
||||
key = "<leader>c";
|
||||
action = ":hori term ";
|
||||
}
|
||||
];
|
||||
};
|
||||
}
|
||||
@@ -0,0 +1,58 @@
|
||||
{ ... }:
|
||||
{
|
||||
programs.nixvim = {
|
||||
autoCmd = [
|
||||
{
|
||||
event = [ "VimLeave" ];
|
||||
command = ":set guicursor=a:ver90-blinkon0";
|
||||
}
|
||||
];
|
||||
diagnostic.settings = {
|
||||
virtual_lines = {
|
||||
current_line = true;
|
||||
};
|
||||
float = {
|
||||
border = "rounded";
|
||||
source = "always";
|
||||
};
|
||||
};
|
||||
opts = {
|
||||
shell = "nu";
|
||||
|
||||
fillchars = "eob: ";
|
||||
|
||||
number = true;
|
||||
relativenumber = true;
|
||||
|
||||
tabstop = 4;
|
||||
softtabstop = 4;
|
||||
showtabline = 4;
|
||||
shiftwidth = 4;
|
||||
expandtab = true;
|
||||
smartindent = true;
|
||||
breakindent = true;
|
||||
|
||||
hlsearch = true;
|
||||
incsearch = true;
|
||||
ignorecase = true;
|
||||
smartcase = true;
|
||||
|
||||
splitbelow = true;
|
||||
splitright = true;
|
||||
|
||||
mouse = "a";
|
||||
|
||||
updatetime = 50;
|
||||
|
||||
swapfile = false;
|
||||
backup = false;
|
||||
undofile = true;
|
||||
|
||||
scrolloff = 10;
|
||||
|
||||
cursorline = true;
|
||||
|
||||
wildmenu = true;
|
||||
};
|
||||
};
|
||||
}
|
||||
@@ -0,0 +1,11 @@
|
||||
{ ... }:
|
||||
{
|
||||
programs.nixvim.plugins.codesnap = {
|
||||
enable = true;
|
||||
settings = {
|
||||
has_line_number = true;
|
||||
bg_theme = "grape";
|
||||
watermark = "";
|
||||
};
|
||||
};
|
||||
}
|
||||
@@ -0,0 +1,31 @@
|
||||
{ ... }:
|
||||
{
|
||||
imports = [
|
||||
|
||||
./codesnap.nix
|
||||
./rustaceanvim.nix
|
||||
./telescope.nix
|
||||
./toggleterm.nix
|
||||
./treesitter.nix
|
||||
];
|
||||
|
||||
programs.nixvim.plugins = {
|
||||
aerial.enable = true;
|
||||
bufferline.enable = true;
|
||||
colorizer.enable = true;
|
||||
comment.enable = true;
|
||||
crates.enable = true;
|
||||
fidget.enable = true;
|
||||
lazygit.enable = true;
|
||||
lsp-lines.enable = true;
|
||||
lualine.enable = true;
|
||||
nvim-tree.enable = true;
|
||||
nvim-autopairs.enable = true;
|
||||
quickmath.enable = true;
|
||||
render-markdown.enable = true;
|
||||
treesj.enable = true;
|
||||
visual-multi.enable = true;
|
||||
web-devicons.enable = true;
|
||||
yazi.enable = true;
|
||||
};
|
||||
}
|
||||
@@ -0,0 +1,26 @@
|
||||
{ ... }:
|
||||
{
|
||||
programs.nixvim.plugins.rustaceanvim = {
|
||||
enable = true;
|
||||
settings = {
|
||||
tools.enable_clippy = true;
|
||||
server = {
|
||||
default_settings = {
|
||||
inlayHints = {
|
||||
lifetimeElisionHints = {
|
||||
enable = "always";
|
||||
};
|
||||
};
|
||||
rust-analyzer = {
|
||||
cargo = {
|
||||
allFeatures = true;
|
||||
};
|
||||
check = {
|
||||
command = "clippy";
|
||||
};
|
||||
};
|
||||
};
|
||||
};
|
||||
};
|
||||
};
|
||||
}
|
||||
@@ -0,0 +1,33 @@
|
||||
{ ... }:
|
||||
{
|
||||
programs.nixvim.plugins.telescope = {
|
||||
enable = true;
|
||||
extensions = {
|
||||
# file-browser.enable = true;
|
||||
fzf-native.enable = true;
|
||||
# media-files.enable = true;
|
||||
};
|
||||
settings = {
|
||||
pickers.colorscheme.enable_preview = true;
|
||||
|
||||
defaults = {
|
||||
layout_config = {
|
||||
horizontal = {
|
||||
prompt_position = "bottom";
|
||||
};
|
||||
};
|
||||
sorting_strategy = "descending";
|
||||
};
|
||||
};
|
||||
keymaps = {
|
||||
# "<leader><space>" = {
|
||||
# action = "find_files";
|
||||
# options.desc = "Find Project Files";
|
||||
# };
|
||||
"<leader>f" = {
|
||||
action = "live_grep";
|
||||
options.desc = "Find Text";
|
||||
};
|
||||
};
|
||||
};
|
||||
}
|
||||
@@ -0,0 +1,13 @@
|
||||
{ ... }:
|
||||
{
|
||||
programs.nixvim.plugins.toggleterm = {
|
||||
enable = true;
|
||||
settings = {
|
||||
direction = "horizontal";
|
||||
float_opts = {
|
||||
border = "curved";
|
||||
};
|
||||
shell = "nu";
|
||||
};
|
||||
};
|
||||
}
|
||||
@@ -0,0 +1,10 @@
|
||||
{ ... }:
|
||||
{
|
||||
programs.nixvim.plugins.treesitter = {
|
||||
enable = true;
|
||||
settings = {
|
||||
auto_install = true;
|
||||
highlight.enable = true;
|
||||
};
|
||||
};
|
||||
}
|
||||
@@ -0,0 +1,25 @@
|
||||
{ config, ... }:
|
||||
{
|
||||
xdg.configFile."rofi/config.rasi".text = ''
|
||||
configuration{
|
||||
modi: "run,drun,window";
|
||||
lines: 5;
|
||||
cycle: false;
|
||||
font: "${config.stylix.fonts.serif.name} 14";
|
||||
show-icons: true;
|
||||
icon-theme: "Papirus-dark";
|
||||
terminal: "foot";
|
||||
drun-display-format: "{icon} {name}";
|
||||
location: 0;
|
||||
disable-history: true;
|
||||
hide-scrollbar: true;
|
||||
display-drun: " Apps ";
|
||||
display-run: " Run ";
|
||||
display-window: " Window ";
|
||||
/* display-Network: " Network"; */
|
||||
sidebar-mode: true;
|
||||
sorting-method: "fzf";
|
||||
}
|
||||
|
||||
@theme "theme"'';
|
||||
}
|
||||
@@ -0,0 +1,12 @@
|
||||
{ pkgs, ... }:
|
||||
{
|
||||
imports = [
|
||||
./config.nix
|
||||
./theme.nix
|
||||
];
|
||||
|
||||
home.packages = [
|
||||
pkgs.rofi-power-menu
|
||||
pkgs.rofi
|
||||
];
|
||||
}
|
||||
@@ -0,0 +1,102 @@
|
||||
{ config, ... }:
|
||||
{
|
||||
xdg.configFile."rofi/theme.rasi".text = with config.stylix.base16Scheme.palette; ''
|
||||
* {
|
||||
bg-col: #${base00};
|
||||
bg-col-light: #${base01};
|
||||
border-col: #${base0D};
|
||||
selected-col: #${base01};
|
||||
accent: #${base0D};
|
||||
fg-col: #${base07};
|
||||
fg-col2: #${base06};
|
||||
grey: #${base04};
|
||||
}
|
||||
|
||||
element-text, element-icon , mode-switcher {
|
||||
background-color: inherit;
|
||||
text-color: inherit;
|
||||
}
|
||||
|
||||
window {
|
||||
height: 530px;
|
||||
width: 600px;
|
||||
border: 2px;
|
||||
border-color: @border-col;
|
||||
background-color: @bg-col;
|
||||
}
|
||||
|
||||
mainbox {
|
||||
background-color: @bg-col;
|
||||
}
|
||||
|
||||
inputbar {
|
||||
children: [prompt,entry];
|
||||
background-color: @bg-col-light;
|
||||
border-radius: 5px;
|
||||
padding: 0px;
|
||||
}
|
||||
|
||||
prompt {
|
||||
background-color: @accent;
|
||||
padding: 4px;
|
||||
text-color: @bg-col-light;
|
||||
border-radius: 3px;
|
||||
margin: 10px 0px 10px 10px;
|
||||
}
|
||||
|
||||
textbox-prompt-colon {
|
||||
expand: false;
|
||||
str: ":";
|
||||
}
|
||||
|
||||
entry {
|
||||
padding: 6px;
|
||||
margin: 10px 10px 10px 5px;
|
||||
text-color: @fg-col;
|
||||
background-color: @bg-col;
|
||||
border-radius: 3px;
|
||||
}
|
||||
|
||||
listview {
|
||||
border: 0px 0px 0px;
|
||||
padding: 6px 0px 0px;
|
||||
margin: 10px 0px 0px 6px;
|
||||
columns: 1;
|
||||
background-color: @bg-col;
|
||||
cycle: true;
|
||||
}
|
||||
|
||||
element {
|
||||
padding: 8px;
|
||||
margin: 0px 10px 4px 4px;
|
||||
background-color: @bg-col;
|
||||
text-color: @fg-col;
|
||||
}
|
||||
|
||||
element-icon {
|
||||
size: 28px;
|
||||
}
|
||||
|
||||
element selected {
|
||||
background-color: @selected-col ;
|
||||
text-color: @fg-col2 ;
|
||||
border-radius: 3px;
|
||||
}
|
||||
|
||||
mode-switcher {
|
||||
spacing: 0;
|
||||
}
|
||||
|
||||
button {
|
||||
padding: 10px;
|
||||
background-color: @bg-col-light;
|
||||
text-color: @grey;
|
||||
vertical-align: 0.5;
|
||||
horizontal-align: 0.5;
|
||||
}
|
||||
|
||||
button selected {
|
||||
background-color: @bg-col;
|
||||
text-color: @accent;
|
||||
}'';
|
||||
}
|
||||
@@ -0,0 +1,5 @@
|
||||
{...}: {
|
||||
programs.starship = {
|
||||
enable = true;
|
||||
};
|
||||
}
|
||||
@@ -0,0 +1,7 @@
|
||||
{...}:
|
||||
{
|
||||
programs.tmux = {
|
||||
enable = true;
|
||||
keyMode = "vi";
|
||||
};
|
||||
}
|
||||
@@ -0,0 +1,256 @@
|
||||
{ config, ... }:
|
||||
{
|
||||
home.file.".config/vesktop/themes/base16.css".text =
|
||||
with config.stylix.base16Scheme.palette;
|
||||
with config.stylix.fonts;
|
||||
''
|
||||
@import url('https://refact0r.github.io/midnight-discord/build/midnight.css');
|
||||
|
||||
body {
|
||||
font-family: '${monospace.name}', '${emoji.name}';
|
||||
}
|
||||
|
||||
:root {
|
||||
--font-primary: '${monospace.name}', '${emoji.name}';
|
||||
--font-display: '${monospace.name}', '${emoji.name}';
|
||||
--font-headline: '${monospace.name}', '${emoji.name}';
|
||||
--font-code: '${monospace.name}', '${emoji.name}';
|
||||
--font-clan-body: '${monospace.name}', '${emoji.name}';
|
||||
--font-clan-signature: '${monospace.name}', '${emoji.name}';
|
||||
--font-display-marketing: '${monospace.name}', '${emoji.name}';
|
||||
--font-display-marketing-header: '${monospace.name}', '${emoji.name}';
|
||||
--online-indicator: #${base0B};
|
||||
--dnd-indicator: #${base08};
|
||||
--idle-indicator: #${base08};
|
||||
--streaming-indicator: #${base0E};
|
||||
|
||||
--accent-1: #${base0E}; /* links */
|
||||
--accent-2: #${base0E}; /* general unread/mention elements */
|
||||
--accent-3: #${base0E}; /* accent buttons */
|
||||
--accent-4: #${base0E}; /* accent buttons when hovered */
|
||||
--accent-5: #${base0E}; /* accent buttons when clicked */
|
||||
--accent-new: #${base0E}; /* new indicator */
|
||||
--mention: #${base06}1a; /* mentions & mention messages */
|
||||
--mention-hover: #${base06}1a; /* mentions & mention messages when hovered */
|
||||
|
||||
--text-0: var(--bg-4); /* text on colored elements */
|
||||
--text-1: #${base05}; /* bright text on colored elements */
|
||||
--text-2: #${base05}; /* headings and important text */
|
||||
--text-3: #${base05}; /* normal text */
|
||||
--text-4: #${base05}; /* icon buttons and channels */
|
||||
--text-5: #${base05}; /* muted channels/chats and timestamps */
|
||||
|
||||
--bg-1: #${base03}; /* dark buttons when clicked */
|
||||
--bg-2: #${base02}; /* dark buttons */
|
||||
--bg-3: #${base01}; /* spacing, secondary elements */
|
||||
--bg-4: #${base00}; /* main background color */
|
||||
--hover: #${base03}; /* channels and buttons when hovered */
|
||||
--active: #${base03}; /* channels and buttons when clicked or selected */
|
||||
--message-hover: #${base01}1a; /* messages when hovered */
|
||||
|
||||
/* Unset unthemeable elements*/
|
||||
--login-bg-filter: none; /* login background artwork */
|
||||
--green-to-accent-3-filter: none; /* add friend page explore icon */
|
||||
--blurple-to-accent-3-filter: none; /* add friend page school icon */
|
||||
}
|
||||
'';
|
||||
|
||||
programs.vesktop = {
|
||||
enable = true;
|
||||
vencord.settings = {
|
||||
autoUpdate = true;
|
||||
autoUpdateNotification = true;
|
||||
useQuickCss = true;
|
||||
themeLinks = [ ];
|
||||
enabledThemes = [ "base16.css" ];
|
||||
frameless = false;
|
||||
transparent = false;
|
||||
winCtrlQ = false;
|
||||
disableMinSize = false;
|
||||
winNativeTitleBar = false;
|
||||
plugins = {
|
||||
ChatInputButtonAPI.enabled = true;
|
||||
CommandsAPI.enabled = true;
|
||||
DynamicImageModalAPI.enabled = true;
|
||||
MemberListDecoratorsAPI.enabled = true;
|
||||
MessageAccessoriesAPI.enabled = true;
|
||||
MessageDecorationsAPI.enabled = true;
|
||||
MessageEventsAPI.enabled = true;
|
||||
MessagePopoverAPI.enabled = true;
|
||||
MessageUpdaterAPI.enabled = true;
|
||||
UserSettingsAPI.enabled = true;
|
||||
AlwaysExpandRoles.enabled = true;
|
||||
AnonymiseFileNames.enabled = true;
|
||||
BetterRoleContext.enabled = true;
|
||||
BetterRoleDot = {
|
||||
enabled = true;
|
||||
bothStyles = false;
|
||||
copyRoleColorInProfilePopout = false;
|
||||
};
|
||||
BetterSessions = {
|
||||
enabled = true;
|
||||
backgroundCheck = false;
|
||||
};
|
||||
BlurNSFW = {
|
||||
enabled = true;
|
||||
blurAmount = 10;
|
||||
};
|
||||
CallTimer.enabled = true;
|
||||
ClearURLs.enabled = true;
|
||||
ConsoleJanitor = {
|
||||
enabled = true;
|
||||
disableLoggers = false;
|
||||
disableSpotifyLogger = true;
|
||||
whitelistedLoggers = "GatewaySocket; Routing/Utils";
|
||||
};
|
||||
CopyEmojiMarkdown.enabled = true;
|
||||
CopyFileContents.enabled = true;
|
||||
CopyUserURLs.enabled = true;
|
||||
CrashHandler.enabled = true;
|
||||
ExpressionCloner.enabled = true;
|
||||
FakeNitro.enabled = true;
|
||||
FavoriteGifSearch.enabled = true;
|
||||
FixCodeblockGap.enabled = true;
|
||||
FixImagesQuality.enabled = true;
|
||||
FixSpotifyEmbeds.enabled = true;
|
||||
FixYoutubeEmbeds.enabled = true;
|
||||
ForceOwnerCrown.enabled = true;
|
||||
FriendsSince.enabled = true;
|
||||
FullSearchContext.enabled = true;
|
||||
iLoveSpam.enabled = true;
|
||||
ImplicitRelationships = {
|
||||
enabled = true;
|
||||
sortByAffinity = true;
|
||||
};
|
||||
LoadingQuotes = {
|
||||
enabled = true;
|
||||
replaceEvents = true;
|
||||
enableDiscordPresetQuotes = false;
|
||||
additionalQuotes = "";
|
||||
additionalQuotesDelimiter = "|";
|
||||
enablePluginPresetQuotes = true;
|
||||
};
|
||||
MemberCount = {
|
||||
enabled = true;
|
||||
memberList = true;
|
||||
toolTip = true;
|
||||
};
|
||||
MessageLinkEmbeds.enabled = true;
|
||||
MessageLogger = {
|
||||
enabled = true;
|
||||
deleteStyle = "overlay";
|
||||
logDeletes = true;
|
||||
collapseDeleted = false;
|
||||
logEdits = true;
|
||||
inlineEdits = true;
|
||||
ignoreBots = false;
|
||||
ignoreSelf = false;
|
||||
ignoreUsers = "";
|
||||
ignoreChannels = "";
|
||||
ignoreGuilds = "";
|
||||
};
|
||||
MoreCommands.enabled = true;
|
||||
MutualGroupDMs.enabled = true;
|
||||
NoDevtoolsWarning.enabled = true;
|
||||
NoMaskedUrlPaste.enabled = true;
|
||||
NoOnboardingDelay.enabled = true;
|
||||
NoProfileThemes.enabled = true;
|
||||
NormalizeMessageLinks.enabled = true;
|
||||
OnePingPerDM.enabled = true;
|
||||
OpenInApp = {
|
||||
enabled = true;
|
||||
spotify = true;
|
||||
};
|
||||
PermissionsViewer.enabled = true;
|
||||
petpet.enabled = true;
|
||||
PlatformIndicators = {
|
||||
enabled = true;
|
||||
colorMobileIndicator = true;
|
||||
list = true;
|
||||
badges = true;
|
||||
messages = true;
|
||||
};
|
||||
QuickMention.enabled = true;
|
||||
QuickReply.enabled = true;
|
||||
RelationshipNotifier.enabled = true;
|
||||
RevealAllSpoilers.enabled = true;
|
||||
ReverseImageSearch.enabled = true;
|
||||
SendTimestamps.enabled = true;
|
||||
ServerInfo.enabled = true;
|
||||
ShikiCodeblocks = {
|
||||
enabled = true;
|
||||
useDevIcon = "GREYSCALE";
|
||||
theme = "https =//raw.githubusercontent.com/shikijs/textmate-grammars-themes/2d87559c7601a928b9f7e0f0dda243d2fb6d4499/packages/tm-themes/themes/dark-plus.json";
|
||||
};
|
||||
ShowHiddenChannels = {
|
||||
enabled = true;
|
||||
showMode = 0;
|
||||
hideUnreads = true;
|
||||
};
|
||||
ShowHiddenThings = {
|
||||
enabled = true;
|
||||
showTimeouts = true;
|
||||
showInvitesPaused = true;
|
||||
showModView = true;
|
||||
disableDiscoveryFilters = true;
|
||||
disableDisallowedDiscoveryFilters = true;
|
||||
};
|
||||
SilentMessageToggle.enabled = true;
|
||||
SpotifyControls = {
|
||||
enabled = true;
|
||||
hoverControls = false;
|
||||
};
|
||||
Translate = {
|
||||
enabled = true;
|
||||
autoTranslate = false;
|
||||
showChatBarButton = true;
|
||||
};
|
||||
TypingIndicator = {
|
||||
enabled = true;
|
||||
includeMutedChannels = false;
|
||||
includeCurrentChannel = true;
|
||||
};
|
||||
TypingTweaks = {
|
||||
enabled = true;
|
||||
alternativeFormatting = true;
|
||||
};
|
||||
UnlockedAvatarZoom.enabled = true;
|
||||
UserVoiceShow = {
|
||||
enabled = true;
|
||||
showInUserProfileModal = true;
|
||||
showInMemberList = true;
|
||||
showInMessages = true;
|
||||
};
|
||||
ValidReply.enabled = true;
|
||||
ValidUser.enabled = true;
|
||||
VoiceChatDoubleClick.enabled = true;
|
||||
VcNarrator.enabled = true;
|
||||
ViewIcons.enabled = true;
|
||||
ViewRaw = {
|
||||
enabled = true;
|
||||
clickMethod = "Left";
|
||||
};
|
||||
VoiceDownload.enabled = true;
|
||||
VoiceMessages.enabled = true;
|
||||
VolumeBooster.enabled = true;
|
||||
WebKeybinds.enabled = true;
|
||||
WebScreenShareFixes.enabled = true;
|
||||
WhoReacted.enabled = true;
|
||||
YoutubeAdblock.enabled = true;
|
||||
NoTrack = {
|
||||
enabled = true;
|
||||
disableAnalytics = true;
|
||||
};
|
||||
WebContextMenus = {
|
||||
enabled = true;
|
||||
addBack = true;
|
||||
};
|
||||
Settings = {
|
||||
enabled = true;
|
||||
settingsLocation = "aboveNitro";
|
||||
};
|
||||
SupportHelper.enabled = true;
|
||||
};
|
||||
};
|
||||
};
|
||||
}
|
||||
@@ -0,0 +1,139 @@
|
||||
{ config, ... }:
|
||||
{
|
||||
home.file.".config/waybar/config".text = ''
|
||||
{
|
||||
"position": "top",
|
||||
"spacing": 4,
|
||||
"modules-left": ["custom/icon", "ext/workspaces", "tray"],
|
||||
"modules-center": ["clock"],
|
||||
"modules-right": ["pulseaudio", "cpu", "memory", "temperature", "battery"],
|
||||
"custom/icon": {
|
||||
"format": " ",
|
||||
"tooltip": false
|
||||
},
|
||||
"tray": {
|
||||
"spacing": 10
|
||||
},
|
||||
"clock": {
|
||||
"format": "{:L%Y-%m-%d<small>[%a]</small> <tt><small>%p</small></tt>%I:%M}"
|
||||
},
|
||||
"cpu": {
|
||||
"format": " {usage}%",
|
||||
"tooltip": false
|
||||
},
|
||||
"memory": {
|
||||
"format": " {}%"
|
||||
},
|
||||
"temperature": {
|
||||
"thermal-zone": 2,
|
||||
"critical-threshold": 80,
|
||||
"format-critical": "{icon} {temperatureC}°C",
|
||||
"format": "{icon} {temperatureC}°C",
|
||||
"format-icons": ["", "", ""]
|
||||
},
|
||||
"battery": {
|
||||
"states": {
|
||||
"good": 95,
|
||||
"warning": 30,
|
||||
"critical": 15
|
||||
},
|
||||
"format": "{icon} {capacity}%",
|
||||
"format-charging": " {capacity}%",
|
||||
"format-plugged": " {capacity}%",
|
||||
"format-alt": "{icon} {time}",
|
||||
"format-icons": ["", "", "", "", ""]
|
||||
},
|
||||
"pulseaudio": {
|
||||
"scroll-step": 5, // %, can be a float
|
||||
"format": "{icon} {volume}% {format_source}",
|
||||
"format-bluetooth": " {icon} {volume}% {format_source}",
|
||||
"format-bluetooth-muted": " {icon} {format_source}",
|
||||
"format-muted": " {format_source}",
|
||||
"format-source": " {volume}%",
|
||||
"format-source-muted": "",
|
||||
"format-icons": {
|
||||
"default": ["", "", ""]
|
||||
},
|
||||
"on-click-right": "pavucontrol",
|
||||
},
|
||||
}
|
||||
'';
|
||||
programs.waybar = {
|
||||
enable = true;
|
||||
style = ''
|
||||
* {
|
||||
font-family: "${config.stylix.fonts.serif.name}";
|
||||
font-size: 16px;
|
||||
min-height: 10px;
|
||||
}
|
||||
|
||||
#custom-icon,
|
||||
#workspaces,
|
||||
#tray,
|
||||
#clock,
|
||||
#pulseaudio,
|
||||
#cpu,
|
||||
#memory,
|
||||
#temperature,
|
||||
#battery {
|
||||
border-width: 2px;
|
||||
border-style: solid;
|
||||
border-color: #${config.stylix.base16Scheme.palette.base0D};
|
||||
border-radius: 10px;
|
||||
margin-top: 6px;
|
||||
margin-left: 8px;
|
||||
padding-left: 10px;
|
||||
margin-bottom: 0px;
|
||||
padding-right: 10px;
|
||||
border-radius: 10px;
|
||||
transition: none;
|
||||
color: #${config.stylix.base16Scheme.palette.base05};
|
||||
background: #${config.stylix.base16Scheme.palette.base00};
|
||||
}
|
||||
|
||||
#custom-icon {
|
||||
margin-left: 10px;
|
||||
}
|
||||
#memory {
|
||||
margin-right: 10px;
|
||||
}
|
||||
|
||||
|
||||
window#waybar {
|
||||
background: transparent;
|
||||
}
|
||||
|
||||
window#waybar.hidden {
|
||||
opacity: 0.2;
|
||||
}
|
||||
|
||||
#window {
|
||||
margin-top: 6px;
|
||||
padding-left: 10px;
|
||||
padding-right: 10px;
|
||||
border-radius: 10px;
|
||||
transition: none;
|
||||
color: transparent;
|
||||
background: transparent;
|
||||
}
|
||||
|
||||
#battery.critical:not(.charging) {
|
||||
animation-name: blink;
|
||||
animation-duration: 0.5s;
|
||||
animation-timing-function: linear;
|
||||
animation-iteration-count: infinite;
|
||||
animation-direction: alternate;
|
||||
}
|
||||
|
||||
@keyframes blink {
|
||||
to {
|
||||
background-color: #${config.stylix.base16Scheme.palette.base08};
|
||||
}
|
||||
}
|
||||
|
||||
#workspaces button.active {
|
||||
color: #${config.stylix.base16Scheme.palette.base0E};
|
||||
}
|
||||
'';
|
||||
};
|
||||
}
|
||||
@@ -0,0 +1,6 @@
|
||||
{...}: {
|
||||
programs.yazi = {
|
||||
enable = true;
|
||||
enableZshIntegration = true;
|
||||
};
|
||||
}
|
||||
@@ -0,0 +1,37 @@
|
||||
{config, ...}:
|
||||
{
|
||||
programs.zathura = {
|
||||
enable = true;
|
||||
options = with config.stylix.base16Scheme.palette; {
|
||||
font = "${config.stylix.fonts.serif.name} 14";
|
||||
|
||||
default-fg = "#${base05}";
|
||||
default-bg = "#${base00}";
|
||||
completion-bg = "#${base02}";
|
||||
completion-fg = "#${base05}";
|
||||
completion-highlight-bg = "#${base04}";
|
||||
completion-highlight-fg = "#${base05}";
|
||||
completion-group-bg = "#${base02}";
|
||||
completion-group-fg = "#${base0E}";
|
||||
statusbar-fg = "#${base05}";
|
||||
statusbar-bg = "#${base02}";
|
||||
notification-bg = "#${base02}";
|
||||
notification-fg = "#${base05}";
|
||||
notification-error-bg = "#${base02}";
|
||||
notification-error-fg = "#${base08}";
|
||||
notification-warning-bg = "#${base02}";
|
||||
notification-warning-fg = "#${base09}";
|
||||
inputbar-fg = "#${base05}";
|
||||
inputbar-bg = "#${base02}";
|
||||
index-fg = "#${base05}";
|
||||
index-bg = "#${base00}";
|
||||
index-active-fg = "#${base05}";
|
||||
index-active-bg = "#${base02}";
|
||||
render-loading-bg = "#${base00}";
|
||||
render-loading-fg = "#${base05}";
|
||||
recolor-lightcolor = "#${base00}";
|
||||
recolor-darkcolor = "#${base05}";
|
||||
recolor = "true";
|
||||
};
|
||||
};
|
||||
}
|
||||
@@ -0,0 +1,139 @@
|
||||
{ config, pkgs, ... }:
|
||||
let
|
||||
betterfox = pkgs.fetchFromGitHub {
|
||||
owner = "yokoffing";
|
||||
repo = "Betterfox";
|
||||
rev = "116.1";
|
||||
hash = "sha256-Ai8Szbrk/4FhGhS4r5gA2DqjALFRfQKo2a/TwWCIA6g=";
|
||||
};
|
||||
|
||||
catppuccinUserChrome = pkgs.fetchFromGitHub {
|
||||
owner = "catppuccin";
|
||||
repo = "zen-browser";
|
||||
rev = "0893393f721facb884365a318111c4a7fce96b45";
|
||||
hash = "sha256-+Nf7TUairZBnhYCFVBqiQW9QodV/xWSOnH6X9o6S7rM=";
|
||||
};
|
||||
replaceWithStylixColours =
|
||||
textFile:
|
||||
with config.stylix.base16Scheme.palette;
|
||||
builtins.replaceStrings
|
||||
[
|
||||
"1e1e2e"
|
||||
"181825"
|
||||
"313244"
|
||||
"45475a"
|
||||
"585b70"
|
||||
"cdd6f4"
|
||||
"f5e0dc"
|
||||
"b4befe"
|
||||
"f38ba8"
|
||||
"fab387"
|
||||
"f9e2af"
|
||||
"a6e3a1"
|
||||
"94e2d5"
|
||||
"89b4fa"
|
||||
"cba6f7"
|
||||
"f2cdcd"
|
||||
]
|
||||
[
|
||||
base00
|
||||
base01
|
||||
base02
|
||||
base03
|
||||
base04
|
||||
base05
|
||||
base06
|
||||
base07
|
||||
base08
|
||||
base09
|
||||
base0A
|
||||
base0B
|
||||
base0C
|
||||
base0D
|
||||
base0E
|
||||
base0F
|
||||
]
|
||||
(builtins.readFile textFile);
|
||||
|
||||
userChromeText = replaceWithStylixColours "${catppuccinUserChrome}/themes/Mocha/Mauve/userChrome.css";
|
||||
userContentText = replaceWithStylixColours "${catppuccinUserChrome}/themes/Mocha/Mauve/userContent.css";
|
||||
|
||||
in
|
||||
{
|
||||
home.file.".zen/default/chrome/userChrome.css".text = userChromeText;
|
||||
home.file.".zen/default/chrome/userContent.css".text = userContentText;
|
||||
programs.zen-browser = {
|
||||
enable = true;
|
||||
policies = {
|
||||
DisableTelemtry = true;
|
||||
DisableFirefoxStudies = true;
|
||||
EnableTrackingProtection = {
|
||||
Value = true;
|
||||
Locked = true;
|
||||
Cryptomining = true;
|
||||
Fingerprinting = true;
|
||||
};
|
||||
DisablePocket = true;
|
||||
DisableFirefoxAccounts = true;
|
||||
DisableAccounts = true;
|
||||
DisableFirefoxScreenshots = true;
|
||||
OverrideFirstRunPage = "";
|
||||
OverridePostUpdatePage = "";
|
||||
DontCheckDefaultBrowser = true;
|
||||
DisplayBookmarksToolbar = "never";
|
||||
DisplayMenuBar = "default-off"; # alternatives: "always", "never" or "default-on"
|
||||
SearchBar = "unified"; # alternative: "separate"
|
||||
ExtensionSettings = {
|
||||
# uBlock Origin:
|
||||
"uBlock0@raymondhill.net" = {
|
||||
install_url = "https://addons.mozilla.org/firefox/downloads/latest/ublock-origin/latest.xpi";
|
||||
installation_mode = "force_installed";
|
||||
};
|
||||
|
||||
"sponsorBlocker@ajay.app" = {
|
||||
install_url = "https://addons.mozilla.org/firefox/downloads/latest/sponsorBlocker@ajay.app/latest.xpi";
|
||||
installation_mode = "force_installed";
|
||||
};
|
||||
|
||||
# "languagetool-webextension@languagetool.org" = {
|
||||
# install_url = "https://addons.mozilla.org/firefox/downloads/latest/languagetool-webextension@languagetool.org/latest.xpi";
|
||||
# installation_mode = "force_installed";
|
||||
# };
|
||||
|
||||
# Return dislikes to YouTube
|
||||
"{762f9885-5a13-4abd-9c77-433dcd38b8fd}" = {
|
||||
install_url = "https://addons.mozilla.org/firefox/downloads/latest/{762f9885-5a13-4abd-9c77-433dcd38b8fd}/latest.xpi";
|
||||
installation_mode = "force_installed";
|
||||
};
|
||||
|
||||
# Catppuccin Mocha Mauve
|
||||
"{76aabc99-c1a8-4c1e-832b-d4f2941d5a7a}" = {
|
||||
install_url = "https://addons.mozilla.org/firefox/downloads/latest/catppuccin-mocha-mauve-git/latest.xpi";
|
||||
installation_mode = "force_installed";
|
||||
};
|
||||
|
||||
# Vimium C
|
||||
# "vimium-c@gdh1995.cn" = {
|
||||
# install_url = "https://addons.mozilla.org/firefox/downloads/latest/vimium-c@gdh1995.cn/latest.xpi";
|
||||
# installation_mode = "force_installed";
|
||||
# };
|
||||
|
||||
# Dark Reader
|
||||
"addon@darkreader.org" = {
|
||||
install_url = "https://addons.mozilla.org/firefox/downloads/latest/addon@darkreader.org/latest.xpi";
|
||||
installation_mode = "force_installed";
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
profiles.default = {
|
||||
id = 0;
|
||||
isDefault = true;
|
||||
extraConfig = builtins.concatStringsSep "\n" [
|
||||
(builtins.readFile "${betterfox}/Securefox.js")
|
||||
(builtins.readFile "${betterfox}/Fastfox.js")
|
||||
(builtins.readFile "${betterfox}/Peskyfox.js")
|
||||
];
|
||||
};
|
||||
};
|
||||
}
|
||||
@@ -0,0 +1,7 @@
|
||||
{...}:
|
||||
{
|
||||
programs.zoxide = {
|
||||
enable = true;
|
||||
enableNushellIntegration = true;
|
||||
};
|
||||
}
|
||||
@@ -0,0 +1,82 @@
|
||||
{
|
||||
inputs,
|
||||
pkgs,
|
||||
...
|
||||
}:
|
||||
{
|
||||
stylix =
|
||||
let
|
||||
palette = {
|
||||
base00 = "11111a"; # 11111a
|
||||
base01 = "181825"; # 181825
|
||||
base02 = "313244"; # 313244
|
||||
base03 = "45475a"; # 45475a
|
||||
base04 = "585b70"; # 585b70
|
||||
base05 = "cdd6f4"; # cdd6f4
|
||||
base06 = "f5e0dc"; # f5e0dc
|
||||
base07 = "b4befe"; # b4befe
|
||||
base08 = "f38ba8"; # f38ba8
|
||||
base09 = "fab387"; # fab387
|
||||
base0A = "f9e2af"; # f9e2af
|
||||
base0B = "a6e3a1"; # a6e3a1
|
||||
base0C = "94e2d5"; # 94e2d5
|
||||
base0D = "89b4fa"; # 89b4fa
|
||||
base0E = "cba6f7"; # cba6f7
|
||||
base0F = "f2cdcd"; # f2cdcd
|
||||
|
||||
#base00 = "1d2021"; #1d2021
|
||||
#base01 = "3c3836"; #3c3836
|
||||
#base02 = "504945"; #504945
|
||||
#base03 = "665c54"; #665c54
|
||||
#base04 = "bdae93"; #bdae93
|
||||
#base05 = "d5c4a1"; #d5c4a1
|
||||
#base06 = "ebdbb2"; #ebdbb2
|
||||
#base07 = "fbf1c7"; #fbf1c7
|
||||
#base08 = "fb4934"; #fb4934
|
||||
#base09 = "fe8019"; #fe8019
|
||||
#base0A = "fabd2f"; #fabd2f
|
||||
#base0B = "b8bb26"; #b8bb26
|
||||
#base0C = "8ec07c"; #8ec07c
|
||||
#base0D = "83a598"; #83a598
|
||||
#base0E = "d3869b"; #d3869b
|
||||
#base0F = "d65d0e"; #d65d0e
|
||||
};
|
||||
wallpaper = inputs.nix-wallpaper.packages.${pkgs.stdenv.hostPlatform.system}.default.override {
|
||||
width = 2560;
|
||||
height = 1440;
|
||||
backgroundColor = "#${palette.base00}";
|
||||
logoColors = {
|
||||
color0 = "#${palette.base0D}";
|
||||
color1 = "#${palette.base0D}";
|
||||
color2 = "#${palette.base0D}";
|
||||
color3 = "#${palette.base0D}";
|
||||
color4 = "#${palette.base0D}";
|
||||
color5 = "#${palette.base0D}";
|
||||
};
|
||||
};
|
||||
in
|
||||
|
||||
{
|
||||
enable = true;
|
||||
image = "${wallpaper}/share/wallpapers/nixos-wallpaper.png";
|
||||
polarity = "dark";
|
||||
targets.waybar.enable = false;
|
||||
targets.zathura.enable = false;
|
||||
targets.vesktop.enable = false;
|
||||
targets.zen-browser.enable = false;
|
||||
fonts =
|
||||
let
|
||||
font = {
|
||||
package = pkgs.nerd-fonts.caskaydia-cove;
|
||||
name = "CaskaydiaCove Nerd Font";
|
||||
};
|
||||
in
|
||||
{
|
||||
monospace = font;
|
||||
serif = font;
|
||||
sansSerif = font;
|
||||
emoji = font;
|
||||
};
|
||||
base16Scheme.palette = palette;
|
||||
};
|
||||
}
|
||||
@@ -0,0 +1,14 @@
|
||||
{...}:
|
||||
{
|
||||
xdg.mimeApps = {
|
||||
enable = true;
|
||||
defaultApplications = {
|
||||
"application/pdf" = [ "org.pwmt.zathura.desktop" ];
|
||||
"application/json" = [ "zen-beta.desktop" ];
|
||||
"text/html" = [ "zen-beta.desktop" ];
|
||||
"text/xml" = [ "zen-beta.desktop" ];
|
||||
"x-scheme-handler/http" = [ "zen-beta.desktop" ];
|
||||
"x-scheme-handler/https" = [ "zen-beta.desktop" ];
|
||||
};
|
||||
};
|
||||
}
|
||||
@@ -0,0 +1,117 @@
|
||||
{ pkgs, ... }:
|
||||
|
||||
{
|
||||
imports = [
|
||||
./hardware-configuration.nix
|
||||
];
|
||||
|
||||
boot.loader.systemd-boot.enable = true;
|
||||
boot.loader.efi.canTouchEfiVariables = true;
|
||||
boot.tmp.cleanOnBoot = true;
|
||||
|
||||
networking.hostName = "nixos";
|
||||
|
||||
hardware.graphics.enable = true;
|
||||
|
||||
networking.networkmanager.enable = true;
|
||||
|
||||
time.timeZone = "America/Toronto";
|
||||
|
||||
i18n.defaultLocale = "en_CA.UTF-8";
|
||||
|
||||
services.udev.extraRules = ''
|
||||
SUBSYSTEMS=="usb", ATTR{idVendor}=="*", MODE:="0666"
|
||||
KERNEL=="hidraw*", SUBSYSTEM=="hidraw", MODE="0660", GROUP="users", TAG+="uaccess", TAG+="udev-acl"
|
||||
'';
|
||||
|
||||
services.gnome.glib-networking.enable = true;
|
||||
|
||||
programs.hyprland = {
|
||||
enable = true;
|
||||
};
|
||||
|
||||
services.displayManager.sddm = {
|
||||
enable = true;
|
||||
theme = "catppuccin-mocha-mauve";
|
||||
wayland.enable = true;
|
||||
package = pkgs.kdePackages.sddm;
|
||||
};
|
||||
|
||||
programs.steam = {
|
||||
enable = true;
|
||||
};
|
||||
|
||||
services.blueman.enable = true;
|
||||
|
||||
services.printing.enable = true;
|
||||
|
||||
services.pulseaudio.enable = false;
|
||||
security.rtkit.enable = true;
|
||||
services.pipewire = {
|
||||
enable = true;
|
||||
alsa.enable = true;
|
||||
alsa.support32Bit = true;
|
||||
pulse.enable = true;
|
||||
};
|
||||
|
||||
hardware.bluetooth.enable = true;
|
||||
hardware.bluetooth.powerOnBoot = true;
|
||||
|
||||
users.users.autumn = {
|
||||
isNormalUser = true;
|
||||
description = "Autumn";
|
||||
extraGroups = [
|
||||
"networkmanager"
|
||||
"wheel"
|
||||
];
|
||||
packages = [ ];
|
||||
shell = pkgs.nushell;
|
||||
};
|
||||
|
||||
nix.settings.experimental-features = [
|
||||
"nix-command"
|
||||
"flakes"
|
||||
];
|
||||
|
||||
programs.dconf.enable = true;
|
||||
|
||||
environment.systemPackages = with pkgs; [
|
||||
pavucontrol
|
||||
wget
|
||||
networkmanagerapplet
|
||||
nh
|
||||
gparted
|
||||
(pkgs.catppuccin-sddm.override {
|
||||
flavor = "mocha";
|
||||
font = "CaskaydiaCove Nerd Font";
|
||||
fontSize = "12";
|
||||
})
|
||||
];
|
||||
|
||||
fonts = {
|
||||
packages = [
|
||||
pkgs.nerd-fonts.caskaydia-cove
|
||||
];
|
||||
fontconfig = {
|
||||
defaultFonts =
|
||||
let
|
||||
font = "CaskaydiaCove Nerd Font";
|
||||
in
|
||||
{
|
||||
serif = [ font ];
|
||||
sansSerif = [ font ];
|
||||
monospace = [ font ];
|
||||
emoji = [ font ];
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
environment.sessionVariables = {
|
||||
EDITOR = "nvim";
|
||||
BROWSER = "zen";
|
||||
SUDO_EDITOR = "nvim";
|
||||
SHELL = "nu";
|
||||
};
|
||||
|
||||
system.stateVersion = "24.05";
|
||||
}
|
||||
Binary file not shown.
|
After Width: | Height: | Size: 364 KiB |
Reference in New Issue
Block a user