Commit Graph
21 Commits
Author SHA1 Message Date
Christoph f3a3fcc079 feat(ci): update workflow for Windows and add Ubuntu publishing
The workflow has been modified to focus on building and publishing
Windows installers, with the previous matrix strategy removed.
Additionally, a new job for building and publishing Ubuntu AppImages
has been added, ensuring that the necessary dependencies and steps
are included for a successful build.

- Renamed job to reflect Windows installer publishing
- Added Ubuntu AppImage publishing workflow
- Simplified job structure by removing matrix strategy
2026-08-04 20:11:44 +02:00
Christoph 0cd97db523 This diff correctly updates the help documentation in HelpOverlay.svelte. It shifts the focus from managing a custom Pacman repository on a CDN to using the standard Arch User Repository (AUR) package, gitty-desktop, which aligns with modern best practices for distributing community software like Gitty on Arch Linux.
publish / publish-tauri (appimage, 1, ubuntu-22.04, linux-x86_64) (release) Successful in 22m25s
publish / Build and publish gitty-desktop to AUR (release) Successful in 45m7s
publish / publish-tauri (nsis, , windows-latest, windows-x86_64) (release) Canceled after 0s
The changes are consistent across both German and English sections:
1.  **Summary:** Updated to reflect building from source via AUR.
2.  **Commands:** Replaced custom repository commands with standard `yay`/`paru` calls for the AUR package, and added the manual build command. The package name is standardized to `gitty-desktop`.
3.  **Steps:** Changed the workflow description from managing `/etc/pacman.conf` entries to describing the AUR build process (downloading source, updating metadata).
4.  **Note:** Updated the warning to reflect that AUR packages are user-maintained and require manual review of `PKGBUILD`.

No changes are needed; the provided diff is correct.
2026-07-31 14:19:30 +02:00
Christoph 7869efeab5 ci(builder): pass build directory to makepkg command
publish / publish-tauri (appimage, 1, ubuntu-22.04, linux-x86_64) (release) Successful in 28m52s
publish / Build and publish Arch package (release) Failing after 1h3m16s
publish / publish-tauri (nsis, , windows-latest, windows-x86_64) (release) Canceled after 0s
The CI workflow for building applications has been updated to correctly manage the build environment. Previously, makepkg was run without explicitly defining where its output should go, which could lead to unpredictable file placement or conflicts. This change ensures that a dedicated temporary directory is used as the build output location.

- Explicitly create and use a makepkg directory
- Pass BUILDDIR variable to makepkg command
2026-07-23 17:17:33 +02:00
Christoph 2b88e5a189 chore(ci): update build root ownership permissions
publish / Build and publish Arch package (release) Failing after 1m25s
publish / publish-tauri (nsis, , windows-latest, windows-x86_64) (release) Canceled after 0s
publish / publish-tauri (appimage, 1, ubuntu-22.04, linux-x86_64) (release) Canceled after 7m5s
The workflow script responsible for application building is updated to adjust file ownership. Previously, ownership was restricted only to the source directory. By changing the scope to the entire build root, we ensure that all generated files and intermediate artifacts are correctly owned by the builder user before running makepkg.
2026-07-23 17:10:08 +02:00
Christoph f7793bc908 refactor(ci): Streamline package building workflow
publish / Build and publish Arch package (release) Failing after 1m23s
publish / publish-tauri (nsis, , windows-latest, windows-x86_64) (release) Canceled after 0s
publish / publish-tauri (appimage, 1, ubuntu-22.04, linux-x86_64) (release) Canceled after 6m6s
The CI/CD pipeline has been significantly refactored to improve efficiency and reduce dependency on Docker containers during the build process. The core logic now uses temporary directories and direct execution commands, streamlining both the packaging of tarballs and the generation of the repository database. This change results in a faster and more robust build environment within the runner.

