Sabaki icon indicating copy to clipboard operation
Sabaki copied to clipboard

Sabaki for `aarch64` Linux devices

Open gsobell opened this issue 2 years ago • 5 comments

As I understand it, it is possible to build Electron apps for Linux Arm platforms. Would it be within the scope of the project to also include a AppImage targeted for those systems in future releases? I think this could open up Sabaki to quite a few tinkerers, on Raspberry Pi, pine64 and other boards, in addition to those who use Arm systems as daily drivers.

gsobell avatar Jan 30 '23 09:01 gsobell

Are you on Arch Linux, by any chance? You might want to try out the PKGBUILD, I suspect it'll probably work on aarch64 if Electron does.

apetresc avatar Feb 02 '23 01:02 apetresc

It failed repeatedly to build from the AUR, but succeeded building manually with $ npm run build (on a Pinebook Pro).

gsobell avatar Feb 02 '23 15:02 gsobell

What error did you get when running the PKGBUILD?

apetresc avatar Feb 02 '23 21:02 apetresc

I think the problem is:

+ linux-arm64-unpacked
- linux-unpacked'

The folder my AUR helper looks for in package() does not exist.

> [email protected] build
> npm run bundle && electron-builder --dir


> [email protected] bundle
> webpack --mode production

asset bundle.js 1.25 MiB [emitted] [minimized] (name: main) 1 related asset
orphan modules 627 KiB [orphan] 200 modules
runtime modules 937 bytes 4 modules
modules by path ./node_modules/ 1.64 MiB
  javascript modules 1.61 MiB 300 modules
  json modules 31.1 KiB 2 modules
modules by path ./src/ 747 KiB
  modules by path ./src/modules/ 124 KiB 7 modules
  modules by path ./src/*.js 31.1 KiB 2 modules
  ./src/components/App.js + 178 modules 591 KiB [built] [code generated]
modules by path external "require(/ 84 bytes
  external "require(\"@sabaki/i18n\")" 42 bytes [built] [code generated]
  external "require(\"iconv-lite\")" 42 bytes [built] [code generated]
+ 15 modules
webpack 5.74.0 compiled successfully in 41012 ms
  • electron-builder  version=23.3.3 os=6.1.7-1-MANJARO-ARM
  • loaded configuration  file=package.json ("build" field)
  • writing effective config  file=dist/builder-effective-config.yaml
  • packaging       platform=linux arch=arm64 electron=13.6.9 appOutDir=dist/linux-arm64-unpacked
==> Starting check()...

// passes tests...

  14 passing (298ms)
==> Entering fakeroot environment...
==> Starting package()...
cp: cannot stat '/home/gsobell/.cache/paru/clone/sabaki/src/Sabaki-0.52.2/dist/linux-unpacked': No such file or directory
==> ERROR: A failure occurred in package().
    Aborting...
error: failed to build 'sabaki-0.52.2-1':
error: packages failed to build: sabaki-0.52.2-1

gsobell avatar Feb 02 '23 22:02 gsobell

Indeed that does seem to be the problem. Next time I'm on my Arch machine I'll try to update the PKGBUILD there to accept linux-arm64-unpacked as an output directory, that oughta do it. I'll ping you when it's pushed to the AUR.

apetresc avatar Jan 04 '24 04:01 apetresc