Skip to content
Snippets Groups Projects
Commit f2b3fdd6 authored by Michael Blaschek's avatar Michael Blaschek :bicyclist:
Browse files

Merge remote-tracking branch 'upstream/main'

parents f7a464c6 e20e3423
No related branches found
No related tags found
No related merge requests found
Showing
with 316 additions and 151 deletions
on:
pull_request:
push:
branches: [main]
jobs:
lictool:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v3
- uses: actions/setup-python@v4
with:
python-version: 3.x
- uses: pre-commit/action@v3.0.1
with:
extra_args: license-tools
- uses: pre-commit-ci/lite-action@v1.0.2
if: always()
name: "Update Flake Packages"
permissions:
contents: write
pull-requests: write
on:
workflow_dispatch:
schedule:
- cron: "0 10 * * 0" # https://crontab.guru/#0_10_*_*_0
jobs:
updateFlakePackages:
runs-on: ubuntu-latest
steps:
- name: Checkout repository
uses: actions/checkout@v4
- name: Install Nix
uses: DeterminateSystems/nix-installer-action@main
with:
trust-runner-user: true
- name: Set up cache
uses: cachix/cachix-action@v15
with:
name: winapps
authToken: '${{ secrets.CACHIX_AUTH_TOKEN }}'
- name: Update flake packages
uses: winapps-org/nix-update-action@v1.3.0
with:
extra-args: --version=branch
- name: Build packages
run: nix build .#winapps .#winapps-launcher
{
"author": {
"from_git": true,
"latest_year_only": true
},
"title": false,
"style_override_for_suffix": {
".yaml": "POUND_STYLE",
".ps1": "POUND_STYLE",
".bat": "BATCH_STYLE",
"": "POUND_STYLE"
},
"exclude": [
"^\\.[^/]+",
"/\\.[^/]+",
"^(.+)\\.(md|svg|png|reg|gif)",
"^(fonts|WinApps-Launcher)(/.*)?",
"apps/access/info",
"apps/access-o365-x86/info",
"apps/access-x86/info",
"apps/acrobat-x-pro/info",
"apps/adobe-cc/info",
"apps/aftereffects-cc/info",
"apps/audition-cc/info",
"apps/bridge-cc/info",
"apps/bridge-cs6/info",
"apps/bridge-cs6-x86/info",
"apps/cmd/info",
"apps/excel/info",
"apps/excel-o365-x86/info",
"apps/excel-x86/info",
"apps/explorer/info",
"apps/iexplorer/info",
"apps/illustrator-cc/info",
"apps/indesign-cc/info",
"apps/lightroom-cc/info",
"apps/onenote/info",
"apps/onenote-o365-x86/info",
"apps/onenote-x86/info",
"apps/outlook/info",
"apps/outlook-o365-x86/info",
"apps/outlook-x86/info",
"apps/photoshop-cc/info",
"apps/photoshop-cs6/info",
"apps/photoshop-cs6-x86/info",
"apps/powerpoint/info",
"apps/powerpoint-o365-x86/info",
"apps/powerpoint-x86/info",
"apps/powershell/info",
"apps/publisher/info",
"apps/publisher-o365-x86/info",
"apps/publisher-x86/info",
"apps/word/info",
"apps/word-o365-x86/info",
"apps/word-x86/info",
"apps/access-o365/info",
"apps/excel-o365/info",
"apps/onenote-o365/info",
"apps/outlook-o365/info",
"apps/powerpoint-o365/info",
"apps/publisher-o365/info",
"apps/word-o365/info",
"install/inquirer.sh",
"oem/RDPApps.reg"
],
"license": false,
"force_author": false,
"force_license": true,
"custom_license": "SPDX-License-Identifier: AGPL-3.0-or-later"
}
ci: ci:
autoupdate_branch: "rewrite" autoupdate_branch: "rewrite"
skip: [license-tools]
exclude: ^(.+)\.patch$
repos: repos:
- repo: https://github.com/Lucas-C/pre-commit-hooks - repo: https://github.com/Lucas-C/pre-commit-hooks
...@@ -49,8 +50,3 @@ repos: ...@@ -49,8 +50,3 @@ repos:
rev: v0.10.0.1 rev: v0.10.0.1
hooks: hooks:
- id: shellcheck - id: shellcheck
- repo: https://github.com/emzeat/mz-lictools
rev: v2.7.0
hooks:
- id: license-tools
...@@ -3,9 +3,6 @@ ...@@ -3,9 +3,6 @@
Thank you for contributing to winapps! Before you can contribute, we ask some things of you: Thank you for contributing to winapps! Before you can contribute, we ask some things of you:
- Please follow our Code of Conduct, the Contributor Covenant. You can find a copy in this repository or under https://www.contributor-covenant.org/ - Please follow our Code of Conduct, the Contributor Covenant. You can find a copy in this repository or under https://www.contributor-covenant.org/
- All Contributors have to sign [a CLA](https://gist.github.com/oskardotglobal/35f0a72eb45fcc7087e535561383dbc5) for legal reasons. When opening a PR, @cla-assitant will prompt you and guide you through the process. However, if you contribute on behalf of a legal entity, we ask of you to sign [a different CLA](https://gist.github.com/oskardotglobal/75a8cc056e56a439fa6a1551129ae47f). In that case, please contact us. - All Contributors have to sign [a CLA](https://gist.github.com/oskardotglobal/35f0a72eb45fcc7087e535561383dbc5) for legal reasons. When opening a PR, @cla-assistant will prompt you and guide you through the process. However, if you contribute on behalf of a legal entity, we ask of you to sign [a different CLA](https://gist.github.com/oskardotglobal/75a8cc056e56a439fa6a1551129ae47f). In that case, please contact us.
- Please follow code conventions enforced by `pre-commit`. To keep down CI usage, please run it locally before committing too. - Please follow code conventions enforced by `pre-commit`. To keep down CI usage, please run it locally before committing too.
See <https://pre-commit.com> for installation, then run `pre-commit install` inside the `winapps` repository you cloned. See <https://pre-commit.com> for installation, then run `pre-commit install` inside the `winapps` repository you cloned.
All source code files shall have a valid SPDX-Identifier. For more information, see <https://spdx.dev/learn/handling-license-info/>.
This identifier will be generated by a pre-commit hook most of the time.
Some of the files are
Copyright (c) 2024 fmstrat
Many files also contain contributions from third parties.
In this case the original copyright of the contributions can be traced through the history of the source version control system.
When that is not the case, the files contain a prominent notice stating the original copyright and applicable license, or come with their own dedicated COPYRIGHT and/or LICENSE file.
For copyright information, please see the [COPYRIGHT.md](./COPYRIGHT.md) file.
This project has files licensed under different licenses. This project has files licensed under different licenses.
The original project by Fmstrat <https://github.com/Fmstrat/winapps/> is not free software. The original project by Fmstrat <https://github.com/Fmstrat/winapps/> is not free software.
......
...@@ -377,7 +377,7 @@ The following guides are available: ...@@ -377,7 +377,7 @@ The following guides are available:
- [Creating a Windows VM with `Docker` or `Podman`](docs/docker.md) - [Creating a Windows VM with `Docker` or `Podman`](docs/docker.md)
- [Creating a Windows VM with `libvirt`](docs/libvirt.md) - [Creating a Windows VM with `libvirt`](docs/libvirt.md)
If you already have a Windows VM or server you wish to use with WinApps, you will need to merge `install/RDPApps.reg` into the Windows Registry manually. If you already have a Windows VM or server you wish to use with WinApps, you will still have to follow the [final steps described in the `libvirt` documentation](docs/libvirt.md#final-configuration-steps).
#### Step 2: Install Dependencies #### Step 2: Install Dependencies
Install the required dependencies. Install the required dependencies.
...@@ -385,6 +385,11 @@ Install the required dependencies. ...@@ -385,6 +385,11 @@ Install the required dependencies.
```bash ```bash
sudo apt install -y dialog freerdp3-x11 iproute2 libnotify-bin netcat-openbsd sudo apt install -y dialog freerdp3-x11 iproute2 libnotify-bin netcat-openbsd
``` ```
> [!NOTE]
> On Debian you need to enable the `backports` repository for the `freerdp3-x11` package to become available.
> For instructions, see https://backports.debian.org/Instructions.
- Fedora/RHEL: - Fedora/RHEL:
```bash ```bash
sudo dnf install -y dialog freerdp iproute libnotify nmap-ncat sudo dnf install -y dialog freerdp iproute libnotify nmap-ncat
...@@ -393,9 +398,13 @@ Install the required dependencies. ...@@ -393,9 +398,13 @@ Install the required dependencies.
```bash ```bash
sudo pacman -Syu --needed -y dialog freerdp iproute2 libnotify gnu-netcat sudo pacman -Syu --needed -y dialog freerdp iproute2 libnotify gnu-netcat
``` ```
- OpenSUSE:
```bash
sudo zypper install -y dialog freerdp iproute2 libnotify netcat-openbsd
```
- Gentoo Linux: - Gentoo Linux:
```bash ```bash
sudo emerge --ask=n sys-libs/dialog net-misc/freerdp:3 net-misc/iproute2 x11-libs/libnotify net-analyzer/netcat sudo emerge --ask=n dev-util/dialog net-misc/freerdp:3 sys-apps/iproute2 x11-libs/libnotify net-analyzer/openbsd-netcat
``` ```
> [!NOTE] > [!NOTE]
...@@ -423,6 +432,8 @@ Create a configuration file at `~/.config/winapps/winapps.conf` containing the f ...@@ -423,6 +432,8 @@ Create a configuration file at `~/.config/winapps/winapps.conf` containing the f
RDP_USER="MyWindowsUser" RDP_USER="MyWindowsUser"
# [WINDOWS PASSWORD] # [WINDOWS PASSWORD]
# NOTES:
# - If using FreeRDP v3.9.0 or greater, you *have* to set a password
RDP_PASS="MyWindowsPassword" RDP_PASS="MyWindowsPassword"
# [WINDOWS DOMAIN] # [WINDOWS DOMAIN]
...@@ -436,7 +447,7 @@ RDP_DOMAIN="" ...@@ -436,7 +447,7 @@ RDP_DOMAIN=""
# - 'docker': '127.0.0.1' # - 'docker': '127.0.0.1'
# - 'podman': '127.0.0.1' # - 'podman': '127.0.0.1'
# - 'libvirt': '' (BLANK) # - 'libvirt': '' (BLANK)
RDP_IP="" RDP_IP="127.0.0.1"
# [WINAPPS BACKEND] # [WINAPPS BACKEND]
# DEFAULT VALUE: 'docker' # DEFAULT VALUE: 'docker'
...@@ -459,6 +470,8 @@ WAFLAVOR="docker" ...@@ -459,6 +470,8 @@ WAFLAVOR="docker"
RDP_SCALE="100" RDP_SCALE="100"
# [ADDITIONAL FREERDP FLAGS & ARGUMENTS] # [ADDITIONAL FREERDP FLAGS & ARGUMENTS]
# NOTES:
# - You can try adding /network:lan to these flags in order to increase performance, however, some users have faced issues with this.
# DEFAULT VALUE: '/cert:tofu /sound /microphone' # DEFAULT VALUE: '/cert:tofu /sound /microphone'
# VALID VALUES: See https://github.com/awakecoding/FreeRDP-Manuals/blob/master/User/FreeRDP-User-Manual.markdown # VALID VALUES: See https://github.com/awakecoding/FreeRDP-Manuals/blob/master/User/FreeRDP-User-Manual.markdown
RDP_FLAGS="/cert:tofu /sound /microphone" RDP_FLAGS="/cert:tofu /sound /microphone"
...@@ -516,7 +529,13 @@ FREERDP_COMMAND="" ...@@ -516,7 +529,13 @@ FREERDP_COMMAND=""
> [!NOTE] > [!NOTE]
> If you wish to use an alternative WinApps backend (other than `Docker`), uncomment and change `WAFLAVOR="docker"` to `WAFLAVOR="podman"` or `WAFLAVOR="libvirt"`. > If you wish to use an alternative WinApps backend (other than `Docker`), uncomment and change `WAFLAVOR="docker"` to `WAFLAVOR="podman"` or `WAFLAVOR="libvirt"`.
##### Configuration Options Explained > [!NOTE]
> If you encounter issues with tls certificate getting rejected, delete the existing `.pem` file with
> `rm ~/.config/freerdp/server/127.0.0.1_3389.pem` and run
> `xfreerdp3 /u:MyWindowsUser /p:MyWindowsPassword /v:127.0.0.1 /cert:tofu`
> to set up Trust On First Authentication. Then retry the `setup.sh` script.
#### Configuration Options Explained
- If using a pre-existing Windows RDP server on your LAN, you must use `RDP_IP` to specify the location of the Windows server. You may also wish to configure a static IP address for this server. - If using a pre-existing Windows RDP server on your LAN, you must use `RDP_IP` to specify the location of the Windows server. You may also wish to configure a static IP address for this server.
- If running a Windows VM using `libvirt` with NAT enabled, leave `RDP_IP` commented out and WinApps will auto-detect the local IP address for the VM. - If running a Windows VM using `libvirt` with NAT enabled, leave `RDP_IP` commented out and WinApps will auto-detect the local IP address for the VM.
- For domain users, you can uncomment and change `RDP_DOMAIN`. - For domain users, you can uncomment and change `RDP_DOMAIN`.
...@@ -557,6 +576,121 @@ The installer can be run multiple times. To update your installation of WinApps: ...@@ -557,6 +576,121 @@ The installer can be run multiple times. To update your installation of WinApps:
2. Pull the latest changes from the WinApps GitHub repository. 2. Pull the latest changes from the WinApps GitHub repository.
3. Re-install WinApps using the WinApps installer by running `winapps-setup`. 3. Re-install WinApps using the WinApps installer by running `winapps-setup`.
## Installation using Nix
First, follow Step 1 of the normal installation guide to create your VM.
Then, install WinApps according to the following instructions.
After installation, it will be available under `winapps`, with the installer being available under `winapps-setup`
and the optional launcher being available under `winapps-launcher.`
### Using standalone Nix
First, make sure Flakes and the `nix` command are enabled.
In your `~/.config/nix/nix.conf`:
```
experimental-features = nix-command flakes
# specify to use binary cache (optional)
extra-substituters = https://winapps.cachix.org/
extra-trusted-public-keys = winapps.cachix.org-1:HI82jWrXZsQRar/PChgIx1unmuEsiQMQq+zt05CD36g=
extra-trusted-users = <your-username> # replace with your username
```
```bash
nix profile install github:winapps-org/winapps#winapps
nix profile install github:winapps-org/winapps#winapps-launcher # optional
```
### On NixOS using Flakes
```nix
# flake.nix
{
description = "My configuration";
inputs = {
nixpkgs.url = "github:NixOS/nixpkgs/nixos-unstable";
winapps = {
url = "github:winapps-org/winapps";
inputs.nixpkgs.follows = "nixpkgs";
};
};
outputs =
inputs@{
nixpkgs,
winapps,
...
}:
{
nixosConfigurations.hostname = nixpkgs.lib.nixosSystem rec {
system = "x86_64-linux";
specialArgs = {
inherit inputs system;
};
modules = [
./configuration.nix
(
{
pkgs,
system ? pkgs.system,
...
}:
{
# set up binary cache (optional)
nix.settings = {
substituters = [ "https://winapps.cachix.org/" ];
trusted-public-keys = [ "winapps.cachix.org-1:HI82jWrXZsQRar/PChgIx1unmuEsiQMQq+zt05CD36g=" ];
};
environment.systemPackages = [
winapps.packages."${system}".winapps
winapps.packages."${system}".winapps-launcher # optional
];
}
)
];
};
};
}
```
### On NixOS without Flakes
[Flakes aren't real and they can't hurt you.](https://jade.fyi/blog/flakes-arent-real/).
However, if you still don't want to use flakes, you can use WinApps with flake-compat like:
```nix
# configuration.nix
{
pkgs,
system ? pkgs.system,
...
}:
{
# set up binary cache (optional)
nix.settings = {
substituters = [ "https://winapps.cachix.org/" ];
trusted-public-keys = [ "winapps.cachix.org-1:HI82jWrXZsQRar/PChgIx1unmuEsiQMQq+zt05CD36g=" ];
trusted-users = [ "<your username>" ]; # replace with your username
};
environment.systemPackages =
let
winapps =
(import (builtins.fetchTarball "https://github.com/winapps-org/winapps/archive/main.tar.gz"))
.packages."${system}";
in
[
winapps.winapps
winapps.winapps-launcher # optional
];
}
```
## Star History ## Star History
<a href="https://star-history.com/#winapps-org/winapps&Date"> <a href="https://star-history.com/#winapps-org/winapps&Date">
<picture> <picture>
......
# Copyright (c) 2024 winapps-org
# All rights reserved.
#
# SPDX-License-Identifier: Unlicense
# GNOME shortcut name # GNOME shortcut name
NAME="Access" NAME="Access"
......
# Copyright (c) 2024 winapps-org
# All rights reserved.
#
# SPDX-License-Identifier: Unlicense
# GNOME shortcut name # GNOME shortcut name
NAME="Access" NAME="Access"
......
# Copyright (c) 2024 Adam
# Copyright (c) 2024 Oskar Manhart
# All rights reserved.
#
# SPDX-License-Identifier: AGPL-3.0-or-later
# GNOME shortcut name # GNOME shortcut name
NAME="Acrobat 9" NAME="Acrobat 9"
......
# Copyright (c) 2024 Adam
# Copyright (c) 2024 Oskar Manhart
# All rights reserved.
#
# SPDX-License-Identifier: AGPL-3.0-or-later
# GNOME shortcut name # GNOME shortcut name
NAME="Excel" NAME="Excel"
......
<svg height="512" width="485" xmlns="http://www.w3.org/2000/svg"><path d="m70.9856796.099867 147.1711121 21.1684494c4.9958038.7186089 9.4206696 3.6028881 12.0942841 7.8835335l186.6232452 298.7956543 57.4749451 24.1019287c7.645813 3.2071838 11.9003601 11.4268799 10.1008911 19.5205688l-28.2246018 127.0107173c-1.741394 7.8406982-8.6961365 13.419281-16.7278442 13.419281h-99.7940979c-7.125061 0-13.5059204-4.4081116-16.026947-11.0715027l-64.8904114-171.496521-33.5339355 10.1796265-70.4281006 162.0817871c-2.7193909 6.257782-8.8930359 10.3066101-15.7168732 10.3066101h-96.77005c-7.6413727 0-14.3593845-5.0597839-16.4699287-12.4033813l-25.2005348-87.697876c-1.6572304-5.7675781-.1771913-11.9810791 3.9016533-16.3813171l182.9347229-197.3772888-20.0501709-34.7536011-57.9149628-11.582901c-5.8025284-1.1605988-10.5960388-5.2325439-12.6790237-10.7717438l-44.3529436-117.9385052c-3.7618599-11.4255447 3.7893296-24.361076 18.4795723-22.9935187zm280.5562821 477.6273974h74.2096558l22.1351318-99.6100159-49.2886963-20.6693725c-3.268219-1.3702698-6.030426-3.7200317-7.9076538-6.7254028l-185.2913666-296.663929-110.6150894-15.9103012 30.805191 81.9140472 56.1917801 11.2383575c4.8348541.9671631 9.0185394 3.969574 11.4824829 8.2403717l30.2406464 52.4171143c3.7544861 6.5073547 2.8321075 14.7019501-2.2749481 20.2121124l-184.9527245 199.5542717 18.9663582 66.0027466h72.6262665l69.107048-159.0409546c2.0032501-4.6099243 5.9295197-8.1074829 10.7392731-9.5673523l56.4487152-17.1363525c8.6380615-2.6244202 17.8136292 1.8988953 21.0050354 10.3322144z"/></svg>
# GNOME shortcut name
NAME="LINQPad8"
# Used for descriptions and window class
FULL_NAME="LINQPad 8"
# The executable inside windows
WIN_EXECUTABLE="C:\Program Files\LINQPad8\LINQPad8.exe"
# GNOME categories
CATEGORIES="WinApps;Development"
# GNOME mimetypes
MIME_TYPES="text/cs"
# Copyright (c) 2024 Adam
# Copyright (c) 2024 Oskar Manhart
# All rights reserved.
#
# SPDX-License-Identifier: AGPL-3.0-or-later
# GNOME shortcut name # GNOME shortcut name
NAME="Paint" NAME="Paint"
......
# Copyright (c) 2024 Adam
# Copyright (c) 2024 Oskar Manhart
# All rights reserved.
#
# SPDX-License-Identifier: AGPL-3.0-or-later
# GNOME shortcut name # GNOME shortcut name
NAME="Powershell" NAME="Powershell"
......
# Copyright (c) 2024 Oskar Manhart
# All rights reserved.
#
# SPDX-License-Identifier: AGPL-3.0-or-later
# GNOME shortcut name
NAME="Project" NAME="Project"
# Used for descriptions and window class # Used for descriptions and window class
......
# Copyright (c) 2024 Gordon Cheong
# Copyright (c) 2024 Oskar Manhart
# All rights reserved.
#
# SPDX-License-Identifier: AGPL-3.0-or-later
# GNOME shortcut name # GNOME shortcut name
NAME="Project" NAME="Project"
......
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<!-- Generator: Adobe Illustrator 23.0.1, SVG Export Plug-In . SVG Version: 6.00 Build 0) -->
<svg
version="1.1"
id="Livello_1"
x="0px"
y="0px"
viewBox="0 0 1881.25 1750"
enable-background="new 0 0 1881.25 1750"
xml:space="preserve"
sodipodi:docname="icon.svg"
inkscape:version="1.2.2 (b0a8486541, 2022-12-01)"
xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
xmlns="http://www.w3.org/2000/svg"
xmlns:svg="http://www.w3.org/2000/svg"
xmlns:ns="&amp;ns_sfw;"><defs
id="defs34" /><sodipodi:namedview
id="namedview32"
pagecolor="#ffffff"
bordercolor="#000000"
borderopacity="0.25"
inkscape:showpageshadow="2"
inkscape:pageopacity="0.0"
inkscape:pagecheckerboard="0"
inkscape:deskcolor="#d1d1d1"
showgrid="false"
inkscape:zoom="0.58685714"
inkscape:cx="940.6037"
inkscape:cy="800.02434"
inkscape:window-width="2494"
inkscape:window-height="1371"
inkscape:window-x="66"
inkscape:window-y="32"
inkscape:window-maximized="1"
inkscape:current-layer="Livello_1" />
<metadata
id="metadata2">
<ns:sfw>
<ns:slices />
<ns:sliceSourceBounds
bottomLeftOrigin="true"
height="1750"
width="1881.25"
x="-938.5"
y="-851" />
</ns:sfw>
</metadata>
<linearGradient
id="SVGID_1_"
gradientUnits="userSpaceOnUse"
x1="167.2057"
y1="1420.9117"
x2="795.2943"
y2="333.0883"
gradientTransform="matrix(1 0 0 -1 0 1752)">
<stop
offset="0"
style="stop-color:#2368C4"
id="stop20" />
<stop
offset="0.5"
style="stop-color:#1A5DBE"
id="stop22" />
<stop
offset="1"
style="stop-color:#1146AC"
id="stop24" />
</linearGradient>
<rect
style="fill:#fff6d5"
id="rect399"
width="1881.25"
height="1750"
x="0"
y="0"
ry="134.62839" /><text
xml:space="preserve"
style="font-size:1066.67px;fill:#000000;-inkscape-font-specification:serif;font-family:serif;font-weight:normal;font-style:normal;font-stretch:normal;font-variant:normal"
x="204.01395"
y="1266.3248"
id="text295"><tspan
sodipodi:role="line"
id="tspan293"
x="204.01395"
y="1266.3248">rM</tspan></text></svg>
# GNOME shortcut name
NAME="reMarkable"
# Used for descriptions and window class
FULL_NAME="reMarkable Desktop App"
# The executable inside windows
WIN_EXECUTABLE="C:\Program Files\reMarkable\reMarkable.exe"
# GNOME categories
CATEGORIES="WinApps;Office"
# GNOME mimetypes
MIME_TYPES=""
# System Icon
ICON="reMarkable"
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment