10 Commits

Author SHA1 Message Date
pre-commit-ci[bot]
27da810f34 [pre-commit.ci] auto fixes from pre-commit.com hooks
for more information, see https://pre-commit.ci
2025-06-05 07:23:52 +00:00
Oskar Manhart
8ecb806b97 doc: use openbsd-netcat on arch
Closes #508
2025-06-05 09:21:55 +02:00
Oskar Manhart
84308118c6 feat: clarify compose.yaml docs regarding /dev/sdX paths
Closes #523
2025-06-04 13:47:21 +02:00
Oskar Manhart
805b479e45 Merge pull request #510 from winapps-org/chore/nix_update_actions
Packages: update
2025-06-01 12:29:46 +02:00
github-actions[bot]
013cc42e07 winapps: 0-unstable-2025-04-19 -> 0-unstable-2025-05-26
Diff: a4d30724b5...885d02079a
2025-06-01 10:04:04 +00:00
Oskar Manhart
885d02079a Merge pull request #517 from sears-s/allow-vm-name-change
Allow libvirt VM name change
2025-05-26 12:22:20 +02:00
Sears Schulz
b3969aa3b7 More descriptive message for EC_NOT_EXIST 2025-05-23 21:50:50 -05:00
Sears Schulz
4019f9cb81 Update docs for VM_NAME 2025-05-23 21:24:33 -05:00
Sears Schulz
a2568be16f Update setup.patch to prevent need for fuzz 2025-05-23 21:16:30 -05:00
Sears Schulz
b9ef076dc8 Allow VM_NAME to be changed 2025-05-23 20:54:12 -05:00
7 changed files with 40 additions and 26 deletions

View File

@@ -311,7 +311,7 @@ Install the required dependencies.
```
- Arch Linux:
```bash
sudo pacman -Syu --needed -y curl dialog freerdp git iproute2 libnotify gnu-netcat
sudo pacman -Syu --needed -y curl dialog freerdp git iproute2 libnotify openbsd-netcat
```
- OpenSUSE:
```bash
@@ -364,6 +364,13 @@ RDP_DOMAIN=""
# - 'libvirt': '' (BLANK)
RDP_IP="127.0.0.1"
# [VM NAME]
# NOTES:
# - Only applicable when using 'libvirt'
# - The libvirt VM name must match so that WinApps can determine VM IP, start the VM, etc.
# DEFAULT VALUE: 'RDPWindows'
VM_NAME="RDPWindows"
# [WINAPPS BACKEND]
# DEFAULT VALUE: 'docker'
# VALID VALUES:

View File

@@ -29,7 +29,6 @@ readonly COMPOSE_PATH="${HOME}/.config/winapps/compose.yaml"
readonly SCRIPT_DIR_PATH="$(cd "$(dirname "${BASH_SOURCE[0]}")" &>/dev/null && pwd)"
# OTHER
readonly VM_NAME="RDPWindows" # FOR 'libvirt' ONLY
readonly CONTAINER_NAME="WinApps" # FOR 'docker' AND 'podman' ONLY
readonly RDP_PORT=3389
readonly DOCKER_IP="127.0.0.1"
@@ -42,6 +41,7 @@ RDP_USER=""
RDP_PASS=""
RDP_DOMAIN=""
RDP_IP=""
VM_NAME="RDPWindows" # FOR 'libvirt' ONLY
WAFLAVOR="docker"
RDP_FLAGS=""
FREERDP_COMMAND=""
@@ -124,7 +124,7 @@ Please run:
;;
"$EC_NOT_EXIST")
dprint "ERROR: WINDOWS NONEXISTENT. EXITING."
notify-send --expire-time=8000 --icon="dialog-error" --app-name="WinApps" --urgency="low" "WinApps" "Windows does not exist."
notify-send --expire-time=8000 --icon="dialog-error" --app-name="WinApps" --urgency="low" "WinApps" "Windows VM named '${VM_NAME}' does not exist."
;;
"$EC_UNKNOWN")
dprint "ERROR: UNKNOWN CONTAINER ERROR. EXITING."

