Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
7 changes: 7 additions & 0 deletions .envrc.example
Original file line number Diff line number Diff line change
@@ -0,0 +1,7 @@
# isIdea: whether to write the current rust toolchain into `.idea/workspace.xml`, defaults to false
# nixpkgs: the path to a nixpkgs checkout, defaults to a pinned version
# mkToolchain: a function taking a fenix instance and returning a toolchain, defaults to `fenix: fenix.complete`
use nix # \
# --arg isIdea true \
# --arg nixpkgs '<nixpkgs>' \
# --arg mkToolchain 'fenix: fenix.beta'
2 changes: 1 addition & 1 deletion CODE_OF_CONDUCT.md → .github/CODE_OF_CONDUCT.md
Original file line number Diff line number Diff line change
Expand Up @@ -61,7 +61,7 @@ representative at an online or offline event.

Instances of abusive, harassing, or otherwise unacceptable behavior may be
reported to the community leaders responsible for enforcement at
[INSERT CONTACT METHOD].
<https://matrix.to/#/#winapps:matrix.org>.
All complaints will be reviewed and investigated promptly and fairly.

All community leaders are obligated to respect the privacy and security of the
Expand Down
45 changes: 45 additions & 0 deletions .github/CONTRIBUTING.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,45 @@
# Contribution Guidelines

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>
- All Contributors have to sign a Developer Certificate of Origin, agreeing to license their contribution under the AGPLv3. You can find a copy of the DCO below or under <https://developercertificate.org>.
- 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 repository you cloned.

## Developer Certificate of Origin

Developer Certificate of Origin
Version 1.1

Copyright (C) 2004, 2006 The Linux Foundation and its contributors.

Everyone is permitted to copy and distribute verbatim copies of this
license document, but changing it is not allowed.


Developer's Certificate of Origin 1.1

By making a contribution to this project, I certify that:

(a) The contribution was created in whole or in part by me and I
have the right to submit it under the open source license
indicated in the file; or

(b) The contribution is based upon previous work that, to the best
of my knowledge, is covered under an appropriate open source
license and I have the right under that license to submit that
work with modifications, whether created in whole or in part
by me, under the same open source license (unless I am
permitted to submit under a different license), as indicated
in the file; or

(c) The contribution was provided directly to me by some other
person who certified (a), (b) or (c) and I have not modified
it.

(d) I understand and agree that this project and the contribution
are public and that a record of the contribution (including all
personal information I submit with it, including my sign-off) is
maintained indefinitely and may be redistributed consistent with
this project or the open source license(s) involved.
65 changes: 65 additions & 0 deletions .github/ISSUE_TEMPLATE/1-bug.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,65 @@
name: Bug Report
description: File a bug report.
labels: ["triage"]
body:
- type: markdown
attributes:
value: |
We cannot fix nor support all bugs caused by FreeRDP, especially on Wayland.
If you experience visual bugs, please open a discussion instead.

- type: textarea
id: what-happened
attributes:
label: What happened?
description: Also tell us, what did you expect to happen?
placeholder: Tell us what you see!
value: "A bug happened!"
validations:
required: true

- type: input
id: freerdp
attributes:
label: Your FreeRDP version and where you got it from
placeholder: "FreeRDP 3.10 (Debian Backports)"
validations:
required: true

- type: input
id: distro
attributes:
label: Your Linux distribution and version
placeholder: "Debian Trixie"
validations:
required: true

- type: textarea
id: config
attributes:
label: Your `winapps.conf`
description: Please copy and paste your `winapps.conf`. Make sure to not include any sensitive data. This will be automatically formatted into code, so no need for backticks.
render: shell
validations:
required: true

- type: textarea
id: logs
attributes:
label: Logs
description: Give the output of WinApps, FreeRDP etc. where / if applicable.
render: shell

- type: checkboxes
id: terms
attributes:
label: Terms
options:
- label: I am running the latest version.
required: true
- label: To the best of my knowledge, this is a bug and not a setup nor a FreeRDP problem.
required: true
- label: I have checked for duplicate issues.
required: true
- label: I agree to follow this project's Code of Conduct.
required: true
5 changes: 5 additions & 0 deletions .github/ISSUE_TEMPLATE/config.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,5 @@
blank_issues_enabled: false
contact_links:
- name: Community Support
url: https://github.com/winapps-org/winapps/discussions
about: Get help with non-bug issues here. Please use this instead of filing bug reports.
57 changes: 0 additions & 57 deletions .github/workflows/build.yml

