-
-
Notifications
You must be signed in to change notification settings - Fork 3.5k
addpkg(main/hledger-cli): 1.43.2 #25265
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Conversation
62e4add
to
235c3a6
Compare
It says that the first error that will need to be solved is this can happen because of using chmod -x packages/hledger/build.sh
git add packages/hledger/build.sh
git commit --amend
# try "downstream" first, later "origin" or whatever shows to the left of your fork repository
# URL in the output from the command "git remote -v"
git push -f downstream master
|
Thank you, I'll try that. But while the build fails in CI, could you take a look at the local build result or you trust CI only? |
I could soon sure, but also, I have requested for MrAdityaAlok to check if they know any way to build this software for Android and resolve the error, because they are very great with Haskell for Android and also they will know the best changes to make to |
I see other linting failures meanwhile, will get on to fixing them. |
got up to |
I've tried also to build the package for |
I get much further when reverting a config change to Cabal - so I think indeed, something got fixed for |
thanks, let me try rebasing onto it!
…On Sun, Jul 6, 2025 at 12:36 PM Aditya Alok ***@***.***> wrote:
*MrAdityaAlok* left a comment (termux/termux-packages#25265)
<#25265 (comment)>
@erplsf <https://github.com/erplsf> #25273
<#25273> should fix your
issue.
—
Reply to this email directly, view it on GitHub
<#25265 (comment)>,
or unsubscribe
<https://github.com/notifications/unsubscribe-auth/AA7CHLBGF775QYPD7442AZ33HD323AVCNFSM6AAAAACA2235T2VHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMZTANBRGMYDCMJQGI>
.
You are receiving this because you were mentioned.Message ID:
***@***.***>
|
@MrAdityaAlok Sadly it still fails on trying to build
EDIT: Sorry, I think I forgot to try a "clean build". |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I would like you to split this package into three:
- hledger (Cli)
- hledger-ui (Ncurses interface)
- hledger-web (Web interface)
This would reduce package sizes as well give user more choices. Also, this aligns with rest of the Linux distribution packaging (Arch, Fedora).
Use hackage archives for building.
will do, thanks for reviewing. |
how would you suggest selecting what to build if upstream package contains multiple packages in one? by manually specifying |
|
This is acceptable, since there is already a very large amount of preexisting packages that cannot be built on-device. However, if you find any easy way to fix the problem for on-device building, it is still good to apply it. Ideally, all packages would be great if buildable fully on-device, and I would like to get close to that goal some day, but this challenge is very difficult and can take many years, so some new packages being added that cannot be built on-device doesn't really slow it down that much, relatively. |
I'll try, but I'm already very happy with the results as they are.
…On Mon, Jul 7, 2025 at 1:25 PM Robert Kirkman ***@***.***> wrote:
robertkirkman left a comment (termux/termux-packages#25265)
if we want we can drop work on the on-device build for now and accept the win that we already have - we can try to package and distribute it as a binary for now.
This is acceptable, since there are already very large number of preexisting packages that cannot be built on-device. However, if you find any easy way to fix the problem for on-device building, it is still good to apply it.
Ideally, all packages would be great if buildable fully on-device, and I would like to get close to that goal some day, but this challenge is very difficult and can take many years, so some new packages being added that cannot be built on-device doesn't really slow it down that much, relatively.
—
Reply to this email directly, view it on GitHub, or unsubscribe.
You are receiving this because you were mentioned.Message ID: ***@***.***>
|
I started testing the aarch64 binary artifact a little bit, I have noticed some things that might be possible to tweak to polish the experience,
|
thanks! i assume you got the binary from the ci results? |
Correct |
|
I'll try to ask around the GHC Matrix channel.
…On Mon, Jul 7, 2025, 14:53 Aditya Alok ***@***.***> wrote:
*MrAdityaAlok* left a comment (termux/termux-packages#25265)
<#25265 (comment)>
Got this at the moment:
dlopen failed: cannot locate symbol "stg_upd_frame_info" referenced by
"/data/data/com.termux/files/home/.cabal/store/ghc-9.12.2-inplace/quote-quot-0.2.1.0-f00e68c33f055879f54c456f833b4501b64ee4bacfccebfd737ffe8b47b82052/lib/libHSquote-quot-0.2.1.0-f00e68c33f055879f54c456f833b4501b64ee4bacfccebfd737ffe8b47b82052-ghc9.12.2.so
"...
[ 8 of 10] Compiling Data.Text.Builder.Linear.Char (
src/Data/Text/Builder/Linear/Char.hs,
dist/build/Data/Text/Builder/Linear/Char.o,
dist/build/Data/Text/Builder/Linear/Char.dyn_o )
Error: [Cabal-7125]
Failed to build text-builder-linear-0.1.3 (which is required by exe:hledger
from hledger-1.43.2). See the build log above for details.
"stg_upd_frame_info"
I have many times tried to solve this or even find what causes it, but
never succeeded. It has occurred many a times during on device build.
—
Reply to this email directly, view it on GitHub
<#25265 (comment)>,
or unsubscribe
<https://github.com/notifications/unsubscribe-auth/AA7CHLC3U5AJDBOJLWVGAUD3HJUVFAVCNFSM6AAAAACA2235T2VHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMZTANBUHE2TAOBVGI>
.
You are receiving this because you were mentioned.Message ID:
***@***.***>
|
copying over a response from there:
|
Maybe it has something do with this: android/ndk#201 |
@MrAdityaAlok let's get this reviewed as change without on-device build - I'm making a pause on it now, as I won't have time to debug on-device builds anymore soon, so I want users to at least get the prebuilt version ready to use. |
@robertkirkman and other folks (as @MrAdityaAlok is busy) - can we get this reviewed properly to be merged with what we have? |
I can merge the current version if @MrAdityaAlok approves of this, but it was working for basic commands when I tested the cross-compiled version, so it should be acceptable! |
Sorry! For being late. I am currently busy with my semester exams. @erplsf Split non-hledger changes to different commit and also squash the commits. And what is the need for removing @robertkirkman would you please merge the PR #24952? I am currently away from my system. |
I'm really sorry!! It was #25273 |
trying to use |
@MrAdityaAlok I've split my commits in three parts:
EDIT: I'm fine with dropping the last commit. |
@@ -63,9 +63,16 @@ termux_step_configure_cabal() { | |||
AVOID_GNULIB+=" gl_cv_header_working_fcntl_h=yes" | |||
AVOID_GNULIB+=" gl_cv_C_locale_sans_EILSEQ=yes" | |||
|
|||
if [[ "$TERMUX_ON_DEVICE_BUILD" == false ]]; then | |||
CONFIG="--config=$TERMUX_CABAL_CONFIG" |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I think on-device building support for Haskell should be fixed in scripts/build/setup/termux_setup_cabal.sh
because that's where TERMUX_CABAL_CONFIG
is only being set inside a block that has if [[ "${TERMUX_ON_DEVICE_BUILD}" == "false" ]]
.
That should probably be rewritten in a way that makes it so that TERMUX_CABAL_CONFIG
exists while TERMUX_ON_DEVICE_BUILD=true
, right?
This is one of the things that made me assume that on-device building with GHC wasn't really ready yet.
@erplsf Drop the last comment. I'll work on making on-device build work in some other PR. |
@MrAdityaAlok done. |
Thanks! |
Greetings,
This is a PR in an attempt to package
hledger
for Termux. I'm not very accustomed with the way that Haskell programs are built, and even less so with Termux-specific process. I've tried to follow the general steps where I could - added dependencies and other small tweaks.I've decided to adjust common build steps
make
andmake_install
to also detect other naming convention for Cabal projects.But the build fails now on compiling
exe:alex
and I'm out of luck. Any help or pointers are very welcome.Here I also attach the full build log when running
./scripts/run-docker.sh ./build-package.sh -f -I hledger
.Ideally this closes #3803 and simonmichael/hledger#398.
build.log