cc870ead29
Major improvements to the Jellyfin PostgreSQL Windows installer: - Added build-installer.ps1 (PowerShell automation) - Added jellyfin-setup.iss (Inno Setup script) and jellyfin.ico - Added detailed installer guides and quick start docs - Fixed startup.json defaults: removed old file, ensured Windows paths - Updated .gitignore for installer-output and publish profiles - Installer now supports service install, firewall setup, and PostgreSQL config wizard - Documentation covers both quick and production-grade workflows
151 lines
3.0 KiB
Markdown
151 lines
3.0 KiB
Markdown
# Quick Installer Setup
|
|
|
|
## Yes! You can create an installer! ✅
|
|
|
|
---
|
|
|
|
## Fastest Way to Get Started (5 minutes)
|
|
|
|
### 1. Install Inno Setup
|
|
```powershell
|
|
winget install JRSoftware.InnoSetup
|
|
```
|
|
|
|
### 2. Build Installer
|
|
```powershell
|
|
cd E:\Projects\pgsql-jellyfin
|
|
.\build-installer.ps1
|
|
```
|
|
|
|
### 3. Done! ✅
|
|
```
|
|
Output: installer-output\JellyfinSetup-PostgreSQL-11.0.0.exe
|
|
```
|
|
|
|
---
|
|
|
|
## What the Installer Does
|
|
|
|
✅ Installs Jellyfin to `C:\Program Files\Jellyfin-PostgreSQL`
|
|
✅ Creates data folder at `C:\ProgramData\jellyfin`
|
|
✅ Optionally installs as Windows Service
|
|
✅ Adds Windows Firewall exception
|
|
✅ Creates Start Menu shortcuts
|
|
✅ Checks for .NET 11 runtime
|
|
✅ PostgreSQL configuration wizard
|
|
✅ Clean uninstaller
|
|
|
|
---
|
|
|
|
## Files You Have Now
|
|
|
|
```
|
|
E:\Projects\pgsql-jellyfin\
|
|
├── jellyfin-setup.iss ← Inno Setup script (ready to use)
|
|
├── build-installer.ps1 ← PowerShell build script
|
|
├── INSTALLER_GUIDE.md ← Complete documentation
|
|
└── lib\Release\net11.0\ ← Your built DLLs
|
|
```
|
|
|
|
---
|
|
|
|
## Test the Installer
|
|
|
|
```powershell
|
|
# Normal install (with UI)
|
|
.\installer-output\JellyfinSetup-PostgreSQL-11.0.0.exe
|
|
|
|
# Silent install
|
|
.\installer-output\JellyfinSetup-PostgreSQL-11.0.0.exe /VERYSILENT
|
|
|
|
# Install without service
|
|
.\installer-output\JellyfinSetup-PostgreSQL-11.0.0.exe /TASKS="!service"
|
|
```
|
|
|
|
---
|
|
|
|
## Customize Before Building
|
|
|
|
Edit `jellyfin-setup.iss`:
|
|
|
|
### Change Version
|
|
```ini
|
|
AppVersion=11.0.0 ← Change this
|
|
```
|
|
|
|
### Change Publisher
|
|
```ini
|
|
AppPublisher=Your Name ← Change this
|
|
```
|
|
|
|
### Change Install Location
|
|
```ini
|
|
DefaultDirName={autopf}\Jellyfin-PostgreSQL ← Change this
|
|
```
|
|
|
|
---
|
|
|
|
## Optional: Add Icon
|
|
|
|
1. Get/create `jellyfin.ico` file
|
|
2. Place in: `E:\Projects\pgsql-jellyfin\`
|
|
3. Rebuild installer
|
|
|
|
---
|
|
|
|
## Distribution
|
|
|
|
### GitHub Releases
|
|
1. Tag version: `git tag v11.0.0`
|
|
2. Create release on GitHub
|
|
3. Upload installer: `JellyfinSetup-PostgreSQL-11.0.0.exe`
|
|
|
|
### Direct Download
|
|
Host the `.exe` file on your web server
|
|
|
|
### Code Signing (Optional but Recommended)
|
|
```powershell
|
|
# Get certificate from DigiCert, Sectigo, etc.
|
|
signtool sign /f certificate.pfx /p password JellyfinSetup.exe
|
|
```
|
|
|
|
---
|
|
|
|
## Troubleshooting
|
|
|
|
### Installer doesn't build
|
|
- Check Inno Setup is installed
|
|
- Verify files exist in `lib\Release\net11.0\`
|
|
- Run: `.\build-installer.ps1 -Verbose`
|
|
|
|
### Service won't start
|
|
- Check .NET 11 runtime is installed
|
|
- Verify PostgreSQL is running
|
|
- Check logs in `C:\ProgramData\jellyfin\log\`
|
|
|
|
---
|
|
|
|
## Next Steps
|
|
|
|
1. ✅ Install Inno Setup: `winget install JRSoftware.InnoSetup`
|
|
2. ✅ Run: `.\build-installer.ps1`
|
|
3. ✅ Test: Run the generated `.exe` file
|
|
4. 🎉 Distribute!
|
|
|
|
---
|
|
|
|
## Full Documentation
|
|
|
|
See `INSTALLER_GUIDE.md` for:
|
|
- WiX Toolset setup (production-grade MSI)
|
|
- MSIX packaging (Windows Store)
|
|
- Advanced customization
|
|
- CI/CD integration
|
|
- Code signing details
|
|
|
|
---
|
|
|
|
**Status:** ✅ Ready to build!
|
|
**Time to first installer:** ~5 minutes
|
|
**Result:** Professional Windows installer with all features!
|