diff --git a/flake.lock b/flake.lock new file mode 100755 index 0000000..490d7d9 --- /dev/null +++ b/flake.lock @@ -0,0 +1,229 @@ +{ + "nodes": { + "flake-utils": { + "inputs": { + "systems": "systems" + }, + "locked": { + "lastModified": 1731533236, + "narHash": "sha256-l0KFg5HjrsfsO/JpG+r7fRrqm12kzFHyUHqHCVpMMbI=", + "owner": "numtide", + "repo": "flake-utils", + "rev": "11707dc2f618dd54ca8739b309ec4fc024de578b", + "type": "github" + }, + "original": { + "owner": "numtide", + "repo": "flake-utils", + "type": "github" + } + }, + "flake-utils_2": { + "inputs": { + "systems": "systems_2" + }, + "locked": { + "lastModified": 1731533236, + "narHash": "sha256-l0KFg5HjrsfsO/JpG+r7fRrqm12kzFHyUHqHCVpMMbI=", + "owner": "numtide", + "repo": "flake-utils", + "rev": "11707dc2f618dd54ca8739b309ec4fc024de578b", + "type": "github" + }, + "original": { + "owner": "numtide", + "repo": "flake-utils", + "type": "github" + } + }, + "gtkapps": { + "inputs": { + "flake-utils": "flake-utils", + "nixpkgs": "nixpkgs" + }, + "locked": { + "lastModified": 1753299093, + "narHash": "sha256-8+NgfNQX8H59VdFWtuk3neB9Ibf6JfHX9qfmg7QGP/I=", + "owner": "JackMechem", + "repo": "gtkapps", + "rev": "274ffba79071c77b7e39e8f0c440a1214f13bf40", + "type": "github" + }, + "original": { + "owner": "JackMechem", + "repo": "gtkapps", + "type": "github" + } + }, + "gtkbar": { + "inputs": { + "flake-utils": "flake-utils_2", + "nixpkgs": "nixpkgs_2" + }, + "locked": { + "lastModified": 1772153827, + "narHash": "sha256-xUjYgc6JhP6poKwC8eLipENIP8DBc0zJjQyowVWbEl0=", + "owner": "JackMechem", + "repo": "gtkbar", + "rev": "c4915d89278f609777983030f8cf64f2bc08b3a8", + "type": "github" + }, + "original": { + "owner": "JackMechem", + "repo": "gtkbar", + "type": "github" + } + }, + "home-manager": { + "inputs": { + "nixpkgs": [ + "nixpkgs" + ] + }, + "locked": { + "lastModified": 1773935367, + "narHash": "sha256-+RjULqqbCYmOJG+99pNqEGRJV7bX8DYPbxKUhKWFKsI=", + "owner": "nix-community", + "repo": "home-manager", + "rev": "a7ec5440474cdcc9939cc67c320f01aea0a2f195", + "type": "github" + }, + "original": { + "owner": "nix-community", + "repo": "home-manager", + "type": "github" + } + }, + "home-manager_2": { + "inputs": { + "nixpkgs": [ + "zen-browser", + "nixpkgs" + ] + }, + "locked": { + "lastModified": 1773422513, + "narHash": "sha256-MPjR48roW7CUMU6lu0+qQGqj92Kuh3paIulMWFZy+NQ=", + "owner": "nix-community", + "repo": "home-manager", + "rev": "ef12a9a2b0f77c8fa3dda1e7e494fca668909056", + "type": "github" + }, + "original": { + "owner": "nix-community", + "repo": "home-manager", + "type": "github" + } + }, + "nixpkgs": { + "locked": { + "lastModified": 1752950548, + "narHash": "sha256-NS6BLD0lxOrnCiEOcvQCDVPXafX1/ek1dfJHX1nUIzc=", + "owner": "NixOS", + "repo": "nixpkgs", + "rev": "c87b95e25065c028d31a94f06a62927d18763fdf", + "type": "github" + }, + "original": { + "owner": "NixOS", + "ref": "nixos-unstable", + "repo": "nixpkgs", + "type": "github" + } + }, + "nixpkgs_2": { + "locked": { + "lastModified": 1752950548, + "narHash": "sha256-NS6BLD0lxOrnCiEOcvQCDVPXafX1/ek1dfJHX1nUIzc=", + "owner": "NixOS", + "repo": "nixpkgs", + "rev": "c87b95e25065c028d31a94f06a62927d18763fdf", + "type": "github" + }, + "original": { + "owner": "NixOS", + "ref": "nixos-unstable", + "repo": "nixpkgs", + "type": "github" + } + }, + "nixpkgs_3": { + "locked": { + "lastModified": 1773821835, + "narHash": "sha256-TJ3lSQtW0E2JrznGVm8hOQGVpXjJyXY2guAxku2O9A4=", + "owner": "nixos", + "repo": "nixpkgs", + "rev": "b40629efe5d6ec48dd1efba650c797ddbd39ace0", + "type": "github" + }, + "original": { + "owner": "nixos", + "ref": "nixos-unstable", + "repo": "nixpkgs", + "type": "github" + } + }, + "root": { + "inputs": { + "gtkapps": "gtkapps", + "gtkbar": "gtkbar", + "home-manager": "home-manager", + "nixpkgs": "nixpkgs_3", + "zen-browser": "zen-browser" + } + }, + "systems": { + "locked": { + "lastModified": 1681028828, + "narHash": "sha256-Vy1rq5AaRuLzOxct8nz4T6wlgyUR7zLU309k9mBC768=", + "owner": "nix-systems", + "repo": "default", + "rev": "da67096a3b9bf56a91d16901293e51ba5b49a27e", + "type": "github" + }, + "original": { + "owner": "nix-systems", + "repo": "default", + "type": "github" + } + }, + "systems_2": { + "locked": { + "lastModified": 1681028828, + "narHash": "sha256-Vy1rq5AaRuLzOxct8nz4T6wlgyUR7zLU309k9mBC768=", + "owner": "nix-systems", + "repo": "default", + "rev": "da67096a3b9bf56a91d16901293e51ba5b49a27e", + "type": "github" + }, + "original": { + "owner": "nix-systems", + "repo": "default", + "type": "github" + } + }, + "zen-browser": { + "inputs": { + "home-manager": "home-manager_2", + "nixpkgs": [ + "nixpkgs" + ] + }, + "locked": { + "lastModified": 1773737882, + "narHash": "sha256-P6k0BtT1/idYveVRdcwAZk8By9UjZW8XOMhSoS6wTBY=", + "owner": "0xc000022070", + "repo": "zen-browser-flake", + "rev": "a7f1db35d74faf04e5189b3a32f890186ace5c28", + "type": "github" + }, + "original": { + "owner": "0xc000022070", + "repo": "zen-browser-flake", + "type": "github" + } + } + }, + "root": "root", + "version": 7 +} diff --git a/hosts/desktop/configuration.nix b/hosts/desktop/configuration.nix index c507bac..3519306 100644 --- a/hosts/desktop/configuration.nix +++ b/hosts/desktop/configuration.nix @@ -18,6 +18,7 @@ ../../modules/nixos/sound.nix ../../modules/nixos/print.nix ../../modules/nixos/syncthing.nix + ../../modules/nixos/ollama.nix ]; boot.loader.systemd-boot.enable = true; @@ -28,6 +29,8 @@ networking.hostName = "jackdesk"; networking.networkmanager.enable = true; + networking.firewall.allowedTCPPorts = [ 2200 3000 ]; + nix.settings.experimental-features = [ "nix-command" "flakes" @@ -73,7 +76,10 @@ services.libinput.enable = true; - services.openssh.enable = true; + services.openssh = { + enable = true; + listenAddresses = [{ addr = "192.168.1.67"; port = 2200; }]; + }; services.gvfs.enable = true; diff --git a/modules/home-manager/homepackages.nix b/modules/home-manager/homepackages.nix index 1b28501..b5b0769 100644 --- a/modules/home-manager/homepackages.nix +++ b/modules/home-manager/homepackages.nix @@ -1,39 +1,41 @@ { pkgs, ... }: { - home.packages = with pkgs; [ - ### Desktop Stuff - pkgs.sway-contrib.grimshot - waypaper - hyprpaper - swaybg + home.packages = with pkgs; [ + ### Desktop Stuff + pkgs.sway-contrib.grimshot + waypaper + hyprpaper + swaybg - ### Audio - playerctl - spotify - pavucontrol + ### Audio + playerctl + spotify + pavucontrol - ### Chat apps - lunar-client - discord - zoom-us + ### Authentication + bitwarden-desktop - ### Random Libraries and Dependencies - gtk3 - glib - zlib - deno + ### Chat apps + lunar-client + discord + zoom-us - ### System Monitoring Tools - mission-center - htop + ### Note Taking + obsidian - ### Development Tools - jetbrains.idea - jetbrains-toolbox - jdk - gnumake + ### Random Libraries and Dependencies + gtk3 + glib + zlib + deno - ### Note taking tools - obsidian - ]; + ### System Monitoring Tools + mission-center + htop + + ### Development Tools + jdk + gnumake + claude-code + ]; } diff --git a/modules/nixos/fonts.nix b/modules/nixos/fonts.nix index 84ea785..700a768 100644 --- a/modules/nixos/fonts.nix +++ b/modules/nixos/fonts.nix @@ -1,32 +1,33 @@ { pkgs, ... }: { - fonts = { - packages = with pkgs; [ - noto-fonts - noto-fonts-cjk-sans - noto-fonts-color-emoji - liberation_ttf - fira-code - fira-code-symbols - jetbrains-mono - nerd-fonts.jetbrains-mono - font-awesome - google-fonts - corefonts - vista-fonts - inter - ]; + fonts = { + packages = with pkgs; [ + noto-fonts + noto-fonts-cjk-sans + noto-fonts-color-emoji + liberation_ttf + fira-code + fira-code-symbols + jetbrains-mono + nerd-fonts.jetbrains-mono + font-awesome + google-fonts + corefonts + vista-fonts + inter + font-awesome_5 + ]; - fontconfig = { - enable = true; - defaultFonts = { - serif = [ "Noto Serif" ]; - sansSerif = [ "Noto Sans" ]; - monospace = [ "JetBrains Mono" ]; - emoji = [ "Noto Color Emoji" ]; - }; + fontconfig = { + enable = true; + defaultFonts = { + serif = [ "Noto Serif" ]; + sansSerif = [ "Noto Sans" ]; + monospace = [ "JetBrains Mono" ]; + emoji = [ "Noto Color Emoji" ]; + }; + }; }; - }; } diff --git a/modules/nixos/ollama.nix b/modules/nixos/ollama.nix new file mode 100644 index 0000000..7bd41f8 --- /dev/null +++ b/modules/nixos/ollama.nix @@ -0,0 +1,22 @@ +{ config, pkgs, ... }: + +{ + services.ollama = { + enable = true; + package = pkgs.ollama-rocm; + rocmOverrideGfx = "11.0.1"; + }; + + services.open-webui = { + enable = true; + port = 11435; + openFirewall = true; + }; + + nixpkgs.config.allowUnfree = true; + + environment.systemPackages = with pkgs; [ + ollama + rocmPackages.rocminfo + ]; +} diff --git a/modules/nixos/user-jack.nix b/modules/nixos/user-jack.nix index 7055f10..2885bf2 100644 --- a/modules/nixos/user-jack.nix +++ b/modules/nixos/user-jack.nix @@ -9,11 +9,16 @@ "wheel" "networkmanager" "docker" + "video" + "render" ]; # Enable ‘sudo’ for the user. + group = "jack"; packages = with pkgs; [ cargo clang clang-tools ]; }; + + users.groups.jack = {}; }