View File

@@ -18,7 +18,7 @@ services:
RAM_SIZE: "4G" # RAM allocated to the Windows VM.
CPU_CORES: "4" # CPU cores allocated to the Windows VM.
DISK_SIZE: "64G" # Size of the primary hard disk.
#DISK2_SIZE: "32G" # Uncomment to add an additional hard disk to the Windows VM. Ensure it is mounted as a volume below.
# DISK2_SIZE: "32G" # Uncomment to add an additional hard disk to the Windows VM. Ensure it is mounted as a volume below.
USERNAME: "MyWindowsUser" # Edit here to set a custom Windows username. The default is 'MyWindowsUser'.
PASSWORD: "MyWindowsPassword" # Edit here to set a password for the Windows user. The default is 'MyWindowsPassword'.
HOME: "${HOME}" # Set path to Linux user home folder.
@@ -33,13 +33,17 @@ services:
volumes:
- data:/storage # Mount volume 'data' to use as Windows 'C:' drive.
- ${HOME}:/shared # Mount Linux user home directory @ '\\host.lan\Data'.
#- /path/to/second/hard/disk:/storage2 # Uncomment to mount the second hard disk within the Windows VM. Ensure 'DISK2_SIZE' is specified above.
#- /path/to/second/hard/disk:/storage2 # Uncomment to create a virtual second hard disk and mount it within the Windows VM. Ensure 'DISK2_SIZE' is specified above.
- ./oem:/oem # Enables automatic post-install execution of 'oem/install.bat', applying Windows registry modifications contained within 'oem/RDPApps.reg'.
#- /path/to/windows/install/media.iso:/custom.iso # Uncomment to use a custom Windows ISO. If specified, 'VERSION' (e.g. 'tiny11') will be ignored.
devices:
- /dev/kvm # Enable KVM.
- /dev/net/tun # Enable tuntap
#- /dev/sdX:/disk1 # Uncomment to mount a disk directly within the Windows VM (Note: 'disk1' will be mounted as the main drive. THIS DISK WILL BE FORMATTED BY DOCKER).
#- /dev/sdY:/disk2 # Uncomment to mount a disk directly within the Windows VM (Note: 'disk2' and higher will be mounted as secondary drives. THIS DISK WILL NOT BE FORMATTED).
#group_add: # uncomment this line and the next one for using rootless podman containers
# - keep-groups # to make /dev/kvm work with podman. needs "crun" installed, "runc" will not work! Add your user to the 'kvm' group or another that can access /dev/kvm.
# Uncomment to mount a disk directly within the Windows VM.
# WARNING: /dev/sdX paths may change after reboot. Use persistent identifiers!
# NOTE: 'disk1' will be mounted as the main drive. THIS DISK WILL BE FORMATTED BY DOCKER.
# All following disks (disk2, ...) WILL NOT BE FORMATTED.
# - /dev/disk/by-id/<id>:/disk1
# - dev/disk/by-id/<id>:/disk2
# group_add: # uncomment this line and the next one for using rootless podman containers
# - keep-groups # to make /dev/kvm work with podman. needs "crun" installed, "runc" will not work! Add your user to the 'kvm' group or another that can access /dev/kvm.

View File

@@ -132,6 +132,9 @@ Together, these components form a powerful and flexible virtualization stack, wi
<img src="./libvirt_images/07.png" width="500px"/>
</p>
> [!NOTE]
> A name other than `RDPWindows` can be used if `VM_NAME` is set in `~/.config/winapps/winapps.conf`.
9. After clicking `Finish`, select `Copy host CPU configuration` under 'CPUs', and then click `Apply`.
> [!NOTE]

View File

