mirror of
https://github.com/aliasvault/aliasvault.git
synced 2026-01-01 18:49:34 -05:00
142 lines
3.4 KiB
Markdown
142 lines
3.4 KiB
Markdown
---
|
|
layout: default
|
|
title: Windows development
|
|
parent: Development
|
|
grand_parent: Miscellaneous
|
|
nav_order: 2
|
|
---
|
|
|
|
|
|
# Setting Up AliasVault Development Environment on Windows
|
|
|
|
This guide will help you set up AliasVault for development on Windows using WSL (Windows Subsystem for Linux).
|
|
|
|
## Prerequisites
|
|
|
|
1. **Install WSL**
|
|
- Open PowerShell as Administrator and run:
|
|
```powershell
|
|
wsl --install
|
|
```
|
|
- This will install Ubuntu by default
|
|
- Restart your computer after installation
|
|
|
|
2. **Install Visual Studio 2022**
|
|
- Download from [Visual Studio Downloads](https://visualstudio.microsoft.com/downloads/)
|
|
- Required Workloads:
|
|
- ASP.NET and web development
|
|
- .NET WebAssembly development tools
|
|
- .NET cross-platform development
|
|
|
|
3. **Install .NET 9 SDK**
|
|
- Download from [.NET Downloads](https://dotnet.microsoft.com/download/dotnet/9.0)
|
|
- Install both Windows and Linux versions (you'll need both)
|
|
|
|
## Setup Steps
|
|
|
|
1. **Clone the Repository**
|
|
```bash
|
|
git clone https://github.com/aliasvault/aliasvault.git
|
|
cd aliasvault
|
|
```
|
|
2. **Configure WSL**
|
|
- Open WSL terminal
|
|
- Edit WSL configuration:
|
|
```bash
|
|
sudo nano /etc/wsl.conf
|
|
```
|
|
- Add the following configuration:
|
|
```ini
|
|
[automount]
|
|
enabled = true
|
|
options = "metadata,umask=22,fmask=11"
|
|
mountFsTab = false
|
|
|
|
[boot]
|
|
systemd=true
|
|
```
|
|
- Save the file (Ctrl+X, then Y)
|
|
- Restart WSL from PowerShell:
|
|
```powershell
|
|
wsl --shutdown
|
|
```
|
|
|
|
3. **Setup Development Database**
|
|
- Open a new WSL terminal in the AliasVault directory
|
|
- Run the development database setup:
|
|
```bash
|
|
./install.sh configure-dev-db
|
|
```
|
|
- Select option 1 to start the development database
|
|
- Verify the database is running:
|
|
```bash
|
|
docker ps | grep postgres-dev
|
|
```
|
|
|
|
4. **Run the Application**
|
|
- Open the solution in Visual Studio 2022
|
|
- Set WebApi as the startup project
|
|
- Press F5 to run in debug mode
|
|
|
|
## Troubleshooting
|
|
|
|
### Database Connection Issues
|
|
If the WebApi fails to start due to database connection issues:
|
|
|
|
1. **Check Database Status**
|
|
```bash
|
|
docker ps | grep postgres-dev
|
|
```
|
|
|
|
2. **Check Database Logs**
|
|
```bash
|
|
docker logs aliasvault-dev-postgres-dev-1
|
|
```
|
|
|
|
3. **Permission Issues**
|
|
If you see permission errors, try:
|
|
```bash
|
|
sudo mkdir -p ./database/postgres
|
|
sudo chown -R 999:999 ./database/postgres
|
|
sudo chmod -R 700 ./database/postgres
|
|
```
|
|
|
|
4. **Restart Development Database**
|
|
```bash
|
|
./install.sh configure-dev-db
|
|
# Select option 2 to stop, then option 1 to start again
|
|
```
|
|
|
|
### WSL Issues
|
|
If you experience WSL-related issues:
|
|
|
|
1. Make sure you have the latest WSL version:
|
|
```powershell
|
|
wsl --update
|
|
```
|
|
|
|
2. Verify WSL is running correctly:
|
|
```powershell
|
|
wsl --status
|
|
```
|
|
|
|
3. If problems persist, try resetting WSL:
|
|
```powershell
|
|
wsl --shutdown
|
|
wsl
|
|
```
|
|
|
|
## Additional Notes
|
|
|
|
- Always run the development database before starting the WebApi project
|
|
- Make sure you're using the correct .NET SDK version in both Windows and WSL
|
|
- If you modify the WSL configuration, always restart WSL afterward
|
|
- For best performance, store the project files in the Linux filesystem rather than the Windows filesystem
|
|
|
|
## Support
|
|
|
|
If you encounter any issues not covered in this guide, please:
|
|
1. Check the [GitHub Issues](https://github.com/aliasvault/aliasvault/issues)
|
|
2. Search for existing solutions
|
|
3. Create a new issue if needed
|