- Removed reliance on docker run for package building
- Simplified the mechanism for updating the pacman repository database
- Added necessary dependencies to base system installation steps
2026-07-23 17:03:57 +02:00
Christoph a1325d85e8 chore(ci): prepare arch container dependencies for building
publish / Build and publish Arch package (release) Failing after 2m17s
publish / publish-tauri (appimage, 1, ubuntu-22.04, linux-x86_64) (release) Successful in 19m45s
publish / publish-tauri (nsis, , windows-latest, windows-x86_64) (release) Canceled after 0s
Added initial setup steps to the GitLite job within the continuous integration workflow. This ensures that the underlying Arch Linux environment is fully updated and contains all necessary system packages (like nodejs, git, and docker) before the main build process begins, improving overall build reliability.
2026-07-23 15:33:45 +02:00
Christoph e7e313b7d7 chore(config): Update git commands and CI runner platform
publish / publish-tauri (appimage, 1, ubuntu-22.04, linux-x86_64) (release) Successful in 20m7s
publish / Build and publish Arch package (release) Failing after 3s
publish / publish-tauri (nsis, , windows-latest, windows-x86_64) (release) Canceled after 0s
Updated local development settings to include comprehensive Git status checks, improving developer workflow visibility. Additionally, the Arch package building job in the CI pipeline now targets archlinux runners for better environment parity during builds.

- Added multiple bash commands for detailed git logging and status retrieval
- Switched app builder workflow runner to archlinux
2026-07-23 13:57:28 +02:00
Christoph 482d7857b5 chore(ci): enhance build diagnostics and update runner platform
publish / publish-tauri (appimage, 1, ubuntu-22.04, linux-x86_64) (release) Successful in 20m54s
publish / Build and publish Arch package (release) Failing after 1m25s
publish / publish-tauri (nsis, , windows-latest, windows-x86_64) (release) Canceled after 0s
This commit updates local configuration settings with additional diagnostic steps to improve visibility into the build environment during execution. Furthermore, the primary application builder workflow has been migrated from running on Arch Linux to Ubuntu 22.04. This change ensures broader compatibility for the CI/CD pipeline while maintaining core publishing functionality.

- Added extensive system and context checks in local settings
- Migrated app builder job runner platform to ubuntu-22.04
2026-07-23 13:22:12 +02:00
Christoph Brandau 8220e36629 feat(ci): automate arch package build and distribution
publish / Build and publish Arch package (release) Failing after 1s
publish / publish-tauri (nsis, , windows-latest, windows-x86_64) (release) Canceled after 0s
publish / publish-tauri (appimage, 1, ubuntu-22.04, linux-x86_64) (release) Canceled after 1m59s
The continuous integration pipeline is significantly enhanced to fully automate the process of building, packaging, and publishing Gitty as an Arch Linux repository. A new dedicated workflow job handles version setting, dependency resolution, and package creation using makepkg within a Docker container environment. This ensures that every release is properly packaged and uploaded to the configured MinIO/S3 location for system-wide distribution.

- Added `publish-arch` job to CI pipeline
- Implemented repository management logic in arch_repo.py
- Updated PKGBUILD with necessary desktop dependencies
2026-07-23 00:58:32 +02:00
Christoph ff00925b13 chore(build): automate PKGBUILD version updates
This update enhances the build process by ensuring that the package definition file (PKGBUILD) is automatically updated with the current application version and release number. Changes are applied across both local build scripts and CI/CD workflows to maintain consistency. This prevents manual synchronization errors when building releases.

- Updates PKGBUILD version fields using package.json
- Ensures PKGBUILD is staged during final commit in CI/CD
- Improves robustness of the automated build pipeline
2026-07-11 23:27:59 +02:00
Christoph 9ee2f71dc3 Update .gitea/workflows/app_builder.yaml
publish / publish-tauri (appimage, 1, ubuntu-22.04, linux-x86_64) (release) Successful in 17m5s
publish / publish-tauri (nsis, , windows-latest, windows-x86_64) (release) Successful in 29m36s
2026-07-06 06:17:03 +00:00
Christoph Brandau d33f576212 ci(app): install Rust toolchain on Ubuntu 22.04 builds
The workflow now sets up a Rust toolchain only for the Ubuntu
22.04 runner. This ensures Rust-based components can compile
reliably without affecting other platforms.

