mirror of
https://github.com/winapps-org/winapps.git
synced 2025-08-02 00:46:42 +02:00
Compare commits
10 Commits
31631b8b75
...
doc-arch-p
Author | SHA1 | Date | |
---|---|---|---|
![]() |
27da810f34 | ||
![]() |
8ecb806b97 | ||
![]() |
84308118c6 | ||
![]() |
805b479e45 | ||
![]() |
013cc42e07 | ||
![]() |
885d02079a | ||
![]() |
b3969aa3b7 | ||
![]() |
4019f9cb81 | ||
![]() |
a2568be16f | ||
![]() |
b9ef076dc8 |
@@ -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:
|
||||
|
@@ -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."
|
||||
|
16
compose.yaml
16
compose.yaml
@@ -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.
|
||||
|
@@ -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]
|
||||
|
@@ -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";
|
||||
|
@@ -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
|
||||
|
24
setup.sh
24
setup.sh
@@ -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'.
|
||||
|
Reference in New Issue
Block a user