9 Commits

24 changed files with 587 additions and 370 deletions
-2
View File
@@ -9,7 +9,6 @@ keys:
- &tilo-host age1awytvphvty4f9wmdn86xnjg9kgetqjx8qlwj5d2882t4fyyzy58s3vg5k4 - &tilo-host age1awytvphvty4f9wmdn86xnjg9kgetqjx8qlwj5d2882t4fyyzy58s3vg5k4
- &NaroMk3 age1erkn7dd022e90ktyj66aux9j9xvl0uzd6ru5cmrjsvcm5rtr5pfs7q6k9h - &NaroMk3 age1erkn7dd022e90ktyj66aux9j9xvl0uzd6ru5cmrjsvcm5rtr5pfs7q6k9h
- &NaroMk3-host age16crkeglm3j3f6rveylytuerptjf9mwtv3hl89ywkmnnvdkntfchsuvrsk5 - &NaroMk3-host age16crkeglm3j3f6rveylytuerptjf9mwtv3hl89ywkmnnvdkntfchsuvrsk5
- &steamdeck age1ztuc996dapd7gpw5g7t4k3e9egv3dj6czxyslhnwula97w3cuytqlgzru0
creation_rules: creation_rules:
- path_regex: secrets/secrets.yaml$ - path_regex: secrets/secrets.yaml$
key_groups: key_groups:
@@ -24,4 +23,3 @@ creation_rules:
- *NaroMk3-host - *NaroMk3-host
- *elcafe - *elcafe
- *elcafe-host - *elcafe-host
- *steamdeck
Generated
+304 -55
View File
@@ -24,6 +24,43 @@
"type": "github" "type": "github"
} }
}, },
"cachix": {
"inputs": {
"devenv": [
"jj-cz",
"devenv"
],
"flake-compat": [
"jj-cz",
"devenv",
"flake-compat"
],
"git-hooks": [
"jj-cz",
"devenv",
"git-hooks"
],
"nixpkgs": [
"jj-cz",
"devenv",
"nixpkgs"
]
},
"locked": {
"lastModified": 1760971495,
"narHash": "sha256-IwnNtbNVrlZIHh7h4Wz6VP0Furxg9Hh0ycighvL5cZc=",
"owner": "cachix",
"repo": "cachix",
"rev": "c5bfd933d1033672f51a863c47303fc0e093c2d2",
"type": "github"
},
"original": {
"owner": "cachix",
"ref": "latest",
"repo": "cachix",
"type": "github"
}
},
"caelestia-cli": { "caelestia-cli": {
"inputs": { "inputs": {
"caelestia-shell": [ "caelestia-shell": [
@@ -35,11 +72,11 @@
] ]
}, },
"locked": { "locked": {
"lastModified": 1780375472, "lastModified": 1778125502,
"narHash": "sha256-Q8RAJoYlakA6B2I5DVcuxzNbhCNU1nnIjqQZYP1KGrM=", "narHash": "sha256-QAAO9RCR6byVJi50l8RMVJWzrsNYbXonfR6tqU93vIQ=",
"owner": "caelestia-dots", "owner": "caelestia-dots",
"repo": "cli", "repo": "cli",
"rev": "d1c8c8fc09738d1b40576e97c274b4a11a2e0ac7", "rev": "7b8a4281aa8b2b12745de531cce0c65d87aea2e5",
"type": "github" "type": "github"
}, },
"original": { "original": {
@@ -51,18 +88,17 @@
"caelestia-shell": { "caelestia-shell": {
"inputs": { "inputs": {
"caelestia-cli": "caelestia-cli", "caelestia-cli": "caelestia-cli",
"m3shapes": "m3shapes",
"nixpkgs": [ "nixpkgs": [
"nixpkgs" "nixpkgs"
], ],
"quickshell": "quickshell" "quickshell": "quickshell"
}, },
"locked": { "locked": {
"lastModified": 1781178648, "lastModified": 1778381004,
"narHash": "sha256-z6V1T7MHShM7TfFIMCDp94Bi1Wk9LJfK96vm8YFGY5M=", "narHash": "sha256-JwIlrajiY74obxyTMu/Ym6wOEQaCjpHwfziPK+E5u3Q=",
"owner": "caelestia-dots", "owner": "caelestia-dots",
"repo": "shell", "repo": "shell",
"rev": "a16c957a8bd13e0cfd09928ca0a22fecd3681e44", "rev": "2ca4ad4a434e91e73504debd5225e66dc5ebb2b6",
"type": "github" "type": "github"
}, },
"original": { "original": {
@@ -79,11 +115,11 @@
] ]
}, },
"locked": { "locked": {
"lastModified": 1781307432, "lastModified": 1778198574,
"narHash": "sha256-96fOVwSAFEoZNZtJM10E4Fz1kr59CwzYfUFidypPkKY=", "narHash": "sha256-XzgYoibIH6diZoZ2GzoGeyV2xdXAwBtXdAze+Qu2kR0=",
"owner": "9001", "owner": "9001",
"repo": "copyparty", "repo": "copyparty",
"rev": "a00bc93fe1b6f71afffa43fab4efb88dceddea62", "rev": "139ef1851e5d698521a5c2078c56f951d6e54d00",
"type": "github" "type": "github"
}, },
"original": { "original": {
@@ -92,6 +128,33 @@
"type": "github" "type": "github"
} }
}, },
"devenv": {
"inputs": {
"cachix": "cachix",
"flake-compat": "flake-compat",
"flake-parts": "flake-parts",
"git-hooks": "git-hooks",
"nix": "nix",
"nixd": "nixd",
"nixpkgs": [
"jj-cz",
"nixpkgs"
]
},
"locked": {
"lastModified": 1770304289,
"narHash": "sha256-+g+XMyB1zi50h2N38GE32l7ZONX4oW7Nw6QSXzfNiwk=",
"owner": "cachix",
"repo": "devenv",
"rev": "fd777e39027d393346e4df672d51ad2bf44b2a12",
"type": "github"
},
"original": {
"owner": "cachix",
"repo": "devenv",
"type": "github"
}
},
"fenix": { "fenix": {
"inputs": { "inputs": {
"nixpkgs": [ "nixpkgs": [
@@ -115,6 +178,59 @@
"type": "github" "type": "github"
} }
}, },
"flake-compat": {
"flake": false,
"locked": {
"lastModified": 1761588595,
"narHash": "sha256-XKUZz9zewJNUj46b4AJdiRZJAvSZ0Dqj2BNfXvFlJC4=",
"owner": "edolstra",
"repo": "flake-compat",
"rev": "f387cd2afec9419c8ee37694406ca490c3f34ee5",
"type": "github"
},
"original": {
"owner": "edolstra",
"repo": "flake-compat",
"type": "github"
}
},
"flake-parts": {
"inputs": {
"nixpkgs-lib": [
"jj-cz",
"devenv",
"nixpkgs"
]
},
"locked": {
"lastModified": 1760948891,
"narHash": "sha256-TmWcdiUUaWk8J4lpjzu4gCGxWY6/Ok7mOK4fIFfBuU4=",
"owner": "hercules-ci",
"repo": "flake-parts",
"rev": "864599284fc7c0ba6357ed89ed5e2cd5040f0c04",
"type": "github"
},
"original": {
"owner": "hercules-ci",
"repo": "flake-parts",
"type": "github"
}
},
"flake-root": {
"locked": {
"lastModified": 1723604017,
"narHash": "sha256-rBtQ8gg+Dn4Sx/s+pvjdq3CB2wQNzx9XGFq/JVGCB6k=",
"owner": "srid",
"repo": "flake-root",
"rev": "b759a56851e10cb13f6b8e5698af7b59c44be26e",
"type": "github"
},
"original": {
"owner": "srid",
"repo": "flake-root",
"type": "github"
}
},
"flake-utils": { "flake-utils": {
"locked": { "locked": {
"lastModified": 1678901627, "lastModified": 1678901627,
@@ -200,6 +316,57 @@
"type": "github" "type": "github"
} }
}, },
"git-hooks": {
"inputs": {
"flake-compat": [
"jj-cz",
"devenv",
"flake-compat"
],
"gitignore": "gitignore",
"nixpkgs": [
"jj-cz",
"devenv",
"nixpkgs"
]
},
"locked": {
"lastModified": 1760663237,
"narHash": "sha256-BflA6U4AM1bzuRMR8QqzPXqh8sWVCNDzOdsxXEguJIc=",
"owner": "cachix",
"repo": "git-hooks.nix",
"rev": "ca5b894d3e3e151ffc1db040b6ce4dcc75d31c37",
"type": "github"
},
"original": {
"owner": "cachix",
"repo": "git-hooks.nix",
"type": "github"
}
},
"gitignore": {
"inputs": {
"nixpkgs": [
"jj-cz",
"devenv",
"git-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"
}
},
"home-manager": { "home-manager": {
"inputs": { "inputs": {
"nixpkgs": [ "nixpkgs": [
@@ -207,11 +374,11 @@
] ]
}, },
"locked": { "locked": {
"lastModified": 1781305496, "lastModified": 1778609305,
"narHash": "sha256-g8Vv4Qfc7n+lgov97REu3X6BeJtvYY0hlSUZR1GrGQQ=", "narHash": "sha256-muTc+WME6k3sfTr/Pvmw8hrK7zXrbl961TEF9wPeAnk=",
"owner": "nix-community", "owner": "nix-community",
"repo": "home-manager", "repo": "home-manager",
"rev": "c87a39aa979acc4848016d2220c6238390d84779", "rev": "5878fdadfe2cfe1b3383b38d66117f7b80696b68",
"type": "github" "type": "github"
}, },
"original": { "original": {
@@ -223,6 +390,7 @@
"jj-cz": { "jj-cz": {
"inputs": { "inputs": {
"alejandra": "alejandra", "alejandra": "alejandra",
"devenv": "devenv",
"flake-utils": "flake-utils_3", "flake-utils": "flake-utils_3",
"nixpkgs": [ "nixpkgs": [
"nixpkgs" "nixpkgs"
@@ -230,11 +398,11 @@
"rust-overlay": "rust-overlay" "rust-overlay": "rust-overlay"
}, },
"locked": { "locked": {
"lastModified": 1781450428, "lastModified": 1777830987,
"narHash": "sha256-EWQpPImWpq0RHgyqa/lBoiMsjRjNdJCYa9fU2q+7nOg=", "narHash": "sha256-fPsv7qZHb9EO04IoQ6cGAj+6/y1pSMEFWmvLCULOEuM=",
"ref": "develop", "ref": "develop",
"rev": "4ad6e944b22a1d9990d43ac02650fc4d90fb1b4c", "rev": "bd6892d91e1a04f9b092b22831a977f08a36cbe0",
"revCount": 49, "revCount": 40,
"type": "git", "type": "git",
"url": "https://labs.phundrak.com/phundrak/jj-cz" "url": "https://labs.phundrak.com/phundrak/jj-cz"
}, },
@@ -244,20 +412,49 @@
"url": "https://labs.phundrak.com/phundrak/jj-cz" "url": "https://labs.phundrak.com/phundrak/jj-cz"
} }
}, },
"m3shapes": { "nix": {
"flake": false, "inputs": {
"flake-compat": [
"jj-cz",
"devenv",
"flake-compat"
],
"flake-parts": [
"jj-cz",
"devenv",
"flake-parts"
],
"git-hooks-nix": [
"jj-cz",
"devenv",
"git-hooks"
],
"nixpkgs": [
"jj-cz",
"devenv",
"nixpkgs"
],
"nixpkgs-23-11": [
"jj-cz",
"devenv"
],
"nixpkgs-regression": [
"jj-cz",
"devenv"
]
},
"locked": { "locked": {
"lastModified": 1781017666, "lastModified": 1769708679,
"narHash": "sha256-kfHyzZaPHgqZML48OA+5JwBOsLdQJ2ci/aGPShvUB4Y=", "narHash": "sha256-uFKkp2/SjIqbu5HtINg/hwHN6qaqcxLIbL/om7dT3kI=",
"owner": "soramanew", "owner": "cachix",
"repo": "m3shapes", "repo": "nix",
"rev": "bdc327b29f95394a732baf3c9b19658ba23755b6", "rev": "72bec37fabbfe378d677868ec42eeb83acf07a4c",
"type": "github" "type": "github"
}, },
"original": { "original": {
"owner": "soramanew", "owner": "cachix",
"repo": "m3shapes", "ref": "devenv-2.32",
"rev": "bdc327b29f95394a732baf3c9b19658ba23755b6", "repo": "nix",
"type": "github" "type": "github"
} }
}, },
@@ -268,11 +465,11 @@
] ]
}, },
"locked": { "locked": {
"lastModified": 1780816331, "lastModified": 1778393439,
"narHash": "sha256-0BYqs8yKWkOz2Q7+SP18N5E5gmDKSo6LSxIVIa0wWes=", "narHash": "sha256-mOtQxUjtKaPHLeoLOY/YEDctmud1X9KwJr4kE1MJ3Wc=",
"owner": "nix-community", "owner": "nix-community",
"repo": "nix-index-database", "repo": "nix-index-database",
"rev": "1a2ea89c917781e88508d9fd2b507f2d2a0e173c", "rev": "01466c414c7357ae2ce32be4a272a7c69e94ab5f",
"type": "github" "type": "github"
}, },
"original": { "original": {
@@ -281,13 +478,42 @@
"type": "github" "type": "github"
} }
}, },
"nixd": {
"inputs": {
"flake-parts": [
"jj-cz",
"devenv",
"flake-parts"
],
"flake-root": "flake-root",
"nixpkgs": [
"jj-cz",
"devenv",
"nixpkgs"
],
"treefmt-nix": "treefmt-nix"
},
"locked": {
"lastModified": 1763964548,
"narHash": "sha256-JTRoaEWvPsVIMFJWeS4G2isPo15wqXY/otsiHPN0zww=",
"owner": "nix-community",
"repo": "nixd",
"rev": "d4bf15e56540422e2acc7bc26b20b0a0934e3f5e",
"type": "github"
},
"original": {
"owner": "nix-community",
"repo": "nixd",
"type": "github"
}
},
"nixpkgs": { "nixpkgs": {
"locked": { "locked": {
"lastModified": 1781074563, "lastModified": 1778443072,
"narHash": "sha256-md8WlXOlfnIeHeOScMTTHFyf2d6iaTwPl2apR5EQ3P4=", "narHash": "sha256-zi7/fsqM/kFdNuED//4WOCUtezGtKKqRNORjMvfwjnA=",
"owner": "nixos", "owner": "nixos",
"repo": "nixpkgs", "repo": "nixpkgs",
"rev": "9ae611a455b90cf061d8f332b977e387bda8e1ca", "rev": "da5ad661ba4e5ef59ba743f0d112cbc30e474f32",
"type": "github" "type": "github"
}, },
"original": { "original": {
@@ -299,11 +525,11 @@
}, },
"nixpkgsStable": { "nixpkgsStable": {
"locked": { "locked": {
"lastModified": 1780952837, "lastModified": 1778430510,
"narHash": "sha256-Fwd1+spDtQ0hDyBwme6ufG3n4mY0UrjjFdYHv+G/Hds=", "narHash": "sha256-Ti+ZBvW6yrWWAg2szExVTwCd4qOJ3KlVr1tFHfyfi8Q=",
"owner": "NixOS", "owner": "NixOS",
"repo": "nixpkgs", "repo": "nixpkgs",
"rev": "e820eb4a444b46a19b2e03e8dfd2359439ff30fe", "rev": "8fd9daa3db09ced9700431c5b7ad0e8ba199b575",
"type": "github" "type": "github"
}, },
"original": { "original": {
@@ -342,11 +568,11 @@
] ]
}, },
"locked": { "locked": {
"lastModified": 1780303737, "lastModified": 1778222427,
"narHash": "sha256-7HgdJBG4BgAPDyHKKxWtxj7nziqsQo6zQCXtwy+L9fs=", "narHash": "sha256-6GFiP611nEJvtm+m03sMyfaVIJ9QOCi//hS+PPKyyPA=",
"ref": "refs/heads/master", "ref": "refs/heads/master",
"rev": "b66495fcc5022681b56b61f928c7acbe910e722c", "rev": "d1760ed1f31c02a95b37a9bf4084129c829ebe7f",
"revCount": 821, "revCount": 817,
"type": "git", "type": "git",
"url": "https://git.outfoxxed.me/outfoxxed/quickshell" "url": "https://git.outfoxxed.me/outfoxxed/quickshell"
}, },
@@ -425,11 +651,11 @@
] ]
}, },
"locked": { "locked": {
"lastModified": 1779992051, "lastModified": 1770260791,
"narHash": "sha256-4YWGv/0NkAdtTW1MXfaLYpfC9BhpCy9k1pWkR0xI9uw=", "narHash": "sha256-ADTBfENFjRVDQMcCycyX/pAy6NFI/Ct6Mrar3gsmXI0=",
"owner": "oxalica", "owner": "oxalica",
"repo": "rust-overlay", "repo": "rust-overlay",
"rev": "e93ad0df1073b2c969a8f0c1f10b84e870469d40", "rev": "42ec85352e419e601775c57256a52f6d48a39906",
"type": "github" "type": "github"
}, },
"original": { "original": {
@@ -466,11 +692,11 @@
] ]
}, },
"locked": { "locked": {
"lastModified": 1780547341, "lastModified": 1777944972,
"narHash": "sha256-Gq8KNx5A7hBB3uGJaj6eQfLDIz5YdLu92gqBcvHvoUo=", "narHash": "sha256-VfGRo1qTBKOe3s2gOv8LSoA6Fk19PvBlwQ1ECN0Evn8=",
"owner": "Mic92", "owner": "Mic92",
"repo": "sops-nix", "repo": "sops-nix",
"rev": "9ed65852b6257fbeae4355bc24ecfea307ca759a", "rev": "c591bf665727040c6cc5cb409079acb22dcce33c",
"type": "github" "type": "github"
}, },
"original": { "original": {
@@ -487,11 +713,11 @@
"systems": "systems_4" "systems": "systems_4"
}, },
"locked": { "locked": {
"lastModified": 1781101834, "lastModified": 1778540809,
"narHash": "sha256-gNVY6SYglFe37FpD+NnOjTipsqvVMM2vh/uc22KDEsA=", "narHash": "sha256-FNXls2QZTcxY0Dem3QtSewnr8vUKMDsTw9m8pLOnhTc=",
"owner": "Gerg-L", "owner": "Gerg-L",
"repo": "spicetify-nix", "repo": "spicetify-nix",
"rev": "0243dd6707c969fc8440216c811b3f2e4a4cceb7", "rev": "83939d7df4c0f1b8ee88cabde112223280a48554",
"type": "github" "type": "github"
}, },
"original": { "original": {
@@ -507,11 +733,11 @@
] ]
}, },
"locked": { "locked": {
"lastModified": 1781149687, "lastModified": 1778468351,
"narHash": "sha256-TanScAdzeSOcaVDN4V4rnTAlbuizMJlrVSSt9QkkPEA=", "narHash": "sha256-A5ZdpWN5d+OmKln2EPPeMmPJaBwbugO9dEhyp3pn/X8=",
"owner": "nix-community", "owner": "nix-community",
"repo": "srvos", "repo": "srvos",
"rev": "7a66d11f03dd0588229af7a2b7018a435638dbf5", "rev": "23122d21dfbe00e072ce515e21af18882bc88fd7",
"type": "github" "type": "github"
}, },
"original": { "original": {
@@ -580,6 +806,29 @@
"type": "github" "type": "github"
} }
}, },
"treefmt-nix": {
"inputs": {
"nixpkgs": [
"jj-cz",
"devenv",
"nixd",
"nixpkgs"
]
},
"locked": {
"lastModified": 1734704479,
"narHash": "sha256-MMi74+WckoyEWBRcg/oaGRvXC9BVVxDZNRMpL+72wBI=",
"owner": "numtide",
"repo": "treefmt-nix",
"rev": "65712f5af67234dad91a5a4baee986a8b62dbf8f",
"type": "github"
},
"original": {
"owner": "numtide",
"repo": "treefmt-nix",
"type": "github"
}
},
"zen-browser": { "zen-browser": {
"inputs": { "inputs": {
"nixpkgs": [ "nixpkgs": [
@@ -587,11 +836,11 @@
] ]
}, },
"locked": { "locked": {
"lastModified": 1781242638, "lastModified": 1778303188,
"narHash": "sha256-n0s/QM5ZJl3/v4tgDLsATIHR2dC+4+Aa2BT6FnthGy4=", "narHash": "sha256-zXFSvK80qpI91B7DU9QSExAtafSrz6vzormh2kUi6kQ=",
"owner": "youwen5", "owner": "youwen5",
"repo": "zen-browser-flake", "repo": "zen-browser-flake",
"rev": "79f7cca35f9e4e38d1f8767bac130159f60866cc", "rev": "9346c84657a9cab472bc4ee5a2d65d42a72d5346",
"type": "github" "type": "github"
}, },
"original": { "original": {
+1 -5
View File
@@ -146,10 +146,6 @@
inherit extraSpecialArgs pkgs; inherit extraSpecialArgs pkgs;
modules = withUserModules ./users/phundrak/host/pinetab2.nix; modules = withUserModules ./users/phundrak/host/pinetab2.nix;
}; };
"deck@steamdeck" = home-manager.lib.homeManagerConfiguration {
inherit extraSpecialArgs pkgs;
modules = withUserModules ./users/phundrak/host/steamdeck.nix;
};
"phundrak@tilo" = home-manager.lib.homeManagerConfiguration { "phundrak@tilo" = home-manager.lib.homeManagerConfiguration {
inherit extraSpecialArgs pkgs; inherit extraSpecialArgs pkgs;
modules = withUserModules ./users/phundrak/host/tilo.nix; modules = withUserModules ./users/phundrak/host/tilo.nix;
@@ -190,7 +186,7 @@
srvos.nixosModules.server srvos.nixosModules.server
srvos.nixosModules.hardware-hetzner-cloud srvos.nixosModules.hardware-hetzner-cloud
srvos.nixosModules.mixins-terminfo srvos.nixosModules.mixins-terminfo
./hosts/naromk3 ./hosts/naromk3/configuration.nix
]; ];
}; };
pinetab2 = pinetabConfig "x86_64-linux" ./hosts/pinetab2/gnome.nix; pinetab2 = pinetabConfig "x86_64-linux" ./hosts/pinetab2/gnome.nix;
@@ -24,11 +24,8 @@
firewall = { firewall = {
openPorts = [ openPorts = [
22 # Gitea SSH 22 # Gitea SSH
25 # SMTP
80 # HTTP 80 # HTTP
443 # HTTPS 443 # HTTPS
465 # SMTPS
993 # IMAPS
]; ];
}; };
}; };
+149
View File
@@ -0,0 +1,149 @@
# https://www.inkdrop.app/
{
lib,
fetchurl,
stdenv,
autoPatchelfHook,
makeWrapper,
wrapGAppsHook3,
alsa-lib,
at-spi2-atk,
at-spi2-core,
cairo,
cups,
dbus,
expat,
gdk-pixbuf,
glib,
gtk3,
libdrm,
libnotify,
libpulseaudio,
libsecret,
libuuid,
libxkbcommon,
mesa,
nspr,
nss,
pango,
systemd,
libx11,
libxscrnsaver,
libxcomposite,
libxcursor,
libxdamage,
libxext,
libxfixes,
libxi,
libxrandr,
libxrender,
libxtst,
libxcb,
libxkbfile,
libxshmfence,
}:
stdenv.mkDerivation rec {
pname = "inkdrop";
version = "5.11.8";
src = fetchurl {
url = "https://dist.inkdrop.app/v${version}/${pname}_${version}_amd64.deb";
hash = "sha256-8aJSeUi5K9PgNJvfYAtnRnI2t+vM10jiqVAZmX+zni0=";
};
nativeBuildInputs = [
autoPatchelfHook
makeWrapper
wrapGAppsHook3
];
buildInputs = [
alsa-lib
at-spi2-atk
at-spi2-core
cairo
cups
dbus
expat
gdk-pixbuf
glib
gtk3
libdrm
libnotify
libpulseaudio
libsecret
libuuid
libxkbcommon
mesa
nspr
nss
pango
systemd
libx11
libxscrnsaver
libxcomposite
libxcursor
libxdamage
libxext
libxfixes
libxi
libxrandr
libxrender
libxtst
libxcb
libxkbfile
libxshmfence
];
dontBuild = true;
dontConfigure = true;
# Ignore musl dependency since we're using glibc
autoPatchelfIgnoreMissingDeps = ["libc.musl-x86_64.so.1"];
unpackPhase = ''
runHook preUnpack
# Extract deb file manually to avoid setuid issues
ar x $src
tar xf data.tar.xz --no-same-permissions --no-same-owner
runHook postUnpack
'';
installPhase = ''
runHook preInstall
# Create output directories
mkdir -p $out/bin $out/share
# Copy the main application
cp -r usr/lib/inkdrop $out/share/inkdrop
# Copy desktop file and icon
cp -r usr/share/applications $out/share/
cp -r usr/share/pixmaps $out/share/
# Fix desktop file to use absolute paths
substituteInPlace $out/share/applications/inkdrop.desktop \
--replace-quiet "Exec=inkdrop" "Exec=$out/bin/inkdrop" \
--replace-quiet "Icon=inkdrop" "Icon=$out/share/pixmaps/inkdrop.png"
# Create wrapper script in bin
makeWrapper $out/share/inkdrop/inkdrop $out/bin/inkdrop \
--add-flags "\''${NIXOS_OZONE_WL:+\''${WAYLAND_DISPLAY:+--ozone-platform-hint=auto --enable-features=WaylandWindowDecorations}}" \
--set-default ELECTRON_IS_DEV 0 \
--inherit-argv0
runHook postInstall
'';
meta = with lib; {
description = "Notebook app for Markdown lovers";
homepage = "https://www.inkdrop.app/";
license = licenses.unfree;
maintainers = [];
platforms = ["x86_64-linux"];
mainProgram = "inkdrop";
};
}
+83 -94
View File
@@ -1,124 +1,113 @@
elcafe: elcafe:
copyparty: copyparty:
passwords: passwords:
creug: ENC[AES256_GCM,data:7qzpipXxKVEGRnXkkD/HRSH82gqA0qviwWw1TwFqsoc=,iv:OvMwxY/zyljUNn8UiwxCQ904z43RakuImxh4RP2G0G4=,tag:gKGDkVuecktMg31HjdYMIQ==,type:str] creug: ENC[AES256_GCM,data:bWiDsIB9xbCC8N3VNzoXQ/ciyh5LyX5gaH5HrCR1n18=,iv:UOUUs/dXMQ4gF5x1UZuSs/DZh14OErWq1EJjv1B5+No=,tag:gMrL7RlaIegw+gXE4Du0KQ==,type:str]
phundrak: ENC[AES256_GCM,data:vN/MCJi6SH8jZ89C1DTQvDJ+GkscXRo/Puhm0LwbZ0M=,iv:2IBTdy+hMCeDH4P3E2fz82ZQB0jM/t5GPDbPYhsEHSs=,tag:zUBLCkbdkwG4IJSMV+9DMg==,type:str] phundrak: ENC[AES256_GCM,data:0kdrtlw2KeF4ZGqhejdnf1j59Lm5Gchh+wka2lOf8jU=,iv:4XG7M6oqRL0ZQiWMBe4oQ+mHjONkvuIXGa6m2Zqfd/A=,tag:A54LlE+7W2wXYn3HfCfBDw==,type:str]
traefik: traefik:
env: ENC[AES256_GCM,data:VUS9oF/HLcxQ2QPLnQA14z0kokTuJVGNBfrS2KHWlBaJbqd/nxxWwHYIga7bK1dop1hznPyKVIZ/7A==,iv:0BKkKL6q5KANiu7PSxp0uGeRTXbnPN6HMYxMGnyijok=,tag:iBQupkVQTOqgp5z+tN726A==,type:str] env: ENC[AES256_GCM,data:HUdWGYoEPp2v8dnDuVsl7YmPxuBfHmXzGrvKWeiqPlmAwMqVZrZ1j8on/7QKvYDJoTJ40XY2qNynSA==,iv:Vgc/fZERnNp7hSMeRd9EgB3IenKAFTAhwC0bk8CX4DE=,tag:SdfhOST/o29Lt1zRdXXRyQ==,type:str]
dynamic: ENC[AES256_GCM,data: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,iv:8JtxoykF20VZ0exOq3fSQ9JiK97yhSTbvEtFkCXU6RI=,tag:dAkgklzWAI2NvOre4BTo7A==,type:str] dynamic: ENC[AES256_GCM,data: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,iv:3G3geSZRziwGiKcUMVNZ7j5s/4YA6Uk7wCSb4aFNSMo=,tag:FxARskR9+wdV7/xCKP8UdA==,type:str]
marpa: marpa:
nix-cache-priv-key: ENC[AES256_GCM,data:aOHqvU2O9dN+NZ4qPF8RdFVK2OyrMUDsy95AXCcvyQcTgT+79e3Gv2zuWAXwW1O7E4BDzlzbBYYFd3F9uCo7f4gd5I4gKu1cI1Nr8BUvyQdSy8uSa2FeasmNEdAFg1HE7ZJtYHk=,iv:aLizbDMFACYiBXthlKsFDvYIpf0Eb2x1rlWBP5xT4zE=,tag:OL/x9nS67Z0y2LoZ3B7szw==,type:str] nix-cache-priv-key: ENC[AES256_GCM,data:H5VsN0nOogvgxWHXHF66BbzJe17zelZCG6mU4vmVJqBoi7a5cQxzU7WnV4k1EOpMJPDj6floVmrsG4DM86FthxcTwixCNDINmaemwAXQnUkgWXFKYY7Ovzten81UVKrtkN4n1S8=,iv:pxnHD5YqyTeNZnxyEJeXAUixZEz8Uq9b2HFZZBsMOzk=,tag:xI+4tFG+Q4Z5IVxlATayJA==,type:str]
opencode: extraHosts: ENC[AES256_GCM,data:4lp7w0snYle7vGVLJq3zlTxoC8eVpaSreW3P8Aq+O6oRJoWo3IASpwi7zSx6nxmLo5LGPeupVXfy3xOkG9d5QFNU2uU6vXKvOnnm6wrpS+UcYp/4U/z+R3rFnFsI5PsCgmlL1bSUFCFkXlrLDIyoW50Q/DLXDS8QaUYAtto1DcRUXc9j8RnunYF38HFlAOD/Xa4DY048pvZu8TMsmLQjM5txZnZBq4+P8aBjY3SF+K9cqZ+SgQkU+gdGo0/S/N5OUZJ3ATJ6mglPl/Nplw/Dh9HvC7jEMJZKrVzWiYquTOn0/IytqOCS2SkhsmVMRqf06hpvhlz6sFXzkDfxKMIRTULEkjZDkZ7QioSbLeqmQePSg7xs28SvToiVKSpg0PxeH5LvJE73hgX3ATUXA2BmRvqQuqBwLaDU6TPm8xkYe7qbabaN5oFtXCI/XydZTao5Glqw/BZQRTise/qGgn3Bfl/ieMYQOqCMEdHzR0Beipur6spliGFC4YnwL3Nh4CO6qOB/j61a7rqY6nLyo54jWtjvHX42pTuGWhvhGH1z4NRZqcKks+KCMB4PcCXgul1hrb04wLXYVu7R/7QqOACp4SZBUFZCj+izcsnB1sKdKliL87VBUkwOSF+1JUCY,iv:5A3jCWLkooCkuOMiybbeQ9+TRA7CoiW3qbzmJLVarSc=,tag:qLsGhrFHs65Vesj4Ot4I/g==,type:str]
cors: ENC[AES256_GCM,data:DTKTN48/uE8GcdbqnCtCLmtQUX0Y3NW0cTLtIAU=,iv:A5wahOtJweVvWTp2C3QzIr0spKPXBMygUwDMPSHmriA=,tag:ao7XkG9N8nC6yFwT6pNs7Q==,type:str]
extraHosts: ENC[AES256_GCM,data:bAHBFj3RbrDrTyIaq8RZ7peqxZS23gRu5lhiu3DXlfY8seSaN7BXU1+XKXPPRJRGoYRCpH0MaskAlz1r3vc3mItzUPmOU4Vqqo/7CCMLb4ezIRhqpA/Q7MGnIj9m5V9pQZjgk+BTiMHdb/qOeG6VGv42dhYKUvxGcFIGoM5pjCaCGkM840Xb1XR9rMOY7wqtaE0kPpM355nTSAJqAM9NZ+CpNASpodRvXPPEhmbC0UrL93OCl/w8Ltvm2bDiB00jOKG2QukrWYdkGhigVweejiHz3+GHoDgY4fuRX/C78RW40PehnyqOd3S0dw6IwcnYK/Bx1dlk1UXydl4kYWgdAN0XO7YwoAM9fB4ESwjLop/xJXp4lFOxeiHi3TO9d0R0DqFEWuUpLmu7EKltQ44Xngz+EmJTBK0UhWfUqr/wRb4cVuchCxjvG9NFFwOTKzy8JJYI0oOgmJ9CqgCfmOp/KTV/I98HhHqykRCTTp4fYtXTQTxMrK5RAlovAnzEAaV8EWgwNDoDU62ChOT/o47xoj2bG481huyOT8dQWoKCWllPrYKu1bzH6/8klrDT9i3xVgRVWTlsnMYxrNhmP9dg5QrHn/4wfne+BfuUONoUjWkNHre11DdkQxIiMK+4,iv:bnTicEoQsjPbfyISHts+J8s/DC++khcuAainlvIViI8=,tag:8b/WGsIaGGQDqaoTRw9a8g==,type:str]
mopidy: mopidy:
spotify: ENC[AES256_GCM,data:YdqncyUBw1UaXbVYBMZHWEP4iFoRtUSBnKosYirvyq2tjx/d16L6hLzWiGILir6hSE9x0Kmwq+qm91m4AuwJUZgg2Qfp+8A3hfCaCWk4NKP8mKRsV5yUrO5ruP9GOEJBOaoZV61AO/dQDIFdgAnKsMWrwofy/J52,iv:wdFUL3RKw2gMKJ25BKBdEs+p8kluigpaNbY7e0ZPono=,tag:fbOF4haBjxm8zcQD0GKB8g==,type:str] spotify: ENC[AES256_GCM,data:6i9BzQmlndnROuT1H2zgN/3I6hBiFf14BlcS+XL2PbTiiEQZe2yE3tnZo3KXU9S5CjS3MwxsVdytKOFMQt2s1bVjcibBhJzoKEQByaapdzn1mK3kQLdJfhPf4Hf9YZV9Dlc60ngS7ESLZakdFVlj4rlbV5XReLhK,iv:fYd78r4U0kTyq1TZjBVXkjdNiOQ29gLJ53kwTXsi8W0=,tag:oWaeOuzdHWS4joZAdeA2pg==,type:str]
bandcamp: ENC[AES256_GCM,data:RZWVvqUM/oR81OI7VNhX9cq6r22UrZvx1mkcOQqcLWFh3+a9YpSaeNljoJszmIyGnApt2MR1L/vyX9apcWY4NEIPAsWfaSMUecXIA/LdVDN7fnvCjxBZqO9SjpKb9eW1MEImL/vkpaEd84BXVelcX2sgzSbJYA==,iv:a+0Owxtz5GWrnt9geuPOPZ9ab/J5lFHp/0nyiYYekNs=,tag:pdvBhNNvSnPR4nMHy1C8Fw==,type:str] bandcamp: ENC[AES256_GCM,data:3uWlk1W6pgExsUkLpqpFXpMceYEdMfWMxNUq8iGEyq8/P3OAjzg7pvvPBGcVwmh4jSgNilRiqmmGrtYLwdqPUMlmbFB56K6ZLDIcC2yg2SRfulYcObvimOkIkx7ITr1u6jSzjMkTR5ekIlzlPBxFQzEfBbgdrQ==,iv:IY1VH/8vjNCPz8LGbYbyr5U3FcmhV+YhK3fHnLfWiak=,tag:lB78PRuEuFen54csc7jHIQ==,type:str]
emailPassword: ENC[AES256_GCM,data:jUEhu/wBhp25K0w14i/+p2H9F2fcVz/TtUZ8gl85oKAXeJR7/Q==,iv:h0N/smryCKp1ZgXlxQZplQ3wXYBXxL2rTgqJUMdWsZY=,tag:7dwQ0U5wefw9dTTIrYJ5NQ==,type:str] emailPassword: ENC[AES256_GCM,data:RUuXzEfkqu1hEg12vBko17MtvdcFIxPofB+nFOuuMdWqjqJgEg==,iv:725/ttk8jHmSIj16gqvLykOu8D8rUbzzvOyxyZx8Jds=,tag:jv1ZO14WsKyWFsfqzRzZPg==,type:str]
ssh: ssh:
hosts: ENC[AES256_GCM,data:dwJ0cC+y2o+fK0eNBbpo/TAEqWgRSWPida7CHTTziVgxvRPVLprdjb2cfntgb9JCCNo7dA9onRzkOqVDnWOz9mvCGa6W8QYJSbAcc9mpXCv0+5FKllLXE/c/i86VgW1qlCNQCtMzFtnTWWurOIG/dR546jzYoy0BYUA8ZUYKHWLRuUM7K00WtNgYyZ1O5QK+SbekkGFeBj4oSuzHB5Ik/dzuETULggZ5kTb4YTx9lePXUWf9zgeCi3+m2Za2bTngj9cxNDtepgJUPGFKvwaWq3nh+miW97ZcZEFCReYGHhRGiZe+SOJHMOFcvRBdek5Jce6SOZ/MYbHaOiXRwt94V2WaIX3jQtlvrEZ86cErC3kfWrW9J42x1r9gFtagXSGq20phcPEq/dAMkJyFviAtsRgIEAQL0Z7B1xGYlq8Pqqswu2HKrLNUxVMVpTZn/815Ii73sJ5TbHKiXq1iNSBeIH7dlzhM1t4OhH4gYbz7z1vT+fcfHQ4ocOzXNcH0X2uUXZPZLFLPJ4VZgZSPFjLXevkoeboHMWh21+u0R0pMPdRX3q46+iO4muMpiLbCgvDeNSk6oRFIr7J1sHpCj0alIh3QPRFT8Lk59MDsz4RrzD+8Xx4KXdfrhH3cl14XZQ0MZylruZY5QiewpvPt77JzRThVglMcrCjDYYYjp9TsXg==,iv:ctBJG65M/UDS3p4CAeYa3wvFoinyiY261FASJz0XkiY=,tag:XGFgIq49kDjetpLCQs4n2A==,type:str] hosts: ENC[AES256_GCM,data:WTgCxNIyKTwFxDVlWkJcxrvUjYuVionDQSWgSqSc0SZ5mGbl228mv7Z6mXvwbN78+jIwTuuUtfmTsDoaUaSqyIReaXFsrIHAoCGoSMbJ10RiAbyDfCEH9vbHamAX22Ccfnyh7eUOb3AsAQo/pJs/95bdCpKEPy4SXcpB0tc+KpgrEijVLpRJFyB6UGl+2qg/hVfo8no5l4tZMUBxzS5KEU7pEEcA/SLfdVMM/4+aeVmJudxJPi3RsqnA8qORVpvJC0y/ln71OrFdRVrX4e47NEXzX2Hfr+hiFbW190xBp6a/kZypQl4vk4fzn8RUathQMOVmf1r4v7eJOYRWeGeZinZtQNe7SFWtiYc0pTbQ6GNyOMwzk3bMjlyzhlrTe1MqFqVbAHSsKk6ydpcjtXt4DgQ93IL4BU6emJu7HBFBOuQ9QWEvDubhB/0Y68BWUqGqY/2lPdllGJrXL87h5KJrLHSMyUX4mF9Je84aC0cv1N3d78kepo2wCz7jrfsxixT+qN7ufu/TurLloC6y2skOCmB+gcRo79Jzk4LRi+Zf+RWnWiXw5HsZWwO7so5JIDlgApkERif6vwup12jhdu+ZxcqFfjMt1wEFceS8YGNvUl0XWPgvmM9kdqn/4XXOYCnysbpcfZaBMGDOBUlbhLUybHdDzvGYV/kMU5m8xoXAjA==,iv:Gf2f71TluSEQtiHf7CIHE2tFX8N4Y17AjP1PnNuWuNA=,tag:sGmZR1lKbbOeEhPvrHHO8Q==,type:str]
sops: sops:
age: age:
- enc: | - recipient: age1ajemtm502nn2n4q7v4j8meyd5mxtcqngkkedxq2pqzuwu78zp93qnw8q48
enc: |
-----BEGIN AGE ENCRYPTED FILE----- -----BEGIN AGE ENCRYPTED FILE-----
YWdlLWVuY3J5cHRpb24ub3JnL3YxCi0+IFgyNTUxOSBPdzBQVG9DM0JEODVPMHYy YWdlLWVuY3J5cHRpb24ub3JnL3YxCi0+IFgyNTUxOSA2S3VaTmg3b2QxMGtVeStr
dXhJcG8ydG9BSEJYRmpCMzNXRUNtQjhWRFZZCjdDelozdzZWbmkzWG8xZFRwVVVx WWRpb0RhVFNWM3RJNEV4ZTdRVmJUa2d6YVZrCnFTOWwwTlNhc2hqM2pwZ1hkcWd1
ZmMxWGF6b3R1Z2RlNjRuOExoUlNWa2sKLS0tIDRJWEw0ZmltUWYrT09ESndFa3RD QlE2N0FtSGFFR1NHbzFOSzI5Um4rVTQKLS0tIEFaMHprc3Jlclk3MGtvc2NzZ3cr
ait2ZUpTMXpkQitUaWp3eGRldDZDNzAKw5ud8Zrs/OVnJVF4rNcFVYsaJpKP5sVG blMrcWVSVFB3TVc0aTQ0RUYvbDFJS0kKmGisf9VDK2RPA1uQCK5udt7sdeDyh344
Q9v3d6pFqDg04WTcompVOeYOxKiQeDiBYLplrI0L5L4ykcBoWH11Qw== IKhPHzEHAHjKEkE6sWc6TB/l8K3IfL9zdHQZ9ZqTvCiS8CBZOwPQeg==
-----END AGE ENCRYPTED FILE----- -----END AGE ENCRYPTED FILE-----
recipient: age1ajemtm502nn2n4q7v4j8meyd5mxtcqngkkedxq2pqzuwu78zp93qnw8q48 - recipient: age197lfdanym647wdaz9uy8hrfqjwj9fs8rm7vs3fsrctceu8mr9gms2jedhz
- enc: | enc: |
-----BEGIN AGE ENCRYPTED FILE----- -----BEGIN AGE ENCRYPTED FILE-----
YWdlLWVuY3J5cHRpb24ub3JnL3YxCi0+IFgyNTUxOSB2cjNBcksvZ3BJTyt1S0Zs YWdlLWVuY3J5cHRpb24ub3JnL3YxCi0+IFgyNTUxOSBTRzRqTzlzVWpGMVFEbjV5
VGxkL0phMXlrL09NNjRRTkM5UFROZVNheVZzCld0eTcwcGQwMCs1dmdpcGE3Y05F R1RXS1RBMzZGaGZjUkFZc3RLb2JkSzlRQlJZCnp5c0pMOHBZUkhralArcUhLSmx5
Q2ErNG1hemNMbGVOOFRrN3ZMOTNOSU0KLS0tIGcvd0duODlpUC9RMGl4QkdsOGVn Uk41cGRUR3RxR1FYVHBWU3d6ZXJpcFUKLS0tIFdLclpadHV0QlRuYmJhYVZGWVc5
ZkhCUmRCZUhnWjY3K3llQUR3cVYxYWcKb6gKRIjcVksT4gdSKSvl+U3yJ9osrnVp eHRMV2o0TXhoVkcyaXZqU0tsR0o2eDQKdYwEuPeQ1fntKQKIlOlxet+SJ0rT5I1y
X9ToceiCN0DnSLRK1njH1U0LIGs5zyDE0iSejJY3Pp/6lID44Ary7A== WDpfGZUVvghx5dwdd6EMq3sQUeoFSfjrlgIAwNtHRwMC19A68ubzhQ==
-----END AGE ENCRYPTED FILE----- -----END AGE ENCRYPTED FILE-----
recipient: age197lfdanym647wdaz9uy8hrfqjwj9fs8rm7vs3fsrctceu8mr9gms2jedhz - recipient: age17pn6suvz2f7zmrm9zxj5hr0putvcvdamqxqt7ewhncgg6ccgmp2qr00xm2
- enc: | enc: |
-----BEGIN AGE ENCRYPTED FILE----- -----BEGIN AGE ENCRYPTED FILE-----
YWdlLWVuY3J5cHRpb24ub3JnL3YxCi0+IFgyNTUxOSBuRDlaZjRNSkNyV1pOZkh2 YWdlLWVuY3J5cHRpb24ub3JnL3YxCi0+IFgyNTUxOSAxUEtOZ3Zac01HTjVZVXNF
Ti9UYldsdGlVdmFnTUlvcWRVRjRZYXh6WlhNClpOVlRpU3c4T0FkTUo5MytFK21i endFNVprclpJMmh1eTA2ZmVJRTJlbjI3dEVNCjA4K2U5QWlOdkI0R3JwbVpNRWJG
RnZQVE9SYUJ3Z2g1N3RKbHh4em5ITWsKLS0tICtNNWVyYjdaYkR5dW9PejlGSmNP T0VQWS9uS2UrRVk0YU9VcGhSUkJ6S2sKLS0tIGJZY1VSM1o3QUR5Mk9vNmhsRWxr
NDFybGZZazFZa1RnV1hhclRXZS82bkUKb4ZYkZw1lQbwUQ+nz2pHvrLmKk03lEzu YURQR2kxdExKR00vYVJMVVQxekdVOE0KDkPOMeCo1MoM5R89t1rsMWR/bGIx592Z
FQOLoBer82Xvv2X12UZBKUGydGT6kenCK9Cxdp2CptnvCKQPUmhk/A== wvbVmE/El4Z0QzuvXl0XK3CFlKGuwgNw5TvtQ9QZP1aAL3yN0+T5oQ==
-----END AGE ENCRYPTED FILE----- -----END AGE ENCRYPTED FILE-----
recipient: age17pn6suvz2f7zmrm9zxj5hr0putvcvdamqxqt7ewhncgg6ccgmp2qr00xm2 - recipient: age1cnnpnglkvgw5ffv8qpgwpqvj203lh4uwt698y9mxjwklxt8nysmsa8hepn
- enc: | enc: |
-----BEGIN AGE ENCRYPTED FILE----- -----BEGIN AGE ENCRYPTED FILE-----
YWdlLWVuY3J5cHRpb24ub3JnL3YxCi0+IFgyNTUxOSA5anY1ZG9zaUo3bEozUXo2 YWdlLWVuY3J5cHRpb24ub3JnL3YxCi0+IFgyNTUxOSBQQTV1dkxMK3dxbGhiTGJG
T0hVK1dUQzVIbnZ4ZnA0dUhHQ3ZONWNoZXlNCnB1ZU1mTjYwSTdNN09KWTc2WU9N bkVQTUFOU1I4SXAyV21PdThSZFNOTTA0cmpFCkpXcmRXdlE0eVRYWWErQUxSWFN4
NUVCQkkxM2hXNFU0eEJpRU5QelN1UlUKLS0tIFF2c1lueVQzY1hsRWptR3N2UzFz bjI5bkU1NE84V1FTNVZiYUpLSnhSL2cKLS0tIFl6YmxmM1JLSlpxcDcxTnRnT1k3
RUsxTkZVRzFoelNqeDRVVDM4R3JlNnMKUvGEbBmA7hRcmeXk0zJhJGvBPWKKtgp3 M25EQU5zckVMa1VSK29iYW5PbHRJcVEK6+gstHbcPBdeRNvZa21nZB5sT1SdHWHs
Vhk7+E0zMmlzDoTcZyaeNDozzT6RGTmNS3q5h0biIutK/6FLKreWlQ== 8St5tYl5I3CxNWFgFjOrHqteRKc+ZTcj3euAJ6Wathbw0YMiA3gz0Q==
-----END AGE ENCRYPTED FILE----- -----END AGE ENCRYPTED FILE-----
recipient: age1cnnpnglkvgw5ffv8qpgwpqvj203lh4uwt698y9mxjwklxt8nysmsa8hepn - recipient: age1g68hxv73llkyc7etzh499ztcrt93pwawy0n8p93px4taqu58mehsp88vjq
- enc: | enc: |
-----BEGIN AGE ENCRYPTED FILE----- -----BEGIN AGE ENCRYPTED FILE-----
YWdlLWVuY3J5cHRpb24ub3JnL3YxCi0+IFgyNTUxOSBCZUo1ZDh6cTM0VTREMFIz YWdlLWVuY3J5cHRpb24ub3JnL3YxCi0+IFgyNTUxOSBYRGYyUGhlL2NJelZTQ1g0
OWRJNW1aL2RyKysxTDA5RVNjOHFjb2hvalNZCllYeTJjTWZONmd3RWxhdi9udTJC UEhJMFlkVmdlU1E2cGE2UHF2dytVYmhQMlIwCmdrOEZjUUFrQjMzK2FxVjF0NGY1
elFCdStNZE96Q2d3cjhiREtwb1ZnRGsKLS0tIGhoZXdpMW1Qa3Z0Yk9zU1ZmUGJj UStNT3ZXbEJlUGxzSXlBTmYwUzRIalEKLS0tIHFuWWIrTGN6eUxyNEhybHIydzRp
YlRkTWlmSE9TNWNmMkNmbHJEWEFrNXcKxwFWZ1qtfudrjB4pxHW0wmBsmpKAvQSm cUFid1RwRXA4cExWd3poK2hEaVd5Q00KjjiEiQw2OxcGv/qDudLmbM6aysYhLTxi
q9t7SiFKqRPZKEPqDQo3G+xoXsjt0nC0iKKikYF5XcFHHXWFb5sepA== Qjmh133pyznFs+pLVLdYnId42zvojAeuJD9cJYxuwwgPA2ZlKdSVrg==
-----END AGE ENCRYPTED FILE----- -----END AGE ENCRYPTED FILE-----
recipient: age1g68hxv73llkyc7etzh499ztcrt93pwawy0n8p93px4taqu58mehsp88vjq - recipient: age1awytvphvty4f9wmdn86xnjg9kgetqjx8qlwj5d2882t4fyyzy58s3vg5k4
- enc: | enc: |
-----BEGIN AGE ENCRYPTED FILE----- -----BEGIN AGE ENCRYPTED FILE-----
YWdlLWVuY3J5cHRpb24ub3JnL3YxCi0+IFgyNTUxOSBQVEczOHNXaVdzdExpWnRQ YWdlLWVuY3J5cHRpb24ub3JnL3YxCi0+IFgyNTUxOSBRbUs1Qm1hUnJldDNZNUR0
bElRbGpHdm90Z2FxRWNkanBjbVJFbHFQWmlNCjNhZFNMa25kTGVCcEFWeXV1Vnlv N3d0YXp5NWtjV0xvc1ZrM3ArZllIbmJtRXpnCnp2TVRyQVFqNC9kWXpBa0NnbW9X
TytRbklGRkNENEtaeDMxN0t0NGp6SjQKLS0tIG9YNWhPWjhWd2VXWlNUaGhuVWpi VVFONnNleG9wN2IwdkhSWjBObmVGd3cKLS0tIHVDVmVNazdLWUpOQVlTNFRwL1c5
dE9EUTNVaTgyMWFNZ3FzOUhFUHZmeHMKuiICVTlhhHOAqr+t2g8VEWmjQ7OEr6x/ bkdsaXNINEZpZjdMdHAwdElpWFQ0aW8K0guO/BF8hp1LDToVBFY5JKdz8WXOwK2P
1FOEAjGif5qrYK2JAkYRCTz6DnxZRcpWCgc51lvrbjVtP9ehLHdhAg== prGKdxPsTAfW8xTq97LHHRsLC7+4TVXnjF4LS4SM8EXIX9KCl5FIGA==
-----END AGE ENCRYPTED FILE----- -----END AGE ENCRYPTED FILE-----
recipient: age1awytvphvty4f9wmdn86xnjg9kgetqjx8qlwj5d2882t4fyyzy58s3vg5k4 - recipient: age1erkn7dd022e90ktyj66aux9j9xvl0uzd6ru5cmrjsvcm5rtr5pfs7q6k9h
- enc: | enc: |
-----BEGIN AGE ENCRYPTED FILE----- -----BEGIN AGE ENCRYPTED FILE-----
YWdlLWVuY3J5cHRpb24ub3JnL3YxCi0+IFgyNTUxOSAybWd4SnU0N1ZPZ3JJUkFr YWdlLWVuY3J5cHRpb24ub3JnL3YxCi0+IFgyNTUxOSB4ZEVtVzM0dFhJYWd5UXZO
MUl2ejVRUGZ6eGU1Q1NVZktuOXcwUlBpakNJCkdwaEtPYzlqSlN3WU5zYVB2QVB0 ajIzSFp1VENuSjlaYSs4ZUdBSS90aEoyM25JCnhrd0lyUVN0dEV5a2tQUjZwSlFx
aDZVOWpCOGppeU1lYUJhVS95bFVUbHcKLS0tIFJNRzc3VStlblRmYXZma1MzY01p eVlLT1kyejhuZDdGeHpDQnRMTllCSHMKLS0tIHZVS1JDVzBaaG1Oend1eDFiT1F4
RzlZNFg5d2tVTVoxbDA1RStjMk9JYkkKf09NyGYpu/LszVrIXVpRzmFFkY3L4wmH NU1vREt6SXBWYU1xdW1JSm1uUGZQRVEKtaDeDNo817rXXoMkBHo0MZWtm4LayqwC
3b7Iev9HCVTzcRqxUpXXcL8pRKjLEOAI+HcFZUQiBmD4+xOCYMfuGw== NN8vbhGcgT+M+ehnmZ1HdPk8VWRvlQ+SMpG+a6DjK8BjYtAWcO16RQ==
-----END AGE ENCRYPTED FILE----- -----END AGE ENCRYPTED FILE-----
recipient: age1erkn7dd022e90ktyj66aux9j9xvl0uzd6ru5cmrjsvcm5rtr5pfs7q6k9h - recipient: age16crkeglm3j3f6rveylytuerptjf9mwtv3hl89ywkmnnvdkntfchsuvrsk5
- enc: | enc: |
-----BEGIN AGE ENCRYPTED FILE----- -----BEGIN AGE ENCRYPTED FILE-----
YWdlLWVuY3J5cHRpb24ub3JnL3YxCi0+IFgyNTUxOSBwUGZOM1U1NlEzL0N0VjBM YWdlLWVuY3J5cHRpb24ub3JnL3YxCi0+IFgyNTUxOSB6eUFYSC82YVM1WVEwc2Fz
TFJpUTJuNmtEMUxTZno4M2dUVkZVZGdNeEFvCmQ3Q21vM0xoSnFuUTIwNFZGUjJz aEl3TG5oOFU5MUFhQ0JhbC9yRVYxOFo0bUVJCnpwQzMyZmN4ZTlNVW5pZTY5bkdY
bTlBUzhKZ2FZYVJMSjdzT3R5WmxzRncKLS0tIDNVYlUvM29sMFdIaGhwSkJUOG81 bjhaSnFxS0Vrb3pHTlJkWjVvczBSOG8KLS0tIHlsbjhxODdvcnd4c21aWUNpK01M
L2ExYktQVkw3WU9pYk9haktKd3R1UW8Kuqh/4fmHmBNJKkotCau2gTHx+CEj7L0f ZW1hTUFtVE15QzVIVU93ZExlUWZjYzAKUZj+/NtMHCPjFFqbJ/8b2ASljV6GEk6p
HuRVxbC8smhRNhM7x8jRJ0ui/SF05A4qwvC/LMv6P3W7W42bCRxErQ== FbqV9LezRZrfl9GXBVUpB4Oeb9v2yp151aSda07/AG5YO0/jRAV/Bg==
-----END AGE ENCRYPTED FILE----- -----END AGE ENCRYPTED FILE-----
recipient: age16crkeglm3j3f6rveylytuerptjf9mwtv3hl89ywkmnnvdkntfchsuvrsk5 - recipient: age1tkywsvddjj6r6ukuqgz9aql92jfx85rz57dhmkkndysh6yx6p5rs0zj0qr
- enc: | enc: |
-----BEGIN AGE ENCRYPTED FILE----- -----BEGIN AGE ENCRYPTED FILE-----
YWdlLWVuY3J5cHRpb24ub3JnL3YxCi0+IFgyNTUxOSBUMzdDa2ROL0h3MExRY2tp YWdlLWVuY3J5cHRpb24ub3JnL3YxCi0+IFgyNTUxOSBxdjFYN01HcXZMNVBJckVm
RGM0cmdXMlhGSDFob1FycVVHN0ozUTBudjM0ClF4a2JQT3pNbmZKL1BCNC95R0lm eklKZHAxeWgvVlcwWk9yWUJpcFFBUnpUV0FZCi85dGE2L3d3OS9CdW5sL0pZTTM2
Q0VOdUI4Z0hHcEpwREE0NW02QVVRbzAKLS0tIFVqbFBVNDJ3eTBsZFNNSEpDak1y SFJkcUN0emh6S3hMenhCcXBhNWF6eVUKLS0tIExwNEVyRmpGRXRLMjgxY1dqbkxQ
c2h6eWxKN3FramxGNGZsRlcrL1VpUnMK4nUJnjktSe94uGXGU/aw/SP5X/EPiQjz bk04K1luNnJVTjZQY25KRXNSVG0venMK7uM4tqqmq/o4QgMlE/x/FXkQsPRkofNO
97j0nMDIc1cxnh0oB7dK9xq4s1LpBOJWGCUSVkBYU9pAWgcQVtHOSg== I6C93RYgp1OcGPH14Kmp5lXtK4/pdToaRnVXPGenDQJsFhwWCEI+Fg==
-----END AGE ENCRYPTED FILE----- -----END AGE ENCRYPTED FILE-----
recipient: age1tkywsvddjj6r6ukuqgz9aql92jfx85rz57dhmkkndysh6yx6p5rs0zj0qr - recipient: age17p69ktg7yfzgdsk00f32mupe4n4fevdpw2wsv7ft30yvpeseau6s7t0zdg
- enc: | enc: |
-----BEGIN AGE ENCRYPTED FILE----- -----BEGIN AGE ENCRYPTED FILE-----
YWdlLWVuY3J5cHRpb24ub3JnL3YxCi0+IFgyNTUxOSBxKzhoOEVjdkNBaUl5dW1i YWdlLWVuY3J5cHRpb24ub3JnL3YxCi0+IFgyNTUxOSBsOTFXaHE0SDRCTnE4di9N
aktGWm9ZTDNTWGcvK2xJZDVMMk44S0UrdG5ZCjV0WUw2YndHdXM2b1lCSGhxbHRn S2JIbHF2a1pzNzU4UFIvQmpZMVpOUjJqd0RJClVxcTd3d05aRDN1RGVmWVpQS2lI
TEM5cVRHZXQzS2poeWZ4azVlWXNqVzAKLS0tIDRSV2hEWGMwa1FXOG1jaGwxR2Y5 L1RVU3FUM3d4SU9pYXlwSko2RW5uWjgKLS0tIEplR1l1bGlad3p1ZkNBbFY3YmlM
Z1h1R3hVMWc1WmVRSENtekdhOVhMWlkKPxcztky7YjMEcMMvjis52VsS6OyxqT5r dUpXZis2N2VyN0ZFbjlPRXdwRFQ1aHMKm1Mk6MPKxFmwdATCYUANRSY5rHKgmQer
WHZ4l41AZQZg59QYvA29L8G2YWJHnOHKd83LsFw627/eR2c2pAHS9w== LBlqqWKt1JiIUAYtazQeQ6KYxmjVlQPY7AZw2t+EhBEPrqbTL3vOiw==
-----END AGE ENCRYPTED FILE----- -----END AGE ENCRYPTED FILE-----
recipient: age17p69ktg7yfzgdsk00f32mupe4n4fevdpw2wsv7ft30yvpeseau6s7t0zdg lastmodified: "2026-05-01T13:20:34Z"
- enc: | mac: ENC[AES256_GCM,data:OueL0eHYmFKWfSyCZxburRJ2FS1xkowx7ha/Zv7r++26D85GSHDeIL9HdfByI5a1OhH90rH3WLxZrJgT3FiwBw27HhhHtS7Fs6MBFvTuPmSA7ZtMeGMWBRVjwbGAWN17BZAhJzMlZHq2nPX0xXIKT0HuTLVRPLuVCSlvDzMXsTE=,iv:+JN4Vzs8o8PJAam/uKBbUXt3ArxC88D6xR7rMeeGglg=,tag:S+OtbxLhVKFnqBZtyKDGyA==,type:str]
-----BEGIN AGE ENCRYPTED FILE-----
YWdlLWVuY3J5cHRpb24ub3JnL3YxCi0+IFgyNTUxOSBMclFDR0wxNm0xYUNydE43
VjkrREZGWFk5Si9MYjY4ZU1JVW1kT2VwZG0wCmdJT3ZoOGRxd3lqUGdPUG1sa25W
RjZ1Ymc3RGFEaEZoNnY4NmV4TGYzaWsKLS0tIEcwdDl2aWtyWTNsa1F6bzg3Vmx4
MEV0cnJoWVcxVktwY05yUUNvbGNpZlEK2LbBLBooezdoNvUCwjGNp5TbAl5duIP8
QUd0alW52eTCpVBWsXU2JbXIwfc3HY7fl2dbPgD38mcCsoFBQ3hH7w==
-----END AGE ENCRYPTED FILE-----
recipient: age1ztuc996dapd7gpw5g7t4k3e9egv3dj6czxyslhnwula97w3cuytqlgzru0
lastmodified: "2026-06-13T23:40:11Z"
mac: ENC[AES256_GCM,data:a4PQgcTV86va1Ht4ZyG40XGEbV+P5bwgSIWmnaqTKHaRSQTvmUhRzwU7VSCPwNhOr2FqeGWpSl6QcI8p/RrthP1s43FwNo57T+3ZEjLB+AjywLENDu64wv9RFVK+mYSPzUsZwq2X98Lq6ygmHLHohDJFhZIDjq+WqYB4m2gf3uQ=,iv:ZdgwbsKscihqApFz8BSvW673UJsJAjPWPFPSN0xKRSA=,tag:vGa7CV6yXWRmpSMsW0yQkw==,type:str]
unencrypted_suffix: _unencrypted unencrypted_suffix: _unencrypted
version: 3.13.1 version: 3.12.2
+1 -1
View File
@@ -20,7 +20,7 @@ in {
}; };
config = mkIf cfg.enable { config = mkIf cfg.enable {
mySystem.users.phundrak = mkIf config.mySystem.users.phundrak.enable { mySystem.users.phundrak = mkIf cfg.mySystem.users.phundrak.enable {
extraGroups = ["docker"] ++ lists.optional cfg.podman.enable "podman"; extraGroups = ["docker"] ++ lists.optional cfg.podman.enable "podman";
}; };
environment.systemPackages = with pkgs; environment.systemPackages = with pkgs;
+2
View File
@@ -8,6 +8,7 @@ with lib; let
in { in {
imports = [ imports = [
./caelestia.nix ./caelestia.nix
./eww.nix
./firefox.nix ./firefox.nix
./hyprland.nix ./hyprland.nix
./kdeconnect.nix ./kdeconnect.nix
@@ -25,6 +26,7 @@ in {
options.home.desktop.fullDesktop = mkEnableOption "Enable options for graphical environments"; options.home.desktop.fullDesktop = mkEnableOption "Enable options for graphical environments";
config.home.desktop = { config.home.desktop = {
eww.enable = mkDefault cfg.fullDesktop;
firefox.enable = mkDefault cfg.fullDesktop; firefox.enable = mkDefault cfg.fullDesktop;
hyprland.enable = mkDefault cfg.fullDesktop; hyprland.enable = mkDefault cfg.fullDesktop;
kdeconnect.enable = mkDefault cfg.fullDesktop; kdeconnect.enable = mkDefault cfg.fullDesktop;
+12
View File
@@ -0,0 +1,12 @@
(defwindow example
:monitor 0
:geometry (geometry :x "0%"
:y "20%"
:width "90%"
:height "30px"
:anchor "top center")
:stacking "fg"
:reserve (struts :distance "40px" :side "top")
:windowtype "dock"
:wm-ignore false
"example content")
+14
View File
@@ -0,0 +1,14 @@
{
lib,
config,
...
}:
with lib; let
cfg = config.home.desktop.eww;
in {
options.home.desktop.eww.enable = mkEnableOption "Enable eww support";
config.programs.eww = mkIf cfg.enable {
inherit (cfg) enable;
configDir = ./eww-config;
};
}
+7 -4
View File
@@ -47,7 +47,7 @@ in {
services.blueman-applet.enable = ! caelestiaEnabled; services.blueman-applet.enable = ! caelestiaEnabled;
wayland.windowManager.hyprland = { wayland.windowManager.hyprland = {
enable = true; enable = true;
systemd.enable = true; systemd.enable = false;
importantPrefixes = ["$left" "$right" "$up" "$down" "$menu"]; importantPrefixes = ["$left" "$right" "$up" "$down" "$menu"];
settings = { settings = {
env = [ env = [
@@ -69,8 +69,8 @@ in {
monitor = monitor =
{ {
"marpa" = [ "marpa" = [
"DP-1, 3440x1440@144, 1080x550, 1" # "DP-1, 3440x1440@144, 1080x550, 1"
# "DP-1, 2560x1440@144, 1080x550, 1" # streaming "DP-1, 2560x1440@144, 1080x550, 1" # streaming
"DP-2, 2560x1080@60, 0x0, 1, transform, 1" "DP-2, 2560x1080@60, 0x0, 1, transform, 1"
]; ];
"gampo" = []; "gampo" = [];
@@ -106,7 +106,10 @@ in {
"workspaces, 1, 6, default" "workspaces, 1, 6, default"
]; ];
}; };
dwindle.preserve_split = true; dwindle = {
pseudotile = true;
preserve_split = true;
};
exec-once = exec-once =
[ [
"pactl load-module module-switch-on-connect" "pactl load-module module-switch-on-connect"
+2 -3
View File
@@ -2,6 +2,7 @@
config, config,
lib, lib,
pkgs, pkgs,
inputs,
... ...
}: }:
with lib; let with lib; let
@@ -11,7 +12,6 @@ in {
imports = [ imports = [
./claude.nix ./claude.nix
./ollama.nix ./ollama.nix
./opencode.nix
]; ];
options.home.dev.ai = { options.home.dev.ai = {
@@ -29,9 +29,8 @@ in {
mcpServers = mkDefault cfg.mcpServers; mcpServers = mkDefault cfg.mcpServers;
}; };
ollama.enable = mkDefault cfg.enable; ollama.enable = mkDefault cfg.enable;
opencode.enable = mkDefault cfg.enable;
}; };
packages = [pkgs.lmstudio]; packages = [pkgs.lmstudio pkgs.opencode];
}; };
programs.mcp = mkIf (cfg.mcpServers != {}) { programs.mcp = mkIf (cfg.mcpServers != {}) {
enable = true; enable = true;
-85
View File
@@ -1,85 +0,0 @@
{
config,
lib,
inputs,
pkgs,
...
}:
with lib; let
inherit (pkgs.stdenv.hostPlatform) system;
cfg = config.home.dev.ai.opencode;
defaultPackageCli = inputs.opencode.packages.${system}.opencode;
defaultPackageDesktop = inputs.opencode.packages.${system}.desktop;
corsList = domains: lists.remove "" (lists.forEach (strings.splitString "," domains) trim);
in {
options.home.dev.ai.opencode = {
enable = mkEnableOption "Enables OpenCode";
package = mkOption {
type = types.package;
default = defaultPackageCli;
description = "The CLI package for OpenCode";
};
settings = mkOption {
type = types.json;
default = {};
};
tui = mkOption {
type = types.json;
default = {};
};
desktop = {
enable = mkEnableOption "Enables the desktop app";
package = mkOption {
type = types.package;
default = defaultPackageDesktop;
description = "The desktop package for OpenCode";
};
};
web = {
enable = mkEnableOption "Enables OpenCode web";
extraArgs = mkOption {
type = types.listOf types.str;
default = [];
example = [
"--hostname"
"0.0.0.0"
];
};
cors = mkOption {
type = types.nullOr (types.either types.str types.path);
default = null;
example = "opencode.example.com,code.example.com";
description = ''
Either a string containing the domain allowed to connect to OpenCodes web instance, or a file containing the target value. The latter is useful when using secret management if you dont want to publicize the hostname of your OpenCode instance.
If you want to use multiple domains, you can separate them with a comma.
'';
};
mdns = {
enable = mkEnableOption "Enables mDNS with OpenCode";
hostname = mkOption {
type = types.nullOr types.str;
default = null;
example = "opencode.local";
};
};
};
};
config.programs.opencode = mkIf cfg.enable {
inherit (cfg) enable tui;
enableMcpIntegration = true;
extraPackages = with pkgs; [uv];
settings =
{
server = mkIf cfg.web.mdns.enable {
mdns = true;
mdnsDomain = mkIf (cfg.web.mdns.hostname != null) cfg.web.mdns.hostname;
cors = corsList cfg.web.cors;
};
}
// cfg.settings;
web = {
inherit (cfg.web) enable extraArgs;
};
};
}
-2
View File
@@ -12,7 +12,6 @@ in {
./mpd-mpris.nix ./mpd-mpris.nix
./mpv.nix ./mpv.nix
./ncmpcpp.nix ./ncmpcpp.nix
./streamlink.nix
]; ];
options.home.media.fullDesktop = mkEnableOption "Enables everything"; options.home.media.fullDesktop = mkEnableOption "Enables everything";
@@ -21,6 +20,5 @@ in {
mpd.enable = mkDefault (cfg.fullDesktop or cfg.mpd-mpris.enable); mpd.enable = mkDefault (cfg.fullDesktop or cfg.mpd-mpris.enable);
mpv.enable = mkDefault cfg.fullDesktop; mpv.enable = mkDefault cfg.fullDesktop;
ncmpcpp.enable = mkDefault config.home.media.mpd.enable; ncmpcpp.enable = mkDefault config.home.media.mpd.enable;
streamlink.enable = mkDefault config.home.media.mpv.enable;
}; };
} }
-17
View File
@@ -1,17 +0,0 @@
{
lib,
config,
pkgs,
...
}:
with lib; let
cfg = config.home.media.streamlink;
in {
options.home.media.streamlink.enable = mkEnableOption "Enable Streamlink";
config.programs.streamlink = mkIf cfg.enable {
enable = true;
settings = {
player = "${pkgs.mpv}/bin/mpv";
};
};
}
-56
View File
@@ -1,56 +0,0 @@
{config, lib, ...}: {
home.dev.ai = {
enable = lib.mkDefault true;
opencode = {
tui = {
mouse = true;
theme = "nord";
attention = {
enabled = true;
notifications = true;
};
keybinds = {
leader = "ctrl+x";
"command_list" = "<leader><leader>";
};
};
settings = {
autoupdate = false;
provider = {
ollama = {
name = "Ollama (marpa)";
options.baseURL = "http://marpa:11434";
};
models = {
"qwen3.5:9b".name = "Qwen 3.5 Medium";
"gemma4:e4b".name = "Gemma E4B";
"qwen2.5-coder:1.5b-base".name = "Qwen 2.5 Coder Light";
};
};
permission = {
"*" = "ask";
glob = "allow";
grep = "allow";
skill = "allow";
question = "allow";
read = {
"*" = "allow";
"*.env" = "deny";
"*.env.*" = "deny";
"*.env.example" = "allow";
};
"doom_loop" = "deny";
};
formatter.nixfmt = {
command = ["nix" "fmt" "$FILE"];
extensions = [".nix"];
};
};
web = {
enable = true;
cors = config.sops.secrets."opencode/cors".path;
mdns.enable = true;
};
};
};
}
+5 -17
View File
@@ -1,4 +1,4 @@
{pkgs, ...}: { {
config.home.desktop.firefox = { config.home.desktop.firefox = {
enable = true; enable = true;
useZen = true; useZen = true;
@@ -13,16 +13,6 @@
smothscroll = "true"; smothscroll = "true";
}; };
extraConfig = '' extraConfig = ''
command openTwitchInMpv js -d@\
const url = new URL(document.location.href);\
const cleanUrl = url.hostname + url.pathname;\
const token = document.cookie.split("; ")\
.find(item => item.startsWith("auth-token="))?.split("=")[1];\
const auth = "--twitch-api-header=Authorization=OAuth " + token;\
const cmd = `${pkgs.streamlink}/bin/streamlink "''${auth}" "''${cleanUrl}" best`;\
tri.native.run(cmd)\
@
unbind h unbind h
unbind j unbind j
unbind k unbind k
@@ -66,11 +56,10 @@
" tabopen was on t move to j (bépo's 'find char to' position) " tabopen was on t move to j (bépo's 'find char to' position)
bind j fillcmdline tabopen bind j fillcmdline tabopen
unbind ^http(s?)://(www\.)?youtube\.com c unbind ^http(s?)://youtube\.com f
unbind ^http(s?)://(www\.)?youtube\.com f unbind ^http(s?)://youtube\.com t
unbind ^http(s?)://(www\.)?youtube\.com t unbind ^http(s?)://youtube\.com l
unbind ^http(s?)://(www\.)?youtube\.com l unbind ^http(s?)://youtube\.com j
unbind ^http(s?)://(www\.)?youtube\.com j
unbind ^http(s?)://twitch\.tv f unbind ^http(s?)://twitch\.tv f
bind n findnext bind n findnext
@@ -80,7 +69,6 @@
bind < urlincrement -1 bind < urlincrement -1
bind > urlincrement 1 bind > urlincrement 1
bind ypt openTwitchInMpv
bind ypv js tri.native.run(`mpv --ytdl-format="[height >=? 480]" --ontop --fs "''${document.location.href}"`) bind ypv js tri.native.run(`mpv --ytdl-format="[height >=? 480]" --ontop --fs "''${document.location.href}"`)
bind ypm hint -JF e => tri.native.run(`mpv --ytdl-format="[height >=? 480]" --ontop --fs "''${e.href}"`) bind ypm hint -JF e => tri.native.run(`mpv --ytdl-format="[height >=? 480]" --ontop --fs "''${e.href}"`)
''; '';
+1 -2
View File
@@ -5,7 +5,6 @@
... ...
}: { }: {
imports = [ imports = [
./ai.nix
./light-home.nix ./light-home.nix
./packages.nix ./packages.nix
./email.nix ./email.nix
@@ -57,7 +56,6 @@
emailPassword = {}; emailPassword = {};
"mopidy/bandcamp" = {}; "mopidy/bandcamp" = {};
"mopidy/spotify" = {}; "mopidy/spotify" = {};
"opencode/cors" = {};
}; };
home = { home = {
@@ -88,6 +86,7 @@
}; };
}; };
dev = { dev = {
ai.claude.enable = true;
editors.emacs.package = emacsPackage; editors.emacs.package = emacsPackage;
vcs.jj.signing.enable = true; vcs.jj.signing.enable = true;
}; };
-14
View File
@@ -1,14 +0,0 @@
{config, ...}: {
import = [../home.nix];
home = {
cli.nh.flake = "${config.home.homeDirectory}/.dotfiles";
desktop.hyprland.enable = false;
phundrak.sshKey.content = builtins.readFile ../keys/id_steamdeck.pub;
dev.ai = {
enable = true;
ollama.enable = false;
};
stateVersion = "25.11";
};
programs.caelestia.enable = false;
}
-1
View File
@@ -1 +0,0 @@
ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIJkXdss1nRdBcl/8bjDssPaS68ozWw8sP98OsO+7iqi1 lucien@phundrak.com
+2 -6
View File
@@ -10,10 +10,6 @@ in {
imports = [../modules ./zellij.nix]; imports = [../modules ./zellij.nix];
options.home.phundrak = { options.home.phundrak = {
username = mkOption {
default = "phundrak";
type = types.str;
};
sshKey = { sshKey = {
content = mkOption { content = mkOption {
type = types.nullOr types.str; type = types.nullOr types.str;
@@ -45,8 +41,8 @@ in {
}; };
home = { home = {
username = cfg.username; username = "phundrak";
homeDirectory = "/home/${cfg.username}"; homeDirectory = "/home/phundrak";
packages = [pkgs.tree pkgs.ncdu]; packages = [pkgs.tree pkgs.ncdu];
preferXdgDirectories = true; preferXdgDirectories = true;
+2 -1
View File
@@ -7,6 +7,7 @@
with lib; let with lib; let
inherit (pkgs.stdenv.hostPlatform) system; inherit (pkgs.stdenv.hostPlatform) system;
handy = pkgs.callPackage ../../packages/handy.nix {}; handy = pkgs.callPackage ../../packages/handy.nix {};
inkdrop = pkgs.callPackage ../../packages/inkdrop.nix {};
pumo-system-info = inputs.pumo-system-info.packages.${system}.default; pumo-system-info = inputs.pumo-system-info.packages.${system}.default;
in { in {
programs.bun.enable = true; programs.bun.enable = true;
@@ -49,7 +50,6 @@ in {
scrcpy scrcpy
syncthing syncthing
watchmate watchmate
chatterino7
# Games # Games
atlauncher atlauncher
@@ -70,6 +70,7 @@ in {
# Dev # Dev
dbeaver-bin dbeaver-bin
devenv devenv
inkdrop
nodejs nodejs
sqlite sqlite
tectonic # better LaTeX engine tectonic # better LaTeX engine