Compare commits
2 commits
main
...
lolcathost
| Author | SHA1 | Date | |
|---|---|---|---|
| ffa6b89bf5 | |||
| 40864af04f |
24 changed files with 1092 additions and 1167 deletions
15
TODO
15
TODO
|
|
@ -17,15 +17,20 @@ Get hyprcursor working with Bibata-Modern-Ice
|
|||
Get a GRUB theme working
|
||||
Get SDDM and a theme working
|
||||
|
||||
Make a custom hyprlock screen
|
||||
|
||||
|
||||
|
||||
Get waybar (or another bar) working
|
||||
|
||||
Get AGS working
|
||||
Make an applauncher in AGS
|
||||
Remove hyprland splash screen on init
|
||||
Made lolcathost home modular
|
||||
|
||||
Overtime just install more programs that I need regularly: ie
|
||||
- btop/htop/etc
|
||||
|
||||
Get GTK Bibata Cursors to be the same size as my system cursor (NOT SURE WHAT I DID...)
|
||||
|
||||
|
||||
Get waybar (or another bar) working
|
||||
|
||||
Get a QT theme
|
||||
|
||||
|
|
@ -35,12 +40,10 @@ Bind new terminal to SUPER+Enter instead of SUPER+Q
|
|||
|
||||
Join Rio Terminal's discord and ask if they support nerdfonts or if I'm doing something wrong
|
||||
|
||||
Figure out how to modularise my dotfiles
|
||||
|
||||
|
||||
Change Dell loading screen (Boot Graphics Resource Table, aka BGRT)
|
||||
|
||||
Get GTK Bibata Cursors to be the same size as my system cursor
|
||||
|
||||
|
||||
|
||||
|
|
|
|||
3
TODO_UI
Normal file
3
TODO_UI
Normal file
|
|
@ -0,0 +1,3 @@
|
|||
1. Create more themes for my applauncher
|
||||
2. Create more themes for hyprlock
|
||||
check out: https://github.com/MrVivekRajan/Hyprlock-Styles
|
||||
448
flake.lock
generated
448
flake.lock
generated
|
|
@ -2,15 +2,15 @@
|
|||
"nodes": {
|
||||
"ags": {
|
||||
"inputs": {
|
||||
"nixpkgs": "nixpkgs",
|
||||
"systems": "systems"
|
||||
"astal": "astal",
|
||||
"nixpkgs": "nixpkgs"
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1728326430,
|
||||
"narHash": "sha256-tV1ABHuA1HItMdCTuNdA8fMB+qw7LpjvI945VwMSABI=",
|
||||
"lastModified": 1738087375,
|
||||
"narHash": "sha256-GLyNtU9A2VN22jNRHZ2OXuFfTJLh8uEVVt+ftsKUX0c=",
|
||||
"owner": "Aylur",
|
||||
"repo": "ags",
|
||||
"rev": "60180a184cfb32b61a1d871c058b31a3b9b0743d",
|
||||
"rev": "a6a7a0adb17740f4c34a59902701870d46fbb6a4",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
|
|
@ -21,19 +21,22 @@
|
|||
},
|
||||
"ags_2": {
|
||||
"inputs": {
|
||||
"nixpkgs": "nixpkgs_4",
|
||||
"systems": "systems_3"
|
||||
"astal": "astal_2",
|
||||
"nixpkgs": [
|
||||
"hyprpanel",
|
||||
"nixpkgs"
|
||||
]
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1728326430,
|
||||
"narHash": "sha256-tV1ABHuA1HItMdCTuNdA8fMB+qw7LpjvI945VwMSABI=",
|
||||
"owner": "Aylur",
|
||||
"lastModified": 1736090999,
|
||||
"narHash": "sha256-B5CJuHqfJrzPa7tObK0H9669/EClSHpa/P7B9EuvElU=",
|
||||
"owner": "aylur",
|
||||
"repo": "ags",
|
||||
"rev": "60180a184cfb32b61a1d871c058b31a3b9b0743d",
|
||||
"rev": "5527c3c07d92c11e04e7fd99d58429493dba7e3c",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
"owner": "Aylur",
|
||||
"owner": "aylur",
|
||||
"repo": "ags",
|
||||
"type": "github"
|
||||
}
|
||||
|
|
@ -58,11 +61,11 @@
|
|||
]
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1730968822,
|
||||
"narHash": "sha256-NocDjINsh6ismkhb0Xr6xPRksmhuB2WGf8ZmXMhxu7Y=",
|
||||
"lastModified": 1739103745,
|
||||
"narHash": "sha256-c53dcRaw0F4Os9WD05HwIRs9kTDZw4Mxe1XK4edEALo=",
|
||||
"owner": "hyprwm",
|
||||
"repo": "aquamarine",
|
||||
"rev": "a49bc3583ff223f426cb3526fdaa4bcaa247ec14",
|
||||
"rev": "a3dda0d10ce9aa1d1dfb7a6c139ea8c2872c74bd",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
|
|
@ -71,6 +74,49 @@
|
|||
"type": "github"
|
||||
}
|
||||
},
|
||||
"astal": {
|
||||
"inputs": {
|
||||
"nixpkgs": [
|
||||
"ags",
|
||||
"nixpkgs"
|
||||
]
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1737670815,
|
||||
"narHash": "sha256-ZCxxshGN7XooabArcoGkYSNx5yVunqjKJi2aTv6cznI=",
|
||||
"owner": "aylur",
|
||||
"repo": "astal",
|
||||
"rev": "127e9cdcbf173846a3c40ddc0abfbb038df48042",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
"owner": "aylur",
|
||||
"repo": "astal",
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"astal_2": {
|
||||
"inputs": {
|
||||
"nixpkgs": [
|
||||
"hyprpanel",
|
||||
"ags",
|
||||
"nixpkgs"
|
||||
]
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1735172721,
|
||||
"narHash": "sha256-rtEAwGsHSppnkR3Qg3eRJ6Xh/F84IY9CrBBLzYabalY=",
|
||||
"owner": "aylur",
|
||||
"repo": "astal",
|
||||
"rev": "6c84b64efc736e039a8a10774a4a1bf772c37aa2",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
"owner": "aylur",
|
||||
"repo": "astal",
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"flake-compat": {
|
||||
"flake": false,
|
||||
"locked": {
|
||||
|
|
@ -104,27 +150,11 @@
|
|||
"flake-compat_3": {
|
||||
"flake": false,
|
||||
"locked": {
|
||||
"lastModified": 1696426674,
|
||||
"narHash": "sha256-kvjfFW7WAETZlt09AgDn1MrtKzP7t90Vf7vypd3OL1U=",
|
||||
"lastModified": 1733328505,
|
||||
"narHash": "sha256-NeCCThCEP3eCl2l/+27kNNK7QrwZB1IJCrXfrbv5oqU=",
|
||||
"owner": "edolstra",
|
||||
"repo": "flake-compat",
|
||||
"rev": "0f9255e01c2351cc7d116c072cb317785dd33b33",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
"owner": "edolstra",
|
||||
"repo": "flake-compat",
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"flake-compat_4": {
|
||||
"flake": false,
|
||||
"locked": {
|
||||
"lastModified": 1696426674,
|
||||
"narHash": "sha256-kvjfFW7WAETZlt09AgDn1MrtKzP7t90Vf7vypd3OL1U=",
|
||||
"owner": "edolstra",
|
||||
"repo": "flake-compat",
|
||||
"rev": "0f9255e01c2351cc7d116c072cb317785dd33b33",
|
||||
"rev": "ff81ac966bb2cae68946d5ed5fc4994f96d0ffec",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
|
|
@ -160,11 +190,11 @@
|
|||
"nixpkgs": "nixpkgs_2"
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1730004881,
|
||||
"narHash": "sha256-8xVIqIW25o2uCL0fxAmP4Sj9sdebarQXmd1+64yMe8o=",
|
||||
"lastModified": 1734412921,
|
||||
"narHash": "sha256-JeMqc7lLowKn6klrCcOkcOg38yNqF7MPbN4Elh6Xvq0=",
|
||||
"owner": "vinceliuice",
|
||||
"repo": "grub2-themes",
|
||||
"rev": "42c232dfb46bf93c17506cbc1a574e5e89b5e09f",
|
||||
"rev": "f6ab2438e124f60a340a526543e498e5e33b3c53",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
|
|
@ -180,15 +210,16 @@
|
|||
]
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1730633670,
|
||||
"narHash": "sha256-ZFJqIXpvVKvzOVFKWNRDyIyAo+GYdmEPaYi1bZB6uf0=",
|
||||
"lastModified": 1736373539,
|
||||
"narHash": "sha256-dinzAqCjenWDxuy+MqUQq0I4zUSfaCvN9rzuCmgMZJY=",
|
||||
"owner": "nix-community",
|
||||
"repo": "home-manager",
|
||||
"rev": "8f6ca7855d409aeebe2a582c6fd6b6a8d0bf5661",
|
||||
"rev": "bd65bc3cde04c16755955630b344bc9e35272c56",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
"owner": "nix-community",
|
||||
"ref": "release-24.11",
|
||||
"repo": "home-manager",
|
||||
"type": "github"
|
||||
}
|
||||
|
|
@ -209,11 +240,11 @@
|
|||
]
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1728669738,
|
||||
"narHash": "sha256-EDNAU9AYcx8OupUzbTbWE1d3HYdeG0wO6Msg3iL1muk=",
|
||||
"lastModified": 1738664950,
|
||||
"narHash": "sha256-xIeGNM+iivwVHkv9tHwOqoUP5dDrtees34bbFKKMZYs=",
|
||||
"owner": "hyprwm",
|
||||
"repo": "hyprcursor",
|
||||
"rev": "0264e698149fcb857a66a53018157b41f8d97bb0",
|
||||
"rev": "7c6d165e1eb9045a996551eb9f121b6d1b30adc3",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
|
|
@ -222,25 +253,56 @@
|
|||
"type": "github"
|
||||
}
|
||||
},
|
||||
"hyprgraphics": {
|
||||
"inputs": {
|
||||
"hyprutils": [
|
||||
"hyprland",
|
||||
"hyprutils"
|
||||
],
|
||||
"nixpkgs": [
|
||||
"hyprland",
|
||||
"nixpkgs"
|
||||
],
|
||||
"systems": [
|
||||
"hyprland",
|
||||
"systems"
|
||||
]
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1739049071,
|
||||
"narHash": "sha256-3+7TpXMrbsUXSwgr5VAKAnmkzMb6JO+Rvc9XRb5NMg4=",
|
||||
"owner": "hyprwm",
|
||||
"repo": "hyprgraphics",
|
||||
"rev": "175c6b29b6ff82100539e7c4363a35a02c74dd73",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
"owner": "hyprwm",
|
||||
"repo": "hyprgraphics",
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"hyprland": {
|
||||
"inputs": {
|
||||
"aquamarine": "aquamarine",
|
||||
"hyprcursor": "hyprcursor",
|
||||
"hyprgraphics": "hyprgraphics",
|
||||
"hyprland-protocols": "hyprland-protocols",
|
||||
"hyprland-qtutils": "hyprland-qtutils",
|
||||
"hyprlang": "hyprlang",
|
||||
"hyprutils": "hyprutils",
|
||||
"hyprwayland-scanner": "hyprwayland-scanner",
|
||||
"nixpkgs": "nixpkgs_3",
|
||||
"pre-commit-hooks": "pre-commit-hooks",
|
||||
"systems": "systems_2",
|
||||
"systems": "systems",
|
||||
"xdph": "xdph"
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1730969692,
|
||||
"narHash": "sha256-4Ly9zkqnRB6qLjMeddfUyd4iRLvq+RDspBWABS8DGN4=",
|
||||
"lastModified": 1739211449,
|
||||
"narHash": "sha256-zuNQu1w9xXWOBD+FlNSqmQticolSyLNp/iSkpE5BBNc=",
|
||||
"owner": "hyprwm",
|
||||
"repo": "Hyprland",
|
||||
"rev": "e58e97b0a38b8ccc87a4304c9e4e2b37c9966875",
|
||||
"rev": "f2d43e5f2180adb81b3b7b51a7d0f39dace70b05",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
|
|
@ -261,11 +323,11 @@
|
|||
]
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1728345020,
|
||||
"narHash": "sha256-xGbkc7U/Roe0/Cv3iKlzijIaFBNguasI31ynL2IlEoM=",
|
||||
"lastModified": 1738422629,
|
||||
"narHash": "sha256-5v+bv75wJWvahyM2xcMTSNNxmV8a7hb01Eey5zYnBJw=",
|
||||
"owner": "hyprwm",
|
||||
"repo": "hyprland-protocols",
|
||||
"rev": "a7c183800e74f337753de186522b9017a07a8cee",
|
||||
"rev": "755aef8dab49d0fc4663c715fa4ad221b2aedaed",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
|
|
@ -274,6 +336,74 @@
|
|||
"type": "github"
|
||||
}
|
||||
},
|
||||
"hyprland-qt-support": {
|
||||
"inputs": {
|
||||
"hyprlang": [
|
||||
"hyprland",
|
||||
"hyprland-qtutils",
|
||||
"hyprlang"
|
||||
],
|
||||
"nixpkgs": [
|
||||
"hyprland",
|
||||
"hyprland-qtutils",
|
||||
"nixpkgs"
|
||||
],
|
||||
"systems": [
|
||||
"hyprland",
|
||||
"hyprland-qtutils",
|
||||
"systems"
|
||||
]
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1737634706,
|
||||
"narHash": "sha256-nGCibkfsXz7ARx5R+SnisRtMq21IQIhazp6viBU8I/A=",
|
||||
"owner": "hyprwm",
|
||||
"repo": "hyprland-qt-support",
|
||||
"rev": "8810df502cdee755993cb803eba7b23f189db795",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
"owner": "hyprwm",
|
||||
"repo": "hyprland-qt-support",
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"hyprland-qtutils": {
|
||||
"inputs": {
|
||||
"hyprland-qt-support": "hyprland-qt-support",
|
||||
"hyprlang": [
|
||||
"hyprland",
|
||||
"hyprlang"
|
||||
],
|
||||
"hyprutils": [
|
||||
"hyprland",
|
||||
"hyprland-qtutils",
|
||||
"hyprlang",
|
||||
"hyprutils"
|
||||
],
|
||||
"nixpkgs": [
|
||||
"hyprland",
|
||||
"nixpkgs"
|
||||
],
|
||||
"systems": [
|
||||
"hyprland",
|
||||
"systems"
|
||||
]
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1739048983,
|
||||
"narHash": "sha256-REhTcXq4qs3B3cCDtLlYDz0GZvmsBSh947Ub6pQWGTQ=",
|
||||
"owner": "hyprwm",
|
||||
"repo": "hyprland-qtutils",
|
||||
"rev": "3504a293c8f8db4127cb0f7cfc1a318ffb4316f8",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
"owner": "hyprwm",
|
||||
"repo": "hyprland-qtutils",
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"hyprlang": {
|
||||
"inputs": {
|
||||
"hyprutils": [
|
||||
|
|
@ -290,11 +420,11 @@
|
|||
]
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1728168612,
|
||||
"narHash": "sha256-AnB1KfiXINmuiW7BALYrKqcjCnsLZPifhb/7BsfPbns=",
|
||||
"lastModified": 1739048914,
|
||||
"narHash": "sha256-vd5rJBTmp2w7SDgfv23Zcd84ktI5eDA7e5UBzx+pKrU=",
|
||||
"owner": "hyprwm",
|
||||
"repo": "hyprlang",
|
||||
"rev": "f054f2e44d6a0b74607a6bc0f52dba337a3db38e",
|
||||
"rev": "a7334904d591f38757c46fbe2ab68651877d9099",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
|
|
@ -306,14 +436,14 @@
|
|||
"hyprpanel": {
|
||||
"inputs": {
|
||||
"ags": "ags_2",
|
||||
"nixpkgs": "nixpkgs_5"
|
||||
"nixpkgs": "nixpkgs_4"
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1731270736,
|
||||
"narHash": "sha256-N0unlLf/7BqkrYx3BO9svv1+oLzKpArgiqLzkmNpD3Q=",
|
||||
"lastModified": 1739002652,
|
||||
"narHash": "sha256-W83O9ASWUFaDAFY7H9vvW/Gm9PN5Lkh0McYW3bA/6aU=",
|
||||
"owner": "Jas-SinghFSU",
|
||||
"repo": "HyprPanel",
|
||||
"rev": "a7855baf13c6abdd0b0e988e4390112cd7deda67",
|
||||
"rev": "0d5f80ff5cd525b8f27adfb84cef67d90e3d7f10",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
|
|
@ -334,11 +464,11 @@
|
|||
]
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1730968903,
|
||||
"narHash": "sha256-zFvzLXcSm0Ia4XI1SE4FQ9KE63hlGrRWhLtwMolWuR8=",
|
||||
"lastModified": 1739048933,
|
||||
"narHash": "sha256-ck6MaoYvISBQKqZR+HcxXnx0wOhyCauxfVMaV5zhJxQ=",
|
||||
"owner": "hyprwm",
|
||||
"repo": "hyprutils",
|
||||
"rev": "3ce0cde8709cdacbfba471f8e828433b58a561e9",
|
||||
"rev": "e4e018a2ca6f5a9c33511973454199e1c7c85499",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
|
|
@ -359,11 +489,11 @@
|
|||
]
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1726874836,
|
||||
"narHash": "sha256-VKR0sf0PSNCB0wPHVKSAn41mCNVCnegWmgkrneKDhHM=",
|
||||
"lastModified": 1739049028,
|
||||
"narHash": "sha256-RleJp7LYbr6s+M1xgbmhtBs+fYa3ZdIiF7+QalJ4D1g=",
|
||||
"owner": "hyprwm",
|
||||
"repo": "hyprwayland-scanner",
|
||||
"rev": "500c81a9e1a76760371049a8d99e008ea77aa59e",
|
||||
"rev": "04146df74a8d5ec0b579657307be01f1e241125f",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
|
|
@ -391,14 +521,16 @@
|
|||
"nixcord": {
|
||||
"inputs": {
|
||||
"flake-compat": "flake-compat_2",
|
||||
"nixpkgs": "nixpkgs_6"
|
||||
"nixpkgs": "nixpkgs_5",
|
||||
"systems": "systems_2",
|
||||
"treefmt-nix": "treefmt-nix"
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1730720546,
|
||||
"narHash": "sha256-5147A6X0MH6u/YDxLe+Nnva3oxfLQanC716LarG/uoo=",
|
||||
"lastModified": 1739009891,
|
||||
"narHash": "sha256-H3QgHEQhr8aAqrCTeJ2qZekAuzw2HhCnuzzeyxB0wbk=",
|
||||
"owner": "kaylorben",
|
||||
"repo": "nixcord",
|
||||
"rev": "e3e27c77316f7526b1a846778ae9c759c9377611",
|
||||
"rev": "677db34f35bdffcdca07246099ea3b22fc6688dc",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
|
|
@ -409,43 +541,27 @@
|
|||
},
|
||||
"nixpkgs": {
|
||||
"locked": {
|
||||
"lastModified": 1725634671,
|
||||
"narHash": "sha256-v3rIhsJBOMLR8e/RNWxr828tB+WywYIoajrZKFM+0Gg=",
|
||||
"owner": "NixOS",
|
||||
"lastModified": 1737469691,
|
||||
"narHash": "sha256-nmKOgAU48S41dTPIXAq0AHZSehWUn6ZPrUKijHAMmIk=",
|
||||
"owner": "nixos",
|
||||
"repo": "nixpkgs",
|
||||
"rev": "574d1eac1c200690e27b8eb4e24887f8df7ac27c",
|
||||
"rev": "9e4d5190a9482a1fb9d18adf0bdb83c6e506eaab",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
"owner": "NixOS",
|
||||
"owner": "nixos",
|
||||
"ref": "nixos-unstable",
|
||||
"repo": "nixpkgs",
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"nixpkgs-stable": {
|
||||
"locked": {
|
||||
"lastModified": 1730741070,
|
||||
"narHash": "sha256-edm8WG19kWozJ/GqyYx2VjW99EdhjKwbY3ZwdlPAAlo=",
|
||||
"owner": "NixOS",
|
||||
"repo": "nixpkgs",
|
||||
"rev": "d063c1dd113c91ab27959ba540c0d9753409edf3",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
"owner": "NixOS",
|
||||
"ref": "nixos-24.05",
|
||||
"repo": "nixpkgs",
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"nixpkgs_2": {
|
||||
"locked": {
|
||||
"lastModified": 1730808093,
|
||||
"narHash": "sha256-oOenwoxpzQsBNi7KltgnXqq6e0+CxlfNXKn3k27w6cQ=",
|
||||
"lastModified": 1739240429,
|
||||
"narHash": "sha256-pSpuHZvcvcWeRJwVpILrIjwFuFxsTVsHq6P470rOd/4=",
|
||||
"owner": "NixOS",
|
||||
"repo": "nixpkgs",
|
||||
"rev": "c1a390f74b2c93f69a6805142f11a215a689cec1",
|
||||
"rev": "3f5198c541172f46867427d4160cc9a2918414a0",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
|
|
@ -457,11 +573,11 @@
|
|||
},
|
||||
"nixpkgs_3": {
|
||||
"locked": {
|
||||
"lastModified": 1730785428,
|
||||
"narHash": "sha256-Zwl8YgTVJTEum+L+0zVAWvXAGbWAuXHax3KzuejaDyo=",
|
||||
"lastModified": 1739020877,
|
||||
"narHash": "sha256-mIvECo/NNdJJ/bXjNqIh8yeoSjVLAuDuTUzAo7dzs8Y=",
|
||||
"owner": "NixOS",
|
||||
"repo": "nixpkgs",
|
||||
"rev": "4aa36568d413aca0ea84a1684d2d46f55dbabad7",
|
||||
"rev": "a79cfe0ebd24952b580b1cf08cd906354996d547",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
|
|
@ -473,15 +589,15 @@
|
|||
},
|
||||
"nixpkgs_4": {
|
||||
"locked": {
|
||||
"lastModified": 1725634671,
|
||||
"narHash": "sha256-v3rIhsJBOMLR8e/RNWxr828tB+WywYIoajrZKFM+0Gg=",
|
||||
"owner": "NixOS",
|
||||
"lastModified": 1736344531,
|
||||
"narHash": "sha256-8YVQ9ZbSfuUk2bUf2KRj60NRraLPKPS0Q4QFTbc+c2c=",
|
||||
"owner": "nixos",
|
||||
"repo": "nixpkgs",
|
||||
"rev": "574d1eac1c200690e27b8eb4e24887f8df7ac27c",
|
||||
"rev": "bffc22eb12172e6db3c5dde9e3e5628f8e3e7912",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
"owner": "NixOS",
|
||||
"owner": "nixos",
|
||||
"ref": "nixos-unstable",
|
||||
"repo": "nixpkgs",
|
||||
"type": "github"
|
||||
|
|
@ -489,27 +605,11 @@
|
|||
},
|
||||
"nixpkgs_5": {
|
||||
"locked": {
|
||||
"lastModified": 1729880355,
|
||||
"narHash": "sha256-RP+OQ6koQQLX5nw0NmcDrzvGL8HDLnyXt/jHhL1jwjM=",
|
||||
"owner": "nixos",
|
||||
"repo": "nixpkgs",
|
||||
"rev": "18536bf04cd71abd345f9579158841376fdd0c5a",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
"owner": "nixos",
|
||||
"ref": "nixos-unstable",
|
||||
"repo": "nixpkgs",
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"nixpkgs_6": {
|
||||
"locked": {
|
||||
"lastModified": 1730768919,
|
||||
"narHash": "sha256-8AKquNnnSaJRXZxc5YmF/WfmxiHX6MMZZasRP6RRQkE=",
|
||||
"lastModified": 1737003892,
|
||||
"narHash": "sha256-RCzJE9wKByLCXmRBp+z8LK9EgdW+K+W/DXnJS4S/NVo=",
|
||||
"owner": "NixOS",
|
||||
"repo": "nixpkgs",
|
||||
"rev": "a04d33c0c3f1a59a2c1cb0c6e34cd24500e5a1dc",
|
||||
"rev": "ae06b9c2d83cb5c8b12d7d0e32692e93d1379713",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
|
|
@ -519,29 +619,45 @@
|
|||
"type": "github"
|
||||
}
|
||||
},
|
||||
"nixpkgs_7": {
|
||||
"nixpkgs_6": {
|
||||
"locked": {
|
||||
"lastModified": 1730785428,
|
||||
"narHash": "sha256-Zwl8YgTVJTEum+L+0zVAWvXAGbWAuXHax3KzuejaDyo=",
|
||||
"lastModified": 1735554305,
|
||||
"narHash": "sha256-zExSA1i/b+1NMRhGGLtNfFGXgLtgo+dcuzHzaWA6w3Q=",
|
||||
"owner": "nixos",
|
||||
"repo": "nixpkgs",
|
||||
"rev": "4aa36568d413aca0ea84a1684d2d46f55dbabad7",
|
||||
"rev": "0e82ab234249d8eee3e8c91437802b32c74bb3fd",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
"owner": "nixos",
|
||||
"ref": "nixos-unstable",
|
||||
"ref": "nixpkgs-unstable",
|
||||
"repo": "nixpkgs",
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"nixpkgs_7": {
|
||||
"locked": {
|
||||
"lastModified": 1739055578,
|
||||
"narHash": "sha256-2MhC2Bgd06uI1A0vkdNUyDYsMD0SLNGKtD8600mZ69A=",
|
||||
"owner": "nixos",
|
||||
"repo": "nixpkgs",
|
||||
"rev": "a45fa362d887f4d4a7157d95c28ca9ce2899b70e",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
"owner": "nixos",
|
||||
"ref": "nixos-24.11",
|
||||
"repo": "nixpkgs",
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"nixpkgs_8": {
|
||||
"locked": {
|
||||
"lastModified": 1730200266,
|
||||
"narHash": "sha256-l253w0XMT8nWHGXuXqyiIC/bMvh1VRszGXgdpQlfhvU=",
|
||||
"lastModified": 1735471104,
|
||||
"narHash": "sha256-0q9NGQySwDQc7RhAV2ukfnu7Gxa5/ybJ2ANT8DQrQrs=",
|
||||
"owner": "nixos",
|
||||
"repo": "nixpkgs",
|
||||
"rev": "807e9154dcb16384b1b765ebe9cd2bba2ac287fd",
|
||||
"rev": "88195a94f390381c6afcdaa933c2f6ff93959cb4",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
|
|
@ -558,15 +674,14 @@
|
|||
"nixpkgs": [
|
||||
"hyprland",
|
||||
"nixpkgs"
|
||||
],
|
||||
"nixpkgs-stable": "nixpkgs-stable"
|
||||
]
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1730814269,
|
||||
"narHash": "sha256-fWPHyhYE6xvMI1eGY3pwBTq85wcy1YXqdzTZF+06nOg=",
|
||||
"lastModified": 1737465171,
|
||||
"narHash": "sha256-R10v2hoJRLq8jcL4syVFag7nIGE7m13qO48wRIukWNg=",
|
||||
"owner": "cachix",
|
||||
"repo": "git-hooks.nix",
|
||||
"rev": "d70155fdc00df4628446352fc58adc640cd705c2",
|
||||
"rev": "9364dc02281ce2d37a1f55b6e51f7c0f65a75f17",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
|
|
@ -591,17 +706,17 @@
|
|||
},
|
||||
"spicetify-nix": {
|
||||
"inputs": {
|
||||
"flake-compat": "flake-compat_3",
|
||||
"nixpkgs": [
|
||||
"nixpkgs"
|
||||
]
|
||||
],
|
||||
"systems": "systems_3"
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1730780158,
|
||||
"narHash": "sha256-ZJkCFn4PL49rINz7xrjlBqw9nF8wWJE7fSVqbHlCWSA=",
|
||||
"lastModified": 1739223162,
|
||||
"narHash": "sha256-YrbYTM0CkZQG38Ysr2gF4BYdsQDNQtQ4YdQTDgw/zWM=",
|
||||
"owner": "Gerg-L",
|
||||
"repo": "spicetify-nix",
|
||||
"rev": "2791c6662002731d3dfc00312307aef547e1c8be",
|
||||
"rev": "dea717737d04a2a3e877c082bfd2c7f91c1a33ff",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
|
|
@ -612,16 +727,16 @@
|
|||
},
|
||||
"swww": {
|
||||
"inputs": {
|
||||
"flake-compat": "flake-compat_4",
|
||||
"flake-compat": "flake-compat_3",
|
||||
"nixpkgs": "nixpkgs_8",
|
||||
"utils": "utils"
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1730424990,
|
||||
"narHash": "sha256-+8YUJsNzvgAeZYLfbHYfYlad/iS+6Eec/LWzL1ZIGfY=",
|
||||
"lastModified": 1737129944,
|
||||
"narHash": "sha256-XBwgv80YfLZ70XYVEnR0nA7Rz5jP241D5FiwrTg7tDk=",
|
||||
"owner": "LGFae",
|
||||
"repo": "swww",
|
||||
"rev": "0db3f4eb192f1c9bf914efcc1d2aba809da5d78a",
|
||||
"rev": "3e2e2ba8f44469a1446138ee97d2988e22b093bf",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
|
|
@ -647,31 +762,30 @@
|
|||
},
|
||||
"systems_2": {
|
||||
"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",
|
||||
"type": "github"
|
||||
"id": "systems",
|
||||
"type": "indirect"
|
||||
}
|
||||
},
|
||||
"systems_3": {
|
||||
"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"
|
||||
}
|
||||
},
|
||||
|
|
@ -690,16 +804,34 @@
|
|||
"type": "github"
|
||||
}
|
||||
},
|
||||
"treefmt-nix": {
|
||||
"inputs": {
|
||||
"nixpkgs": "nixpkgs_6"
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1737103437,
|
||||
"narHash": "sha256-uPNWcYbhY2fjY3HOfRCR5jsfzdzemhfxLSxwjXYXqNc=",
|
||||
"owner": "numtide",
|
||||
"repo": "treefmt-nix",
|
||||
"rev": "d1ed3b385f8130e392870cfb1dbfaff8a63a1899",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
"owner": "numtide",
|
||||
"repo": "treefmt-nix",
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"utils": {
|
||||
"inputs": {
|
||||
"systems": "systems_4"
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1726560853,
|
||||
"narHash": "sha256-X6rJYSESBVr3hBoH0WbKE5KvhPU5bloyZ2L4K60/fPQ=",
|
||||
"lastModified": 1731533236,
|
||||
"narHash": "sha256-l0KFg5HjrsfsO/JpG+r7fRrqm12kzFHyUHqHCVpMMbI=",
|
||||
"owner": "numtide",
|
||||
"repo": "flake-utils",
|
||||
"rev": "c1dfcf08411b08f6b8615f7d8971a2bfa81d5e8a",
|
||||
"rev": "11707dc2f618dd54ca8739b309ec4fc024de578b",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
|
|
@ -736,11 +868,11 @@
|
|||
]
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1730743262,
|
||||
"narHash": "sha256-iTLqj3lU8kFehPm5tXpctzkD274t/k1nwSSq3qCWXeg=",
|
||||
"lastModified": 1737634991,
|
||||
"narHash": "sha256-dBAnb7Kbnier30cA7AgxVSxxARmxKZ1vHZT33THSIr8=",
|
||||
"owner": "hyprwm",
|
||||
"repo": "xdg-desktop-portal-hyprland",
|
||||
"rev": "09b23cef06fe248e61cec8862c04b9bcb62f4b6d",
|
||||
"rev": "e09dfe2726c8008f983e45a0aa1a3b7416aaeb8a",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
|
|
|
|||
15
flake.nix
15
flake.nix
|
|
@ -3,10 +3,12 @@
|
|||
|
||||
inputs = {
|
||||
#nixpkgs.url = "github:nixos/nixpkgs/nixos-24.05";
|
||||
nixpkgs.url = "github:nixos/nixpkgs/nixos-unstable";
|
||||
nixpkgs.url = "github:nixos/nixpkgs/nixos-24.11";
|
||||
#nixpkgs.url = "github:nixos/nixpkgs/nixos-unstable";
|
||||
|
||||
home-manager = {
|
||||
url = "github:nix-community/home-manager";
|
||||
#url = "github:nix-community/home-manager";
|
||||
url = "github:nix-community/home-manager/release-24.11";
|
||||
inputs.nixpkgs.follows = "nixpkgs";
|
||||
};
|
||||
|
||||
|
|
@ -72,6 +74,15 @@
|
|||
grub2-themes.nixosModules.default
|
||||
];
|
||||
};
|
||||
|
||||
# my server (vps)
|
||||
imbored = nixpkgs.lib.nixosSystem {
|
||||
specialargs = {inherit inputs pkgs;}; # home-manager
|
||||
|
||||
modules = [
|
||||
./hosts/imbored
|
||||
];
|
||||
};
|
||||
};
|
||||
};
|
||||
}
|
||||
|
|
|
|||
|
|
@ -39,8 +39,9 @@ const AppLauncher = ({ width = 500, height = 500, spacing = 12 }) => {
|
|||
}
|
||||
|
||||
const entry = Widget.Entry({
|
||||
placeholder_text: "Search",
|
||||
hexpand: true,
|
||||
css: `margin-bottom: ${spacing}px;`,
|
||||
css: "min-height: 50px;",
|
||||
|
||||
// launch first item when Enter is pressed
|
||||
on_accept: () => {
|
||||
|
|
@ -48,7 +49,7 @@ const AppLauncher = ({ width = 500, height = 500, spacing = 12 }) => {
|
|||
const results = applications.filter((item) => item.visible);
|
||||
if (results[0]) {
|
||||
App.toggleWindow(WINDOW_NAME);
|
||||
results[0].attribute.app.launcher()
|
||||
results[0].attribute.app.launch()
|
||||
}
|
||||
},
|
||||
|
||||
|
|
@ -59,29 +60,52 @@ const AppLauncher = ({ width = 500, height = 500, spacing = 12 }) => {
|
|||
})
|
||||
|
||||
return Widget.Box({
|
||||
vertical: true,
|
||||
css: `margin: ${spacing * 2}px;`,
|
||||
vertical: false,
|
||||
children: [
|
||||
entry,
|
||||
// LEFT
|
||||
Widget.Box({
|
||||
vertical: true,
|
||||
css: `min-width: ${width}px;`
|
||||
+ `min-height: ${height}px;`
|
||||
+ "background-color: #947BF5;",
|
||||
//+ "background-image: url('../../../wallpaper/kill-my-firstborn/astronaut-pink-blue.png');",
|
||||
//+ "background-size: cover;"
|
||||
//+ "background-position: center;"
|
||||
//+ "background-repeat: no-repeat;",
|
||||
children: [
|
||||
// align the entry field with the app list
|
||||
Widget.Box({
|
||||
css: `margin: ${spacing * 2}px;`,
|
||||
child: entry,
|
||||
}),
|
||||
],
|
||||
}),
|
||||
|
||||
// make scrollable
|
||||
Widget.Scrollable({
|
||||
hscroll: "never",
|
||||
css: `min-width: ${width}px; min-height: ${height}px;`,
|
||||
child: list,
|
||||
// RIGHT
|
||||
Widget.Box({
|
||||
vertical: true,
|
||||
css: `margin: ${spacing * 2}px;`,
|
||||
child:
|
||||
// make scrollable
|
||||
Widget.Scrollable({
|
||||
hscroll: "never",
|
||||
css: `min-width: ${width}px; min-height: ${height}px;`,
|
||||
child: list,
|
||||
}),
|
||||
|
||||
setup: self => self.hook(App, (_, windowName, visible) => {
|
||||
if (windowName !== WINDOW_NAME)
|
||||
return
|
||||
|
||||
// when the launcher becomes visible
|
||||
if (visible) {
|
||||
refresh()
|
||||
entry.text = ""
|
||||
entry.grab_focus()
|
||||
}
|
||||
}),
|
||||
}),
|
||||
],
|
||||
setup: self => self.hook(App, (_, windowName, visible) => {
|
||||
if (windowName !== WINDOW_NAME)
|
||||
return
|
||||
|
||||
// when the launcher becomes visible
|
||||
if (visible) {
|
||||
repopulate()
|
||||
entry.text = ""
|
||||
entry.grab_focus()
|
||||
}
|
||||
}),
|
||||
})
|
||||
}
|
||||
|
||||
|
|
|
|||
|
|
@ -15,7 +15,7 @@ App.config({
|
|||
style: "./style.css",
|
||||
// icons: "./assets",
|
||||
windows: [
|
||||
Bar(),
|
||||
//Bar(),
|
||||
applauncher,
|
||||
]
|
||||
// gtkTheme: "Adwaita-dark",
|
||||
|
|
|
|||
23
homes/me/ags/fullscreen.js
Normal file
23
homes/me/ags/fullscreen.js
Normal file
|
|
@ -0,0 +1,23 @@
|
|||
const WINDOW_NAME = "fullscreen";
|
||||
|
||||
const Fullscreen = (children) => Widget.Box({
|
||||
vertical: true,
|
||||
css: "background-image: url('https://images2.alphacoders.com/135/1351579.png');"
|
||||
+ "background-size: cover;"
|
||||
+ "background-position: center;"
|
||||
+ "background-repeat: no-repeat;",
|
||||
children: children,
|
||||
})
|
||||
|
||||
export const fullscreen = Widget.Window({
|
||||
name: WINDOW_NAME,
|
||||
setup: self => self.keybind("Escape", () => {
|
||||
App.closeWindow(WINDOW_NAME)
|
||||
}),
|
||||
anchor: ["top", "bottom", "left", "right"],
|
||||
visible: false,
|
||||
keymode: "exclusive",
|
||||
child: Fullscreen(
|
||||
Widget.Label({"Hello World"});
|
||||
)
|
||||
})
|
||||
|
|
@ -18,7 +18,7 @@
|
|||
|
||||
../modules/rio.nix
|
||||
../modules/firefox.nix
|
||||
../modules/nixcord.nix
|
||||
#../modules/nixcord.nix
|
||||
|
||||
../modules/hypr/hypridle.nix
|
||||
../modules/hypr/hyprlock.nix
|
||||
|
|
|
|||
30
homes/modules/applauncher/app.in.vala
Normal file
30
homes/modules/applauncher/app.in.vala
Normal file
|
|
@ -0,0 +1,30 @@
|
|||
class App : Astal.Application {
|
||||
public static App instance;
|
||||
|
||||
public override void request (string msg, SocketConnection conn) {
|
||||
print(@"$msg\n");
|
||||
AstalIO.write_sock.begin(conn, "ok");
|
||||
}
|
||||
|
||||
public override void activate () {
|
||||
foreach (var mon in this.monitors)
|
||||
add_window(new Bar(mon));
|
||||
|
||||
apply_css("@STYLE@");
|
||||
}
|
||||
|
||||
public static void main(string[] args) {
|
||||
var instance_name = "vala";
|
||||
|
||||
App.instance = new App() {
|
||||
instance_name = instance_name
|
||||
};
|
||||
|
||||
try {
|
||||
App.instance.acquire_socket();
|
||||
App.instance.run(null);
|
||||
} catch (Error err) {
|
||||
print(AstalIO.send_message(instance_name, string.joinv(" ", args)));
|
||||
}
|
||||
}
|
||||
}
|
||||
39
homes/modules/applauncher/default.nix
Normal file
39
homes/modules/applauncher/default.nix
Normal file
|
|
@ -0,0 +1,39 @@
|
|||
{
|
||||
inputs = {
|
||||
nixpkgs.url = "github:nixos/nixpkgs/nixos-unstable";
|
||||
astal = {
|
||||
url = "github:aylur/astal";
|
||||
inputs.nixpkgs.follows = "nixpkgs";
|
||||
};
|
||||
};
|
||||
|
||||
outputs = {
|
||||
self,
|
||||
nixpkgs,
|
||||
astal,
|
||||
}: let
|
||||
system = "x86_64-linux";
|
||||
pkgs = nixpkgs.legacyPackages.${system};
|
||||
in {
|
||||
packages.${system}.default = pkgs.stdenv.mkDerivation {
|
||||
name = "Astal Applauncher";
|
||||
src = ./.;
|
||||
|
||||
nativeBuildInputs = with pkgs; [
|
||||
meson
|
||||
ninja
|
||||
pkg-config
|
||||
vala
|
||||
gobject-introspection
|
||||
dart-sass
|
||||
];
|
||||
|
||||
buildInputs = [
|
||||
astal.packages.${system}.io
|
||||
astal.packages.${system}.astal3
|
||||
astal.packages.${system}.battery
|
||||
# add extra packages
|
||||
];
|
||||
};
|
||||
};
|
||||
}
|
||||
39
homes/modules/applauncher/default.nix.bak
Normal file
39
homes/modules/applauncher/default.nix.bak
Normal file
|
|
@ -0,0 +1,39 @@
|
|||
{
|
||||
inputs = {
|
||||
nixpkgs.url = "github:nixos/nixpkgs/nixos-unstable";
|
||||
astal = {
|
||||
url = "github:aylur/astal";
|
||||
inputs.nixpkgs.follows = "nixpkgs";
|
||||
};
|
||||
};
|
||||
|
||||
outputs = {
|
||||
self,
|
||||
nixpkgs,
|
||||
astal,
|
||||
}: let
|
||||
system = "x86_64-linux";
|
||||
pkgs = nixpkgs.legacyPackages.${system};
|
||||
in {
|
||||
packages.${system}.default = pkgs.stdenv.mkDerivation {
|
||||
name = "Astal Applauncher";
|
||||
src = ./.;
|
||||
|
||||
nativeBuildInputs = with pkgs; [
|
||||
meson
|
||||
ninja
|
||||
pkg-config
|
||||
vala
|
||||
gobject-introspection
|
||||
dart-sass
|
||||
];
|
||||
|
||||
buildInputs = [
|
||||
astal.packages.${system}.io
|
||||
astal.packages.${system}.astal3
|
||||
astal.packages.${system}.battery
|
||||
# add extra packages
|
||||
];
|
||||
};
|
||||
};
|
||||
}
|
||||
45
homes/modules/applauncher/meson.build
Normal file
45
homes/modules/applauncher/meson.build
Normal file
|
|
@ -0,0 +1,45 @@
|
|||
project('simple-bar', 'vala', 'c')
|
||||
|
||||
bindir = get_option('prefix') / get_option('bindir')
|
||||
libdir = get_option('prefix') / get_option('libdir')
|
||||
|
||||
pkgconfig_deps = [
|
||||
dependency('glib-2.0'),
|
||||
dependency('gobject-2.0'),
|
||||
dependency('gtk+-3.0'),
|
||||
dependency('libnm'),
|
||||
dependency('astal-io-0.1'),
|
||||
dependency('astal-3.0'),
|
||||
dependency('astal-battery-0.1'),
|
||||
dependency('astal-wireplumber-0.1'),
|
||||
dependency('astal-network-0.1'),
|
||||
dependency('astal-tray-0.1'),
|
||||
dependency('astal-mpris-0.1'),
|
||||
dependency('astal-hyprland-0.1'),
|
||||
]
|
||||
|
||||
# needed for GLib.Math
|
||||
deps = pkgconfig_deps + meson.get_compiler('c').find_library('m')
|
||||
|
||||
main = configure_file(
|
||||
input: 'app.in.vala',
|
||||
output: 'app.vala',
|
||||
configuration: {
|
||||
'STYLE': run_command(
|
||||
find_program('sass'),
|
||||
meson.project_source_root() / 'style.scss',
|
||||
).stdout(),
|
||||
},
|
||||
)
|
||||
|
||||
sources = files(
|
||||
'widgets/bar.vala',
|
||||
)
|
||||
|
||||
executable(
|
||||
'simple-bar',
|
||||
[sources, main],
|
||||
dependencies: deps,
|
||||
install: true,
|
||||
install_dir: bindir,
|
||||
)
|
||||
106
homes/modules/applauncher/style.scss
Normal file
106
homes/modules/applauncher/style.scss
Normal file
|
|
@ -0,0 +1,106 @@
|
|||
@use "sass:color";
|
||||
|
||||
$bg: #212223;
|
||||
$fg: #f1f1f1;
|
||||
$accent: #378DF7;
|
||||
$radius: 7px;
|
||||
|
||||
window.Bar {
|
||||
border: none;
|
||||
box-shadow: none;
|
||||
background-color: $bg;
|
||||
color: $fg;
|
||||
font-size: 1.1em;
|
||||
font-weight: bold;
|
||||
|
||||
label {
|
||||
margin: 0 8px;
|
||||
}
|
||||
|
||||
.Workspaces {
|
||||
button {
|
||||
all: unset;
|
||||
background-color: transparent;
|
||||
|
||||
&:hover label {
|
||||
background-color: color.adjust($fg, $alpha: -0.84);
|
||||
border-color: color.adjust($accent, $alpha: -0.8);
|
||||
}
|
||||
|
||||
&:active label {
|
||||
background-color: color.adjust($fg, $alpha: -0.8)
|
||||
}
|
||||
}
|
||||
|
||||
label {
|
||||
transition: 200ms;
|
||||
padding: 0 8px;
|
||||
margin: 2px;
|
||||
border-radius: $radius;
|
||||
border: 1pt solid transparent;
|
||||
}
|
||||
|
||||
.focused label {
|
||||
color: $accent;
|
||||
border-color: $accent;
|
||||
}
|
||||
}
|
||||
|
||||
.SysTray {
|
||||
margin-right: 8px;
|
||||
|
||||
button {
|
||||
padding: 0 4px;
|
||||
}
|
||||
}
|
||||
|
||||
.FocusedClient {
|
||||
color: $accent;
|
||||
}
|
||||
|
||||
.Media .Cover {
|
||||
min-height: 1.2em;
|
||||
min-width: 1.2em;
|
||||
border-radius: $radius;
|
||||
background-position: center;
|
||||
background-size: contain;
|
||||
}
|
||||
|
||||
.Battery label {
|
||||
padding-left: 0;
|
||||
margin-left: 0;
|
||||
}
|
||||
|
||||
.AudioSlider {
|
||||
* {
|
||||
all: unset;
|
||||
}
|
||||
|
||||
icon {
|
||||
margin-right: .6em;
|
||||
}
|
||||
|
||||
& {
|
||||
margin: 0 1em;
|
||||
}
|
||||
|
||||
trough {
|
||||
background-color: color.adjust($fg, $alpha: -0.8);
|
||||
border-radius: $radius;
|
||||
}
|
||||
|
||||
highlight {
|
||||
background-color: $accent;
|
||||
min-height: .8em;
|
||||
border-radius: $radius;
|
||||
}
|
||||
|
||||
slider {
|
||||
background-color: $fg;
|
||||
border-radius: $radius;
|
||||
min-height: 1em;
|
||||
min-width: 1em;
|
||||
margin: -.2em;
|
||||
}
|
||||
}
|
||||
}
|
||||
253
homes/modules/applauncher/widgets/bar.vala
Normal file
253
homes/modules/applauncher/widgets/bar.vala
Normal file
|
|
@ -0,0 +1,253 @@
|
|||
class Workspaces : Gtk.Box {
|
||||
AstalHyprland.Hyprland hypr = AstalHyprland.get_default();
|
||||
public Workspaces() {
|
||||
Astal.widget_set_class_names(this, {"Workspaces"});
|
||||
hypr.notify["workspaces"].connect(sync);
|
||||
sync();
|
||||
}
|
||||
|
||||
void sync() {
|
||||
foreach (var child in get_children())
|
||||
child.destroy();
|
||||
|
||||
foreach (var ws in hypr.workspaces) {
|
||||
// filter out special workspaces
|
||||
if (!(ws.id >= -99 && ws.id <= -2)) {
|
||||
add(button(ws));
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
Gtk.Button button(AstalHyprland.Workspace ws) {
|
||||
var btn = new Gtk.Button() {
|
||||
visible = true,
|
||||
label = ws.id.to_string()
|
||||
};
|
||||
|
||||
hypr.notify["focused-workspace"].connect(() => {
|
||||
var focused = hypr.focused_workspace == ws;
|
||||
if (focused) {
|
||||
Astal.widget_set_class_names(btn, {"focused"});
|
||||
} else {
|
||||
Astal.widget_set_class_names(btn, {});
|
||||
}
|
||||
});
|
||||
|
||||
btn.clicked.connect(ws.focus);
|
||||
return btn;
|
||||
}
|
||||
}
|
||||
|
||||
class FocusedClient : Gtk.Box {
|
||||
public FocusedClient() {
|
||||
Astal.widget_set_class_names(this, {"Focused"});
|
||||
AstalHyprland.get_default().notify["focused-client"].connect(sync);
|
||||
sync();
|
||||
}
|
||||
|
||||
void sync() {
|
||||
foreach (var child in get_children())
|
||||
child.destroy();
|
||||
|
||||
var client = AstalHyprland.get_default().focused_client;
|
||||
if (client == null)
|
||||
return;
|
||||
|
||||
var label = new Gtk.Label(client.title) { visible = true };
|
||||
client.bind_property("title", label, "label", BindingFlags.SYNC_CREATE);
|
||||
add(label);
|
||||
}
|
||||
}
|
||||
|
||||
class Media : Gtk.Box {
|
||||
AstalMpris.Mpris mpris = AstalMpris.get_default();
|
||||
|
||||
public Media() {
|
||||
Astal.widget_set_class_names(this, {"Media"});
|
||||
mpris.notify["players"].connect(sync);
|
||||
sync();
|
||||
}
|
||||
|
||||
void sync() {
|
||||
foreach (var child in get_children())
|
||||
child.destroy();
|
||||
|
||||
if (mpris.players.length() == 0) {
|
||||
add(new Gtk.Label("Nothing Playing"));
|
||||
return;
|
||||
}
|
||||
|
||||
var player = mpris.players.nth_data(0);
|
||||
var label = new Gtk.Label(null);
|
||||
var cover = new Gtk.Box(Gtk.Orientation.HORIZONTAL, 0) {
|
||||
valign = Gtk.Align.CENTER
|
||||
};
|
||||
|
||||
Astal.widget_set_class_names(cover, {"Cover"});
|
||||
player.bind_property("metadata", label, "label", BindingFlags.SYNC_CREATE, (_, src, ref trgt) => {
|
||||
var title = player.title;
|
||||
var artist = player.artist;
|
||||
trgt.set_string(@"$artist - $title");
|
||||
return true;
|
||||
});
|
||||
|
||||
var id = player.notify["cover-art"].connect(() => {
|
||||
var art = player.cover_art;
|
||||
Astal.widget_set_css(cover, @"background-image: url('$art')");
|
||||
});
|
||||
|
||||
cover.destroy.connect(() => player.disconnect(id));
|
||||
add(cover);
|
||||
add(label);
|
||||
}
|
||||
}
|
||||
|
||||
class SysTray : Gtk.Box {
|
||||
HashTable<string, Gtk.Widget> items = new HashTable<string, Gtk.Widget>(str_hash, str_equal);
|
||||
AstalTray.Tray tray = AstalTray.get_default();
|
||||
|
||||
public SysTray() {
|
||||
Astal.widget_set_class_names(this, { "SysTray" });
|
||||
tray.item_added.connect(add_item);
|
||||
tray.item_removed.connect(remove_item);
|
||||
}
|
||||
|
||||
void add_item(string id) {
|
||||
if (items.contains(id))
|
||||
return;
|
||||
|
||||
var item = tray.get_item(id);
|
||||
var btn = new Gtk.MenuButton() { use_popover = false, visible = true };
|
||||
var icon = new Astal.Icon() { visible = true };
|
||||
|
||||
item.bind_property("tooltip-markup", btn, "tooltip-markup", BindingFlags.SYNC_CREATE);
|
||||
item.bind_property("gicon", icon, "gicon", BindingFlags.SYNC_CREATE);
|
||||
item.bind_property("menu-model", btn, "menu-model", BindingFlags.SYNC_CREATE);
|
||||
btn.insert_action_group("dbusmenu", item.action_group);
|
||||
item.notify["action-group"].connect(() => {
|
||||
btn.insert_action_group("dbusmenu", item.action_group);
|
||||
});
|
||||
|
||||
btn.add(icon);
|
||||
add(btn);
|
||||
items.set(id, btn);
|
||||
}
|
||||
|
||||
void remove_item(string id) {
|
||||
if (items.contains(id)) {
|
||||
items.remove(id);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
class Wifi : Astal.Icon {
|
||||
public Wifi() {
|
||||
Astal.widget_set_class_names(this, {"Wifi"});
|
||||
var wifi = AstalNetwork.get_default().get_wifi();
|
||||
if (wifi != null) {
|
||||
wifi.bind_property("ssid", this, "tooltip-text", BindingFlags.SYNC_CREATE);
|
||||
wifi.bind_property("icon-name", this, "icon", BindingFlags.SYNC_CREATE);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
class AudioSlider : Gtk.Box {
|
||||
Astal.Icon icon = new Astal.Icon();
|
||||
Astal.Slider slider = new Astal.Slider() { hexpand = true };
|
||||
|
||||
public AudioSlider() {
|
||||
add(icon);
|
||||
add(slider);
|
||||
Astal.widget_set_class_names(this, {"AudioSlider"});
|
||||
Astal.widget_set_css(this, "min-width: 140px");
|
||||
|
||||
var speaker = AstalWp.get_default().audio.default_speaker;
|
||||
speaker.bind_property("volume-icon", icon, "icon", BindingFlags.SYNC_CREATE);
|
||||
speaker.bind_property("volume", slider, "value", BindingFlags.SYNC_CREATE);
|
||||
slider.dragged.connect(() => speaker.volume = slider.value);
|
||||
}
|
||||
}
|
||||
|
||||
class Battery : Gtk.Box {
|
||||
Astal.Icon icon = new Astal.Icon();
|
||||
Astal.Label label = new Astal.Label();
|
||||
|
||||
public Battery() {
|
||||
add(icon);
|
||||
add(label);
|
||||
Astal.widget_set_class_names(this, {"Battery"});
|
||||
|
||||
var bat = AstalBattery.get_default();
|
||||
bat.bind_property("is-present", this, "visible", BindingFlags.SYNC_CREATE);
|
||||
bat.bind_property("battery-icon-name", icon, "icon", BindingFlags.SYNC_CREATE);
|
||||
bat.bind_property("percentage", label, "label", BindingFlags.SYNC_CREATE, (_, src, ref trgt) => {
|
||||
var p = Math.floor(src.get_double() * 100);
|
||||
trgt.set_string(@"$p%");
|
||||
return true;
|
||||
});
|
||||
}
|
||||
}
|
||||
|
||||
class Time : Astal.Label {
|
||||
string format;
|
||||
AstalIO.Time interval;
|
||||
|
||||
void sync() {
|
||||
label = new DateTime.now_local().format(format);
|
||||
}
|
||||
|
||||
public Time(string format = "%H:%M - %A %e.") {
|
||||
this.format = format;
|
||||
interval = AstalIO.Time.interval(1000, null);
|
||||
interval.now.connect(sync);
|
||||
destroy.connect(interval.cancel);
|
||||
Astal.widget_set_class_names(this, {"Time"});
|
||||
}
|
||||
}
|
||||
|
||||
class Left : Gtk.Box {
|
||||
public Left() {
|
||||
Object(hexpand: true, halign: Gtk.Align.START);
|
||||
add(new Workspaces());
|
||||
add(new FocusedClient());
|
||||
}
|
||||
}
|
||||
|
||||
class Center : Gtk.Box {
|
||||
public Center() {
|
||||
add(new Media());
|
||||
}
|
||||
}
|
||||
|
||||
class Right : Gtk.Box {
|
||||
public Right() {
|
||||
Object(hexpand: true, halign: Gtk.Align.END);
|
||||
add(new SysTray());
|
||||
add(new Wifi());
|
||||
add(new AudioSlider());
|
||||
add(new Battery());
|
||||
add(new Time());
|
||||
}
|
||||
}
|
||||
|
||||
class Bar : Astal.Window {
|
||||
public Bar(Gdk.Monitor monitor) {
|
||||
Object(
|
||||
anchor: Astal.WindowAnchor.TOP
|
||||
| Astal.WindowAnchor.LEFT
|
||||
| Astal.WindowAnchor.RIGHT,
|
||||
exclusivity: Astal.Exclusivity.EXCLUSIVE,
|
||||
gdkmonitor: monitor
|
||||
);
|
||||
|
||||
Astal.widget_set_class_names(this, {"Bar"});
|
||||
|
||||
add(new Astal.CenterBox() {
|
||||
start_widget = new Left(),
|
||||
center_widget = new Center(),
|
||||
end_widget = new Right(),
|
||||
});
|
||||
|
||||
show_all();
|
||||
}
|
||||
}
|
||||
|
|
@ -8,7 +8,7 @@
|
|||
settings = {
|
||||
background = {
|
||||
monitor = "";
|
||||
path = "$HOME/downloads/wallpaper/kill-my-first/astronaut-pink-blue.png"; # only png supported for now
|
||||
path = "$HOME/downloads/wallpaper/kill-my-firstborn/astronaut-pink-blue.png"; # only png supported for now
|
||||
# color = $color1
|
||||
|
||||
# all these options are taken from hyprland, see https://wiki.hyprland.org/Configuring/Variables/#blur for explanations
|
||||
|
|
@ -81,7 +81,7 @@
|
|||
# Degrees
|
||||
monitor = "";
|
||||
# get temperature in Brisbane
|
||||
text = ''cmd[update:18000000] echo "<b>Feels like<big> $(curl -s 'wttr.in/bne?format=%t' | tr -d '+') </big></b>"'';
|
||||
text = ''cmd[update:18000000] echo "<b>Feels like $(curl -s 'wttr.in/bne?format=%t' | tr -d '+')</b>"'';
|
||||
color = "rgb(255, 255, 255, 1)";
|
||||
font_size = 18;
|
||||
font_family = "Geist Mono 10";
|
||||
|
|
@ -103,11 +103,11 @@
|
|||
dots_rouding = -1;
|
||||
|
||||
rounding = 22;
|
||||
outer_color = "rgb(255, 0, 0, 1)";
|
||||
inner_color = "rgb(0, 255, 0, 1)";
|
||||
font_color = "rgb(0, 0, 255, 1)";
|
||||
outer_color = "rgb(0, 0, 0, 0)";
|
||||
inner_color = "rgb(100, 114, 125, 0.1)";
|
||||
font_color = "rgb(200, 200, 200)";
|
||||
fade_on_empty = true;
|
||||
placeholder_text = "!!Super Secret!!"; # Text rendered in the input box when it's empty.
|
||||
placeholder_text = "<i>Password...</i>"; # Text rendered in the input box when it's empty.
|
||||
|
||||
position = "0, 120";
|
||||
halign = "center";
|
||||
|
|
|
|||
|
|
@ -4,7 +4,6 @@
|
|||
...
|
||||
}: {
|
||||
# The terminal I use
|
||||
# TODO: this is dependent on nvim being installed
|
||||
# TODO: make this into a module with a configurable editor option
|
||||
programs.rio = {
|
||||
enable = true;
|
||||
|
|
@ -18,6 +17,11 @@
|
|||
padding-x = 10;
|
||||
padding-y = [15 10]; # top, left
|
||||
|
||||
window = {
|
||||
width = 600;
|
||||
height = 400;
|
||||
};
|
||||
|
||||
# lines = (accumulated scroll * multiplier / divider)
|
||||
scroll = {
|
||||
multiplier = 3.0;
|
||||
|
|
@ -60,7 +64,7 @@
|
|||
};
|
||||
|
||||
renderer = {
|
||||
performance = "High";
|
||||
performance = "Low"; # High: for my PC, Low: for integrated GPUs
|
||||
backend = "Automatic"; # Vulkan
|
||||
};
|
||||
};
|
||||
|
|
|
|||
17
homes/modules/server/fail2ban.nix
Normal file
17
homes/modules/server/fail2ban.nix
Normal file
|
|
@ -0,0 +1,17 @@
|
|||
{...}: {
|
||||
# simple fail2ban config (not production ready or anything though)
|
||||
# refer to: https://nixos.wiki/wiki/Fail2Ban
|
||||
services.fail2ban = {
|
||||
enable = true;
|
||||
|
||||
maxretry = 5;
|
||||
bantime = "10m"; # 10 minute ban
|
||||
bantime-increment = {
|
||||
enable = true;
|
||||
formula = "ban.Time * math.exp(float(ban.Count+1)*banFactor)/math.exp(1*banFactor)";
|
||||
multipliers = "1 2 4 8 16 32 64";
|
||||
maxtime = "168h"; # dont ban for more than 1 week
|
||||
overalljails = true;
|
||||
};
|
||||
};
|
||||
}
|
||||
35
homes/modules/server/nginx.nix
Normal file
35
homes/modules/server/nginx.nix
Normal file
|
|
@ -0,0 +1,35 @@
|
|||
{...}: {
|
||||
services = {
|
||||
# use nginx as the reverse proxy
|
||||
# (also will use certbot and Let's Encrypt)
|
||||
# refer to: https://nixos.wiki/wiki/Nginx
|
||||
nginx = {
|
||||
enable = true;
|
||||
|
||||
recommendedProxySettings = true;
|
||||
recommendedTlsSettings = true;
|
||||
recommendedGzipSettings = true;
|
||||
recommendedOptimisation = true;
|
||||
|
||||
# https://imbored.dev
|
||||
virtualHosts = {
|
||||
"imbored.dev" = {
|
||||
forceSSL = true;
|
||||
enableACME = true;
|
||||
# config reverse proxy paths
|
||||
locations = {
|
||||
"/" = {
|
||||
# TODO
|
||||
proxyPass = "http://127.0.0.1:12345";
|
||||
};
|
||||
};
|
||||
};
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
security.acme = {
|
||||
acceptTerms = true;
|
||||
defaults.email = "eclarkboman@gmail.com";
|
||||
};
|
||||
}
|
||||
13
homes/modules/server/ssh.nix
Normal file
13
homes/modules/server/ssh.nix
Normal file
|
|
@ -0,0 +1,13 @@
|
|||
{...}: {
|
||||
services.openssh = {
|
||||
enable = true;
|
||||
ports = [22];
|
||||
settings = {
|
||||
PasswordAuthentication = true;
|
||||
PermitRootLogin = "no";
|
||||
AllowUsers = null; # allow all users by default
|
||||
UseDns = true;
|
||||
X11Forwarding = false;
|
||||
};
|
||||
};
|
||||
}
|
||||
83
hosts/imbored/default.nix
Normal file
83
hosts/imbored/default.nix
Normal file
|
|
@ -0,0 +1,83 @@
|
|||
{
|
||||
pkgs,
|
||||
inputs,
|
||||
lib,
|
||||
...
|
||||
}: let
|
||||
home-manager = builtins.fetchTarball {
|
||||
url = "https://github.com/nix-community/home-manager/archive/master.tar.gz";
|
||||
sha256 = "19w63qccz78v0spx03911z98w1bvlxvd07hb0ma14a4vdzi4ninj";
|
||||
};
|
||||
in {
|
||||
# TODO:
|
||||
# - add github:charmbracelet/soft-serve
|
||||
# - add forgejo
|
||||
|
||||
imports = [
|
||||
../modules/server/nginx.nix
|
||||
../modules/server/ssh.nix
|
||||
../modules/server/fail2ban.nix
|
||||
];
|
||||
|
||||
system.stateVersion = "24.05";
|
||||
nix.settings.experimental-features = [
|
||||
"nix-command"
|
||||
"flakes"
|
||||
];
|
||||
|
||||
time.timeZone = "Australia/Brisbane";
|
||||
|
||||
i18n.defaultLocale = "en_US.UTF-8";
|
||||
console = {
|
||||
font = "Lat2-Terminus16";
|
||||
keyMap = "us";
|
||||
};
|
||||
|
||||
boot.loader = {
|
||||
# TODO
|
||||
};
|
||||
|
||||
networking = {
|
||||
hostName = "imbored";
|
||||
networkmanager.enable = true;
|
||||
firewall.allowedTCPPorts = [
|
||||
22 # sshd
|
||||
]
|
||||
};
|
||||
|
||||
users = {
|
||||
defaultUserShell = pkgs.bash;
|
||||
|
||||
users = {
|
||||
# primary user
|
||||
dev = {
|
||||
isNormalUser = true;
|
||||
extraGroups = ["wheel"];
|
||||
shell = pkgs.bash;
|
||||
packages = with pkgs; [
|
||||
];
|
||||
};
|
||||
|
||||
# user for friends to ssh into
|
||||
friends = {
|
||||
isNormalUser = true;
|
||||
shell = pkgs.bash;
|
||||
packages = with pkgs; [
|
||||
];
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
#home-manager = {
|
||||
# users = {
|
||||
# dev = import ../../homes/dev;
|
||||
# friends = import ../../homes/friends;
|
||||
# };
|
||||
#};
|
||||
|
||||
environment.SystemPackages = with pkgs; [
|
||||
];
|
||||
|
||||
programs = {
|
||||
};
|
||||
}
|
||||
|
|
@ -4,19 +4,23 @@
|
|||
lib,
|
||||
...
|
||||
}: let
|
||||
home-manager = inputs.home-manager;
|
||||
#home-manager = builtins.fetchTarball {
|
||||
# url = "https://github.com/nix-community/home-manager/archive/release-24.05.tar.gz";
|
||||
# url = "https://github.com/nix-community/home-manager/archive/release-24.11.tar.gz";
|
||||
# sha256 = "00wp0s9b5nm5rsbwpc1wzfrkyxxmqjwsc1kcibjdbfkh69arcpsn";
|
||||
#};
|
||||
home-manager = builtins.fetchTarball {
|
||||
url = "https://github.com/nix-community/home-manager/archive/master.tar.gz";
|
||||
sha256 = "19w63qccz78v0spx03911z98w1bvlxvd07hb0ma14a4vdzi4ninj";
|
||||
};
|
||||
#home-manager = builtins.fetchTarball {
|
||||
# url = "https://github.com/nix-community/home-manager/archive/master.tar.gz";
|
||||
# sha256 = "19w63qccz78v0spx03911z98w1bvlxvd07hb0ma14a4vdzi4ninj";
|
||||
#};
|
||||
in {
|
||||
imports = [
|
||||
./hardware-configuration.nix
|
||||
(import "${home-manager}/nixos")
|
||||
inputs.spicetify-nix.nixosModules.default
|
||||
|
||||
../modules/dotnet_8.nix
|
||||
../modules/tesseract.nix
|
||||
];
|
||||
|
||||
programs.spicetify = let
|
||||
|
|
@ -60,9 +64,6 @@ in {
|
|||
console = {
|
||||
font = "Lat2-Terminus16";
|
||||
keyMap = "us";
|
||||
#packages = with pkgs; [
|
||||
# nerdfonts
|
||||
#];
|
||||
};
|
||||
|
||||
# ----- NETWORKING SECTION -----
|
||||
|
|
@ -73,7 +74,7 @@ in {
|
|||
# networking.firewall.allowedTCPPorts = [ ... ];
|
||||
# networking.firewall.allowedUDPPorts = [ ... ];
|
||||
# Or disable the firewall altogether.
|
||||
networking.firewall.enable = true;
|
||||
#networking.firewall.enable = true;
|
||||
|
||||
# ----- SERVICES -----
|
||||
services = {
|
||||
|
|
@ -89,16 +90,15 @@ in {
|
|||
};
|
||||
|
||||
# Enable sound
|
||||
#hardware.pulseaudio.enable = false;
|
||||
pipewire = {
|
||||
enable = true;
|
||||
|
||||
alsa.enable = true;
|
||||
alsa.support32Bit = true;
|
||||
pulse.enable = true;
|
||||
jack.enable = true;
|
||||
#jack.enable = true;
|
||||
|
||||
wireplumber.enable = true;
|
||||
#wireplumber.enable = true;
|
||||
};
|
||||
|
||||
# Enable touchpad support
|
||||
|
|
@ -118,10 +118,10 @@ in {
|
|||
defaultUserShell = pkgs.bash;
|
||||
|
||||
users = {
|
||||
# literally me fr (personal account)
|
||||
# literally me frfr (personal account)
|
||||
me = {
|
||||
isNormalUser = true;
|
||||
extraGroups = ["wheel"];
|
||||
extraGroups = ["wheel" "audio"];
|
||||
shell = pkgs.bash; #pkgs.fish
|
||||
packages = with pkgs; [
|
||||
firefox
|
||||
|
|
@ -176,20 +176,27 @@ in {
|
|||
environment.systemPackages = with pkgs; [
|
||||
# User Environment
|
||||
inputs.swww.packages.${pkgs.system}.swww
|
||||
#vesktop
|
||||
helvum
|
||||
easyeffects
|
||||
pavucontrol
|
||||
ani-cli
|
||||
wl-clipboard # clipboard for wayland
|
||||
kcalc # TEMP: (FOR TESTING)
|
||||
hyprpicker
|
||||
|
||||
obsidian
|
||||
vencord
|
||||
|
||||
(callPackage ./sddm-theme-corners.nix {}).sddm-theme-corners
|
||||
# dependencies for my sddm theme:
|
||||
pkgs.libsForQt5.qt5.qtgraphicaleffects
|
||||
#pkgs.libsForQt5.qt5.qtgraphicaleffects
|
||||
libsForQt5.qt5.qtgraphicaleffects
|
||||
|
||||
python311 # I use 3.11 since it's in a pretty stable state now
|
||||
poetry # python dependency management and packaging
|
||||
|
||||
cargo
|
||||
rustc
|
||||
|
||||
# fish plugins
|
||||
grc # colorise command outputs
|
||||
|
||||
|
|
|
|||
6
hosts/modules/dotnet_8.nix
Normal file
6
hosts/modules/dotnet_8.nix
Normal file
|
|
@ -0,0 +1,6 @@
|
|||
{pkgs, ...}: {
|
||||
environment.systemPackages = with pkgs; [
|
||||
#dotnet-runtime_8
|
||||
dotnet-sdk_8
|
||||
];
|
||||
}
|
||||
5
hosts/modules/tesseract.nix
Normal file
5
hosts/modules/tesseract.nix
Normal file
|
|
@ -0,0 +1,5 @@
|
|||
{pkgs, ...}: {
|
||||
environment.systemPackages = with pkgs; [
|
||||
tesseract
|
||||
];
|
||||
}
|
||||
953
out.data
953
out.data
|
|
@ -1,953 +0,0 @@
|
|||
warning: Git tree '/home/me/nixdots' is dirty
|
||||
building the system configuration...
|
||||
warning: Git tree '/home/me/nixdots' is dirty
|
||||
error:
|
||||
… while calling anonymous lambda
|
||||
at /nix/store/sh0v21n9zc03b94qjj4jkkg5mbsjkpzr-source/lib/attrsets.nix:1570:24:
|
||||
1569| let f = attrPath:
|
||||
1570| zipAttrsWith (n: values:
|
||||
| ^
|
||||
1571| let here = attrPath ++ [n]; in
|
||||
|
||||
… while calling the 'head' builtin
|
||||
at /nix/store/sh0v21n9zc03b94qjj4jkkg5mbsjkpzr-source/lib/attrsets.nix:1574:11:
|
||||
1573| || pred here (elemAt values 1) (head values) then
|
||||
1574| head values
|
||||
| ^
|
||||
1575| else
|
||||
|
||||
… while calling anonymous lambda
|
||||
at /nix/store/sh0v21n9zc03b94qjj4jkkg5mbsjkpzr-source/lib/attrsets.nix:1204:18:
|
||||
1203| mapAttrs
|
||||
1204| (name: value:
|
||||
| ^
|
||||
1205| if isAttrs value && cond value
|
||||
|
||||
… from call site
|
||||
at /nix/store/sh0v21n9zc03b94qjj4jkkg5mbsjkpzr-source/lib/attrsets.nix:1207:18:
|
||||
1206| then recurse (path ++ [ name ]) value
|
||||
1207| else f (path ++ [ name ]) value);
|
||||
| ^
|
||||
1208| in
|
||||
|
||||
… while calling anonymous lambda
|
||||
at /nix/store/sh0v21n9zc03b94qjj4jkkg5mbsjkpzr-source/lib/modules.nix:254:72:
|
||||
253| # For definitions that have an associated option
|
||||
254| declaredConfig = mapAttrsRecursiveCond (v: ! isOption v) (_: v: v.value) options;
|
||||
| ^
|
||||
255|
|
||||
|
||||
… while evaluating the attribute 'value'
|
||||
at /nix/store/sh0v21n9zc03b94qjj4jkkg5mbsjkpzr-source/lib/modules.nix:816:9:
|
||||
815| in warnDeprecation opt //
|
||||
816| { value = addErrorContext "while evaluating the option `${showOption loc}':" value;
|
||||
| ^
|
||||
817| inherit (res.defsFinal') highestPrio;
|
||||
|
||||
… while evaluating the option `system.build.toplevel':
|
||||
|
||||
… while evaluating the attribute 'mergedValue'
|
||||
at /nix/store/sh0v21n9zc03b94qjj4jkkg5mbsjkpzr-source/lib/modules.nix:851:5:
|
||||
850| # Type-check the remaining definitions, and merge them. Or throw if no definitions.
|
||||
851| mergedValue =
|
||||
| ^
|
||||
852| if isDefined then
|
||||
|
||||
… while evaluating a branch condition
|
||||
at /nix/store/sh0v21n9zc03b94qjj4jkkg5mbsjkpzr-source/lib/modules.nix:852:7:
|
||||
851| mergedValue =
|
||||
852| if isDefined then
|
||||
| ^
|
||||
853| if all (def: type.check def.value) defsFinal then type.merge loc defsFinal
|
||||
|
||||
… while evaluating the attribute 'values'
|
||||
at /nix/store/sh0v21n9zc03b94qjj4jkkg5mbsjkpzr-source/lib/modules.nix:845:9:
|
||||
844| in {
|
||||
845| values = defs''';
|
||||
| ^
|
||||
846| inherit (defs'') highestPrio;
|
||||
|
||||
… while evaluating a branch condition
|
||||
at /nix/store/sh0v21n9zc03b94qjj4jkkg5mbsjkpzr-source/lib/modules.nix:841:11:
|
||||
840| # Avoid sorting if we don't have to.
|
||||
841| if any (def: def.value._type or "" == "order") defs''.values
|
||||
| ^
|
||||
842| then sortProperties defs''.values
|
||||
|
||||
… while calling the 'any' builtin
|
||||
at /nix/store/sh0v21n9zc03b94qjj4jkkg5mbsjkpzr-source/lib/modules.nix:841:14:
|
||||
840| # Avoid sorting if we don't have to.
|
||||
841| if any (def: def.value._type or "" == "order") defs''.values
|
||||
| ^
|
||||
842| then sortProperties defs''.values
|
||||
|
||||
… while evaluating the attribute 'values'
|
||||
at /nix/store/sh0v21n9zc03b94qjj4jkkg5mbsjkpzr-source/lib/modules.nix:944:7:
|
||||
943| in {
|
||||
944| values = concatMap (def: if getPrio def == highestPrio then [(strip def)] else []) defs;
|
||||
| ^
|
||||
945| inherit highestPrio;
|
||||
|
||||
… while calling the 'concatMap' builtin
|
||||
at /nix/store/sh0v21n9zc03b94qjj4jkkg5mbsjkpzr-source/lib/modules.nix:944:16:
|
||||
943| in {
|
||||
944| values = concatMap (def: if getPrio def == highestPrio then [(strip def)] else []) defs;
|
||||
| ^
|
||||
945| inherit highestPrio;
|
||||
|
||||
… while calling the 'concatMap' builtin
|
||||
at /nix/store/sh0v21n9zc03b94qjj4jkkg5mbsjkpzr-source/lib/modules.nix:831:17:
|
||||
830| # Process mkMerge and mkIf properties.
|
||||
831| defs' = concatMap (m:
|
||||
| ^
|
||||
832| map (value: { inherit (m) file; inherit value; }) (addErrorContext "while evaluating definitions from `${m.file}':" (dischargeProperties m.value))
|
||||
|
||||
… while calling anonymous lambda
|
||||
at /nix/store/sh0v21n9zc03b94qjj4jkkg5mbsjkpzr-source/lib/modules.nix:831:28:
|
||||
830| # Process mkMerge and mkIf properties.
|
||||
831| defs' = concatMap (m:
|
||||
| ^
|
||||
832| map (value: { inherit (m) file; inherit value; }) (addErrorContext "while evaluating definitions from `${m.file}':" (dischargeProperties m.value))
|
||||
|
||||
… while calling the 'map' builtin
|
||||
at /nix/store/sh0v21n9zc03b94qjj4jkkg5mbsjkpzr-source/lib/modules.nix:832:11:
|
||||
831| defs' = concatMap (m:
|
||||
832| map (value: { inherit (m) file; inherit value; }) (addErrorContext "while evaluating definitions from `${m.file}':" (dischargeProperties m.value))
|
||||
| ^
|
||||
833| ) defs;
|
||||
|
||||
… while evaluating definitions from `/nix/store/sh0v21n9zc03b94qjj4jkkg5mbsjkpzr-source/nixos/modules/system/activation/top-level.nix':
|
||||
|
||||
… from call site
|
||||
at /nix/store/sh0v21n9zc03b94qjj4jkkg5mbsjkpzr-source/lib/modules.nix:832:128:
|
||||
831| defs' = concatMap (m:
|
||||
832| map (value: { inherit (m) file; inherit value; }) (addErrorContext "while evaluating definitions from `${m.file}':" (dischargeProperties m.value))
|
||||
| ^
|
||||
833| ) defs;
|
||||
|
||||
… while calling 'dischargeProperties'
|
||||
at /nix/store/sh0v21n9zc03b94qjj4jkkg5mbsjkpzr-source/lib/modules.nix:903:25:
|
||||
902| */
|
||||
903| dischargeProperties = def:
|
||||
| ^
|
||||
904| if def._type or "" == "merge" then
|
||||
|
||||
… while evaluating a branch condition
|
||||
at /nix/store/sh0v21n9zc03b94qjj4jkkg5mbsjkpzr-source/lib/modules.nix:904:5:
|
||||
903| dischargeProperties = def:
|
||||
904| if def._type or "" == "merge" then
|
||||
| ^
|
||||
905| concatMap dischargeProperties def.contents
|
||||
|
||||
… while evaluating the attribute 'value'
|
||||
at /nix/store/sh0v21n9zc03b94qjj4jkkg5mbsjkpzr-source/lib/modules.nix:614:53:
|
||||
613| (n: value:
|
||||
614| [{ inherit (module) file; inherit value; }]
|
||||
| ^
|
||||
615| )
|
||||
|
||||
… while evaluating a branch condition
|
||||
at /nix/store/sh0v21n9zc03b94qjj4jkkg5mbsjkpzr-source/nixos/modules/system/activation/top-level.nix:72:26:
|
||||
71|
|
||||
72| baseSystemAssertWarn = if failedAssertions != []
|
||||
| ^
|
||||
73| then throw "\nFailed assertions:\n${concatStringsSep "\n" (map (x: "- ${x}") failedAssertions)}"
|
||||
|
||||
… while calling the 'map' builtin
|
||||
at /nix/store/sh0v21n9zc03b94qjj4jkkg5mbsjkpzr-source/nixos/modules/system/activation/top-level.nix:70:22:
|
||||
69|
|
||||
70| failedAssertions = map (x: x.message) (filter (x: !x.assertion) config.assertions);
|
||||
| ^
|
||||
71|
|
||||
|
||||
… while calling the 'filter' builtin
|
||||
at /nix/store/sh0v21n9zc03b94qjj4jkkg5mbsjkpzr-source/nixos/modules/system/activation/top-level.nix:70:42:
|
||||
69|
|
||||
70| failedAssertions = map (x: x.message) (filter (x: !x.assertion) config.assertions);
|
||||
| ^
|
||||
71|
|
||||
|
||||
… from call site
|
||||
at /nix/store/sh0v21n9zc03b94qjj4jkkg5mbsjkpzr-source/nixos/modules/system/activation/top-level.nix:70:67:
|
||||
69|
|
||||
70| failedAssertions = map (x: x.message) (filter (x: !x.assertion) config.assertions);
|
||||
| ^
|
||||
71|
|
||||
|
||||
… while calling anonymous lambda
|
||||
at /nix/store/sh0v21n9zc03b94qjj4jkkg5mbsjkpzr-source/lib/attrsets.nix:1204:18:
|
||||
1203| mapAttrs
|
||||
1204| (name: value:
|
||||
| ^
|
||||
1205| if isAttrs value && cond value
|
||||
|
||||
… from call site
|
||||
at /nix/store/sh0v21n9zc03b94qjj4jkkg5mbsjkpzr-source/lib/attrsets.nix:1207:18:
|
||||
1206| then recurse (path ++ [ name ]) value
|
||||
1207| else f (path ++ [ name ]) value);
|
||||
| ^
|
||||
1208| in
|
||||
|
||||
… while calling anonymous lambda
|
||||
at /nix/store/sh0v21n9zc03b94qjj4jkkg5mbsjkpzr-source/lib/modules.nix:254:72:
|
||||
253| # For definitions that have an associated option
|
||||
254| declaredConfig = mapAttrsRecursiveCond (v: ! isOption v) (_: v: v.value) options;
|
||||
| ^
|
||||
255|
|
||||
|
||||
… while evaluating the attribute 'value'
|
||||
at /nix/store/sh0v21n9zc03b94qjj4jkkg5mbsjkpzr-source/lib/modules.nix:816:9:
|
||||
815| in warnDeprecation opt //
|
||||
816| { value = addErrorContext "while evaluating the option `${showOption loc}':" value;
|
||||
| ^
|
||||
817| inherit (res.defsFinal') highestPrio;
|
||||
|
||||
… while evaluating the option `assertions':
|
||||
|
||||
(10 duplicate frames omitted)
|
||||
|
||||
… while evaluating definitions from `/nix/store/78sgjxjd6p9wns5mriffngcrvxp9sfaa-source/nixos/common.nix':
|
||||
|
||||
… from call site
|
||||
at /nix/store/sh0v21n9zc03b94qjj4jkkg5mbsjkpzr-source/lib/modules.nix:832:128:
|
||||
831| defs' = concatMap (m:
|
||||
832| map (value: { inherit (m) file; inherit value; }) (addErrorContext "while evaluating definitions from `${m.file}':" (dischargeProperties m.value))
|
||||
| ^
|
||||
833| ) defs;
|
||||
|
||||
… while calling 'dischargeProperties'
|
||||
at /nix/store/sh0v21n9zc03b94qjj4jkkg5mbsjkpzr-source/lib/modules.nix:903:25:
|
||||
902| */
|
||||
903| dischargeProperties = def:
|
||||
| ^
|
||||
904| if def._type or "" == "merge" then
|
||||
|
||||
… from call site
|
||||
at /nix/store/sh0v21n9zc03b94qjj4jkkg5mbsjkpzr-source/lib/modules.nix:909:11:
|
||||
908| if def.condition then
|
||||
909| dischargeProperties def.content
|
||||
| ^
|
||||
910| else
|
||||
|
||||
… while calling 'dischargeProperties'
|
||||
at /nix/store/sh0v21n9zc03b94qjj4jkkg5mbsjkpzr-source/lib/modules.nix:903:25:
|
||||
902| */
|
||||
903| dischargeProperties = def:
|
||||
| ^
|
||||
904| if def._type or "" == "merge" then
|
||||
|
||||
… while evaluating a branch condition
|
||||
at /nix/store/sh0v21n9zc03b94qjj4jkkg5mbsjkpzr-source/lib/modules.nix:904:5:
|
||||
903| dischargeProperties = def:
|
||||
904| if def._type or "" == "merge" then
|
||||
| ^
|
||||
905| concatMap dischargeProperties def.contents
|
||||
|
||||
… while evaluating the attribute 'content'
|
||||
at /nix/store/sh0v21n9zc03b94qjj4jkkg5mbsjkpzr-source/lib/modules.nix:1008:25:
|
||||
1007| { _type = "if";
|
||||
1008| inherit condition content;
|
||||
| ^
|
||||
1009| };
|
||||
|
||||
… from call site
|
||||
at /nix/store/78sgjxjd6p9wns5mriffngcrvxp9sfaa-source/nixos/common.nix:110:20:
|
||||
109|
|
||||
110| assertions = flatten (flip mapAttrsToList cfg.users (user: config:
|
||||
| ^
|
||||
111| flip map config.assertions (assertion: {
|
||||
|
||||
… while calling 'flatten'
|
||||
at /nix/store/sh0v21n9zc03b94qjj4jkkg5mbsjkpzr-source/lib/lists.nix:431:13:
|
||||
430| */
|
||||
431| flatten = x:
|
||||
| ^
|
||||
432| if isList x
|
||||
|
||||
… while calling the 'concatMap' builtin
|
||||
at /nix/store/sh0v21n9zc03b94qjj4jkkg5mbsjkpzr-source/lib/lists.nix:433:10:
|
||||
432| if isList x
|
||||
433| then concatMap (y: flatten y) x
|
||||
| ^
|
||||
434| else [x];
|
||||
|
||||
… while calling anonymous lambda
|
||||
at /nix/store/sh0v21n9zc03b94qjj4jkkg5mbsjkpzr-source/lib/lists.nix:433:21:
|
||||
432| if isList x
|
||||
433| then concatMap (y: flatten y) x
|
||||
| ^
|
||||
434| else [x];
|
||||
|
||||
… from call site
|
||||
at /nix/store/sh0v21n9zc03b94qjj4jkkg5mbsjkpzr-source/lib/lists.nix:433:24:
|
||||
432| if isList x
|
||||
433| then concatMap (y: flatten y) x
|
||||
| ^
|
||||
434| else [x];
|
||||
|
||||
… while calling 'flatten'
|
||||
at /nix/store/sh0v21n9zc03b94qjj4jkkg5mbsjkpzr-source/lib/lists.nix:431:13:
|
||||
430| */
|
||||
431| flatten = x:
|
||||
| ^
|
||||
432| if isList x
|
||||
|
||||
… while evaluating a branch condition
|
||||
at /nix/store/sh0v21n9zc03b94qjj4jkkg5mbsjkpzr-source/lib/lists.nix:432:5:
|
||||
431| flatten = x:
|
||||
432| if isList x
|
||||
| ^
|
||||
433| then concatMap (y: flatten y) x
|
||||
|
||||
… while calling the 'isList' builtin
|
||||
at /nix/store/sh0v21n9zc03b94qjj4jkkg5mbsjkpzr-source/lib/lists.nix:432:8:
|
||||
431| flatten = x:
|
||||
432| if isList x
|
||||
| ^
|
||||
433| then concatMap (y: flatten y) x
|
||||
|
||||
… while calling anonymous lambda
|
||||
at /nix/store/sh0v21n9zc03b94qjj4jkkg5mbsjkpzr-source/lib/attrsets.nix:1095:10:
|
||||
1094| attrs:
|
||||
1095| map (name: f name attrs.${name}) (attrNames attrs);
|
||||
| ^
|
||||
1096|
|
||||
|
||||
… from call site
|
||||
at /nix/store/sh0v21n9zc03b94qjj4jkkg5mbsjkpzr-source/lib/attrsets.nix:1095:16:
|
||||
1094| attrs:
|
||||
1095| map (name: f name attrs.${name}) (attrNames attrs);
|
||||
| ^
|
||||
1096|
|
||||
|
||||
… while calling anonymous lambda
|
||||
at /nix/store/78sgjxjd6p9wns5mriffngcrvxp9sfaa-source/nixos/common.nix:110:66:
|
||||
109|
|
||||
110| assertions = flatten (flip mapAttrsToList cfg.users (user: config:
|
||||
| ^
|
||||
111| flip map config.assertions (assertion: {
|
||||
|
||||
… from call site
|
||||
at /nix/store/78sgjxjd6p9wns5mriffngcrvxp9sfaa-source/nixos/common.nix:111:9:
|
||||
110| assertions = flatten (flip mapAttrsToList cfg.users (user: config:
|
||||
111| flip map config.assertions (assertion: {
|
||||
| ^
|
||||
112| inherit (assertion) assertion;
|
||||
|
||||
… while calling 'flip'
|
||||
at /nix/store/sh0v21n9zc03b94qjj4jkkg5mbsjkpzr-source/lib/trivial.nix:317:16:
|
||||
316| */
|
||||
317| flip = f: a: b: f b a;
|
||||
| ^
|
||||
318|
|
||||
|
||||
… while calling the 'map' builtin
|
||||
at /nix/store/sh0v21n9zc03b94qjj4jkkg5mbsjkpzr-source/lib/trivial.nix:317:19:
|
||||
316| */
|
||||
317| flip = f: a: b: f b a;
|
||||
| ^
|
||||
318|
|
||||
|
||||
… from call site
|
||||
at /nix/store/sh0v21n9zc03b94qjj4jkkg5mbsjkpzr-source/lib/attrsets.nix:1095:23:
|
||||
1094| attrs:
|
||||
1095| map (name: f name attrs.${name}) (attrNames attrs);
|
||||
| ^
|
||||
1096|
|
||||
|
||||
… while calling anonymous lambda
|
||||
at /nix/store/sh0v21n9zc03b94qjj4jkkg5mbsjkpzr-source/lib/types.nix:577:22:
|
||||
576| merge = loc: defs:
|
||||
577| mapAttrs (n: v: v.value) (filterAttrs (n: v: v ? value) (zipAttrsWith (name: defs:
|
||||
| ^
|
||||
578| (mergeDefinitions (loc ++ [name]) elemType defs).optionalValue
|
||||
|
||||
… while evaluating the attribute 'value'
|
||||
at /nix/store/sh0v21n9zc03b94qjj4jkkg5mbsjkpzr-source/lib/modules.nix:864:27:
|
||||
863| optionalValue =
|
||||
864| if isDefined then { value = mergedValue; }
|
||||
| ^
|
||||
865| else {};
|
||||
|
||||
… from call site
|
||||
at /nix/store/sh0v21n9zc03b94qjj4jkkg5mbsjkpzr-source/lib/modules.nix:853:59:
|
||||
852| if isDefined then
|
||||
853| if all (def: type.check def.value) defsFinal then type.merge loc defsFinal
|
||||
| ^
|
||||
854| else let allInvalid = filter (def: ! type.check def.value) defsFinal;
|
||||
|
||||
… while calling 'merge'
|
||||
at /nix/store/sh0v21n9zc03b94qjj4jkkg5mbsjkpzr-source/lib/types.nix:881:22:
|
||||
880| check = x: isAttrs x || isFunction x || path.check x;
|
||||
881| merge = loc: defs:
|
||||
| ^
|
||||
882| (base.extendModules {
|
||||
|
||||
… while evaluating the attribute 'config'
|
||||
at /nix/store/sh0v21n9zc03b94qjj4jkkg5mbsjkpzr-source/lib/modules.nix:334:9:
|
||||
333| options = checked options;
|
||||
334| config = checked (removeAttrs config [ "_module" ]);
|
||||
| ^
|
||||
335| _module = checked (config._module);
|
||||
|
||||
… while calling the 'seq' builtin
|
||||
at /nix/store/sh0v21n9zc03b94qjj4jkkg5mbsjkpzr-source/lib/modules.nix:334:18:
|
||||
333| options = checked options;
|
||||
334| config = checked (removeAttrs config [ "_module" ]);
|
||||
| ^
|
||||
335| _module = checked (config._module);
|
||||
|
||||
… while evaluating a branch condition
|
||||
at /nix/store/sh0v21n9zc03b94qjj4jkkg5mbsjkpzr-source/lib/modules.nix:273:9:
|
||||
272| checkUnmatched =
|
||||
273| if config._module.check && config._module.freeformType == null && merged.unmatchedDefns != [] then
|
||||
| ^
|
||||
274| let
|
||||
|
||||
… in the right operand of the AND (&&) operator
|
||||
at /nix/store/sh0v21n9zc03b94qjj4jkkg5mbsjkpzr-source/lib/modules.nix:273:72:
|
||||
272| checkUnmatched =
|
||||
273| if config._module.check && config._module.freeformType == null && merged.unmatchedDefns != [] then
|
||||
| ^
|
||||
274| let
|
||||
|
||||
… while evaluating the attribute 'unmatchedDefns'
|
||||
at /nix/store/sh0v21n9zc03b94qjj4jkkg5mbsjkpzr-source/lib/modules.nix:695:7:
|
||||
694| # Transforms unmatchedDefnsByName into a list of definitions
|
||||
695| unmatchedDefns =
|
||||
| ^
|
||||
696| if configs == []
|
||||
|
||||
… while calling the 'concatLists' builtin
|
||||
at /nix/store/sh0v21n9zc03b94qjj4jkkg5mbsjkpzr-source/lib/modules.nix:702:11:
|
||||
701| else
|
||||
702| concatLists (mapAttrsToList (name: defs:
|
||||
| ^
|
||||
703| map (def: def // {
|
||||
|
||||
… while calling anonymous lambda
|
||||
at /nix/store/sh0v21n9zc03b94qjj4jkkg5mbsjkpzr-source/lib/attrsets.nix:1095:10:
|
||||
1094| attrs:
|
||||
1095| map (name: f name attrs.${name}) (attrNames attrs);
|
||||
| ^
|
||||
1096|
|
||||
|
||||
… from call site
|
||||
at /nix/store/sh0v21n9zc03b94qjj4jkkg5mbsjkpzr-source/lib/attrsets.nix:1095:16:
|
||||
1094| attrs:
|
||||
1095| map (name: f name attrs.${name}) (attrNames attrs);
|
||||
| ^
|
||||
1096|
|
||||
|
||||
… while calling anonymous lambda
|
||||
at /nix/store/sh0v21n9zc03b94qjj4jkkg5mbsjkpzr-source/lib/modules.nix:702:46:
|
||||
701| else
|
||||
702| concatLists (mapAttrsToList (name: defs:
|
||||
| ^
|
||||
703| map (def: def // {
|
||||
|
||||
… while calling the 'map' builtin
|
||||
at /nix/store/sh0v21n9zc03b94qjj4jkkg5mbsjkpzr-source/lib/modules.nix:703:13:
|
||||
702| concatLists (mapAttrsToList (name: defs:
|
||||
703| map (def: def // {
|
||||
| ^
|
||||
704| # Set this so we know when the definition first left unmatched territory
|
||||
|
||||
… from call site
|
||||
at /nix/store/sh0v21n9zc03b94qjj4jkkg5mbsjkpzr-source/lib/attrsets.nix:1095:23:
|
||||
1094| attrs:
|
||||
1095| map (name: f name attrs.${name}) (attrNames attrs);
|
||||
| ^
|
||||
1096|
|
||||
|
||||
… while calling anonymous lambda
|
||||
at /nix/store/sh0v21n9zc03b94qjj4jkkg5mbsjkpzr-source/lib/modules.nix:688:22:
|
||||
687| # Propagate all unmatched definitions from nested option sets
|
||||
688| mapAttrs (n: v: v.unmatchedDefns) resultsByName
|
||||
| ^
|
||||
689| # Plus the definitions for the current prefix that don't have a matching option
|
||||
|
||||
(16 duplicate frames omitted)
|
||||
|
||||
… from call site
|
||||
at /nix/store/sh0v21n9zc03b94qjj4jkkg5mbsjkpzr-source/lib/modules.nix:688:25:
|
||||
687| # Propagate all unmatched definitions from nested option sets
|
||||
688| mapAttrs (n: v: v.unmatchedDefns) resultsByName
|
||||
| ^
|
||||
689| # Plus the definitions for the current prefix that don't have a matching option
|
||||
|
||||
… while calling anonymous lambda
|
||||
at /nix/store/sh0v21n9zc03b94qjj4jkkg5mbsjkpzr-source/lib/modules.nix:636:39:
|
||||
635|
|
||||
636| resultsByName = mapAttrs (name: decls:
|
||||
| ^
|
||||
637| # We're descending into attribute ‘name’.
|
||||
|
||||
… while evaluating a branch condition
|
||||
at /nix/store/sh0v21n9zc03b94qjj4jkkg5mbsjkpzr-source/lib/modules.nix:650:11:
|
||||
649| in
|
||||
650| if length optionDecls == length decls then
|
||||
| ^
|
||||
651| let opt = fixupOptionType loc (mergeOptionDecls loc decls);
|
||||
|
||||
… while calling the 'length' builtin
|
||||
at /nix/store/sh0v21n9zc03b94qjj4jkkg5mbsjkpzr-source/lib/modules.nix:650:14:
|
||||
649| in
|
||||
650| if length optionDecls == length decls then
|
||||
| ^
|
||||
651| let opt = fixupOptionType loc (mergeOptionDecls loc decls);
|
||||
|
||||
… while calling the 'filter' builtin
|
||||
at /nix/store/sh0v21n9zc03b94qjj4jkkg5mbsjkpzr-source/lib/modules.nix:642:25:
|
||||
641| defns' = rawDefinitionsByName.${name} or [];
|
||||
642| optionDecls = filter
|
||||
| ^
|
||||
643| (m: m.options?_type
|
||||
|
||||
… while calling anonymous lambda
|
||||
at /nix/store/sh0v21n9zc03b94qjj4jkkg5mbsjkpzr-source/lib/modules.nix:643:14:
|
||||
642| optionDecls = filter
|
||||
643| (m: m.options?_type
|
||||
| ^
|
||||
644| && (m.options._type == "option"
|
||||
|
||||
… in the left operand of the AND (&&) operator
|
||||
at /nix/store/sh0v21n9zc03b94qjj4jkkg5mbsjkpzr-source/lib/modules.nix:644:17:
|
||||
643| (m: m.options?_type
|
||||
644| && (m.options._type == "option"
|
||||
| ^
|
||||
645| || throwDeclarationTypeError loc m.options._type m._file
|
||||
|
||||
… while evaluating the attribute 'options'
|
||||
at /nix/store/sh0v21n9zc03b94qjj4jkkg5mbsjkpzr-source/lib/modules.nix:566:82:
|
||||
565| (n: option:
|
||||
566| [{ inherit (module) _file; pos = unsafeGetAttrPos n subtree; options = option; }]
|
||||
| ^
|
||||
567| )
|
||||
|
||||
… from call site
|
||||
at /nix/store/78sgjxjd6p9wns5mriffngcrvxp9sfaa-source/modules/programs/firefox/mkFirefoxModule.nix:317:28:
|
||||
316|
|
||||
317| nativeMessagingHosts = optionalAttrs (cfg.vendorPath != null) (mkOption {
|
||||
| ^
|
||||
318| inherit visible;
|
||||
|
||||
… while calling 'optionalAttrs'
|
||||
at /nix/store/sh0v21n9zc03b94qjj4jkkg5mbsjkpzr-source/lib/attrsets.nix:1351:5:
|
||||
1350| cond:
|
||||
1351| as:
|
||||
| ^
|
||||
1352| if cond then as else {};
|
||||
|
||||
… while evaluating a branch condition
|
||||
at /nix/store/sh0v21n9zc03b94qjj4jkkg5mbsjkpzr-source/lib/attrsets.nix:1352:5:
|
||||
1351| as:
|
||||
1352| if cond then as else {};
|
||||
| ^
|
||||
1353|
|
||||
|
||||
… from call site
|
||||
at /nix/store/78sgjxjd6p9wns5mriffngcrvxp9sfaa-source/modules/programs/firefox/mkFirefoxModule.nix:317:43:
|
||||
316|
|
||||
317| nativeMessagingHosts = optionalAttrs (cfg.vendorPath != null) (mkOption {
|
||||
| ^
|
||||
318| inherit visible;
|
||||
|
||||
… while calling anonymous lambda
|
||||
at /nix/store/sh0v21n9zc03b94qjj4jkkg5mbsjkpzr-source/lib/attrsets.nix:1204:18:
|
||||
1203| mapAttrs
|
||||
1204| (name: value:
|
||||
| ^
|
||||
1205| if isAttrs value && cond value
|
||||
|
||||
… from call site
|
||||
at /nix/store/sh0v21n9zc03b94qjj4jkkg5mbsjkpzr-source/lib/attrsets.nix:1207:18:
|
||||
1206| then recurse (path ++ [ name ]) value
|
||||
1207| else f (path ++ [ name ]) value);
|
||||
| ^
|
||||
1208| in
|
||||
|
||||
… while calling anonymous lambda
|
||||
at /nix/store/sh0v21n9zc03b94qjj4jkkg5mbsjkpzr-source/lib/modules.nix:254:72:
|
||||
253| # For definitions that have an associated option
|
||||
254| declaredConfig = mapAttrsRecursiveCond (v: ! isOption v) (_: v: v.value) options;
|
||||
| ^
|
||||
255|
|
||||
|
||||
… while evaluating the attribute 'value'
|
||||
at /nix/store/sh0v21n9zc03b94qjj4jkkg5mbsjkpzr-source/lib/modules.nix:816:9:
|
||||
815| in warnDeprecation opt //
|
||||
816| { value = addErrorContext "while evaluating the option `${showOption loc}':" value;
|
||||
| ^
|
||||
817| inherit (res.defsFinal') highestPrio;
|
||||
|
||||
… while evaluating the option `home-manager.users.me.programs.firefox.vendorPath':
|
||||
|
||||
… while evaluating the attribute 'mergedValue'
|
||||
at /nix/store/sh0v21n9zc03b94qjj4jkkg5mbsjkpzr-source/lib/modules.nix:851:5:
|
||||
850| # Type-check the remaining definitions, and merge them. Or throw if no definitions.
|
||||
851| mergedValue =
|
||||
| ^
|
||||
852| if isDefined then
|
||||
|
||||
… while evaluating a branch condition
|
||||
at /nix/store/sh0v21n9zc03b94qjj4jkkg5mbsjkpzr-source/lib/modules.nix:852:7:
|
||||
851| mergedValue =
|
||||
852| if isDefined then
|
||||
| ^
|
||||
853| if all (def: type.check def.value) defsFinal then type.merge loc defsFinal
|
||||
|
||||
… while evaluating the attribute 'values'
|
||||
at /nix/store/sh0v21n9zc03b94qjj4jkkg5mbsjkpzr-source/lib/modules.nix:845:9:
|
||||
844| in {
|
||||
845| values = defs''';
|
||||
| ^
|
||||
846| inherit (defs'') highestPrio;
|
||||
|
||||
… while evaluating a branch condition
|
||||
at /nix/store/sh0v21n9zc03b94qjj4jkkg5mbsjkpzr-source/lib/modules.nix:841:11:
|
||||
840| # Avoid sorting if we don't have to.
|
||||
841| if any (def: def.value._type or "" == "order") defs''.values
|
||||
| ^
|
||||
842| then sortProperties defs''.values
|
||||
|
||||
… while calling the 'any' builtin
|
||||
at /nix/store/sh0v21n9zc03b94qjj4jkkg5mbsjkpzr-source/lib/modules.nix:841:14:
|
||||
840| # Avoid sorting if we don't have to.
|
||||
841| if any (def: def.value._type or "" == "order") defs''.values
|
||||
| ^
|
||||
842| then sortProperties defs''.values
|
||||
|
||||
… while calling anonymous lambda
|
||||
at /nix/store/sh0v21n9zc03b94qjj4jkkg5mbsjkpzr-source/lib/modules.nix:841:19:
|
||||
840| # Avoid sorting if we don't have to.
|
||||
841| if any (def: def.value._type or "" == "order") defs''.values
|
||||
| ^
|
||||
842| then sortProperties defs''.values
|
||||
|
||||
… while evaluating the attribute 'value._type'
|
||||
at /nix/store/sh0v21n9zc03b94qjj4jkkg5mbsjkpzr-source/lib/modules.nix:942:73:
|
||||
941| highestPrio = foldl' (prio: def: min (getPrio def) prio) 9999 defs;
|
||||
942| strip = def: if def.value._type or "" == "override" then def // { value = def.value.content; } else def;
|
||||
| ^
|
||||
943| in {
|
||||
|
||||
… while evaluating the attribute 'value.content'
|
||||
at /nix/store/sh0v21n9zc03b94qjj4jkkg5mbsjkpzr-source/lib/modules.nix:1023:24:
|
||||
1022| { _type = "override";
|
||||
1023| inherit priority content;
|
||||
| ^
|
||||
1024| };
|
||||
|
||||
… while evaluating the attribute 'default'
|
||||
at /nix/store/78sgjxjd6p9wns5mriffngcrvxp9sfaa-source/modules/programs/firefox/mkFirefoxModule.nix:298:7:
|
||||
297| type = with types; nullOr str;
|
||||
298| default = with platforms;
|
||||
| ^
|
||||
299| if isDarwin then
|
||||
|
||||
… while evaluating a branch condition
|
||||
at /nix/store/78sgjxjd6p9wns5mriffngcrvxp9sfaa-source/modules/programs/firefox/mkFirefoxModule.nix:299:9:
|
||||
298| default = with platforms;
|
||||
299| if isDarwin then
|
||||
| ^
|
||||
300| darwin.vendorPath or null
|
||||
|
||||
… from call site
|
||||
at /nix/store/78sgjxjd6p9wns5mriffngcrvxp9sfaa-source/modules/programs/firefox/mkFirefoxModule.nix:10:12:
|
||||
9|
|
||||
10| inherit (pkgs.stdenv.hostPlatform) isDarwin;
|
||||
| ^
|
||||
11|
|
||||
|
||||
… while calling anonymous lambda
|
||||
at /nix/store/sh0v21n9zc03b94qjj4jkkg5mbsjkpzr-source/lib/modules.nix:513:35:
|
||||
512| context = name: ''while evaluating the module argument `${name}' in "${key}":'';
|
||||
513| extraArgs = mapAttrs (name: _:
|
||||
| ^
|
||||
514| addErrorContext (context name)
|
||||
|
||||
… while evaluating the module argument `pkgs' in "/nix/store/78sgjxjd6p9wns5mriffngcrvxp9sfaa-source/modules/programs/firefox.nix:anon-1":
|
||||
|
||||
… from call site
|
||||
at /nix/store/sh0v21n9zc03b94qjj4jkkg5mbsjkpzr-source/lib/modules.nix:515:28:
|
||||
514| addErrorContext (context name)
|
||||
515| (args.${name} or config._module.args.${name})
|
||||
| ^
|
||||
516| ) (functionArgs f);
|
||||
|
||||
… while calling anonymous lambda
|
||||
at /nix/store/sh0v21n9zc03b94qjj4jkkg5mbsjkpzr-source/lib/types.nix:601:29:
|
||||
600| merge = loc: defs:
|
||||
601| zipAttrsWith (name: defs:
|
||||
| ^
|
||||
602| let merged = mergeDefinitions (loc ++ [name]) elemType defs;
|
||||
|
||||
… while evaluating the attribute 'optionalValue.value'
|
||||
at /nix/store/sh0v21n9zc03b94qjj4jkkg5mbsjkpzr-source/lib/modules.nix:863:5:
|
||||
862|
|
||||
863| optionalValue =
|
||||
| ^
|
||||
864| if isDefined then { value = mergedValue; }
|
||||
|
||||
… while evaluating a branch condition
|
||||
at /nix/store/sh0v21n9zc03b94qjj4jkkg5mbsjkpzr-source/lib/modules.nix:864:7:
|
||||
863| optionalValue =
|
||||
864| if isDefined then { value = mergedValue; }
|
||||
| ^
|
||||
865| else {};
|
||||
|
||||
(6 duplicate frames omitted)
|
||||
|
||||
… from call site
|
||||
at /nix/store/78sgjxjd6p9wns5mriffngcrvxp9sfaa-source/modules/misc/nixpkgs.nix:43:11:
|
||||
42|
|
||||
43| _pkgs = import pkgsPath (filterAttrs (n: v: v != null) config.nixpkgs);
|
||||
| ^
|
||||
44|
|
||||
|
||||
… from call site
|
||||
at /nix/store/78sgjxjd6p9wns5mriffngcrvxp9sfaa-source/modules/misc/nixpkgs.nix:43:28:
|
||||
42|
|
||||
43| _pkgs = import pkgsPath (filterAttrs (n: v: v != null) config.nixpkgs);
|
||||
| ^
|
||||
44|
|
||||
|
||||
… while calling 'filterAttrs'
|
||||
at /nix/store/sh0v21n9zc03b94qjj4jkkg5mbsjkpzr-source/lib/attrsets.nix:646:5:
|
||||
645| pred:
|
||||
646| set:
|
||||
| ^
|
||||
647| removeAttrs set (filter (name: ! pred name set.${name}) (attrNames set));
|
||||
|
||||
… while calling the 'removeAttrs' builtin
|
||||
at /nix/store/sh0v21n9zc03b94qjj4jkkg5mbsjkpzr-source/lib/attrsets.nix:647:5:
|
||||
646| set:
|
||||
647| removeAttrs set (filter (name: ! pred name set.${name}) (attrNames set));
|
||||
| ^
|
||||
648|
|
||||
|
||||
… while calling the 'filter' builtin
|
||||
at /nix/store/sh0v21n9zc03b94qjj4jkkg5mbsjkpzr-source/lib/attrsets.nix:647:22:
|
||||
646| set:
|
||||
647| removeAttrs set (filter (name: ! pred name set.${name}) (attrNames set));
|
||||
| ^
|
||||
648|
|
||||
|
||||
… while calling anonymous lambda
|
||||
at /nix/store/sh0v21n9zc03b94qjj4jkkg5mbsjkpzr-source/lib/attrsets.nix:647:30:
|
||||
646| set:
|
||||
647| removeAttrs set (filter (name: ! pred name set.${name}) (attrNames set));
|
||||
| ^
|
||||
648|
|
||||
|
||||
… in the argument of the not operator
|
||||
at /nix/store/sh0v21n9zc03b94qjj4jkkg5mbsjkpzr-source/lib/attrsets.nix:647:38:
|
||||
646| set:
|
||||
647| removeAttrs set (filter (name: ! pred name set.${name}) (attrNames set));
|
||||
| ^
|
||||
648|
|
||||
|
||||
… from call site
|
||||
at /nix/store/sh0v21n9zc03b94qjj4jkkg5mbsjkpzr-source/lib/attrsets.nix:647:38:
|
||||
646| set:
|
||||
647| removeAttrs set (filter (name: ! pred name set.${name}) (attrNames set));
|
||||
| ^
|
||||
648|
|
||||
|
||||
… while calling anonymous lambda
|
||||
at /nix/store/78sgjxjd6p9wns5mriffngcrvxp9sfaa-source/modules/misc/nixpkgs.nix:43:44:
|
||||
42|
|
||||
43| _pkgs = import pkgsPath (filterAttrs (n: v: v != null) config.nixpkgs);
|
||||
| ^
|
||||
44|
|
||||
|
||||
… from call site
|
||||
at /nix/store/sh0v21n9zc03b94qjj4jkkg5mbsjkpzr-source/lib/attrsets.nix:647:48:
|
||||
646| set:
|
||||
647| removeAttrs set (filter (name: ! pred name set.${name}) (attrNames set));
|
||||
| ^
|
||||
648|
|
||||
|
||||
… while calling anonymous lambda
|
||||
at /nix/store/sh0v21n9zc03b94qjj4jkkg5mbsjkpzr-source/lib/attrsets.nix:1204:18:
|
||||
1203| mapAttrs
|
||||
1204| (name: value:
|
||||
| ^
|
||||
1205| if isAttrs value && cond value
|
||||
|
||||
… from call site
|
||||
at /nix/store/sh0v21n9zc03b94qjj4jkkg5mbsjkpzr-source/lib/attrsets.nix:1207:18:
|
||||
1206| then recurse (path ++ [ name ]) value
|
||||
1207| else f (path ++ [ name ]) value);
|
||||
| ^
|
||||
1208| in
|
||||
|
||||
… while calling anonymous lambda
|
||||
at /nix/store/sh0v21n9zc03b94qjj4jkkg5mbsjkpzr-source/lib/modules.nix:254:72:
|
||||
253| # For definitions that have an associated option
|
||||
254| declaredConfig = mapAttrsRecursiveCond (v: ! isOption v) (_: v: v.value) options;
|
||||
| ^
|
||||
255|
|
||||
|
||||
… while evaluating the attribute 'value'
|
||||
at /nix/store/sh0v21n9zc03b94qjj4jkkg5mbsjkpzr-source/lib/modules.nix:816:9:
|
||||
815| in warnDeprecation opt //
|
||||
816| { value = addErrorContext "while evaluating the option `${showOption loc}':" value;
|
||||
| ^
|
||||
817| inherit (res.defsFinal') highestPrio;
|
||||
|
||||
… while evaluating the option `home-manager.users.me.nixpkgs.overlays':
|
||||
|
||||
… while evaluating the attribute 'mergedValue'
|
||||
at /nix/store/sh0v21n9zc03b94qjj4jkkg5mbsjkpzr-source/lib/modules.nix:851:5:
|
||||
850| # Type-check the remaining definitions, and merge them. Or throw if no definitions.
|
||||
851| mergedValue =
|
||||
| ^
|
||||
852| if isDefined then
|
||||
|
||||
… from call site
|
||||
at /nix/store/sh0v21n9zc03b94qjj4jkkg5mbsjkpzr-source/lib/modules.nix:853:59:
|
||||
852| if isDefined then
|
||||
853| if all (def: type.check def.value) defsFinal then type.merge loc defsFinal
|
||||
| ^
|
||||
854| else let allInvalid = filter (def: ! type.check def.value) defsFinal;
|
||||
|
||||
… while calling 'merge'
|
||||
at /nix/store/sh0v21n9zc03b94qjj4jkkg5mbsjkpzr-source/lib/types.nix:739:20:
|
||||
738| check = x: x == null || elemType.check x;
|
||||
739| merge = loc: defs:
|
||||
| ^
|
||||
740| let nrNulls = count (def: def.value == null) defs; in
|
||||
|
||||
… from call site
|
||||
at /nix/store/sh0v21n9zc03b94qjj4jkkg5mbsjkpzr-source/lib/types.nix:744:14:
|
||||
743| throw "The option `${showOption loc}` is defined both null and not null, in ${showFiles (getFiles defs)}."
|
||||
744| else elemType.merge loc defs;
|
||||
| ^
|
||||
745| emptyValue = { value = null; };
|
||||
|
||||
… while calling 'merge'
|
||||
at /nix/store/sh0v21n9zc03b94qjj4jkkg5mbsjkpzr-source/lib/types.nix:545:20:
|
||||
544| check = isList;
|
||||
545| merge = loc: defs:
|
||||
| ^
|
||||
546| map (x: x.value) (filter (x: x ? value) (concatLists (imap1 (n: def:
|
||||
|
||||
… while calling the 'map' builtin
|
||||
at /nix/store/sh0v21n9zc03b94qjj4jkkg5mbsjkpzr-source/lib/types.nix:546:9:
|
||||
545| merge = loc: defs:
|
||||
546| map (x: x.value) (filter (x: x ? value) (concatLists (imap1 (n: def:
|
||||
| ^
|
||||
547| imap1 (m: def':
|
||||
|
||||
… while calling the 'filter' builtin
|
||||
at /nix/store/sh0v21n9zc03b94qjj4jkkg5mbsjkpzr-source/lib/types.nix:546:27:
|
||||
545| merge = loc: defs:
|
||||
546| map (x: x.value) (filter (x: x ? value) (concatLists (imap1 (n: def:
|
||||
| ^
|
||||
547| imap1 (m: def':
|
||||
|
||||
… while calling anonymous lambda
|
||||
at /nix/store/sh0v21n9zc03b94qjj4jkkg5mbsjkpzr-source/lib/types.nix:546:35:
|
||||
545| merge = loc: defs:
|
||||
546| map (x: x.value) (filter (x: x ? value) (concatLists (imap1 (n: def:
|
||||
| ^
|
||||
547| imap1 (m: def':
|
||||
|
||||
… from call site
|
||||
at /nix/store/sh0v21n9zc03b94qjj4jkkg5mbsjkpzr-source/lib/types.nix:546:38:
|
||||
545| merge = loc: defs:
|
||||
546| map (x: x.value) (filter (x: x ? value) (concatLists (imap1 (n: def:
|
||||
| ^
|
||||
547| imap1 (m: def':
|
||||
|
||||
… while calling anonymous lambda
|
||||
at /nix/store/sh0v21n9zc03b94qjj4jkkg5mbsjkpzr-source/lib/lists.nix:334:29:
|
||||
333| */
|
||||
334| imap1 = f: list: genList (n: f (n + 1) (elemAt list n)) (length list);
|
||||
| ^
|
||||
335|
|
||||
|
||||
… from call site
|
||||
at /nix/store/sh0v21n9zc03b94qjj4jkkg5mbsjkpzr-source/lib/lists.nix:334:32:
|
||||
333| */
|
||||
334| imap1 = f: list: genList (n: f (n + 1) (elemAt list n)) (length list);
|
||||
| ^
|
||||
335|
|
||||
|
||||
… while calling anonymous lambda
|
||||
at /nix/store/sh0v21n9zc03b94qjj4jkkg5mbsjkpzr-source/lib/types.nix:547:21:
|
||||
546| map (x: x.value) (filter (x: x ? value) (concatLists (imap1 (n: def:
|
||||
547| imap1 (m: def':
|
||||
| ^
|
||||
548| (mergeDefinitions
|
||||
|
||||
… while evaluating the attribute 'optionalValue'
|
||||
at /nix/store/sh0v21n9zc03b94qjj4jkkg5mbsjkpzr-source/lib/modules.nix:863:5:
|
||||
862|
|
||||
863| optionalValue =
|
||||
| ^
|
||||
864| if isDefined then { value = mergedValue; }
|
||||
|
||||
(9 duplicate frames omitted)
|
||||
|
||||
… while evaluating definitions from `/nix/store/ngbxcxj87yilwhpb0zzpqhy9jhv14nak-source/hosts/lolcathost':
|
||||
|
||||
… from call site
|
||||
at /nix/store/sh0v21n9zc03b94qjj4jkkg5mbsjkpzr-source/lib/modules.nix:832:128:
|
||||
831| defs' = concatMap (m:
|
||||
832| map (value: { inherit (m) file; inherit value; }) (addErrorContext "while evaluating definitions from `${m.file}':" (dischargeProperties m.value))
|
||||
| ^
|
||||
833| ) defs;
|
||||
|
||||
… while calling 'dischargeProperties'
|
||||
at /nix/store/sh0v21n9zc03b94qjj4jkkg5mbsjkpzr-source/lib/modules.nix:903:25:
|
||||
902| */
|
||||
903| dischargeProperties = def:
|
||||
| ^
|
||||
904| if def._type or "" == "merge" then
|
||||
|
||||
… while evaluating a branch condition
|
||||
at /nix/store/sh0v21n9zc03b94qjj4jkkg5mbsjkpzr-source/lib/modules.nix:904:5:
|
||||
903| dischargeProperties = def:
|
||||
904| if def._type or "" == "merge" then
|
||||
| ^
|
||||
905| concatMap dischargeProperties def.contents
|
||||
|
||||
… while evaluating the attribute 'value'
|
||||
at /nix/store/sh0v21n9zc03b94qjj4jkkg5mbsjkpzr-source/lib/types.nix:551:38:
|
||||
550| elemType
|
||||
551| [{ inherit (def) file; value = def'; }]
|
||||
| ^
|
||||
552| ).optionalValue
|
||||
|
||||
… while calling the 'elemAt' builtin
|
||||
at /nix/store/sh0v21n9zc03b94qjj4jkkg5mbsjkpzr-source/lib/lists.nix:334:43:
|
||||
333| */
|
||||
334| imap1 = f: list: genList (n: f (n + 1) (elemAt list n)) (length list);
|
||||
| ^
|
||||
335|
|
||||
|
||||
… from call site
|
||||
at /nix/store/ngbxcxj87yilwhpb0zzpqhy9jhv14nak-source/homes/me/default.nix:12:7:
|
||||
11| overlays = [
|
||||
12| inputs.hyprpanel.overlay
|
||||
| ^
|
||||
13| ];
|
||||
|
||||
… while calling anonymous lambda
|
||||
at /nix/store/sh0v21n9zc03b94qjj4jkkg5mbsjkpzr-source/lib/modules.nix:513:35:
|
||||
512| context = name: ''while evaluating the module argument `${name}' in "${key}":'';
|
||||
513| extraArgs = mapAttrs (name: _:
|
||||
| ^
|
||||
514| addErrorContext (context name)
|
||||
|
||||
… while evaluating the module argument `inputs' in ":anon-7:anon-1":
|
||||
|
||||
error: attribute 'inputs' missing
|
||||
at /nix/store/sh0v21n9zc03b94qjj4jkkg5mbsjkpzr-source/lib/modules.nix:515:28:
|
||||
514| addErrorContext (context name)
|
||||
515| (args.${name} or config._module.args.${name})
|
||||
| ^
|
||||
516| ) (functionArgs f);
|
||||
Loading…
Add table
Add a link
Reference in a new issue