Files
old-nixos-dotfiles/flake.nix

68 lines
1.9 KiB
Nix

{
description = "kenryuS nixos configurations/dotfiles";
inputs = {
nixpkgs.url = "nixpkgs/nixos-unstable";
home-manager.url = "github:nix-community/home-manager/master";
home-manager.inputs.nixpkgs.follows = "nixpkgs";
nixos-hardware.url = "github:NixOS/nixos-hardware/master";
};
outputs = inputs@{ nixpkgs, home-manager, ... }:
let
systemSettings = {
system = "x86_64-linux";
hostname = "kenryu-nixos";
machine = "workstation";
timezone = "Asia/Tokyo";
locale = "ja_JP.UTF-8";
bootConf = {
mode = "uefi";
mountPath = "/boot";
grubDev = "";
};
gpuType = "nvidia";
};
userSettings = {
username = "kenryus";
name = "Kenryu Shibata";
email-dev = "kenryudev5894@gmail.com";
dotfilesDir = "/etc/nixos";
editor = "nvim";
editor-pkg = pkgs.neovim;
};
pkgs = import inputs.nixpkgs {
system = systemSettings.system;
config = {
allowUnfree = true;
allowUnfreePredicate = (_: true );
};
};
lib = inputs.nixpkgs.lib;
home-manager = inputs.home-manager;
in {
nixosConfigurations.system = lib.nixosSystem {
system = systemSettings.system;
modules = [
(./. + "/machines" + ("/" + systemSettings.machine) + "/configuration.nix")
home-manager.nixosModules.home-manager {
home-manager.useGlobalPkgs = true;
home-manager.useUserPackages = true;
home-manager.users.${userSettings.username} = import (./. + "/machines" + ("/" + systemSettings.machine) + "/home.nix");
home-manager.extraSpecialArgs = {
inherit userSettings;
};
}
];
specialArgs = {
inherit systemSettings;
inherit userSettings;
inherit inputs;
};
};
};
}