docs: update readme, roadmap, and unfree guidelines ref #35

This commit is contained in:
N1C4T
2026-01-13 02:33:23 +04:00
parent 1cbbdbb08d
commit 4565449e5d
2 changed files with 23 additions and 3 deletions

View File

@@ -257,6 +257,7 @@ TuxMate uses the [Iconify API](https://iconify.design/) for icons. Icon helpers
- [ ] Ubuntu/Debian packages are in **Main/Universe only** (no PPAs)
- [ ] Flatpak uses **full App ID** from [Flathub](https://flathub.org/)
- [ ] Snap packages checked for `--classic` requirement
- [ ] Nix packages checked for unfree license (add to `KNOWN_UNFREE_PACKAGES` if needed)
- [ ] Homebrew uses correct format: `'formula'` for CLI, `'--cask name'` for GUI apps
### Code Quality
@@ -436,12 +437,30 @@ src/lib/
├── ubuntu.ts # Ubuntu apt + PPA handling
├── fedora.ts # Fedora dnf + RPM Fusion
├── opensuse.ts # openSUSE zypper
├── nix.ts # Nix package manager
├── nix.ts # Nix declarative config generator
├── flatpak.ts # Flatpak (parallel install)
├── snap.ts # Snap packages
└── homebrew.ts # Homebrew (formulae + casks)
```
### Nix Unfree Packages
When adding Nix packages, check if they require `allowUnfree = true`. Unfree packages are detected in [`src/lib/nixUnfree.ts`](src/lib/nixUnfree.ts).
**Known unfree packages** (add new ones to `KNOWN_UNFREE_PACKAGES`):
- Communication: `discord`, `slack`, `zoom-us`, `teams`, `skypeforlinux`
- Browsers: `google-chrome`, `vivaldi`, `opera`
- Media: `spotify`
- Gaming: `steam`
- Dev: `vscode`, `sublime-text`, `postman`, `code-cursor`, `vagrant`, JetBrains IDEs
- Creative: `davinci-resolve`
- Other: `obsidian`, `dropbox`, `1password`
**How it works:**
1. User selects unfree packages with Nix distro
2. UI shows amber warning listing affected apps
3. Downloaded `configuration.nix` includes comment with `allowUnfree` instructions
### Script Generator Features
Each script generator implements these core capabilities:

View File

@@ -25,7 +25,7 @@ Fresh install? New machine? Can't remember every package name? We've all been th
- Arch Linux (pacman + AUR)
- Fedora (dnf)
- openSUSE (zypper)
- Nix (nix-env)
- Nix (declarative config)
- Flatpak
- Snap
- Homebrew (macOS + Linux)
@@ -38,6 +38,7 @@ Fresh install? New machine? Can't remember every package name? We've all been th
### **Smart Script Generation**
- Detects already-installed packages
- Handles AUR packages automatically on Arch
- **Nix Unfree Detection**: Warns compliant configuration for unfree packages (Discord, Spotify, etc.)
- Homebrew formula/cask separation for macOS
- Parallel installation for Flatpak
- Network retry with exponential backoff
@@ -237,6 +238,7 @@ See [CONTRIBUTING.md](CONTRIBUTING.md) for contribution guidelines.
- [x] Package availability indicators (including AUR badges)
- [x] Homebrew support (macOS + Linux)
- [x] PWA support for offline use
- [x] Nix configuration.nix download with unfree package detection
@@ -247,7 +249,6 @@ See [CONTRIBUTING.md](CONTRIBUTING.md) for contribution guidelines.
- [ ] Custom presets / profiles
- [ ] Share configurations via URL
- [ ] More distros (FreeBSD, Gentoo, Void, Alpine)
- [ ] Nix configuration.nix download
- [ ] i18n / Multi-language support
- [ ] Companion CLI tool
- [ ] Expand application catalog (200+)