49 lines
1.3 KiB
Nix
49 lines
1.3 KiB
Nix
{ config, lib, pkgs, ... }:
|
|
|
|
{
|
|
# Workaround for nix-community/home-manager#2333
|
|
disabledModules = [ "config/i18n.nix" ];
|
|
|
|
imports = [
|
|
../packages/organize-downloads.nix
|
|
./components/applications.nix
|
|
./components/browser.nix
|
|
./components/desktop.nix
|
|
./components/editor.nix
|
|
./components/fonts.nix
|
|
./components/git.nix
|
|
./components/openpgp.nix
|
|
./components/shell.nix
|
|
./components/spelling.nix
|
|
./components/terminal.nix
|
|
./local/home.nix
|
|
];
|
|
|
|
# Pending NixOS/nixpkgs#55674
|
|
options.allowedUnfree = lib.mkOption { type = lib.types.listOf lib.types.str; default = [ ]; };
|
|
|
|
options.host = {
|
|
background = lib.mkOption { type = lib.types.str; };
|
|
firefoxProfile = lib.mkOption { type = lib.types.str; };
|
|
local = lib.mkOption { type = lib.types.path; };
|
|
};
|
|
|
|
config = {
|
|
nixpkgs.overlays = [ (import ./packages.nix) ];
|
|
|
|
# Nix
|
|
nixpkgs.config.allowUnfreePredicate = p: builtins.elem (lib.getName p) config.allowedUnfree; # Pending NixOS/nixpkgs#55674
|
|
|
|
# Home manager
|
|
programs.home-manager.enable = true;
|
|
manual.html.enable = true;
|
|
home.activation.diff = lib.hm.dag.entryAnywhere ''
|
|
${pkgs.nvd}/bin/nvd diff "$oldGenPath" "$newGenPath"
|
|
'';
|
|
|
|
# User
|
|
home.username = "ak";
|
|
home.homeDirectory = "/home/ak";
|
|
home.file.".face".source = ./resources/andrew.jpg;
|
|
};
|
|
}
|