From 20e7847ee37d6d523add154a009fceaecfd2f1e9 Mon Sep 17 00:00:00 2001 From: Tyler Starr Date: Wed, 12 Mar 2025 22:15:45 -0700 Subject: [PATCH] migrate some base terminal to devel --- provision/hosts/kestrel/configuration.nix | 1 + provision/hosts/osprey/configuration.nix | 1 + provision/hosts/shivan/configuration.nix | 1 + provision/modules/devel/default.nix | 1 + provision/modules/devel/programming.nix | 16 ++++++++++++++++ provision/modules/programs/base-terminal.nix | 6 ------ 6 files changed, 20 insertions(+), 6 deletions(-) create mode 100644 provision/modules/devel/programming.nix diff --git a/provision/hosts/kestrel/configuration.nix b/provision/hosts/kestrel/configuration.nix index 139d6f60..5a9daf50 100644 --- a/provision/hosts/kestrel/configuration.nix +++ b/provision/hosts/kestrel/configuration.nix @@ -38,6 +38,7 @@ devel = { engineering.enable = true; notes.enable = true; + programming.enable = true; }; gaming = { emulation.enable = true; diff --git a/provision/hosts/osprey/configuration.nix b/provision/hosts/osprey/configuration.nix index 125b32ab..3c545c9d 100644 --- a/provision/hosts/osprey/configuration.nix +++ b/provision/hosts/osprey/configuration.nix @@ -34,6 +34,7 @@ }; devel = { engineering.enable = true; + programming.enable = true; }; programs = { appgate-sdp.enable = true; diff --git a/provision/hosts/shivan/configuration.nix b/provision/hosts/shivan/configuration.nix index 0323cc89..0112e912 100644 --- a/provision/hosts/shivan/configuration.nix +++ b/provision/hosts/shivan/configuration.nix @@ -22,6 +22,7 @@ devel = { engineering.enable = true; notes.enable = true; + programming.enable = true; }; programs = { kitty.enable = true; diff --git a/provision/modules/devel/default.nix b/provision/modules/devel/default.nix index 7e5d079c..e664320e 100644 --- a/provision/modules/devel/default.nix +++ b/provision/modules/devel/default.nix @@ -3,5 +3,6 @@ imports = [ ./engineering.nix ./notes.nix + ./programming.nix ]; } diff --git a/provision/modules/devel/programming.nix b/provision/modules/devel/programming.nix new file mode 100644 index 00000000..83a86d65 --- /dev/null +++ b/provision/modules/devel/programming.nix @@ -0,0 +1,16 @@ +{ config, lib, pkgs, user, ... }: + +let cfg = config.modules.devel.programming; +in { + options.modules.devel.programming.enable = lib.mkEnableOption "programming"; + config = lib.mkIf cfg.enable { + environment.systemPackages = with pkgs; [ + thefuck # Corrects errors in previous console commands + nodejs # JavaScript runtime built on Chrome's V8 JavaScript engine + cargo # Package manager and build system for Rust + docker-compose # Docker CLI plugin to define and run multi-container applications with Docker + distrobox # Use any linux distribution inside your terminal + just # Hand way to save and run project-specific commands + ]; + }; +} diff --git a/provision/modules/programs/base-terminal.nix b/provision/modules/programs/base-terminal.nix index 0719e2bb..340e9c7d 100644 --- a/provision/modules/programs/base-terminal.nix +++ b/provision/modules/programs/base-terminal.nix @@ -20,21 +20,15 @@ in { bash # GNU Bourne-Again SHell, a command language interpreter for Unix-like operating systems bash-completion # Provides programmable completion for the bash shell tmux # Terminal multiplexer, allowing multiple terminal sessions within a single window - thefuck # Corrects errors in previous console commands nnn # Terminal file manager with a focus on performance and ease of use advcpmv # Advanced version of the Unix utilities cp and mv unzip # Command-line utility for extracting files from ZIP archives trash-cli # Command-line interface to the freedesktop.org Trash vim # Text editor that is highly configurable and widely used, especially in the Unix environment - nodejs # JavaScript runtime built on Chrome's V8 JavaScript engine ripgrep # Line-oriented search tool that recursively searches directories for a regex pattern - cargo # Package manager and build system for Rust - docker-compose # Docker CLI plugin to define and run multi-container applications with Docker sesh # Smart session manager for the terminal zoxide # Fast cd command that learns your habits fzf # Command-line fuzzy finder for Unix-like operating systems - distrobox # Use any linux distribution inside your terminal - just # Hand way to save and run project-specific commands ]; }; }