-
Notifications
You must be signed in to change notification settings - Fork 18
Request: xdo xdotool #29
Comments
Hopefully this isn't a critical request, as I am currently at a remote place with access to only my phone. I believe iotop and xdo could be built using nix, but if they don't, I might have to add a help needed label and wait until someone provides a working build script. |
Have you tried using a Musl toolchain? Glibc does not support static linking at all. |
I have added mawk & iotop-c xdo & xdo-tool both depend a lot on x11/xcb libraries and even on alpine, there's no static versions of these libs. If you are willing to accept a https://pub.ajam.dev/temp/xdo |
Thanks, I see xdo works! but xdotool is partially broken, for some reason the option
Btw, I'm sorry I didn't make this clear before, for iotop-c the name of the binary is btw cool thing staticx, never heard of it before. |
Partial broken is expected, staticx is not 100% perfect. If the binary works even 50% of its original functionalities, I see no reason not to add it. Unless, a better/complete/true static binary is available. I am building iotop using nix-build, which has a separate |
But getwindowclass is like the most commonly used part of xdotool, that's like having fastfetch not print the distro logo so I don't think that's a good idea.
Yes that's the original iotop which is a python application, on arch if you install iotop-c the binary name will be iotop, same if you clone and make the iotop-c repo, the resulting binary is named I see no problem or confusion in using iotop for the name of the binary, unless toolpacks includes python applications? |
I have duplicated As for xdo & xdo-tool, I have now added the |
Thanks for all this @Azathothas I think for xdotool I will have to end up making an appimage lol |
@Azathothas Will self-contained/static appimages be added to the repo, just like there are some programs suffixed with -staticx? |
I believe #28 already addresses this, so please keep the current issue related to the topic. To give a brief answer, I would like to test these self contained/static appimages/pelfs/bundles you keep mentioning. Once again, please reply at #28 or somewhere else if it doesn't relate to xdo/xdotool |
I've made an xdotool appimage using deploy everything mode of go-appimage and it works, or at least The resulting AppImage is 2.4 MiB in alpine linux while it is 5.4 MiB on ubuntu. This test is using the alpine built appimage:
I will likely host the appimage on its own repo, but I will likely use the ubuntu runners since I don't know how to add an alpine runner @xplshn so it will 5.4 MiB of bloat |
@Samueru-sama could you attach the binaries (after zipping) here, for both alpine/ubuntu? |
Just in case, the appimage made on any distro works on all other distros since it bundles everything, but I went ahead and still included the same appimage made in both ubuntu and alpine. Ideally alpine is what should be used since it produces a smaller appimage. |
Seems like I will need to provision a regular linux distro with all the bells and whistles (WM, DE, Display etc) to test pkgs that depend on x11/wayland/window. As the appimages you provided gave me the same errors as the staticx version. |
You could set up one with Alpine, then use setup-desktop to get XFCE, and then set up distrobox within it to use Fedora, Debian, Devuan, and others such as Void, within it. |
Hi, @leleliu008 , nice to see you here. I had actually checked the formulas for this but couldn't find, seems like they were added in the last few hrs. Thank you. I will take a look at this tomorrow, for my ref: |
@Azathothas Yes, these formula files are in https://github.com/leleliu008/ppkg-formula-repository-official-core |
@Samueru-sama could you check the artifacts linked by @leleliu008 if they work as expected. They are indeed static 🌀 ❯ file xdo xdotool
xdo: ELF 64-bit LSB executable, x86-64, version 1 (SYSV), statically linked, BuildID[sha1]=239e1db670ab513c87f8b38b103e2df16a43acd6, stripped
xdotool: ELF 64-bit LSB executable, x86-64, version 1 (SYSV), statically linked, BuildID[sha1]=aed3c9f1385637872e0e481a3059d1840c99c822, stripped
$ sha256sum *
72ba80641016b8bd9d99ede40e41337b2b0c5710e17bceca141923576721665e xdo
695a009d5d31999ad49f48858e1274a8efd67a6eb7e67a204976952c2f4e9856 xdotool If they work, I will go ahead and use ppkg to build these from now on. |
They work. I also had already tested the static binaries when @leleliu008 linked them and they worked as well, sorry I didn't mention that. Thanks a lot @leleliu008 you saved me from making a very bloated xdotool lol |
Thanks to @leleliu008 this is now resolved. |
mawk: It was a simple as running
./configure
andmake CC="gcc -static"
.iotop-c: https://gist.github.com/Saoneth/02f08d4714e6fc035e7017c74b3ef29a I tried to build it but now the build is failing with libncursesw errors and trying it on alpine I get
fatal error: bytecode stream in file 'bld/arr.o' generated with LTO version 14.0 instead of the expected 13.1
Welp, looks like that one iotop-c static binary that I have will be the one for a while lol.xdo: Couldn't build it statically either, I get
warning: Using 'getaddrinfo' in statically linked applications requires at runtime the shared libraries from the glibc version used for linking
xdotool:
make static
was all it took. The produced binary is namedxdotool.static
however running ldd shows that it really isn't a fully static binary.Origin: xplshn/dbin#7
The text was updated successfully, but these errors were encountered: