Skip to content
Merged
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
3 changes: 3 additions & 0 deletions .github/workflows/build-package.yml
Original file line number Diff line number Diff line change
Expand Up @@ -5,6 +5,9 @@ on:
push:
branches: [main]

# Only the WEBHOOK_TOKEN secret is used; the GITHUB_TOKEN needs no access
permissions: {}

jobs:
build:
if: github.ref == 'refs/heads/main'
Expand Down
45 changes: 45 additions & 0 deletions .github/workflows/tests.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,45 @@
name: Tests

on:
push:
branches: [main]
pull_request:
workflow_dispatch:

permissions:
contents: read

jobs:
tests:
runs-on: ubuntu-latest
container: archlinux:latest
steps:
- name: Install dependencies
run: |
pacman -Syu --noconfirm --needed git python python-gobject python-cairo \
python-yaml python-pytest gtk4 libadwaita gettext shellcheck \
desktop-file-utils
# Pinned, so new ruff releases cannot change the rule set unnoticed
python -m venv /opt/ruff && /opt/ruff/bin/pip install --quiet ruff==0.17.0

- uses: actions/checkout@v4

- name: Lint
run: |
/opt/ruff/bin/ruff check usr/share/biglinux/welcome tests generate_strings.py
/opt/ruff/bin/ruff format --check usr/share/biglinux/welcome tests generate_strings.py
shellcheck tests/run-headless.sh usr/share/biglinux/welcome/scripts/*.sh update-translations.sh \
pkgbuild/biglinux-welcome.install usr/bin/biglinux-welcome
desktop-file-validate usr/share/applications/org.biglinux.welcome.desktop

- name: Translations
run: for po in locale/*.po; do msgfmt --check -o /dev/null "$po"; done

# The privileged helper ignores its test mode when run as root, so the
# suite runs as an unprivileged user. GUI tests use GTK's headless
# Broadway backend (gtk4-broadwayd ships with gtk4).
- name: Test suite
run: |
useradd -m tester
chown -R tester: "$GITHUB_WORKSPACE"
runuser -u tester -- tests/run-headless.sh -v -rs
232 changes: 232 additions & 0 deletions LICENSE

Large diffs are not rendered by default.

326 changes: 225 additions & 101 deletions README.md

Large diffs are not rendered by default.

Binary file added docs/screenshots/about-pt_BR.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added docs/screenshots/apps-dark-pt_BR.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added docs/screenshots/apps-narrow-de.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added docs/screenshots/apps.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added docs/screenshots/browsers.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added docs/screenshots/discover.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added docs/screenshots/hardware.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added docs/screenshots/initial-settings.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added docs/screenshots/install-confirm.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added docs/screenshots/kde-connect.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added docs/screenshots/welcome-dark-pt_BR.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added docs/screenshots/welcome.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
14 changes: 6 additions & 8 deletions generate_strings.py
100644 → 100755
Original file line number Diff line number Diff line change
@@ -1,13 +1,13 @@
#!/usr/bin/env python3
# -*- coding: utf-8 -*-

import sys
import yaml
import argparse
import sys
from pathlib import Path

import yaml

# The keys in the YAML file whose string values should be translated.
TRANSLATABLE_KEYS = {"title", "subtitle", "label"}
TRANSLATABLE_KEYS = {"title", "subtitle", "label", "description"}

HEADER = """# -*- coding: utf-8 -*-
#
Expand Down Expand Up @@ -76,14 +76,12 @@ def main():
return

# Sort for deterministic output, which is good for version control
sorted_strings = sorted(list(translatable_strings))
sorted_strings = sorted(translatable_strings)

print(f"Writing {len(sorted_strings)} strings to: {output_file}")
with open(output_file, "w", encoding="utf-8") as f:
f.write(HEADER)
for s in sorted_strings:
# Use repr() to correctly handle quotes and special characters
f.write(f"_({repr(s)})\n")
f.writelines(f"_({s!r})\n" for s in sorted_strings)

print("Done.")

Expand Down
Loading
Loading