mirror of
https://github.com/moons-14/dotfiles.git
synced 2026-10-06 05:48:12 +09:00
minimal profile
This commit is contained in:
@@ -24,6 +24,7 @@ required on every supported host.
|
||||
| Profile | Supported host class |
|
||||
| ------------------------------------ | --------------------------------------------- |
|
||||
| `base` | NixOS, macOS |
|
||||
| `interface.minimal` | NixOS, macOS with Home Manager |
|
||||
| `interface.cli` | NixOS, macOS with Home Manager |
|
||||
| `interface.gui` | NixOS, macOS with Home Manager |
|
||||
| `interface.macos` | macOS |
|
||||
@@ -61,6 +62,11 @@ selects labwc. A daily-use macOS development machine can combine
|
||||
`interface.macos`, `workload.development`, and `workload.personal`. Hardware
|
||||
support does not implicitly select an interface or workload.
|
||||
|
||||
`interface.minimal` provides SSH client access and key generation, Nano, htop,
|
||||
btop, fastfetch, unzip, wget, Direnv, Git, GnuPG, nh, Zellij, and Zsh for remote
|
||||
administration. `interface.cli` includes that baseline and adds the configured
|
||||
Neovim, Yazi, and the remaining interactive command-line tools.
|
||||
|
||||
`workload.machine-learning` provides the Hugging Face Hub CLI for hosts used
|
||||
to download and publish machine learning models and datasets.
|
||||
|
||||
|
||||
@@ -8,36 +8,17 @@
|
||||
dust
|
||||
eza
|
||||
fd
|
||||
fastfetch
|
||||
fzf
|
||||
htop
|
||||
jq
|
||||
lsof
|
||||
nurl
|
||||
ripgrep
|
||||
tio
|
||||
unrar
|
||||
unzip
|
||||
wget
|
||||
]
|
||||
++ lib.optionals stdenv.isLinux [
|
||||
lm_sensors
|
||||
psmisc
|
||||
strace
|
||||
];
|
||||
|
||||
home.activation.generateSshKey = {
|
||||
after = [ "writeBoundary" ];
|
||||
before = [ ];
|
||||
data = ''
|
||||
key="$HOME/.ssh/id_ed25519"
|
||||
if [ ! -f "$key" ]; then
|
||||
umask 077
|
||||
mkdir -p "$HOME/.ssh"
|
||||
${pkgs.openssh}/bin/ssh-keygen -t ed25519 -N "" -f "$key" \
|
||||
-C "moons@$(${pkgs.hostname}/bin/hostname || echo host)"
|
||||
echo "Generated SSH key at $key"
|
||||
fi
|
||||
'';
|
||||
};
|
||||
}
|
||||
|
||||
@@ -2,17 +2,10 @@
|
||||
description = "Cross-platform interactive command-line environment";
|
||||
|
||||
includes = [
|
||||
"applications.btop"
|
||||
"applications.direnv"
|
||||
"applications.git"
|
||||
"applications.gnupg"
|
||||
"applications.nh"
|
||||
"profiles.interface.minimal"
|
||||
"applications.nix-index"
|
||||
"applications.ssh"
|
||||
"applications.vim"
|
||||
"applications.yazi"
|
||||
"applications.zellij"
|
||||
"applications.zoxide"
|
||||
"applications.zsh"
|
||||
];
|
||||
}
|
||||
|
||||
@@ -0,0 +1,8 @@
|
||||
{ pkgs, ... }:
|
||||
{
|
||||
home.packages = with pkgs; [
|
||||
fastfetch
|
||||
unzip
|
||||
wget
|
||||
];
|
||||
}
|
||||
@@ -0,0 +1,16 @@
|
||||
{
|
||||
description = "Minimal cross-platform command-line environment for remote administration";
|
||||
|
||||
includes = [
|
||||
"applications.btop"
|
||||
"applications.direnv"
|
||||
"applications.git"
|
||||
"applications.gnupg"
|
||||
"applications.htop"
|
||||
"applications.nano"
|
||||
"applications.nh"
|
||||
"applications.ssh"
|
||||
"applications.zellij"
|
||||
"applications.zsh"
|
||||
];
|
||||
}
|
||||
Reference in New Issue
Block a user