Skip to content

Commit 7bd2c18

Browse files
authored
Merge branch 'master' into aws
2 parents 1f85da0 + f42c21c commit 7bd2c18

File tree

1,440 files changed

+61311
-1408
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

1,440 files changed

+61311
-1408
lines changed

.github/workflows/test.yml

Lines changed: 117 additions & 75 deletions
Original file line numberDiff line numberDiff line change
@@ -1,86 +1,128 @@
1-
21
on:
32
push:
4-
# The ignored paths must not include md files for the website itself
5-
paths-ignore:
6-
- '*.md'
3+
branches:
4+
# Do not build PRs twice
5+
- 'master'
6+
paths:
7+
- 'data/**'
78
pull_request:
8-
paths-ignore:
9-
- '*.md'
9+
paths:
10+
- 'data/**'
1011

1112
env:
1213
DISPLAY: :99
1314
IS_PULLREQUEST: ${{ github.event_name == 'pull_request' }}
1415
GH_TOKEN: ${{ secrets.GITHUB_TOKEN }}
1516

1617
jobs:
17-
dummy:
18-
# https://github.com/AppImage/appimage.github.io/issues/2593
19-
runs-on: ubuntu-latest
20-
steps:
21-
- name: Pass dummy job
22-
run: |
23-
echo "passing"
24-
build:
25-
runs-on: ubuntu-18.04
26-
timeout-minutes: 5
18+
test:
19+
runs-on: ubuntu-20.04
20+
timeout-minutes: 10
21+
permissions:
22+
contents: write
23+
pull-requests: write
2724
steps:
28-
- uses: actions/checkout@v2
29-
# https://github.com/actions/checkout#Fetch-all-history-for-all-tags-and-branches
30-
# According to the docs for checkout@v2, Only a single commit is fetched by default, but
31-
# providing a fetch-depth of 0 should fetch all history.
32-
with:
33-
fetch-depth: 0
34-
- name: Install dependencies
35-
run: |
36-
sudo apt update
37-
sudo apt-get -qq -y install sudo imagemagick libasound2-dev pulseaudio-utils alsa-utils alsa-oss libjack0 desktop-file-utils xmlstarlet xterm xvfb icewm x11-utils x11-apps netpbm xdotool libgl1-mesa-dri libgl1-mesa-dev mesa-utils libosmesa6 libsdl1.2-dev libsdl2-2.0-0 fonts-wqy-microhei libfile-mimeinfo-perl # appstream # TODO: Cache me!
38-
sudo bash code/prep-dummy-soundcard.sh
39-
sudo gem install dupervisor -v 1.0.5 # To convert ini to yaml files
40-
sudo npm install -g asar # to get pacakges.json from resources/app.asar for electron-builder applications
41-
# npm install -g @alexlafroscia/yaml-merge # to merge yaml files
42-
- name: Main test
43-
run: |
44-
mkdir $HOME/.icewm/
45-
echo "ShowTaskBar = 0" > $HOME/.icewm/preferences
46-
echo "TaskBarAutoHide = 1" > $HOME/.icewm/preferences
47-
echo "TaskBarShowWorkspaces = 0" > $HOME/.icewm/preferences
48-
echo "TaskBarShowAllWindows = 0" > $HOME/.icewm/preferences
49-
echo "TaskBarShowClock = 0" > $HOME/.icewm/preferences
50-
echo "TaskBarShowMailboxStatus = 0" > $HOME/.icewm/preferences
51-
echo "TaskBarShowCPUStatus = 0" > $HOME/.icewm/preferences
52-
echo "TaskBarShowWindowListMenu = 0" > $HOME/.icewm/preferences
53-
# xpra start :99 # Cannot get screenshots to work
54-
Xvfb :99 -screen 0 800x600x24 >/dev/null 2>&1 & # Need to set bit depth, otherwise get some black screenshots
55-
# until xset -q; do echo "Waiting for X server to start..."; sleep 1; done # We are not immediately using it anyway
56-
# Find out which files in data/ have been changed in the last commit
57-
#set -x # Debug #379
58-
FILES=$(git log -1 -p data/ | grep +++ | cut -d '/' -f 2-| sed -e 's|dev/null||g')
59-
echo "Last changed files from the FILES variable:"
60-
echo "$FILES" ; if [ -z "$FILES" ] ; then echo "Variable FILES is empty." && exit 1 ; fi
61-
# Work on these files that have been changed in the last commit
62-
# Check if $FILES is not empty
63-
if [ -n "$FILES" ] ; then for FILE in $FILES ; do echo "$FILE" ; bash -e code/worker.sh $(readlink -f "$FILE") 2>&1 | tee log.txt ; done ; fi
64-
# xpra stop :99
65-
killall Xvfb
66-
# bundle exec jekyll build # https://help.github.com/en/articles/viewing-jekyll-build-error-messages#configuring-a-third-party-service-to-display-jekyll-build-error-messages
67-
- name: Check log
68-
shell: bash
69-
run: |
70-
cat log.txt | wc -l
71-
grep -r "Running as root without --no-sandbox is not supported" log.txt && MESSAGE="Pending #2563 (\`Running as root without --no-sandbox is not supported\`)."
72-
grep -r "version \`GLIBC_.*' not found" && MESSAGE="This was compiled on a too new system and hence cannot run on all still-supported versions of Ubuntu."
73-
echo "${MESSAGE}"
74-
- name: Post test result to PR
75-
# Fails due to missing permissions, https://github.com/actions/first-interaction/issues/10
76-
if: 1 == 2
77-
# if: github.event_name == 'pull_request'
78-
uses: actions/github-script@v4
79-
with:
80-
script: |
81-
await github.issues.createComment({
82-
issue_number: context.issue.number,
83-
owner: context.repo.owner,
84-
repo: context.repo.repo,
85-
body: 'This comment is posted by the test'
86-
})
25+
- name: Checkout repository
26+
uses: actions/checkout@v3
27+
# https://github.com/actions/checkout#Fetch-all-history-for-all-tags-and-branches
28+
# According to the docs for checkout@v2, Only a single commit is fetched by default, but
29+
# providing a fetch-depth of 0 should fetch all history.
30+
with:
31+
fetch-depth: 0
32+
- name: Configure APT Packages
33+
uses: awalsh128/[email protected]
34+
# This action handles caching APT packages, and leaves the option for package configuration scripts to be run if needed,
35+
# saving a boat-load of time, if needed bump the action version.
36+
with:
37+
packages: sudo imagemagick libasound2-dev pulseaudio-utils alsa-utils alsa-oss libjack0 desktop-file-utils xmlstarlet xsel xterm xvfb icewm x11-utils x11-apps netpbm xdotool libgl1-mesa-dri libgl1-mesa-dev mesa-utils libosmesa6 libsdl1.2-dev libsdl2-2.0-0 fonts-wqy-microhei libfile-mimeinfo-perl
38+
version: 1.0
39+
# Bump me ^ if you have added any new packages
40+
- name: Install dependencies
41+
shell: bash
42+
run: |
43+
# set -e
44+
sudo bash code/prep-dummy-soundcard.sh
45+
# TODO Cache gem and npm packages
46+
sudo gem install dupervisor -v 1.0.5 # To convert ini to yaml files
47+
sudo npm install -g asar # to get pacakges.json from resources/app.asar for electron-builder applications
48+
# npm install -g @alexlafroscia/yaml-merge # to merge yaml files
49+
- name: Main test
50+
# shell: bash
51+
run: |
52+
# set -e
53+
mkdir $HOME/.icewm/
54+
echo "ShowTaskBar = 0" > $HOME/.icewm/preferences
55+
echo "TaskBarAutoHide = 1" > $HOME/.icewm/preferences
56+
echo "TaskBarShowWorkspaces = 0" > $HOME/.icewm/preferences
57+
echo "TaskBarShowAllWindows = 0" > $HOME/.icewm/preferences
58+
echo "TaskBarShowClock = 0" > $HOME/.icewm/preferences
59+
echo "TaskBarShowMailboxStatus = 0" > $HOME/.icewm/preferences
60+
echo "TaskBarShowCPUStatus = 0" > $HOME/.icewm/preferences
61+
echo "TaskBarShowWindowListMenu = 0" > $HOME/.icewm/preferences
62+
# xpra start :99 # Cannot get screenshots to work
63+
Xvfb :99 -screen 0 800x600x24 >/dev/null 2>&1 & # Need to set bit depth, otherwise get some black screenshots
64+
# until xset -q; do echo "Waiting for X server to start..."; sleep 1; done # We are not immediately using it anyway
65+
# Find out which files in data/ have been changed in the last commit
66+
#set -x # Debug #379
67+
FILES=$(git log -1 -p data/ | grep +++ | cut -d '/' -f 2-| sed -e 's|dev/null||g')
68+
# Finds wrong files in PRs! # FILES=$(git log -1 --name-status --diff-filter=AR --pretty=format: -- data/ | awk '/^A/ || /^R/ {file=$2} END {print file}') # Most recent addition or renaming within the last commit
69+
echo "Last changed files from the FILES variable:"
70+
echo "$FILES" ; if [ -z "$FILES" ] ; then echo "Variable FILES is empty." && exit 1 ; fi
71+
# Work on these files that have been changed in the last commit
72+
if [ -n "$FILES" ]; then
73+
for FILE in $FILES; do
74+
echo "$FILE"
75+
bash -e code/worker.sh $(readlink -f "$FILE") 2>&1 | tee log.txt
76+
EXIT_CODE=${PIPESTATUS[0]} # bashism; get the return code of the leftmost element of the pipe
77+
if [ $EXIT_CODE -ne 0 ]; then
78+
echo "worker.sh exited with a non-zero code: $EXIT_CODE"
79+
exit $EXIT_CODE
80+
fi
81+
done
82+
fi
83+
# xpra stop :99
84+
killall Xvfb
85+
# bundle exec jekyll build # https://help.github.com/en/articles/viewing-jekyll-build-error-messages#configuring-a-third-party-service-to-display-jekyll-build-error-messages
86+
- name: Check log
87+
if: github.event_name == 'pull_request' && github.event.pull_request.user.login == 'probonopd'
88+
shell: bash
89+
run: |
90+
cat log.txt | wc -l
91+
grep -r "Running as root without --no-sandbox is not supported" log.txt && MESSAGE="Pending #2563 (\`Running as root without --no-sandbox is not supported\`)." && exit 1
92+
grep -r "version \`GLIBC_.*' not found" && MESSAGE="This was compiled on a too new system and hence cannot run on all still-supported versions of Ubuntu." && exit 1
93+
echo "${MESSAGE}"
94+
SCREENSHOT_URL=$(cat log.txt | grep -o -e "https://i.imgur.com.*.png") || true
95+
if [[ -z "${SCREENSHOT_URL}" ]]; then
96+
echo "No screenshot URL found."
97+
exit 1
98+
fi
99+
echo "SCREENSHOT_URL=$SCREENSHOT_URL" >> $GITHUB_ENV || true
100+
echo "SCREENSHOT_URL: ${SCREENSHOT_URL}" || true
101+
# The following is disabled because it gives errors about missing permissions
102+
# whenever a PR is made by anyone but the repo maintainer
103+
# - name: Post Screenshot URL
104+
# if: ${{ always() && github.event_name == 'pull_request' && github.run_status != 'cancelled' }}
105+
# uses: actions/github-script@v6
106+
# with:
107+
# script: |
108+
# const prNumber = context.payload.pull_request.number;
109+
# const screenshotURL = process.env.SCREENSHOT_URL;
110+
# if (screenshotURL) {
111+
# const commentBody = `Seems like the test succeeded. Temporary screenshot URL: ${screenshotURL}`;
112+
# await github.rest.issues.createComment({
113+
# owner: context.repo.owner,
114+
# repo: context.repo.repo,
115+
# issue_number: prNumber,
116+
# body: commentBody
117+
# });
118+
# } else {
119+
# const runURL = `https://github.com/${process.env.GITHUB_REPOSITORY}/actions/runs/${{ github.run_id }}`;
120+
# const commentBody = `The test was unable to make a screenshot. Most likely, the test did not succeed. Please check the [logs of the test run](${runURL}).`;
121+
# await github.rest.issues.createComment({
122+
# owner: context.repo.owner,
123+
# repo: context.repo.repo,
124+
# issue_number: prNumber,
125+
# body: commentBody
126+
# });
127+
# core.setFailed("Unable to post screenshot");
128+
# }

.mergify.yml

Lines changed: 7 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
1-
pull_request_rules:
2-
- name: automatic update for PR marked as “Ready-to-Go“
3-
conditions:
4-
- -conflict # skip PRs with conflicts
5-
- -draft # filter-out GH draft PRs
6-
actions:
7-
update:
1+
#pull_request_rules:
2+
# - name: automatic update for PRs
3+
# conditions:
4+
# - -conflict # skip PRs with conflicts
5+
# - -draft # filter-out GH draft PRs
6+
# actions:
7+
# update:

ISSUE_TEMPLATE.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
<!--
22
33
Welcome to AppImageHub, the crowd-sourced central directory of available AppImages. Before you open an issue, please check whether the AppImage is already in our collection. If it is not, please submit an issue here if the original authors of the software provide an official AppImage that should be included in this directory. Please do NOT request AppImages for applications here if one does not exist yet; in this case, please ask the application authors instead.
4-
Do you want to ask a question? Are you looking for support? The Atom message board is the best place for getting support: https://discourse.appimage.org
4+
Do you want to ask a question? Are you looking for support? Here is the best place for getting comunity support: https://github.com/orgs/AppImage/discussions
55
66
-->
77

0 commit comments

Comments
 (0)