YunoHost-Apps / mautrix_signal_ynh

Matrix signal package for YunoHost
GNU Affero General Public License v3.0
4 stars 10 forks source link

Build signald from source #9

Open Gredin67 opened 2 years ago

Gredin67 commented 2 years ago

Describe the bug

Steps to reproduce

Install or remove and re-install the bridge.

Solution

centralscrutinizer21 commented 2 years ago

Thanks @Gredin67 so a solution does exists. Would you mind helping me with the above steps?

I installed it following this guide. I am still not sure in wich path I should be when downloading building and configuring signald though.

I was reading this to understand what helpers are about, but I don't understand if they are to be used only when packaging apps or also as configurators after installation. In the second case which helpers should I use to create signald user and service?

I think here you are talking about basic linux commands (chown chmod)? If so can you please define properly? :)

Thanks again

Gredin67 commented 2 years ago

I started something on the testing branch https://github.com/YunoHost-Apps/mautrix_signal_ynh/commit/446d4208157d452cd76e61d072117dbbcd02292b

Le 2021-08-06 15:45, centralscrutinizer21 a écrit :

Thanks @Gredin67 [3] so a solution does exists. Would you mind helping me with the above steps?

install signald from source I installed it following this [1] guide. I am still not sure in wich path I should be when downloading building and configuring signald though. create signald user and service using yunohost helpers I was reading this [2] to understand what helpers are about, but I don't understand if they are to be used only when packaging apps or also as configurators after installation. In the second case which helpers should I use to create signald user and service?

third and

fourth point I think here you are talking about basic linux commands (chown chmod)? If so can you please define properly? :)

Thanks again

-- You are receiving this because you were mentioned. Reply to this email directly, view it on GitHub [4], or unsubscribe [5]. Triage notifications on the go with GitHub Mobile for iOS [6] or Android [7].

Links:

[1] https://signald.org/articles/install/source/ [2] https://yunohost.org/it/packaging_apps_helpers?q=%2Fpackaging_apps_helpers [3] https://github.com/Gredin67 [4] https://github.com/YunoHost-Apps/mautrix_signal_ynh/issues/9#issuecomment-894271250 [5] https://github.com/notifications/unsubscribe-auth/AIQ2ZQP27BGQ5VEXMHJOKALT3PRN5ANCNFSM5BUYM3BQ [6] https://apps.apple.com/app/apple-store/id1477376905?ct=notification-email&mt=8&pt=524675 [7] https://play.google.com/store/apps/details?id=com.github.android&utm_campaign=notification-email

Thatoo commented 2 years ago

Will this make mautrix signal bridge on yunohost OK for production @Gredin67 ?

MayeulC commented 2 years ago

Has this issue been obsoleted by #19 ? The app should work relatively well in the current state, minus a few remaining issues.

MayeulC commented 2 years ago

I'm going to assume a yes for now :)

Gredin67 commented 2 years ago

Installing unstable deps from source is still best practice

MayeulC commented 1 year ago

Compile-time dependencies identified: javahelper default-jdk-headless

As per the instructions:

git clone https://gitlab.com/signald/signald.git
cd signald
make installDist
make deb
# Result is in ../signald_0.23.0-1-476a9a37_all.deb

It was relatively quick for me, but not everybody has a 8-core Xeon and Gigabit Internet connection.

Here's the build script from upstream's CI, which is substantially the same thing as the Makefile does. By default, Architecture is set to "All", which shouldn't be an issue.

  before_script:
    - export VERSION="$(./version.sh)"
    - echo "Building signald version $VERSION"
    - "sed -i 's/^Architecture:.*/Architecture: amd64/g' debian/control"
  script:
    - gbp dch --ignore-branch --debian-tag="%(version)s" --git-author --new-version="${VERSION}"
    - dpkg-buildpackage -b
    - mv ../signald_* .
  artifacts:
    paths:
      - "signald_*"

Maybe we can let the user choose to compile it at install time... I wish we were on Guix and could just provide the compile script and binary substitutes servers would handle the rest x)