Pi-Apps-Coders / files

22 stars 5 forks source link

Complete the CompileCommands.md #32

Open theofficialgman opened 2 years ago

theofficialgman commented 2 years ago

this doesn't need to be verbatim exactly how to build each app or look pretty, but it would be nice to at least semi-document all apps here and how to go about reproducing their binarires, debs, or tarfiles (whatever is relavent).

for example, I'm looking at alacricity terminal and would like to make a deb myself but don't know if this was done with some automated method or if it was manually done.

Botspot commented 2 years ago

I am interested in seeing this happen too. Compile commands are both useful and reduce the bus factor in the event that a maintainer disappears for good.

Botspot commented 2 years ago

The remaining undocumented apps are:

theofficialgman commented 2 years ago

github desktop is also undocumented but I will add that myself if I am given push access to this repo.

Botspot commented 2 years ago

github desktop is also undocumented but I will add that myself if I am given push access to this repo.

I thought you already had push access, as you are a member of Pi-Apps-Coders.

theofficialgman commented 2 years ago

I thought you already had push access, as you are a member of Pi-Apps-Coders.

I'm a member, but that didn't give me any other privileges besides seeing who the other members are

You’re making changes in a project you don’t have write access to. Submitting a change will write it to a new branch in your fork theofficialgman/files, so you can send a pull request.
ryanfortner commented 2 years ago

Here is what I know. I can make a pr in a bit.

theofficialgman commented 2 years ago

regarding pycharm, the issues with the upstream build have been fixed (I downloaded it and tested and they include arm and aarch64 binaries for libpty.so). terminal/python consoles work with no additional changes necessary to libpty.so

aarch64/libpty.so:  ELF 64-bit LSB shared object, ARM aarch64, version 1 (SYSV), dynamically linked, BuildID[sha1]=f9761a3f0e1e4b3f69b6c2e6797fc7bbd5191732, not stripped
arm/libpty.so:      ELF 32-bit LSB shared object, ARM, EABI5 version 1 (SYSV), dynamically linked, BuildID[sha1]=e9d7e26de8ef2429898f3a4f2ae1ff6c542ad773, not stripped
mips64el/libpty.so: ELF 64-bit LSB shared object, MIPS, MIPS64 rel2 version 1 (SYSV), dynamically linked, BuildID[sha1]=94eac3e4a21dfe2d38a444ea56b9bfac51004647, not stripped
ppc64le/libpty.so:  ELF 64-bit LSB shared object, 64-bit PowerPC or cisco 7500, version 1 (SYSV), dynamically linked, BuildID[sha1]=e473921fb837d2e4f02b9dbacbebf10627582e13, not stripped
x86-64/libpty.so:   ELF 64-bit LSB shared object, x86-64, version 1 (SYSV), dynamically linked, BuildID[sha1]=bfbb116cab9088d82f543462880a1e844530af8e, not stripped
x86/libpty.so:      ELF 32-bit LSB shared object, Intel 80386, version 1 (SYSV), dynamically linked, BuildID[sha1]=4e1e95efdaab0446ef2a0470eeadd75a212f6024, not stripped

image

so we can simplify the pi-apps script and remove the zip from here (no need for these lines now) https://github.com/Botspot/pi-apps/blob/6bceed6e6b403888253621ade53df7a94647fb3a/apps/Pycharm%20CE/install#L16-L22

theofficialgman commented 2 years ago

oh actually the fsnotifier zip is what comes from this repo... well it doesn't matter. I'll be removing libpty compilation from pi-apps

Botspot commented 2 years ago

I thought you already had push access, as you are a member of Pi-Apps-Coders.

I'm a member, but that didn't give me any other privileges besides seeing who the other members are

Try it again. I've enabled write permissions for all members of this organization. (I thought this was already turned on, sorry about that)

theofficialgman commented 2 years ago

Try it again. I've enabled write permissions for all members of this organization. (I thought this was already turned on, sorry about that)

I have access now, thanks

theofficialgman commented 2 years ago

