From 1fbd7bdb5fe23b0fb5a1c8264a44d31cf7ad99d7 Mon Sep 17 00:00:00 2001 From: Christian Sutter Date: Mon, 2 Mar 2026 14:32:34 +0000 Subject: [PATCH] Move back to rcrc files in dotfiles and fish A little bit of yak shaving but turns out I might stick with fish for the time being after all. --- src/personal-setup/NOTES.md | 5 ----- src/personal-setup/README.md | 7 +------ src/personal-setup/devcontainer-feature.json | 4 ++-- src/personal-setup/install.sh | 6 ++---- src/personal-setup/rcrc | 3 --- test/personal-setup/test.sh | 5 ++--- 6 files changed, 7 insertions(+), 23 deletions(-) delete mode 100644 src/personal-setup/rcrc diff --git a/src/personal-setup/NOTES.md b/src/personal-setup/NOTES.md index cd5d4b8..958758e 100644 --- a/src/personal-setup/NOTES.md +++ b/src/personal-setup/NOTES.md @@ -12,11 +12,6 @@ I've previously (ab)used the _Dev Containers_ extension's built in dotfiles supp This feature: - Installs a set of packages in the container (including `rcm` for dotfiles management) - Mounts my dotfiles repositories into the container -- Copies in an `rcrc` for dotfiles configuration, including: - - setting the correct tags and dotfiles mount locations - - avoiding setting up git config (as VS Code will copy it into the container anyway with - modifications, which would modify our canonical dotfiles version with transient, - container-specific setup) - Installs the dotfiles This feature is intended to be configured as part of my personal user settings as a default feature diff --git a/src/personal-setup/README.md b/src/personal-setup/README.md index ac74a94..934b55a 100644 --- a/src/personal-setup/README.md +++ b/src/personal-setup/README.md @@ -7,7 +7,7 @@ Sets up my desired software and configuration for any devcontainer environment. ```json "features": { - "ghcr.io/csutter/devcontainer-features/personal-setup:3": {} + "ghcr.io/csutter/devcontainer-features/personal-setup:4": {} } ``` @@ -27,11 +27,6 @@ I've previously (ab)used the _Dev Containers_ extension's built in dotfiles supp This feature: - Installs a set of packages in the container (including `rcm` for dotfiles management) - Mounts my dotfiles repositories into the container -- Copies in an `rcrc` for dotfiles configuration, including: - - setting the correct tags and dotfiles mount locations - - avoiding setting up git config (as VS Code will copy it into the container anyway with - modifications, which would modify our canonical dotfiles version with transient, - container-specific setup) - Installs the dotfiles This feature is intended to be configured as part of my personal user settings as a default feature diff --git a/src/personal-setup/devcontainer-feature.json b/src/personal-setup/devcontainer-feature.json index ead3ee7..d62ce92 100644 --- a/src/personal-setup/devcontainer-feature.json +++ b/src/personal-setup/devcontainer-feature.json @@ -1,6 +1,6 @@ { "id": "personal-setup", - "version": "3.0.0", + "version": "4.0.0", "name": "Personal Setup", "description": "Sets up my desired software and configuration for any devcontainer environment.", "mounts": [ @@ -16,7 +16,7 @@ } ], "containerEnv": { - "RCRC": "/etc/rcrc", + "RCRC": "/mnt/dotfiles/tag-devcontainer/rcrc", "_IS_DEVCONTAINER": "true" }, "postCreateCommand": "rcup -vf" diff --git a/src/personal-setup/install.sh b/src/personal-setup/install.sh index f525bcb..027476c 100755 --- a/src/personal-setup/install.sh +++ b/src/personal-setup/install.sh @@ -12,10 +12,10 @@ echo "Installing packages for distribution: $ID" case "$ID" in debian|ubuntu) apt-get update - apt-get install -y fzf git-delta rcm tree openssh-client + apt-get install -y fish git-delta rcm tree openssh-client ;; fedora) - dnf install -y fzf git-delta rcm tree openssh-clients + dnf install -y fish git-delta rcm tree openssh-clients ;; *) echo "Error: Unsupported distribution: $ID" @@ -23,5 +23,3 @@ case "$ID" in exit 1 ;; esac - -cp rcrc /etc/rcrc diff --git a/src/personal-setup/rcrc b/src/personal-setup/rcrc deleted file mode 100644 index ffb5e0a..0000000 --- a/src/personal-setup/rcrc +++ /dev/null @@ -1,3 +0,0 @@ -EXCLUDES="*.md config/git/config" -TAGS="devcontainer" -DOTFILES_DIRS="/mnt/dotfiles /mnt/dotfiles-private" diff --git a/test/personal-setup/test.sh b/test/personal-setup/test.sh index 98e8f9f..bfa8fb5 100755 --- a/test/personal-setup/test.sh +++ b/test/personal-setup/test.sh @@ -4,13 +4,12 @@ set -e source dev-container-features-test-lib check "delta is available" bash -c "which delta" -check "fzf is available" bash -c "which fzf" +check "fish is available" bash -c "which fish" check "rcm is available" bash -c "which rcup" check "ssh is available" bash -c "which ssh" check "tree is available" bash -c "which tree" # Use a dotfile that should _always_ be present on any system -check "dotfiles are installed" bash -c "test -f $HOME/.config/fish/config.fish" -check "rcrc is present" bash -c "test -f /etc/rcrc" +check "dotfiles are installed" bash -c "test -f $HOME/.rcrc" check "_IS_DEVCONTAINER is set" bash -c "test \"\$_IS_DEVCONTAINER\" = \"true\"" reportResults