Enhance Linux and macOS development station configurations:

- Add user management and Oh My Zsh settings
- Update service scripts to use Zsh
- Include new packages and environment variables
- Modify Terraform configuration for upstream services
This commit is contained in:
2026-07-10 17:15:24 -04:00
parent 59b2c10c43
commit 5818b05d96
12 changed files with 297 additions and 7 deletions
@@ -7,7 +7,7 @@ Type=simple
User={{ linux_dev_station_service_user }}
Group={{ linux_dev_station_service_user }}
WorkingDirectory={{ linux_dev_station_workspace_dir }}
ExecStart=/bin/bash {{ linux_dev_station_scripts_dir }}/start-ide.sh
ExecStart=/bin/zsh -i {{ linux_dev_station_scripts_dir }}/start-ide.sh
Restart=always
RestartSec=5
StandardOutput=append:{{ linux_dev_station_logs_dir }}/code-server.log
@@ -15,6 +15,7 @@ StandardError=append:{{ linux_dev_station_logs_dir }}/code-server.err.log
Environment="HOME={{ linux_dev_station_service_home }}"
Environment="PATH={{ linux_dev_station_path }}"
Environment="TMPDIR={{ linux_dev_station_service_home }}/.cache/tmp"
Environment="PASSWORD={{ linux_dev_station_code_server_password }}"
{% if linux_dev_station_ssh_agent_enabled | bool %}
Environment="SSH_AUTH_SOCK={{ linux_dev_station_ssh_agent_socket }}"
@@ -7,7 +7,7 @@ Type=simple
User={{ linux_dev_station_service_user }}
Group={{ linux_dev_station_service_user }}
WorkingDirectory={{ linux_dev_station_workspace_dir }}
ExecStart=/bin/bash {{ linux_dev_station_scripts_dir }}/start-opencode.sh
ExecStart=/bin/zsh -i {{ linux_dev_station_scripts_dir }}/start-opencode.sh
Restart=always
RestartSec=5
StandardOutput=append:{{ linux_dev_station_logs_dir }}/opencode.log
@@ -15,6 +15,7 @@ StandardError=append:{{ linux_dev_station_logs_dir }}/opencode.err.log
Environment="HOME={{ linux_dev_station_service_home }}"
Environment="PATH={{ linux_dev_station_path }}"
Environment="TMPDIR={{ linux_dev_station_service_home }}/.cache/tmp"
Environment="OPENCODE_SERVER_USERNAME={{ linux_dev_station_opencode_server_username }}"
Environment="OPENCODE_SERVER_PASSWORD={{ linux_dev_station_opencode_server_password }}"
{% for env_key, env_value in linux_dev_station_opencode_extra_environment.items() %}
@@ -1,7 +1,16 @@
#!/usr/bin/env bash
#!/usr/bin/env zsh
set -euo pipefail
# Suppress ZLE warnings from Oh My Zsh (no TTY in systemd)
setopt NOZLE 2>/dev/null || true
# Override TMPDIR — /tmp is noexec on Fedora, Bun needs an executable temp
export TMPDIR="{{ linux_dev_station_service_home }}/.cache/tmp"
mkdir -p "$TMPDIR"
# Clean stale files older than 7 days
find "$TMPDIR" -mindepth 1 -atime +7 -delete 2>/dev/null || true
{% if linux_dev_station_ssh_agent_enabled | bool %}
source "{{ linux_dev_station_scripts_dir }}/ssh-agent-start.sh"
{% endif %}
@@ -1,7 +1,16 @@
#!/usr/bin/env bash
#!/usr/bin/env zsh
set -euo pipefail
# Suppress ZLE warnings from Oh My Zsh (no TTY in systemd)
setopt NOZLE 2>/dev/null || true
# Override TMPDIR — /tmp is noexec on Fedora, Bun needs an executable temp
export TMPDIR="{{ linux_dev_station_service_home }}/.cache/tmp"
mkdir -p "$TMPDIR"
# Clean stale files older than 7 days
find "$TMPDIR" -mindepth 1 -atime +7 -delete 2>/dev/null || true
{% if linux_dev_station_ssh_agent_enabled | bool %}
source "{{ linux_dev_station_scripts_dir }}/ssh-agent-start.sh"
{% endif %}