https://github.com/alacritty/alacritty/pull/5902

given that upstream now has GLES2 support, we should build debs on upstream alacritty master (the latest release it too old to include it)

in the meantime, I corrected the current deb for arm64 to have libc 2.18 in the control file instead of 2.28, since I did an objdump -T alacritty | grep -i "glibc_" and found nothing higher to be required

theofficialgman commented 2 years ago
  • LightPad: I think the debs are taken from the latest release but I cannot confirm that for sure, if they are then I suggest we remove them from thisrepo since they are not needed

I diffed the debs, they are named differently and have binary differences

@Itai-Nelken what did you change for lightpad from the official release if you remember? https://github.com/Pi-Apps-Coders/files/commit/7e8781523f20f6eee728411f6da16c3f225c2a21

theofficialgman commented 2 years ago

oh I see.. maybe it came from https://github.com/Botspot/pi-apps/commit/c6ce6596f0f05f61b21bd2ec12976f161664d345

@scamdotnet can you elaborate what you changed?

scamdotnet commented 2 years ago

I'm honestly not sure as I can't download the deb file anymore. I might have a copy of it on one of my Pi's, but I would have to set them up. I'll keep you updated if I can find the new deb file though!

scamdotnet commented 2 years ago

Quick question, is the file hosted at https://github.com/Pi-Apps-Coders/files/raw/main/lightpad_0.0.8rev1_arm64.deb a reupload of http://transfer.sh/get/1HvLYEm/lightpad_0.0.8~rev1_arm64.deb?

scamdotnet commented 2 years ago

Okay so from comparing the one from the original URL before I made my commit (https://github.com/Botspot/pi-apps/commit/c6ce6596f0f05f61b21bd2ec12976f161664d345), with the one from this repo, it appears that the Debian control file was changed from requiring libc6 (>= 2.29), to requiring libc6 (>= 2.17), as well as fixing a spelling mistake in the control file (Writen in the Original, Written in the one in this repo). Looking at the md5sums, the binary file was modified, not sure how, and so was the changelog. Comparing the changelogs, it looks like the modified one is actually a slightly earlier version, as it is rev1, while the one in the official repo is rev2. The only difference in the changelog besides the header for the version is a note saying that rev2 is a rebuild for groovy.

TLDR: the only real change that I believe I made was reducing the requirement for libc6 from >= 2.29, to >= 2.17. I think this was because this caused some kind of conflict in the raspbian repositories, although I can't be sure.

theofficialgman commented 2 years ago

TLDR: the only real change that I believe I made was reducing the requirement for libc6 from >= 2.29, to >= 2.17. I think this was because this caused some kind of conflict in the raspbian repositories, although I can't be sure.

I see.. it looks like the official release has a reupload for the arm64 file (I assume thats what you were looking at). that would explain the control file differences and binary differences. regardless, the official builds will not work due to being built on groovy so this is good information, we will keep the debs hosted here then.

you can see the official release deb upload dates before where the arm64 version was reuploaded later

[lightpad_0.0.8.rev1_amd64.deb](https://github.com/libredeb/lightpad/releases/download/v0.0.8/lightpad_0.0.8.rev1_amd64.deb)
30.9 KB
Jul 22, 2020
[lightpad_0.0.8.rev1_arm64.deb](https://github.com/libredeb/lightpad/releases/download/v0.0.8/lightpad_0.0.8.rev1_arm64.deb)
29.5 KB
Jan 06, 2021
[lightpad_0.0.8.rev1_armhf.deb](https://github.com/libredeb/lightpad/releases/download/v0.0.8/lightpad_0.0.8.rev1_armhf.deb)
27.6 KB
Jul 22, 2020
[lightpad_0.0.8.rev1_i386.deb](https://github.com/libredeb/lightpad/releases/download/v0.0.8/lightpad_0.0.8.rev1_i386.deb)
34.1 KB
Jul 22, 2020
scamdotnet commented 2 years ago

Glad I could help! If there is anything else you think I could help out with, feel free to at me on github.