Refactor using flake-parts (#4)

Reviewed-on: https://git.earth2077.fr/leana/.files/pulls/4
Co-authored-by: Léana 江 <leana.jiang@icloud.com>
Co-committed-by: Léana 江 <leana.jiang@icloud.com>
This commit is contained in:
Léana 江 2024-05-02 17:03:36 +00:00 committed by Léana 江
parent 06f76e0a37
commit db5aaa5811
17 changed files with 343 additions and 294 deletions

View file

@ -1,63 +1,26 @@
{
outputs =
inputs:
let
inherit (import ./nix/lib.nix inputs)
mkNixOSes
mkDarwins
mkHomeManagers
myPkgs
myLib
formatter
;
(inputs.flake-parts.lib.mkFlake { inherit inputs; } {
systems = [
"aarch64-darwin"
"aarch64-linux"
"x86_64-darwin"
"x86_64-linux"
];
darwinConfigurations = mkDarwins {
# MacBook Pro 2021
bismuth = {
system = "aarch64-darwin";
settings = {
extraLanguageServers.enable = true;
extraUtils.enable = true;
cmus.enable = true;
universityTools.enable = true;
git.signCommits = true;
};
};
# MacBook Air 2014
tungsten = {
system = "x86_64-darwin";
settings.cmus.enable = true;
};
};
imports = [
./nix/handleInputs # Resolve inputs
./nix/custom # Custom package set
./nix/lib # Configuration and their generators
];
homeConfigurations = mkHomeManagers {
# Raspberry Pi 4
hydrogen.system = "aarch64-linux";
# Oracle cloud
oracle.system = "aarch64-linux";
# Linode
linode.system = "x86_64-linux";
};
nixosConfigurations = mkNixOSes {
# Thinkpad
carbon = {
system = "x86_64-linux";
settings = {
extraLanguageServers.enable = true;
extraUtils.enable = true;
cmus.enable = true;
universityTools.enable = true;
};
perSystem =
{ pkgs, ... }:
{
formatter = pkgs.unstable.nixfmt-rfc-style;
};
};
in
{
inherit nixosConfigurations homeConfigurations darwinConfigurations;
}
// formatter
// myPkgs
// myLib;
});
inputs = {
# package sets
@ -73,6 +36,7 @@
inputs.nixpkgs.follows = "nixpkgs";
};
flake-utils.url = "github:numtide/flake-utils";
flake-parts.url = "github:hercules-ci/flake-parts";
# packages
wired.url = "github:Toqozz/wired-notify";
agenix.url = "github:ryantm/agenix/0.15.0";