# 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!
