92 lines
2.4 KiB
Markdown
92 lines
2.4 KiB
Markdown
# NixOS Proxmox LXC Container Configuration
|
|
|
|
A comprehensive toolkit for managing NixOS containers in Proxmox VE. This repository provides automated configuration and management tools for NixOS LXC containers.
|
|
|
|
## Features
|
|
|
|
- Automated container detection and configuration
|
|
- Optimized NixOS settings for LXC containers
|
|
- Automatic system upgrades and maintenance
|
|
- Proper terminal and shell configuration
|
|
- DHCP networking configuration
|
|
- Secure SSH access setup
|
|
- Nix Flakes support
|
|
- Garbage collection and store optimization
|
|
|
|
## Quick Installation
|
|
|
|
```bash
|
|
curl -sSf https://git.jeirslab.xyz/jeirmeister/NixOS-PVE-Deployment-Util/raw/branch/main/setup.sh | bash
|
|
```
|
|
|
|
## What It Does
|
|
|
|
The installation script will:
|
|
1. Install required dependencies (git)
|
|
2. Clone/update the configuration repository to `/root/.nixos-utils`
|
|
3. Install the configuration utility system-wide
|
|
4. Detect and list available NixOS containers
|
|
5. Apply optimized configuration settings
|
|
6. Configure proper LXC terminal access
|
|
7. Set up system maintenance tasks
|
|
|
|
## Manual Installation
|
|
|
|
If you prefer to inspect the code first:
|
|
|
|
```bash
|
|
git clone https://git.jeirslab.xyz/jeirmeister/NixOS-PVE-Deployment-Util.git
|
|
cd NixOS-PVE-Deployment-Util
|
|
./setup.sh
|
|
```
|
|
|
|
## Directory Structure
|
|
|
|
```
|
|
.
|
|
├── nix-config/ # NixOS configuration files
|
|
│ ├── configuration.nix # Main configuration
|
|
│ ├── lxc.nix # LXC-specific settings
|
|
│ ├── network.nix # Network configuration
|
|
│ └── users.nix # User and SSH settings
|
|
└── scripts/ # Utility scripts
|
|
├── get-latest.sh # Download latest NixOS builds
|
|
└── post-deploy.sh # Post-deployment tasks
|
|
```
|
|
|
|
## Features in Detail
|
|
|
|
### System Optimization
|
|
- Automatic garbage collection
|
|
- Store optimization
|
|
- Weekly system updates
|
|
- Nix Flakes support
|
|
|
|
### Security
|
|
- SSH-based access
|
|
- No root login
|
|
- Wheel group for sudo access
|
|
- Secure default configurations
|
|
|
|
### Networking
|
|
- DHCP configuration
|
|
- IPv6 support
|
|
- Proper network interface setup
|
|
|
|
## Requirements
|
|
|
|
- Proxmox VE 7.0 or later
|
|
- NixOS LXC container(s)
|
|
- Root access to Proxmox host
|
|
|
|
## Contributing
|
|
|
|
Contributions are welcome! Please feel free to submit pull requests or create issues for bugs and feature requests.
|
|
|
|
## License
|
|
|
|
MIT License - See LICENSE.md for details
|
|
|
|
## Note
|
|
|
|
Always review scripts before running them with curl. You can inspect all source code at the repository. |