@@ -11,12 +11,12 @@
...
}:
let
rev = "a4d30724b588cea9c3c60279d8773d320f621594";
hash = "sha256-k6T4YkIxqvmPB9XIdFL+p3Dh+jL3Xg/Co+q3xbCcsoc=";
rev = "885d02079a36aa9696de46440c5b29b95278f904";
hash = "sha256-hkD1siuwlRNOnXpDETZEQlIb/j91hkCspAUl/m5BB6g=";
in
stdenv.mkDerivation rec {
pname = "winapps";
version = "0-unstable-2025-04-19";
version = "0-unstable-2025-05-26";
src = fetchFromGitHub {
owner = "winapps-org";

View File

@@ -1,5 +1,5 @@
diff --git a/setup.sh b/setup.sh
index b7d930d6..18000c65 100755
index 0debe4d..6aeea08 100755
--- a/setup.sh
+++ b/setup.sh
@@ -39,8 +39,8 @@ readonly SYS_BIN_PATH="/usr/local/bin" # UNIX path to 'bin' dir
@@ -21,7 +21,7 @@ index b7d930d6..18000c65 100755
+readonly INQUIRER_PATH="@out@/src/install/inquirer.sh" # UNIX path to the 'inquirer' script, which is used to produce selection menus.
# REMOTE DESKTOP CONFIGURATION
readonly VM_NAME="RDPWindows" # Name of the Windows VM (FOR 'libvirt' ONLY).
readonly RDP_PORT=3389 # Port used for RDP on Windows.
@@ -155,13 +155,6 @@ function waGetSourceCode() {
echo -e "${WARNING_TEXT}[WARNING]${CLEAR_TEXT} You might want to remove your old installation on '${SCRIPT_DIR_PATH}'."
fi

View File

@@ -73,7 +73,6 @@ readonly CONFIG_PATH="${HOME}/.config/winapps/winapps.conf" # UNIX path to the W
readonly INQUIRER_PATH="./install/inquirer.sh" # UNIX path to the 'inquirer' script, which is used to produce selection menus.
# REMOTE DESKTOP CONFIGURATION
readonly VM_NAME="RDPWindows" # Name of the Windows VM (FOR 'libvirt' ONLY).
readonly RDP_PORT=3389 # Port used for RDP on Windows.
readonly DOCKER_IP="127.0.0.1" # Localhost.
@@ -85,17 +84,18 @@ OPT_UNINSTALL=0 # Set to '1' if the user specifies '--uninstall'.
OPT_AOSA=0 # Set to '1' if the user specifies '--setupAllOfficiallySupportedApps'.
# WINAPPS CONFIGURATION FILE
RDP_USER="" # Imported variable.
RDP_PASS="" # Imported variable.
RDP_DOMAIN="" # Imported variable.
RDP_IP="" # Imported variable.
WAFLAVOR="docker" # Imported variable.
RDP_SCALE=100 # Imported variable.
RDP_FLAGS="" # Imported variable.
MULTIMON="false" # Imported variable.
DEBUG="true" # Imported variable.
FREERDP_COMMAND="" # Imported variable.
MULTI_FLAG="" # Set based on value of $MULTIMON.
RDP_USER="" # Imported variable.
RDP_PASS="" # Imported variable.
RDP_DOMAIN="" # Imported variable.
RDP_IP="" # Imported variable.
VM_NAME="RDPWindows" # Name of the Windows VM (FOR 'libvirt' ONLY).
WAFLAVOR="docker" # Imported variable.
RDP_SCALE=100 # Imported variable.
RDP_FLAGS="" # Imported variable.
MULTIMON="false" # Imported variable.
DEBUG="true" # Imported variable.
FREERDP_COMMAND="" # Imported variable.
MULTI_FLAG="" # Set based on value of $MULTIMON.
# PERMISSIONS AND DIRECTORIES
SUDO="" # Set to "sudo" if the user specifies '--system', or "" if the user specifies '--user'.