125 lines
4.1 KiB
Markdown
125 lines
4.1 KiB
Markdown
# Profile Migration Summary
|
|
|
|
## Migration Date
|
|
November 18, 2025
|
|
|
|
## What Was Migrated
|
|
|
|
Profiles were moved from the private `.kiro/nip/profiles/` directory to the public `nip/profiles/` directory to make them accessible to users.
|
|
|
|
## New Structure
|
|
|
|
```
|
|
nip/profiles/
|
|
├── README.md # Profile system documentation
|
|
├── MIGRATION.md # This file
|
|
├── security/ # Security profiles for Nippels
|
|
│ ├── workstation.kdl # Work computers
|
|
│ ├── homestation.kdl # Home use (default)
|
|
│ ├── satellite.kdl # Laptops/mobile
|
|
│ ├── network-iot.kdl # Embedded/IoT
|
|
│ └── server.kdl # Server deployments
|
|
├── build/ # Build profiles for compilation
|
|
│ ├── desktop.kdl # Desktop build config
|
|
│ ├── server.kdl # Server build config
|
|
│ └── minimal.kdl # Minimal build config
|
|
└── examples/ # Example custom profiles
|
|
├── gaming-rig.kdl # Gaming-optimized
|
|
├── ml-workstation.kdl # Machine learning
|
|
├── developer.kdl # Developer workstation
|
|
└── fleet-node.kdl # Fleet management
|
|
```
|
|
|
|
## Profile Types
|
|
|
|
### 1. Security Profiles (`security/`)
|
|
Define isolation levels and security settings for Nippels (user-level application environments):
|
|
- **Workstation**: Standard isolation + desktop integration
|
|
- **Homestation**: Standard isolation + relaxed network (default)
|
|
- **Satellite**: Strict isolation + limited network
|
|
- **Network/IOT**: Strict isolation + minimal resources
|
|
- **Server**: Strict isolation + no desktop + enhanced auditing
|
|
|
|
### 2. Build Profiles (`build/`)
|
|
Define compiler flags and optimization levels for building packages:
|
|
- **Desktop**: Modern graphics, audio, user experience
|
|
- **Server**: Security hardened, performance optimized
|
|
- **Minimal**: Small size, essential features only
|
|
|
|
### 3. Example Profiles (`examples/`)
|
|
Additional profiles for specific use cases:
|
|
- **Gaming Rig**: Gaming-optimized configuration
|
|
- **ML Workstation**: Machine learning workstation
|
|
- **Developer**: Developer workstation
|
|
- **Fleet Node**: Fleet management node
|
|
|
|
## Why This Migration?
|
|
|
|
1. **User-Facing Feature**: Profiles are a public feature that users need to see and understand
|
|
2. **Documentation**: Profiles should be documented alongside the code
|
|
3. **Customization**: Users can learn from and customize existing profiles
|
|
4. **Version Control**: Profile changes should be tracked in the public repo
|
|
5. **Distribution**: Profiles should ship with the nip package
|
|
|
|
## Old Location (Deprecated)
|
|
|
|
The old location `.kiro/nip/profiles/` is now deprecated and should not be used. The `.kiro/` directory is for:
|
|
- Internal specs and planning
|
|
- Development coordination
|
|
- AI context
|
|
|
|
But NOT for user-facing features like profiles.
|
|
|
|
## Usage
|
|
|
|
### Security Profiles
|
|
```bash
|
|
# Create Nippel with specific security profile
|
|
nip cell create dev-env --profile Workstation
|
|
|
|
# Use default profile (Homestation)
|
|
nip cell create my-env
|
|
```
|
|
|
|
### Build Profiles
|
|
```bash
|
|
# Build package with specific profile
|
|
nip build vim --profile desktop
|
|
|
|
# Build with server profile
|
|
nip build nginx --profile server
|
|
```
|
|
|
|
### Custom Profiles
|
|
```bash
|
|
# Copy and customize
|
|
cp nip/profiles/security/homestation.kdl ~/.config/nip/profiles/security/my-profile.kdl
|
|
vim ~/.config/nip/profiles/security/my-profile.kdl
|
|
|
|
# Use custom profile
|
|
nip cell create my-env --profile my-profile
|
|
```
|
|
|
|
## Next Steps
|
|
|
|
1. ✅ Profiles migrated to public location
|
|
2. ✅ Documentation created (README.md)
|
|
3. ✅ Security profiles created for Nippels
|
|
4. ✅ Build profiles organized
|
|
5. ✅ Example profiles provided
|
|
6. 🔄 Update Nippels spec to reference new location
|
|
7. 🔄 Update implementation to load from new location
|
|
8. 🔄 Add profile validation and testing
|
|
|
|
## Related Documentation
|
|
|
|
- [Nippels Specification](../../.kiro/nip/specs/nexuscells/requirements.md)
|
|
- [Profile README](README.md)
|
|
- [Nippels Documentation](../docs/nipcells.md)
|
|
|
|
---
|
|
|
|
**Migration completed successfully!** 🎉
|
|
|
|
Profiles are now in the public repository where they belong, making them accessible to users and properly documented.
|