From f95a985f2ad7c1b45036efd9d6c56d69bfa2c544 Mon Sep 17 00:00:00 2001 From: Ingolf Wagner Date: Wed, 13 Dec 2023 13:56:12 +0100 Subject: [PATCH] add more stuff to homes/palo --- nixos/homes/palo/default.nix | 16 +- nixos/homes/palo/git.nix | 24 +++ nixos/homes/palo/i3.nix | 2 + nixos/homes/palo/packages/default.nix | 9 ++ nixos/homes/palo/packages/development.nix | 134 ++++++++++++++++ nixos/homes/palo/packages/graphics.nix | 29 ++++ nixos/homes/palo/packages/nextcloud.nix | 37 +++++ nixos/homes/palo/packages/packages.nix | 52 ++++++ nixos/homes/palo/packages/social.nix | 46 ++++++ nixos/machines/cream/configuration.nix | 3 +- nixos/machines/cream/packages-development.nix | 91 ----------- nixos/machines/cream/packages.nix | 148 ------------------ 12 files changed, 336 insertions(+), 255 deletions(-) create mode 100644 nixos/homes/palo/git.nix create mode 100644 nixos/homes/palo/packages/default.nix create mode 100644 nixos/homes/palo/packages/development.nix create mode 100644 nixos/homes/palo/packages/graphics.nix create mode 100644 nixos/homes/palo/packages/nextcloud.nix create mode 100644 nixos/homes/palo/packages/packages.nix create mode 100644 nixos/homes/palo/packages/social.nix delete mode 100644 nixos/machines/cream/packages-development.nix delete mode 100644 nixos/machines/cream/packages.nix diff --git a/nixos/homes/palo/default.nix b/nixos/homes/palo/default.nix index db95eb5..3cc352d 100644 --- a/nixos/homes/palo/default.nix +++ b/nixos/homes/palo/default.nix @@ -3,27 +3,15 @@ imports = [ ../common ./doom-emacs.nix + ./git.nix ./i3.nix + ./packages ./ssh.nix ./stylix.nix ]; home.stateVersion = "22.11"; - programs.git = { - enable = true; - userName = "Ingolf Wagner"; - userEmail = "contact@ingolf-wagner.de"; - signing = { - key = "42AC51C9482D0834CF488AF1389EC2D64AC71EAC"; - signByDefault = true; - }; - ignores = [ "*.swp" "*~" ".idea" ".*penis.*" "result" ".envrc" ".direnv" ]; - extraConfig = { - init.defaultBranch = "main"; - pull.ff = "only"; - }; - }; programs.gpg = { enable = true; diff --git a/nixos/homes/palo/git.nix b/nixos/homes/palo/git.nix new file mode 100644 index 0000000..ff075b8 --- /dev/null +++ b/nixos/homes/palo/git.nix @@ -0,0 +1,24 @@ +{ pkgs, ... }: +{ + + programs.git = { + enable = true; + userName = "Ingolf Wagner"; + userEmail = "contact@ingolf-wagner.de"; + signing = { + key = "42AC51C9482D0834CF488AF1389EC2D64AC71EAC"; + signByDefault = true; + }; + ignores = [ "*.swp" "*~" ".idea" ".*penis.*" "result" ".envrc" ".direnv" ]; + extraConfig = { + init.defaultBranch = "main"; + pull.ff = "only"; + }; + }; + + + home.packages = [ + pkgs.pre-commit + ]; + +} diff --git a/nixos/homes/palo/i3.nix b/nixos/homes/palo/i3.nix index 4d8fd69..03e4f4a 100644 --- a/nixos/homes/palo/i3.nix +++ b/nixos/homes/palo/i3.nix @@ -36,6 +36,8 @@ in [ fixXhost pkgs.kitty + pkgs.autorandr + pkgs.polygon-art.polygon-art ]; diff --git a/nixos/homes/palo/packages/default.nix b/nixos/homes/palo/packages/default.nix new file mode 100644 index 0000000..a5fa0a0 --- /dev/null +++ b/nixos/homes/palo/packages/default.nix @@ -0,0 +1,9 @@ +{ + imports = [ + ./development.nix + ./graphics.nix + ./nextcloud.nix + ./social.nix + ./packages.nix + ]; +} diff --git a/nixos/homes/palo/packages/development.nix b/nixos/homes/palo/packages/development.nix new file mode 100644 index 0000000..c4036b8 --- /dev/null +++ b/nixos/homes/palo/packages/development.nix @@ -0,0 +1,134 @@ +{ pkgs, lib, config, ... }: +with pkgs; +with lib; +{ + + config = mkMerge [ + + (mkIf config.gui.enable { + + home.packages = + let + # to make copilot work + # jetbrains.pycharm-professional + fhsPyCharm = pkgs.buildFHSUserEnv { + name = "pycharm"; + targetPkgs = pkgs: (with pkgs; [ + black + isort + #unstable.jetbrains.pycharm-professional + jetbrains.pycharm-professional + python311 + pipenv + zlib # needed for NumPy + nodejs + git + ]); + runScript = "pycharm-professional"; + }; + + # jetbrains.datagrip + fhsDataGrip = pkgs.buildFHSUserEnv { + name = "datagrip"; + targetPkgs = pkgs: (with pkgs; [ + unstable.jetbrains.datagrip + ]); + runScript = "datagrip"; + }; + + fhsClion = pkgs.buildFHSUserEnv { + name = "clion"; + targetPkgs = pkgs: (with pkgs; [ + unstable.jetbrains.clion + ]); + runScript = "clion"; + }; + + in + [ + + # general + unstable.jetbrains.idea-ultimate + #vscode + + jetbrains.mps + + fhsDataGrip + (pkgs.makeDesktopItem { + name = "datagrip"; + desktopName = "DataGrip"; + exec = "${fhsDataGrip}/bin/datagrip"; + terminal = false; + }) + + # Rust + fhsClion + (pkgs.makeDesktopItem { + name = "clion"; + desktopName = "Clion"; + exec = "${fhsClion}/bin/clion"; + terminal = false; + }) + gcc + rustup + + # python + fhsPyCharm + (pkgs.makeDesktopItem { + name = "pycharm"; + desktopName = "PyCharm"; + exec = "${fhsPyCharm}/bin/pycharm"; + terminal = false; + }) + + # planing + ((ganttproject-bin.override { + jre = pkgs.openjdk11; + }).overrideAttrs (old: { + version = "3.1.3100"; + src = pkgs.fetchzip { + url = "https://dl.ganttproject.biz/ganttproject-3.1.3100/ganttproject-3.1.3100.zip"; + sha256 = "sha256-hw2paak0P670/kemiuqYHIaN0uUtkVKy+AX2X7OdnJ4="; + }; + })) + + ]; + }) + { + + home.packages = [ + + tmux + + # terminal recorder + asciinema + asciinema-agg + asciinema-scenario + termtosvg + + # shell + gum + yq-go + gojq + + # nomad + nomad + wander + + # terraform + unstable.terragrunt + unstable.terraform + terraform-docs + awscli2 + + # python + python3Full + pipenv + + unstable.mdbook + + ]; + + } + ]; +} diff --git a/nixos/homes/palo/packages/graphics.nix b/nixos/homes/palo/packages/graphics.nix new file mode 100644 index 0000000..e590803 --- /dev/null +++ b/nixos/homes/palo/packages/graphics.nix @@ -0,0 +1,29 @@ +{ config, lib, pkgs, ... }: +with pkgs; +with lib; +{ + config = mkIf config.gui.enable { + + home.packages = [ + + pureref + valentina + sweethome3d.application + gimp + inkscape + imagemagick + sxiv + blender + lightburn + darktable + + # CAD & 3D Plotting + openscad + freecad + cura + + ]; + + }; + +} diff --git a/nixos/homes/palo/packages/nextcloud.nix b/nixos/homes/palo/packages/nextcloud.nix new file mode 100644 index 0000000..db66046 --- /dev/null +++ b/nixos/homes/palo/packages/nextcloud.nix @@ -0,0 +1,37 @@ +{ config, lib, pkgs, ... }: +with pkgs; +let + nextcloudSync = folder: + let + password = "$( ${pkgs.pass}/bin/pass show home/nextcloud/palo/nextcloudcmd-token )"; + user = "palo"; + in + pkgs.writers.writeBashBin "nextcloud-sync-${folder}" '' + ${pkgs.nextcloud-client}/bin/nextcloudcmd \ + --path "${folder}" \ + ~/Nextcloud/${folder} \ + "https://${user}:${password}@nextcloud.ingolf-wagner.de" + ''; + + +in +{ + home.packages = [ + + (nextcloudSync "InstantUpload") + (nextcloudSync "Pictures") + (nextcloudSync "Unterlagen") + (nextcloudSync "Nähen") + (nextcloudSync "Video") + (nextcloudSync "Kunstbuch") + (nextcloudSync "AWS-SolutionArchitect-Professional") + + (pkgs.writeShellScriptBin "nixFlakes" '' + exec ${pkgs.nixUnstable}/bin/nix --experimental-features "nix-command flakes" "$@" + '') + + nextcloud-client + + ]; + +} diff --git a/nixos/homes/palo/packages/packages.nix b/nixos/homes/palo/packages/packages.nix new file mode 100644 index 0000000..5afd845 --- /dev/null +++ b/nixos/homes/palo/packages/packages.nix @@ -0,0 +1,52 @@ +{ config, lib, pkgs, ... }: +with pkgs; +with lib; +{ + + config = mkIf config.gui.enable { + + # ¯\_(ツ)_/¯ + home.packages = [ + + easytag + dconf + + nixos-shell + + # bluetooth gui + blueberry + + mosquitto + (pkgs.writers.writeBashBin "mqtt-tail" '' + ${pkgs.mosquitto}/bin/mosquitto_sub -v \ + -h pepe.private \ + -u homeassistant \ + -P password \ + -t "#" + '') + + tor-browser-bundle-bin + #(tor-browser-bundle-bin.overrideAttrs (old: rec { + # version = "11.0.1"; + # name = "tor-browser-bundle-${version}"; + # src = pkgs.fetchurl { + # url = "https://dist.torproject.org/torbrowser/11.0.1/tor-browser-linux64-11.0.1_en-US.tar.xz"; + # sha256 = "1ah69jmfgik063f9gkvyv9d4k706pqihmzc4k7cc95zyd17v8wrs"; + # }; + #})) + + scraper + + bitwarden + + unstable.trilium-desktop + + nginx-config-formatter + + unstable.yt-dlp + + ]; + + }; + +} diff --git a/nixos/homes/palo/packages/social.nix b/nixos/homes/palo/packages/social.nix new file mode 100644 index 0000000..a560c65 --- /dev/null +++ b/nixos/homes/palo/packages/social.nix @@ -0,0 +1,46 @@ +{ config, lib, pkgs, ... }: +with pkgs; +with lib; +{ + + config = mkIf config.gui.enable { + programs.obs-studio.enable = true; + home.packages = [ + + #(pkgs.makeDesktopItem { + # name = "streamdeck-ui"; + # desktopName = "Streamdeck"; + # exec = "${streamdeck-ui}/bin/streamdeck-ui"; + # terminal = false; + #}) + streamdeck-ui + + emoji-picker + + signal-desktop + + # matrix clients + # -------------- + #element-desktop + #fractal + #legacy_2205.mirage-im + #cinny-desktop + fluffychat + #(fluffychat.overrideAttrs + # (old: rec { + # version = "1.13.0"; + # src = fetchFromGitHub { + # owner = "krille-chan"; + # repo = "fluffychat"; + # rev = "v${version}"; + # hash = "sha256-w29Nxs/d0b18jMvWnrRUjEGqY4jGtuEGodg+ncCAaVc="; + # }; + # vendorHash = ""; + # }) + #) + + + ]; + + }; +} diff --git a/nixos/machines/cream/configuration.nix b/nixos/machines/cream/configuration.nix index 50f2f3a..ba86463 100644 --- a/nixos/machines/cream/configuration.nix +++ b/nixos/machines/cream/configuration.nix @@ -8,8 +8,7 @@ ../../system/server/netdata.nix ./hardware-configuration.nix - ./packages.nix - ./packages-development.nix + ./syncthing.nix ./cups.nix ./tinc.nix diff --git a/nixos/machines/cream/packages-development.nix b/nixos/machines/cream/packages-development.nix deleted file mode 100644 index de2af6d..0000000 --- a/nixos/machines/cream/packages-development.nix +++ /dev/null @@ -1,91 +0,0 @@ -{ pkgs, lib, ... }: -{ - - environment.systemPackages = with pkgs; let - - # to make copilot work - # jetbrains.pycharm-professional - fhsPyCharm = pkgs.buildFHSUserEnv { - name = "pycharm"; - targetPkgs = pkgs: (with pkgs; [ - black - isort - #unstable.jetbrains.pycharm-professional - jetbrains.pycharm-professional - python311 - pipenv - zlib # needed for NumPy - nodejs - git - ]); - runScript = "pycharm-professional"; - }; - - # jetbrains.datagrip - fhsDataGrip = pkgs.buildFHSUserEnv { - name = "datagrip"; - targetPkgs = pkgs: (with pkgs; [ - unstable.jetbrains.datagrip - ]); - runScript = "datagrip"; - }; - - fhsClion = pkgs.buildFHSUserEnv { - name = "clion"; - targetPkgs = pkgs: (with pkgs; [ - unstable.jetbrains.clion - ]); - runScript = "clion"; - }; - - in - [ - - # rust development environment - gcc - rustup - - awscli2 - - unstable.mdbook - - overviewer - - openscad - freecad - cura - - # record your terminal - asciinema - asciinema-agg - asciinema-scenario - termtosvg - - # general - unstable.jetbrains.idea-ultimate - #vscode - - jetbrains.mps - - fhsDataGrip - fhsPyCharm - (pkgs.makeDesktopItem { - name = "pycharm"; - desktopName = "PyCharm"; - exec = "${fhsPyCharm}/bin/pycharm"; - terminal = false; - }) - fhsClion - (pkgs.makeDesktopItem { - name = "clion"; - desktopName = "Clion"; - exec = "${fhsClion}/bin/clion"; - terminal = false; - }) - - # python - python3Full - pipenv - - ]; -} diff --git a/nixos/machines/cream/packages.nix b/nixos/machines/cream/packages.nix deleted file mode 100644 index 6e64f4c..0000000 --- a/nixos/machines/cream/packages.nix +++ /dev/null @@ -1,148 +0,0 @@ -{ config, lib, pkgs, ... }: -let - nextcloudSync = folder: - let - password = "$( ${pkgs.pass}/bin/pass show home/nextcloud/palo/nextcloudcmd-token )"; - user = "palo"; - in - pkgs.writers.writeBashBin "nextcloud-sync-${folder}" '' - ${pkgs.nextcloud-client}/bin/nextcloudcmd \ - --path "${folder}" \ - ~/Nextcloud/${folder} \ - "https://${user}:${password}@nextcloud.ingolf-wagner.de" - ''; - - -in -{ - environment.systemPackages = with pkgs; [ - - easytag - dconf - - ((ganttproject-bin.override { - jre = pkgs.openjdk11; - }).overrideAttrs (old: { - version = "3.1.3100"; - src = pkgs.fetchzip { - url = "https://dl.ganttproject.biz/ganttproject-3.1.3100/ganttproject-3.1.3100.zip"; - sha256 = "sha256-hw2paak0P670/kemiuqYHIaN0uUtkVKy+AX2X7OdnJ4="; - }; - })) - - autorandr - nixos-shell - - colmena - gum - - (nextcloudSync "InstantUpload") - (nextcloudSync "Pictures") - (nextcloudSync "Unterlagen") - (nextcloudSync "Nähen") - (nextcloudSync "Video") - (nextcloudSync "Kunstbuch") - (nextcloudSync "AWS-SolutionArchitect-Professional") - - (pkgs.writeShellScriptBin "nixFlakes" '' - exec ${pkgs.nixUnstable}/bin/nix --experimental-features "nix-command flakes" "$@" - '') - - valentina - - signal-desktop - - sweethome3d.application - pkgs.polygon-art.polygon-art - - # bluetooth gui - blueberry - - nextcloud-client - #gimp - inkscape - imagemagick - - #bitwig-studio3 - darktable - - blender - lightburn - - mosquitto - (pkgs.writers.writeBashBin "mqtt-tail" '' - ${pkgs.mosquitto}/bin/mosquitto_sub -v \ - -h pepe.private \ - -u homeassistant \ - -P password \ - -t "#" - '') - - # matrix clients - # -------------- - #element-desktop - #fractal - #legacy_2205.mirage-im - #cinny-desktop - fluffychat - #(fluffychat.overrideAttrs - # (old: rec { - # version = "1.13.0"; - # src = fetchFromGitHub { - # owner = "krille-chan"; - # repo = "fluffychat"; - # rev = "v${version}"; - # hash = "sha256-w29Nxs/d0b18jMvWnrRUjEGqY4jGtuEGodg+ncCAaVc="; - # }; - # vendorHash = ""; - # }) - #) - - tor-browser-bundle-bin - #(tor-browser-bundle-bin.overrideAttrs (old: rec { - # version = "11.0.1"; - # name = "tor-browser-bundle-${version}"; - # src = pkgs.fetchurl { - # url = "https://dist.torproject.org/torbrowser/11.0.1/tor-browser-linux64-11.0.1_en-US.tar.xz"; - # sha256 = "1ah69jmfgik063f9gkvyv9d4k706pqihmzc4k7cc95zyd17v8wrs"; - # }; - #})) - - - nomad - wander - - sops - - scraper - - streamdeck-ui - sxiv - emoji-picker - - gojq - pureref - - steam-run - - bitwarden - unstable.trilium-desktop - nginx-config-formatter - pre-commit - - sensu-go-cli - yq-go - - unstable.yt-dlp - - #unstable.terragrunt - #unstable.terraform - #terraform-docs - - ]; - - home-manager.users.mainUser = { - programs.obs-studio.enable = true; - }; - -}