fix: Enable root user for local VM execution

This commit is contained in:
2025-08-17 03:01:07 +02:00
parent 9d8369b6ea
commit cd001cade7
3 changed files with 20 additions and 19 deletions

View File

@@ -68,15 +68,15 @@ test-usb: build-usb
-device virtio-net,netdev=net0 \ -device virtio-net,netdev=net0 \
-display gtk -display gtk
vm-run:
@echo "🖥️ Starting workshop VM..."
nix run .#local-vm
vm: vm-run vm: vm-run
vm-build: vm-run:
@echo "🧪 Testing VM build..." @echo "🖥️ Starting workshop VM as root..."
nix build .#local-vm nix run .#local-vm -- --extra-experimental-features 'nix-command flakes' --command root
vm: vm-build
@echo "🧪 Testing VM build as root..."
nix build --extra-experimental-features 'nix-command flakes' .#local-vm
@echo "✅ VM builds successfully" @echo "✅ VM builds successfully"
deploy-cloud: deploy-cloud:

View File

@@ -183,21 +183,22 @@ isoConfig // {
sleep 2 sleep 2
done done
# Install abra for workshop user (as root, but install to user home) # Install abra for workshop user - as root, to /usr/local/bin
if [ ! -f /home/workshop/.local/bin/abra ]; then if [ ! -f /usr/local/bin/abra ]; then
echo "🚀 Installing abra for user workshop..." echo "🚀 Installing abra for root user..."
mkdir -p /home/workshop/.local/bin
# Download and install as root, but to user directory # Download and install abra directly to /usr/local/bin
HOME=/home/workshop curl -fsSL https://install.abra.coopcloud.tech | bash curl -fsSL https://install.abra.coopcloud.tech | bash
# Fix ownership
chown -R workshop:workshop /home/workshop/.local if [ -f /usr/local/bin/abra ] && [ -x /usr/local/bin/abra ]; then
if [ -f /home/workshop/.local/bin/abra ]; then echo " abra installed successfully to /usr/local/bin/abra"
echo " abra installed successfully."
else else
echo " abra installation failed." echo " abra installation failed."
echo "🔍 Debug: Contents of /usr/local/bin:"
ls -la /usr/local/bin/abra 2>/dev/null || echo "File not found"
fi fi
else else
echo " abra already installed." echo " abra already installed at /usr/local/bin/abra"
fi fi
# Initialize Docker Swarm # Initialize Docker Swarm

View File

@@ -98,7 +98,7 @@
# Fix the auto-login conflict with mkForce # Fix the auto-login conflict with mkForce
services.displayManager.autoLogin = lib.mkForce { services.displayManager.autoLogin = lib.mkForce {
enable = true; enable = true;
user = "workshop"; user = "root";
}; };
# Keep GUI session commands for when GUI is used # Keep GUI session commands for when GUI is used
services.xserver.displayManager.sessionCommands = '' services.xserver.displayManager.sessionCommands = ''