76 lines
2.3 KiB
Nix
76 lines
2.3 KiB
Nix
{
|
|
description = "Home Manager configuration of Joe Frikker";
|
|
|
|
inputs = {
|
|
# Specify the source of Home Manager and Nixpkgs.
|
|
nixpkgs.url = "github:nixos/nixpkgs/nixos-25.11";
|
|
home-manager = {
|
|
url = "github:nix-community/home-manager/release-25.11";
|
|
inputs.nixpkgs.follows = "nixpkgs";
|
|
};
|
|
kube = {
|
|
url = "https://gitea.home-frikker.dedyn.io/jfrikker/kube/archive/1.0.1.tar.gz";
|
|
inputs.nixpkgs.follows = "nixpkgs";
|
|
};
|
|
};
|
|
|
|
outputs = { nixpkgs, home-manager, kube, ... }:
|
|
let modules-for-system = pkgs: pkgs.stdenv.mkDerivation {
|
|
name = "home-manager-modules";
|
|
src = pkgs.lib.fileset.toSource {
|
|
root = ./.;
|
|
fileset = pkgs.lib.fileset.unions [
|
|
./home.org
|
|
];
|
|
};
|
|
|
|
buildPhase = ''
|
|
runHook preBuild
|
|
${pkgs.emacs}/bin/emacs --batch --eval "(require 'org)" --eval '(org-babel-tangle-file "home.org")'
|
|
runHook postBuild
|
|
'';
|
|
installPhase = ''
|
|
runHook preInstall
|
|
cp -R target $out
|
|
runHook postInstall
|
|
'';
|
|
};
|
|
in {
|
|
homeConfigurations.shibumi =
|
|
let pkgs = nixpkgs.legacyPackages.aarch64-darwin;
|
|
modules = modules-for-system pkgs;
|
|
in home-manager.lib.homeManagerConfiguration {
|
|
inherit pkgs;
|
|
|
|
modules = [
|
|
"${modules}/home.nix"
|
|
{
|
|
home.stateVersion = "22.05";
|
|
home.username = "jfrikker";
|
|
home.homeDirectory = "/Users/jfrikker";
|
|
home.packages = [ pkgs.pinentry_mac ];
|
|
}
|
|
];
|
|
|
|
extraSpecialArgs = { kube = kube.packages.aarch64-darwin.default; };
|
|
};
|
|
homeConfigurations.home =
|
|
let pkgs = nixpkgs.legacyPackages.x86_64-linux;
|
|
modules = modules-for-system pkgs;
|
|
in home-manager.lib.homeManagerConfiguration {
|
|
inherit pkgs;
|
|
|
|
modules = [
|
|
"${modules}/home.nix"
|
|
{
|
|
home.stateVersion = "22.05";
|
|
home.username = "jfrikker";
|
|
home.homeDirectory = "/home/jfrikker";
|
|
}
|
|
];
|
|
|
|
extraSpecialArgs = { kube = kube.packages.x86_64-linux.default; };
|
|
};
|
|
};
|
|
}
|