mirror of
https://github.com/willemml/dotfiles.nix.git
synced 2025-04-12 11:17:17 +00:00
Fix home configurations.
This commit is contained in:
parent
91f6d83bcd
commit
919b042656
13 changed files with 54 additions and 40 deletions
|
@ -5,20 +5,16 @@
|
|||
|
||||
# https://github.com/terlar/nix-config/blob/00c8a3622e8bc4cb522bbf335e6ede04ca07da40/flake-parts/home-manager/modules.nix
|
||||
|
||||
{
|
||||
lib,
|
||||
self,
|
||||
inputs,
|
||||
...
|
||||
{ lib
|
||||
, self
|
||||
, inputs
|
||||
, ...
|
||||
}: {
|
||||
flake.homeManagerModules = let
|
||||
modules = self.lib.importDirToAttrs ../../home-manager/modules;
|
||||
in
|
||||
flake.homeManagerModules =
|
||||
let
|
||||
modules = self.lib.importDirToAttrs ../../home-manager/modules;
|
||||
in
|
||||
{
|
||||
default = {
|
||||
imports = builtins.attrValues modules;
|
||||
};
|
||||
|
||||
nixpkgs-useFlakeNixpkgs = {
|
||||
home.sessionVariables.NIX_PATH = "nixpkgs=${inputs.nixpkgs}";
|
||||
systemd.user.sessionVariables.NIX_PATH = lib.mkForce "nixpkgs=${inputs.nixpkgs}";
|
||||
|
|
|
@ -1,26 +1,38 @@
|
|||
{ inputs, self, lib, ... }:
|
||||
{
|
||||
perSystem = { pkgs, ... }:
|
||||
let
|
||||
activationPackages = builtins.mapAttrs (_: lib.getAttr "activationPackage") self.homeConfigurations;
|
||||
in
|
||||
{
|
||||
flake = {
|
||||
homeManagerModules.nixpkgsConfig = {
|
||||
nixpkgs.config.allowUnfreePredicate = lib.const true;
|
||||
nixpkgs.config.packageOverrides = pkgs: {
|
||||
nur = import inputs.nur { inherit pkgs; nurpkgs = pkgs; };
|
||||
};
|
||||
nixpkgs.config.allowUnsupportedSystem = true;
|
||||
nixpkgs.overlays = builtins.attrValues self.overlays;
|
||||
};
|
||||
testOutput = builtins.attrValues self.overlays;
|
||||
};
|
||||
perSystem = { pkgs, self', ... }:
|
||||
rec {
|
||||
homeConfigurations.willem = inputs.home-manager.lib.homeManagerConfiguration {
|
||||
inherit pkgs;
|
||||
modules = [
|
||||
self.homeManagerModules.nixpkgs-useFlakeNixpkgs
|
||||
self.homeManagerModules.nixpkgsConfig
|
||||
self.homeManagerModules.profiles-user-willem
|
||||
];
|
||||
extraSpecialArgs = {
|
||||
inherit pkgs;
|
||||
nurNoPkgs = import inputs.nur {
|
||||
nurpkgs = pkgs;
|
||||
pkgs = throw "nixpkgs eval";
|
||||
};
|
||||
};
|
||||
};
|
||||
# packages = lib.pipe activationPackages [
|
||||
# (lib.filterAttrs (_: drv: pkgs.system == drv.system))
|
||||
# (lib.mapAttrs' (username: lib.nameValuePair "home-${username}"))
|
||||
# ];
|
||||
packages =
|
||||
let activationPackages = builtins.mapAttrs (_: lib.getAttr "activationPackage") homeConfigurations;
|
||||
in
|
||||
lib.pipe activationPackages [
|
||||
(lib.filterAttrs (_: drv: pkgs.system == drv.system))
|
||||
(lib.mapAttrs' (username: lib.nameValuePair "home-${username}"))
|
||||
];
|
||||
};
|
||||
}
|
||||
|
|
|
@ -2,13 +2,12 @@
|
|||
|
||||
{
|
||||
flake.overlays = {
|
||||
default = final: prev: (
|
||||
apps = final: prev: (
|
||||
let
|
||||
appsDir = self.lib.importDirToAttrs ../apps;
|
||||
builtApps = lib.mapAttrs (name: value: value.definition self.lib prev) appsDir;
|
||||
packages = import ../packages final prev;
|
||||
in
|
||||
builtApps // packages
|
||||
lib.mapAttrs (name: value: value.definition self.lib prev) appsDir
|
||||
);
|
||||
default = import ../packages;
|
||||
};
|
||||
}
|
||||
|
|
|
@ -1,4 +1,4 @@
|
|||
{ config, pkgs, inputs, ... }:
|
||||
{ config, pkgs, ... }:
|
||||
|
||||
let
|
||||
passCmd = address: "${pkgs.python310Packages.keyring}/bin/keyring get login email(${address})";
|
||||
|
|
|
@ -1,4 +1,4 @@
|
|||
{ config, pkgs, lib, inputs, ... }:
|
||||
{ config, pkgs, lib, ... }:
|
||||
|
||||
let
|
||||
inherit (lib) mkIf;
|
||||
|
@ -15,11 +15,15 @@ let
|
|||
};
|
||||
in
|
||||
{
|
||||
imports = [ ./launchd.nix ./iterm2.nix ./finder.nix ];
|
||||
|
||||
imports = [
|
||||
./finder.nix
|
||||
./iterm2.nix
|
||||
./launchd.nix
|
||||
];
|
||||
|
||||
home.file.".gnupg/gpg-agent.conf" = mkIf stdenv.isDarwin {
|
||||
text = ''
|
||||
pinentry-program "${pkgs.pinentry-touchid}/bin/pinentry-touchid"
|
||||
pinentry-program "${pkgs.pinentryTouchid}/bin/pinentry-touchid"
|
||||
default-cache-ttl 30
|
||||
max-cache-ttl 600
|
||||
'';
|
||||
|
@ -43,8 +47,8 @@ in
|
|||
pinentry = "pinentry-mac";
|
||||
} // lib.attrsets.mapAttrs (name: value: "open -a '" + value + "'") appCommands);
|
||||
|
||||
programs.firefox.package = mkIf stdenv.isDarwin (pkgs.callPackage ../overlays/firefox-mac.nix { inherit pkgs; });
|
||||
programs.chromium.package = mkIf stdenv.isDarwin (pkgs.callPackage ../overlays/chromium-mac.nix { inherit pkgs; });
|
||||
programs.firefox.package = mkIf stdenv.isDarwin pkgs.firefoxMac;
|
||||
programs.chromium.package = mkIf stdenv.isDarwin pkgs.chromiumMac;
|
||||
|
||||
targets.darwin = mkIf stdenv.isDarwin {
|
||||
defaults = {
|
|
@ -46,9 +46,9 @@ rec {
|
|||
|
||||
imports = [
|
||||
./accounts.nix
|
||||
./darwin.nix
|
||||
./darwin
|
||||
./feeds.nix
|
||||
./packages.nix
|
||||
./programs.nix
|
||||
./programs
|
||||
];
|
||||
}
|
||||
|
|
|
@ -3,8 +3,8 @@
|
|||
let
|
||||
darwin = with pkgs; [
|
||||
pngpaste
|
||||
pinentry-touchid
|
||||
pinentry-mac
|
||||
pinentryTouchid
|
||||
pinentryMac
|
||||
spoof-mac
|
||||
];
|
||||
linux = with pkgs; [ ];
|
||||
|
|
|
@ -1,5 +1,8 @@
|
|||
{ lib, config, inputs, pkgs, ... }: {
|
||||
imports = [ ./emacs.nix ./firefox.nix ];
|
||||
{ lib, config, pkgs, ... }: {
|
||||
imports = [
|
||||
./emacs.nix
|
||||
./firefox.nix
|
||||
];
|
||||
|
||||
programs = {
|
||||
bash.enableCompletion = true;
|
|
@ -1,4 +1,4 @@
|
|||
{ config, pkgs, inputs, nurNoPkgs, ... }:
|
||||
{ config, pkgs, nurNoPkgs, ... }:
|
||||
|
||||
let
|
||||
pcfg = config.programs.emacs.init.usePackage;
|
Loading…
Add table
Reference in a new issue