[PR #4642] [CLOSED] Workflows to package server #12558

Closed
opened 2026-04-10 21:32:40 -05:00 by GiteaMirror · 0 comments
Owner

📋 Pull Request Information

Original PR: https://github.com/actualbudget/actual/pull/4642
Author: @MikesGlitch
Created: 3/17/2025
Status: ❌ Closed

Base: master ← Head: workflows-to-package-server


📝 Commits (10+)

📊 Changes

10 files changed (+80 additions, -26 deletions)

View changed files

➕ .github/workflows/package-server.yml (+62 -0)
📝 package.json (+1 -1)
📝 packages/sync-server/.gitignore (+1 -0)
📝 packages/sync-server/docker/alpine.Dockerfile (+2 -5)
📝 packages/sync-server/docker/ubuntu.Dockerfile (+2 -5)
📝 packages/sync-server/package.json (+2 -2)
📝 packages/sync-server/src/load-config.js (+1 -6)
📝 sync-server.Dockerfile (+2 -5)
➕ upcoming-release-notes/4642.md (+6 -0)
📝 yarn.lock (+1 -2)

📄 Description

Important

I'm going to hold off on this until we get more feedback from users. Hopefully non-technical users will move away from building from source.

Why:

People on the support channel were struggling to build the sync-server. Some are running on limited hardware (like raspberry pi's etc).

It wasn't an issue before the change to make @actual-app/web a workspace package because it was already built (it was an npm package).

The solution here is to package the sync-server in one zip. So all you need to run the sync-server is in that zip. It means users don't need to build anything. It also means the users don't need to install git, if they just download the zip

How to use it:

To update, you'd do the same thing, except you'd overwrite the files in your directory. This may be annoying, git does it for you when you pull.

Note: we need to run yarn so that the right bettersqlite/bcrypt binaries will be installed for the users node & cpu.

Interested to know what people's thoughts are and if it's worth doing this.

Pros:

  • Small download (10.9MB)
  • No need to build the web client

Downsides:

  • Updating the sync-server will involve overwriting files, this may create merge issues. With Git, it's a nicer process.

🔄 This issue represents a GitHub Pull Request. It cannot be merged through Gitea due to API limitations.

## 📋 Pull Request Information **Original PR:** https://github.com/actualbudget/actual/pull/4642 **Author:** [@MikesGlitch](https://github.com/MikesGlitch) **Created:** 3/17/2025 **Status:** ❌ Closed **Base:** `master` ← **Head:** `workflows-to-package-server` --- ### 📝 Commits (10+) - [`9de90dc`](https://github.com/actualbudget/actual/commit/9de90dc20c483d6ae80edd1dc2e6bff2210bf1ae) adding workflow to build server in pipeline - [`3b6d05d`](https://github.com/actualbudget/actual/commit/3b6d05dbbc0948173f2c87e00e8483aee28be207) update the name - [`2b66d15`](https://github.com/actualbudget/actual/commit/2b66d15632a3b2851e91a5eb9ee7259bf17c7d39) x64 specific - [`f31947b`](https://github.com/actualbudget/actual/commit/f31947be6512e8871730abf0236900bef40d7915) typo - [`e2d7cde`](https://github.com/actualbudget/actual/commit/e2d7cde88b879d5e6248ce8faec9b4ff3900ab1a) set target in yarn config - [`895d0e0`](https://github.com/actualbudget/actual/commit/895d0e0b06ca35e7a2a0e078a3f835c7841d1631) new env variable for arch - [`4bbd978`](https://github.com/actualbudget/actual/commit/4bbd97821ee4219d09ea76418c0a7ece216b1b15) build from source - [`cd2ade5`](https://github.com/actualbudget/actual/commit/cd2ade56e61785996c2df5a1de154353d5725b8c) test - [`6a582f2`](https://github.com/actualbudget/actual/commit/6a582f28130a108f425c401efc92378ced2faf93) test - [`ff47736`](https://github.com/actualbudget/actual/commit/ff4773689f2646769433c052a41a7ea9d7bb81fe) build server ### 📊 Changes **10 files changed** (+80 additions, -26 deletions) <details> <summary>View changed files</summary> ➕ `.github/workflows/package-server.yml` (+62 -0) 📝 `package.json` (+1 -1) 📝 `packages/sync-server/.gitignore` (+1 -0) 📝 `packages/sync-server/docker/alpine.Dockerfile` (+2 -5) 📝 `packages/sync-server/docker/ubuntu.Dockerfile` (+2 -5) 📝 `packages/sync-server/package.json` (+2 -2) 📝 `packages/sync-server/src/load-config.js` (+1 -6) 📝 `sync-server.Dockerfile` (+2 -5) ➕ `upcoming-release-notes/4642.md` (+6 -0) 📝 `yarn.lock` (+1 -2) </details> ### 📄 Description <!-- Thank you for submitting a pull request! Make sure to follow the instructions to write release notes for your PR — it should only take a minute or two: https://github.com/actualbudget/docs#writing-good-release-notes --> > [!IMPORTANT] I'm going to hold off on this until we get more feedback from users. Hopefully non-technical users will move away from building from source. **Why:** People on the [support channel](https://discord.com/channels/937901803608096828/1350802469818728478) were struggling to build the sync-server. Some are running on limited hardware (like raspberry pi's etc). It wasn't an issue before the change to make @actual-app/web a workspace package because it was already built (it was an npm package). The solution here is to package the sync-server in one zip. So all you need to run the sync-server is in that zip. It means users don't need to build anything. It also means the users don't need to install git, if they just download the zip **How to use it:** - Download the artifact https://github.com/actualbudget/actual/actions/runs/13908528457?pr=4642 - Extract it - Run ```yarn workspaces focus @actual-app/sync-server --production``` - Run ```yarn start:server``` To update, you'd do the same thing, except you'd overwrite the files in your directory. This may be annoying, git does it for you when you pull. Note: we need to run yarn so that the right bettersqlite/bcrypt binaries will be installed for the users node & cpu. Interested to know what people's thoughts are and if it's worth doing this. **Pros:** - Small download (10.9MB) - No need to build the web client **Downsides:** - Updating the sync-server will involve overwriting files, this _may_ create merge issues. With Git, it's a nicer process. --- <sub>🔄 This issue represents a GitHub Pull Request. It cannot be merged through Gitea due to API limitations.</sub>
GiteaMirror added the pull-request label 2026-04-10 21:32:40 -05:00
Sign in to join this conversation.
1 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: github-starred/actual#12558