Skip to content

Commit 97f64f2

Browse files
author
Derek
committed
docs: Update README and CHANGELOG for v2.9.0 release
Fully tested on all platforms: - Fedora 42: 319 ok, 0 failed - Ubuntu 24.04: 346 ok, 0 failed - macOS Sequoia: 120 ok, 0 failed
1 parent 011cee5 commit 97f64f2

2 files changed

Lines changed: 76 additions & 109 deletions

File tree

CHANGELOG.md

Lines changed: 22 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -7,10 +7,31 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
77

88
## [2.8.7](https://github.com/hypersec-io/dfe-developer/compare/v2.8.6...v2.8.7) (2025-12-10)
99

10+
### Fully Tested Release
11+
12+
All platforms tested on fresh VMs with zero failures:
13+
14+
| Platform | Tasks | Result |
15+
|----------|-------|--------|
16+
| Fedora 42 | 319 ok, 0 failed | PASS |
17+
| Ubuntu 24.04 | 346 ok, 0 failed | PASS |
18+
| macOS Sequoia | 120 ok, 0 failed | PASS |
1019

1120
### Bug Fixes
1221

13-
* Ghostty theme names, deprecated options, and panel transparency ([c974634](https://github.com/hypersec-io/dfe-developer/commit/c97463446229debd9d930a7d3d84f9e60205874f))
22+
* Ghostty theme names updated to Ghostty 1.2.x format (`Builtin Solarized Light/Dark`)
23+
* Ghostty deprecated `gtk-single-instance` option removed (was causing startup hangs)
24+
* Ghostty global keybind disabled (causes issues on GNOME/RDP)
25+
* Linear CLI now installs to user npm-global directory (not system-wide)
26+
* Dash to Panel transparency enabled by default (60% opacity)
27+
28+
### Features
29+
30+
* GNOME extensions installed via gext (extensions.gnome.org) for GNOME 48 compatibility
31+
* winlike/maclike tag exclusivity enforced (maclike overrides if both specified)
32+
* Added `ansible/test.sh` for easier testing
33+
34+
---
1435

1536
## [2.8.6](https://github.com/hypersec-io/dfe-developer/compare/v2.8.5...v2.8.6) (2025-12-10)
1637

README.md

Lines changed: 54 additions & 108 deletions
Original file line numberDiff line numberDiff line change
@@ -7,148 +7,94 @@
77
[![Last Commit](https://img.shields.io/github/last-commit/hypersec-io/dfe-developer)](https://github.com/hypersec-io/dfe-developer/commits/main)
88
[![Stars](https://img.shields.io/github/stars/hypersec-io/dfe-developer?style=social)](https://github.com/hypersec-io/dfe-developer/stargazers)
99

10-
Standardised complete developer environment setup for HyperSec DFE developers across multiple platforms.
10+
Standardised developer environment for HyperSec DFE teams. One command gets you Docker, Kubernetes tools, cloud CLIs, and a properly configured desktop.
1111

1212
## Platform Support
1313

14-
- **[Multi-Platform (Recommended)](#multi-platform-quick-start)** - Ansible-based setup for Ubuntu, Fedora, and macOS
15-
- **[Windows 11](#windows-11-soe)** - Productivity and VM host setup with Hyper-V
14+
| Platform | Status | Notes |
15+
|----------|--------|-------|
16+
| **Ubuntu 24.04** | Fully tested | Primary platform |
17+
| **Fedora 42** | Fully tested | GNOME 48 compatible |
18+
| **macOS Sequoia** | Fully tested | Homebrew-based |
19+
| **Windows 11** | Productivity host | Hyper-V for Linux VMs |
1620

17-
## Multi-Platform Quick Start
18-
19-
**Recommended for all new installations.** Supports Ubuntu 24.04+ (primary), Fedora 42+, and macOS.
20-
21-
**v2.4+**: Ubuntu is now the primary supported platform, with Fedora and macOS as secondary platforms.
21+
## Quick Start
2222

2323
```bash
24-
# Clone the repository
2524
git clone https://github.com/hypersec-io/dfe-developer
2625
cd dfe-developer
2726

28-
# Install base developer environment (default)
27+
# Base install (Docker, Git, K8s tools, VS Code, Chrome)
2928
./install.sh
3029

31-
# Install with core developer tools
32-
./install.sh --core
33-
34-
# Install everything (base + core + VM + RDP + winlike desktop)
30+
# Full install with everything
3531
./install.sh --all
3632

37-
# Include Windows-style GNOME desktop (bottom taskbar)
38-
./install.sh --tags developer,base,winlike
39-
40-
# Include macOS-style GNOME desktop (dock, logo menu, magic lamp)
41-
./install.sh --tags developer,base,maclike
42-
43-
# Exclude specific features (ghostty, fastestmirror, wallpaper)
44-
./install.sh --tags-exclude ghostty,wallpaper
45-
46-
# Dry-run to see what would change
33+
# Check what would change first
4734
./install.sh --check
4835
```
4936

50-
The Ansible-based installer automatically detects your OS and installs the appropriate packages.
37+
The installer detects your OS and installs the right packages. Run `./install.sh --help` for all options.
5138

52-
### Tag-Based Installation
53-
54-
All options use Ansible tags. Use `--tags` to include features, `--tags-exclude` to exclude them.
39+
### Installation Options
5540

5641
```bash
57-
# Include specific tags
42+
# Windows-style taskbar (Dash to Panel)
5843
./install.sh --tags developer,base,winlike
5944

60-
# Exclude specific tags (from default or --all)
61-
./install.sh --tags-exclude ghostty,wallpaper
45+
# macOS-style dock
46+
./install.sh --tags developer,base,maclike
47+
48+
# Core tools (JFrog, Azure CLI, Node.js, Linear CLI)
49+
./install.sh --core
6250

63-
# Combine: install everything except specific features
51+
# Full install without wallpaper
6452
./install.sh --all --tags-exclude wallpaper
6553
```
6654

67-
#### Available Tags
68-
69-
**Base Tags (included by default):**
70-
71-
- `developer` - Base DFE developer role
72-
- `base` - Base tools (Docker, Git, K8s, Python, VS Code, Chrome)
73-
74-
**Feature Tags (opt-in, require explicit --tags or --all):**
75-
76-
- `winlike` - Windows-style GNOME taskbar (Dash to Panel, bottom panel)
77-
- `maclike` - macOS-style GNOME dock (Dash to Dock, Logo Menu, Magic Lamp)
78-
- `core` - Core developer tools (JFrog, Azure CLI, Node.js, Linear CLI)
79-
- `advanced` - Advanced tools (included with --core)
80-
- `vm` - VM guest optimizations (QEMU guest agent, SPICE agent)
81-
- `optimizer` - VM optimizer role (included with --vm)
82-
- `rdp` - GNOME Remote Desktop configuration (RDP server on port 3389)
83-
84-
**Optional Tags (included by default, can be excluded):**
55+
### Available Tags
8556

86-
- `ghostty` - Ghostty terminal emulator
87-
- `fastestmirror` - DNF/APT performance optimizations
88-
- `wallpaper` - Custom DFE wallpaper
57+
| Tag | Description |
58+
|-----|-------------|
59+
| `winlike` | Windows-style taskbar with transparent panel |
60+
| `maclike` | macOS-style dock (overrides winlike if both specified) |
61+
| `core` | JFrog CLI, Azure CLI, Node.js, Linear CLI, OpenVPN |
62+
| `rdp` | GNOME Remote Desktop on port 3389 |
63+
| `vm` | VM guest optimizations (QEMU/SPICE agents) |
64+
| `ghostty` | Ghostty terminal (included by default) |
65+
| `wallpaper` | Custom wallpaper (included by default) |
8966

90-
**Component Tags:**
91-
92-
- `docker` - Docker Desktop (macOS) or Docker CE (Linux)
93-
- `git` - Latest Git + GitHub CLI + Git LFS
94-
- `cloud` - AWS CLI, Helm, Terraform, Vault
95-
- `k8s` - kubectl, k9s, kubectx, minikube, argocd, dive
96-
- `python` - UV Python manager
97-
- `utilities` - Development utilities (jq, bat, fzf, ripgrep, etc.)
98-
- `vscode` - Visual Studio Code
99-
- `chrome` - Google Chrome
100-
101-
**Core Component Tags (require --core or explicit --tags):**
67+
## What Gets Installed
10268

103-
- `jfrog` - JFrog CLI
104-
- `azure` - Azure CLI
105-
- `nodejs` - Node.js + semantic-release
106-
- `linear` - Linear CLI
107-
- `openvpn` - OpenVPN 3 client
108-
- `claude` - Claude Code CLI
109-
- `slack` - Slack (GUI)
69+
**Base install** (`./install.sh`):
11070

111-
#### Using Ansible directly
71+
- Docker CE + Docker Desktop
72+
- Git, GitHub CLI, Git LFS
73+
- kubectl, k9s, kubectx, minikube, ArgoCD, dive, Freelens
74+
- AWS CLI, Helm, Terraform, Vault
75+
- UV (Python manager)
76+
- VS Code, Chrome
77+
- Ghostty terminal (Solarized theme)
78+
- Development utilities (jq, yq, bat, fzf, ripgrep, htop)
11279

113-
```bash
114-
cd ansible
80+
**Core tools** (`./install.sh --core`):
11581

116-
# Install only Docker (dependencies run automatically)
117-
ansible-playbook -i inventories/localhost/inventory.yml playbooks/main.yml --tags docker
82+
- JFrog CLI, Azure CLI
83+
- Node.js, semantic-release, Linear CLI
84+
- OpenVPN 3, Claude Code CLI
85+
- Slack, Gitleaks, act (GitHub Actions runner)
11886

119-
# Install with winlike desktop
120-
ansible-playbook -i inventories/localhost/inventory.yml playbooks/main.yml --tags developer,base,winlike
87+
**Desktop** (`winlike` or `maclike` tag):
12188

122-
# Install everything EXCEPT Ghostty terminal
123-
ansible-playbook -i inventories/localhost/inventory.yml playbooks/main.yml --skip-tags ghostty
124-
```
89+
- GNOME extensions from extensions.gnome.org
90+
- Transparent taskbar (winlike) or dock (maclike)
91+
- Custom wallpaper
12592

126-
## What Gets Installed
93+
## Requirements
12794

128-
### Standard Developer Tools
129-
- Docker CE and Docker Compose
130-
- Python development (UV, pyenv)
131-
- Cloud tools (AWS CLI, kubectl, Helm + Dashboard, Terraform)
132-
- Kubernetes tools (K9s, Freelens, Minikube, ArgoCD)
133-
- Git extensions and GitHub CLI
134-
- Development utilities (jq, yq, bat, fzf, ripgrep)
135-
- VS Code configuration
136-
137-
### DFE Core Developer Tools
138-
- JFrog CLI
139-
- Azure CLI
140-
- Node.js and semantic-release
141-
- AI coding assistants (Claude Code CLI)
142-
- Advanced Python tools (Nox, UV)
143-
- Slack (Flatpak)
144-
145-
## System Requirements
146-
147-
- **Ubuntu:** 24.04 LTS or later (primary)
148-
- **Fedora:** 42 or later
149-
- **macOS:** Sequoia 15.3.1 or later
150-
- 4GB RAM minimum (8GB recommended)
151-
- 20GB available disk space
95+
- **Ubuntu 24.04+**, **Fedora 42+**, or **macOS Sequoia**
96+
- 8GB RAM recommended
97+
- 20GB disk space
15298
- Internet connection
15399

154100
## Project Structure
@@ -298,7 +244,7 @@ cd windows
298244
- **Core Isolation** - Memory integrity protection
299245
- **Defender ATP** - Optional automated onboarding (drop package in directory)
300246

301-
### Requirements
247+
### Windows Requirements
302248

303249
- **Windows 11 Pro** (24H2 or later recommended, Build 26100+)
304250
- **Administrator privileges**

0 commit comments

Comments
 (0)