summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorDevin Finlinson <devin.finlinson@pm.me>2024-11-08 22:33:01 -0700
committerDevin Finlinson <devin.finlinson@pm.me>2024-11-08 22:33:01 -0700
commit6a22f44a9a1a2dea02d7ff31b6ab8121c25b5cf1 (patch)
tree2afc1d96b7472cfe9dcf7833865164d8f2457979
parent05ecc53afd467516ca781fc549d0110a44a85da9 (diff)
parentce3ec8ad7367ce44be14a4f04f981b9aab1cd56b (diff)
Merge branch 'master' of ssh://bosco:/srv/git/.flake
-rw-r--r--flake.nix5
-rw-r--r--home-manager/doretta.nix122
-rw-r--r--machines/doretta/configuration.nix1
-rw-r--r--modules/home-manager/virt-manager.nix8
-rw-r--r--modules/nixos/services.nix2
-rw-r--r--modules/users/defin.nix2
-rw-r--r--modules/users/jerry.nix22
7 files changed, 157 insertions, 5 deletions
diff --git a/flake.nix b/flake.nix
index 004cacf..0c963e1 100644
--- a/flake.nix
+++ b/flake.nix
@@ -276,8 +276,6 @@
./machines/betsy/configuration.nix
# lix-module.nixosModules.default
- ./modules/nixos/hyprland.nix
-
./modules/nixos/bluetooth.nix
./modules/nixos/nix-common.nix
./modules/nixos/environment.nix
@@ -287,6 +285,7 @@
./modules/users/defin.nix
./modules/users/root.nix
+ ./modules/users/jerry.nix
home-manager.nixosModules.home-manager {
home-manager.useGlobalPkgs = true;
@@ -313,7 +312,7 @@
home-manager.nixosModules.home-manager {
home-manager.useGlobalPkgs = true;
home-manager.useUserPackages = true;
- home-manager.users.defin = import ./home-manager/default.nix;
+ home-manager.users.defin = import ./home-manager/doretta.nix;
home-manager.extraSpecialArgs = { inherit inputs; };
}
];
diff --git a/home-manager/doretta.nix b/home-manager/doretta.nix
new file mode 100644
index 0000000..3096662
--- /dev/null
+++ b/home-manager/doretta.nix
@@ -0,0 +1,122 @@
+{ config, pkgs, ... }:
+# let
+# home-manager = builtins.fetchTarball "https://github.com/nix-community/home-manager/archive/release-23.05.tar.gz";
+# unstable = import <nixpkgs-unstable>{};
+# in
+{
+ imports = [
+ ../modules/home-manager/starship.nix
+ ../modules/home-manager/btop.nix
+ ../modules/home-manager/helix.nix
+ ../modules/home-manager/shell.nix
+ ../modules/home-manager/bat.nix
+ ../modules/home-manager/virt-manager.nix
+ ];
+
+ nixpkgs = {
+ # texlive.combined.scheme-medium;
+ # system = "x84_64-linux";
+ config.allowUnfree = true;
+ };
+
+ # home-manager.users.defin= {
+ home = {
+ # Home Manager needs a bit of information about you and the paths it should
+ # manage.
+ username = "defin";
+ homeDirectory = "/home/defin";
+
+ # This value determines the Home Manager release that your configuration is
+ # compatible with. This helps avoid breakage when a new Home Manager release
+ # introduces backwards incompatible changes.
+ #
+ # You should not change this value, even if you update Home Manager. If you do
+ # want to update the value, then make sure to first check the Home Manager
+ # release notes.
+ stateVersion = "23.11"; # Please read the comment before changing.
+
+ # The home.packages option allows you to install Nix packages into your
+ # environment.
+ packages = with pkgs; [
+ # # It is sometimes useful to fine-tune packages, for example, by applying
+ # # overrides. You can do that directly here, just don't forget the
+ # # parentheses. Maybe you want to install Nerd Fonts with a limited number of
+ # # fonts?
+ # (pkgs.nerdfonts.override { fonts = [ "FantasqueSansMono" ]; })
+ pass
+ btop # better top
+ starship
+ eza # better ls
+ zoxide # better cd
+ broot # tree view files
+ procs # process view
+ gnupg
+ #helix plugins
+ # vadimcn.vscode-lldb
+ # yaml-language-server
+ # typescript-language-server
+ # rust-analyzer
+ # solargraph
+ # clangd
+ # vscode-json-language-server
+ # lua-language-server
+ # marksman
+ ];
+
+ # Home Manager is pretty good at managing dotfiles. The primary way to manage
+ # plain files is through 'home.file'.
+ file = {
+ # # Building this configuration will create a copy of 'dotfiles/screenrc' in
+ # # the Nix store. Activating the configuration will then make '~/.screenrc' a
+ # # symlink to the Nix store copy.
+ # ".screenrc".source = dotfiles/screenrc;
+
+ # # You can also set the file content immediately.
+ # ".gradle/gradle.properties".text = ''
+ # org.gradle.console=verbose
+ # org.gradle.daemon.idletimeout=3600000
+ # '';
+ };
+
+
+ # You can also manage environment variables but you will have to manually
+ # source
+ #
+ # ~/.nix-profile/etc/profile.d/hm-session-vars.sh
+ #
+ # or
+ #
+ # /etc/profiles/per-user/defin/etc/profile.d/hm-session-vars.sh
+ #
+ # if you don't want to manage your shell through Home Manager.
+ sessionVariables = {
+ EDITOR = "hx";
+ };
+ };
+
+ programs = {
+ ssh.matchBlocks = {
+ serverAliveCountMax = 6;
+ serverAliveInterval = 30;
+ port = 2200;
+ "git.wormcar.gay" = {
+ user = "devinf";
+ host = "git.wormcar.gay";
+ port = 2200;
+ };
+ };
+ git = {
+ enable = true;
+ userName = "Devin Finlinson";
+ userEmail = "devin.finlinson@pm.me";
+ includes = [{path = "~/.gitconfig.local";}];
+ extraConfig = {
+ core = {editor = "hx";};
+ pull = {rebase = false;};
+ };
+ };
+
+ # Let Home Manager install and manage itself.
+ # home-manager.enable = true;
+ };
+}
diff --git a/machines/doretta/configuration.nix b/machines/doretta/configuration.nix
index 99dca37..0d20b83 100644
--- a/machines/doretta/configuration.nix
+++ b/machines/doretta/configuration.nix
@@ -22,6 +22,7 @@
virtualisation.libvirtd = {
enable = true;
};
+ programs.virt-manager.enable = true;
# Set your time zone.
time.timeZone = "US/Mountain";
diff --git a/modules/home-manager/virt-manager.nix b/modules/home-manager/virt-manager.nix
new file mode 100644
index 0000000..b8bb430
--- /dev/null
+++ b/modules/home-manager/virt-manager.nix
@@ -0,0 +1,8 @@
+{ inputs, ... }: {
+ dconf.settings = {
+ "org/virt-manager/virt-manager/connections" = {
+ autoconnect = ["qemu:///system"];
+ uris = ["qemu:///system"];
+ };
+ };
+} \ No newline at end of file
diff --git a/modules/nixos/services.nix b/modules/nixos/services.nix
index f7c22ba..daa07d7 100644
--- a/modules/nixos/services.nix
+++ b/modules/nixos/services.nix
@@ -32,7 +32,7 @@
# Enable CUPS to print documents.
printing = {
enable = true;
- drivers = with pkgs; [ epson-escpr gutenprint ];
+ drivers = with pkgs; [ epson-escpr2 epsonscan2 gutenprint ];
};
avahi = {
enable = true;
diff --git a/modules/users/defin.nix b/modules/users/defin.nix
index 24863d6..8931187 100644
--- a/modules/users/defin.nix
+++ b/modules/users/defin.nix
@@ -7,7 +7,7 @@
users.defin = {
isNormalUser = true;
description = "Devin Finlinson";
- extraGroups = [ "wheel" "builders" "video" "input" "docker" "dialout" "wireshark" "networkmanager" ]; # (wheel) Enable ‘sudo’ for the user.
+ extraGroups = [ "wheel" "builders" "video" "input" "docker" "dialout" "wireshark" "networkmanager" "libvirtd" ]; # (wheel) Enable ‘sudo’ for the user.
shell = pkgs.nushell;
hashedPassword = "$6$UljPNAdxZ22lP3Bc$8VaEAacZxtXM3Zji2IA7Jf5fXs9pFnAVQff1d8IbfFOKCvjibceyopOAjRXa8lXtpOSJgPW1OO1dzOspqhWnz0";
diff --git a/modules/users/jerry.nix b/modules/users/jerry.nix
new file mode 100644
index 0000000..b9f8b95
--- /dev/null
+++ b/modules/users/jerry.nix
@@ -0,0 +1,22 @@
+{config, pkgs, lib, ... }: {
+
+ # Define a user account. Don't forget to set a password with ‘passwd’.
+ users = {
+
+ users.jerry = {
+ isNormalUser = true;
+ description = "Jerry Finlinson";
+ extraGroups = [ "input" "wireshark" ]; # (wheel) Enable ‘sudo’ for the user.
+ shell = pkgs.nushell;
+ };
+ };
+
+ security.pam = {
+ sshAgentAuth.enable = true;
+ # services.sudo.sshAgentAuth = true;
+ };
+ # I can't think of a better spot to put this rn.
+ services.openssh = {
+ ports = [ 22 2200 ]; # needed because isp blocks ssh over 22
+ };
+}