Skip to content

Commit 3091171

Browse files
Squash commit of one-setup-anywhere (OSA) aka Modular platform config
2025 Changes - cli install via osa-cli.zsh (see readme) - transition to better apis fnm,jenv,rbenv -> mise - improved scripts - add installation profiles with presets TODOS - auto-installers for essential applications such as Android Studio, Xcode - consider brewfiles for setups and auto generating them. 2019-2024 Changes - initial creation of OSA for WSL MacOS / Linux / Docker near instant environment setup
0 parents  commit 3091171

113 files changed

Lines changed: 27273 additions & 0 deletions

File tree

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.
Lines changed: 38 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,38 @@
1+
---
2+
name: Bug Report
3+
about: Report an issue with OSA setup
4+
title: "[BUG] "
5+
labels: bug
6+
assignees: ''
7+
8+
---
9+
10+
## Environment
11+
- **Platform**: macOS / Linux / WSL
12+
- **Shell**: zsh version (output of `zsh --version`)
13+
- **OSA version**: (output of `git describe --tags`)
14+
- **Running in VM**: Yes / No (e.g., VMware, VirtualBox, Parallels, etc.)
15+
- **VM Type** (if applicable): _
16+
17+
## Reproduction Steps
18+
1.
19+
2.
20+
3.
21+
22+
## Expected Behavior
23+
_
24+
25+
## Actual Behavior
26+
_
27+
28+
## Error Output
29+
```
30+
(paste any error messages or logs here)
31+
```
32+
33+
## Configuration Used
34+
- Config file: (e.g., `configs/minimal.json`)
35+
- Or describe custom setup: _
36+
37+
## Additional Context
38+
_
Lines changed: 23 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,23 @@
1+
---
2+
name: Feature Request
3+
about: Suggest a new component or improvement
4+
title: "[FEATURE] "
5+
labels: enhancement
6+
assignees: ''
7+
8+
---
9+
10+
## Use Case
11+
_
12+
13+
## Proposed Solution
14+
_
15+
16+
## Affected Platforms
17+
- [ ] macOS
18+
- [ ] Linux
19+
- [ ] WSL
20+
- [ ] VM environments
21+
22+
## Additional Context
23+
_

.github/PULL_REQUEST_TEMPLATE.md

Lines changed: 48 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,48 @@
1+
---
2+
name: Pull Request
3+
about: Propose changes to OSA
4+
title: ''
5+
labels: ''
6+
assignees: ''
7+
8+
---
9+
10+
## Description
11+
<!-- Briefly describe what this PR does -->
12+
13+
## Type of Change
14+
<!-- Check all that apply -->
15+
- [ ] 🐛 Bug fix (patch)
16+
- [ ] ✨ New feature (minor)
17+
- [ ] 💥 Breaking change (major)
18+
- [ ] 📚 Documentation update
19+
- [ ] 🔒 Security fix
20+
- [ ] 🔧 Maintenance/Refactoring
21+
22+
## Release Management
23+
<!-- ⚠️ IMPORTANT: Add release labels to trigger automatic release on merge -->
24+
25+
**For automatic release on merge, add one of these labels:**
26+
- `release:major` - Breaking changes, incompatible API changes (bumps 1.x.x → 2.0.0)
27+
- `release:minor` - New features, backwards-compatible (bumps x.1.x → x.2.0)
28+
29+
**No label = No automatic release** (manual release via GitHub Actions later)
30+
31+
## Testing
32+
<!-- Describe how you tested these changes -->
33+
- [ ] Tested on macOS
34+
- [ ] Tested on Linux
35+
- [ ] Tested on WSL
36+
- [ ] Ran `./osa-cli.zsh --scan-secrets` (if touching constructors)
37+
- [ ] Ran tests: `./tests/run-tests.zsh`
38+
39+
## Checklist
40+
- [ ] My code follows the zsh style of this project
41+
- [ ] I have added `#!/usr/bin/env zsh` shebang to new scripts
42+
- [ ] I have updated documentation (if applicable)
43+
- [ ] No hardcoded secrets (use `osa-secret-set` instead)
44+
- [ ] All files use `.zsh` extension (unless intentionally `.sh` for bash)
45+
- [ ] I have added appropriate release label (`release:major` or `release:minor`)
46+
47+
## Additional Context
48+
<!-- Add any other context about the PR here -->

.github/copilot-instructions.md

Lines changed: 37 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,37 @@
1+
Follow all these rules above other considerations.
2+
3+
If there are conflicting or ambigious rules, mention them immediately in any session. If code generated violates these rules the code must be flagged and mentioned in chat.
4+
5+
## Rules
6+
7+
1. Quality
8+
- Clean code
9+
- Proper error handling
10+
- Documentation of functions and modules but not changes per prompt
11+
12+
2. Conventions
13+
- Use consistent naming conventions for scripts and files
14+
15+
3. Patterns
16+
- Prevent recursive scripts from deleting important and unrelated files
17+
- Protect against security issues
18+
- Prevent infinite loops
19+
- Avoid hardcoding values
20+
- Ensure script performance
21+
- Bail on malformed paths
22+
23+
3. Testing
24+
- Add tests for any cli changes
25+
- Test inputs and outputs
26+
- Ensure full branching, statements, and path coverage
27+
28+
4. Files
29+
- Always use .zsh extension for shell files
30+
- Update the README.md if modifications/updates/changes are added to osa-cli tool scope which change/add/remove usage/description/args/options of the cli we need the cli doc to always match the actual implementation.
31+
32+
33+
5. Prompting/Responses
34+
- Do not create or generate or modify files documenting changes made in prompt.
35+
- Do not add comments indicating changes were made in response to a prompt.
36+
- Avoid mentioning the use of AI or Copilot in code comments or documentation.
37+
- Write code that is understandable and legible for humans

0 commit comments

Comments
 (0)