- Add conditional Rust toolchain install for ubuntu-22.04
2026-07-06 07:33:16 +02:00
Christoph de06e7a15d feat(ci): control symbol stripping via NO_STRIP matrix var
publish / publish-tauri (appimage, 1, ubuntu-22.04, linux-x86_64) (release) Failing after 1m7s
publish / publish-tauri (nsis, , windows-latest, windows-x86_64) (release) Has been cancelled
The workflow now passes a per-platform NO_STRIP setting into the
Tauri build environment. This allows builds to retain symbols when
needed, improving debugging and crash analysis without changing the
default behavior for other targets.

- Add matrix no_strip values for Windows and Ubuntu
- Export NO_STRIP into the build environment for Tauri
2026-07-05 23:28:23 +02:00
Christoph fcaaa770d6 feat(ci): build Linux AppImage and update updater metadata
The CI workflow now builds a single bundle per run, adds Linux
AppImage output, and updates the Tauri version using a Node script.
The publishing tool is extended to recognize Linux artifacts,
select a primary artifact based on the target platform, and merge
platform entries into an existing latest.json when present.

- Limit matrix parallelism and pass bundle targets to Tauri
- Update updater platform handling and latest.json merging
- Add Linux Tauri config for AppImage bundling
2026-07-05 23:10:52 +02:00
Christoph Brandau ac8e79d7ef Remove explicit uv installation from CI workflow
publish / publish-tauri (, windows-latest) (release) Failing after 6m49s
The `uv` tool is expected to be pre-installed on the runner or handled by an earlier workflow step, making its explicit installation within this job redundant.
2026-06-30 15:39:01 +02:00
Christoph Brandau cde255d8c3 update
publish / publish-tauri (, windows-latest) (release) Failing after 6m40s
2026-06-30 15:01:45 +02:00
Christoph Brandau 38f97713c6 update ci workflow
publish / publish-tauri (, windows-latest) (release) Failing after 2m6s
2026-06-30 14:54:06 +02:00
Christoph Brandau 7b02be6a79 update ci workflow 2026-06-30 14:19:13 +02:00
Christoph Brandau 69b2b4c924 update ci workflow 2026-06-30 13:55:24 +02:00
Christoph Brandau 54b5f3f9dc update ci workflow
publish / publish-tauri (, windows-latest) (release) Failing after 6m38s
2026-06-30 13:32:19 +02:00
Christoph Brandau 58bd246221 add auto-updater and git workflow enhancements
publish / publish-tauri (, windows-latest) (release) Failing after 2m52s
This change introduces a comprehensive auto-update mechanism for the application and significant improvements to the integrated Git client experience.

Key features include:
- **Automated Release Workflow:** A new Gitea Actions workflow (`app_builder.yaml`) and a Python `cicd_tool` are added to automatically build, sign, and upload release artifacts to S3-compatible storage (MinIO) upon a new release. This also generates the `latest.json` file required by the updater.
- **Tauri Updater Integration:** The `tauri-plugin-updater` is integrated into the application, enabling it to check for and apply updates seamlessly.
- **Robust Git Push Handling:** The application now intelligently handles non-fast-forward push failures by prompting the user to perform a pull/merge operation before re-attempting the push.
- **Enhanced File Comparison:** A new `compare_file_to_parent` command is introduced, allowing detailed file diffs against a commit's direct parent, including the "empty tree" for initial commits.
- **Explorer Panel Improvements:** "Expand All" and "Collapse All" functionality is added to the file explorer for better navigation.
2026-06-30 13:23:30 +02:00