diff --git a/hive.nix b/hive.nix index 4e4ffb9..41f2d90 100644 --- a/hive.nix +++ b/hive.nix @@ -5,7 +5,10 @@ in { }; defaults = { pkgs, ... }: { - imports = [ ./pinning.nix ]; + imports = [ + ./pinning.nix + (import "${sources.home-manager}/nixos") + ]; deployment.replaceUnknownProfiles = false; }; diff --git a/hosts/tohru/configuration.nix b/hosts/tohru/configuration.nix index 2a09eb4..87707ea 100644 --- a/hosts/tohru/configuration.nix +++ b/hosts/tohru/configuration.nix @@ -2,8 +2,9 @@ { imports = - [ # Include the results of the hardware scan. + [ ./hardware-configuration.nix + ./home.nix ]; boot.loader.systemd-boot.enable = true; @@ -33,25 +34,12 @@ # Enable touchpad support (enabled default in most desktopManager). services.xserver.libinput.enable = true; - # Define a user account. Don't forget to set a password with ‘passwd’. - users.users.bluebird = { - isNormalUser = true; - extraGroups = [ "wheel" "networkmanager" ]; - packages = with pkgs; [ - bitwarden - firefox - tor-browser-bundle-bin - ]; - }; - # List packages installed in system profile. To search, run: # $ nix search wget environment.systemPackages = with pkgs; [ colmena git npins - plocate - tree wget ]; diff --git a/hosts/tohru/home.nix b/hosts/tohru/home.nix new file mode 100644 index 0000000..33a4f8e --- /dev/null +++ b/hosts/tohru/home.nix @@ -0,0 +1,53 @@ +{ config, lib, pkgs, ... }: + +{ + users.users.bluebird = { + isNormalUser = true; + description = "Bluebird"; + extraGroups = [ "wheel" "networkmanager" ]; + packages = with pkgs; [ + # TODO: move these to home-manager + bitwarden + firefox + tor-browser-bundle-bin + ]; + }; + + home-manager.users.bluebird = { pkgs, ... }: { + home.packages = with pkgs; [ + fortune + htop + tree + + nil + nixpkgs-fmt + ]; + + programs.git = { + enable = true; + userName = "Katherina Walshe-Grey"; + userEmail = "git@katherina.rocks"; + }; + + programs.vscode = let + system = builtins.currentSystem; + sources = import ../../npins; + extensions = (import sources.nix-vscode-extensions).extensions.${system}; + in { + enable = true; + package = pkgs.vscodium; + extensions = (with pkgs.vscode-extensions; [ + jnoortheen.nix-ide + ]) ++ (with extensions.open-vsx; [ + robbowen.synthwave-vscode + ]); + userSettings = { + "nix.enableLanguageServer" = true; + "nix.serverPath" = "nil"; + "workbench.colorTheme" = "SynthWave '84"; + }; + }; + + home.stateVersion = "23.11"; + }; +} diff --git a/npins/sources.json b/npins/sources.json index e3ca425..554530a 100644 --- a/npins/sources.json +++ b/npins/sources.json @@ -12,6 +12,18 @@ "url": "https://github.com/nix-community/home-manager/archive/2c78a57c544dd19b07442350727ced097e1aa6e6.tar.gz", "hash": "1zb4qsyn7l1zdiv1kjx07jvgnakpsifc62fxcim50w3ni27cwxk3" }, + "nix-vscode-extensions": { + "type": "Git", + "repository": { + "type": "GitHub", + "owner": "nix-community", + "repo": "nix-vscode-extensions" + }, + "branch": "master", + "revision": "1f5f225e7ceee57404f6e409200cc9eea25090be", + "url": "https://github.com/nix-community/nix-vscode-extensions/archive/1f5f225e7ceee57404f6e409200cc9eea25090be.tar.gz", + "hash": "1s24w7fwfgd1v3s9zlj9cmwhbfc90av8c44kg9dchvj0yh6fg5sx" + }, "nixpkgs": { "type": "Channel", "name": "nixos-23.11",