This file was deleted.

25 changes: 25 additions & 0 deletions .github/workflows/ci.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,25 @@
name: Format and lint

on:
push:
branches: ["rewrite"]
pull_request:
branches: ["rewrite"]

permissions:
checks: write

jobs:
check:
runs-on: ubuntu-latest

steps:
- uses: actions/checkout@v4

- uses: dtolnay/rust-toolchain@nightly
with:
components: clippy

- uses: auguwu/[email protected]
with:
token: ${{ secrets.GITHUB_TOKEN }}
50 changes: 50 additions & 0 deletions .github/workflows/docker.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,50 @@
name: Build container image

on:
push:
branches: [ "rewrite" ]
paths: [ "winapps-image/**" ]
workflow_dispatch:
schedule:
# See https://crontab.guru/monthly
- cron: 0 0 1 * *

permissions:
packages: write

env:
IMAGE_REGISTRY: ghcr.io
IMAGE_NAME: winapps-org/windows

jobs:
build:
runs-on: ubuntu-latest

steps:
- name: Checkout repository
uses: actions/checkout@v4

- name: Extract metadata (tags, labels) for Docker
id: meta
uses: docker/metadata-action@v5
with:
images: ${{ env.IMAGE_REGISTRY }}/${{ env.IMAGE_NAME }}

- name: Build image
id: build
uses: redhat-actions/buildah-build@v2
with:
image: ${{ env.IMAGE_NAME }}
tags: ${{ steps.meta.outputs.tags }}
labels: ${{ steps.meta.outputs.labels }}
context: winapps-image
containerfiles: winapps-image/Containerfile

- name: Push image to GHCR
uses: redhat-actions/push-to-registry@v2
with:
image: ${{ steps.build.outputs.image }}
tags: ${{ steps.build.outputs.tags }}
registry: ${{ env.IMAGE_REGISTRY }}
username: ${{ github.actor }}
password: ${{ secrets.GITHUB_TOKEN }}
51 changes: 0 additions & 51 deletions .github/workflows/rust-clippy.yml

This file was deleted.

22 changes: 0 additions & 22 deletions .github/workflows/rust.yml

This file was deleted.

9 changes: 5 additions & 4 deletions .gitignore
Original file line number Diff line number Diff line change
@@ -1,10 +1,11 @@
# Generated files
target/

# The library shouldn't decide about the exact versions of
# its dependencies, but let the downstream crate decide.
Cargo.lock
/result

# We don't want to commit IDE configuration files.
.idea/
winapps.iml
.vscode/
.direnv
.wakatime-project
.envrc
9 changes: 6 additions & 3 deletions .pre-commit-config.yaml
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

For precommit we could possibly add renovate bot it could check the dependencies (also for cargo) and make automatic PRs. I not completely sure if this works with out DCO, but just a thought, since it would help a bit to keep this updated.

Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I really dislike renovate because you get a gajillion random PRs and it makes it look like a project is very active when in fact all the commits in the last three years were made by renovate. However, the idea itself is good; keeping our dependencies up to date wouldn't hurt.

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I think renovate could be configured to only give you one PR for all updates:
However, we could also use another bot or a CI/CD for this, if you wish so.

Original file line number Diff line number Diff line change
@@ -1,6 +1,8 @@
ci:
skip: [clippy, cargo-check]

default_install_hook_types: [pre-commit, commit-msg]

repos:
- repo: https://github.com/pre-commit/pre-commit-hooks
rev: v6.0.0
Expand All @@ -14,9 +16,10 @@ repos:
- id: end-of-file-fixer
- id: mixed-line-ending
- id: trailing-whitespace
- repo: https://github.com/winapps-org/pre-commit-rust
rev: v1.1
- repo: https://github.com/winapps-org/pre-commit-hooks
rev: v2.0.1
hooks:
- id: fmt
- id: rustfmt
- id: clippy
- id: cargo-check
- id: signoff
2 changes: 2 additions & 0 deletions .rustfmt.toml
Original file line number Diff line number Diff line change
@@ -0,0 +1,2 @@
unstable_features = true
imports_granularity = "Crate"
Loading
Loading