Skip to content
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

Add AUR link to README #778

Merged

Conversation

undefined-landmark
Copy link
Contributor

@undefined-landmark undefined-landmark commented Jan 28, 2024

Hi,

Thanks for the nice tool! Since a package was not available on the AUR yet I created a simple PKGBUILD that sets up the icloudpd binary. This should make using and updating the tool a bit easier for Arch users. Because this provides another way to install the package I added this option to the README. If there is any additional documentation you'd like me to write I'd be happy to do so, just let me know.

@AndreyNikiforov
Copy link
Collaborator

AndreyNikiforov commented Jan 28, 2024

The idea to support native packages for linux is great!

For Arch linux it is pacman, so end result of supporting pacman should be that end user should be able to install icloudpd using, say, pacman -S icloudpd. Are we getting that user experience by adding AUR? (I not familiar with Arch/pacman/AUR).

What are the capabilities for permission control in pacman registry? For supported registries/repositories/etc we try to keep accounts of individual members/admins organized into org/group, so that access is not locked to one individual.

@undefined-landmark
Copy link
Contributor Author

undefined-landmark commented Jan 28, 2024

AUR packages are first compiled, manually or by an AUR helper, and then installed through pacman. A basic description of AUR is best found on the wiki. Via the yay AUR helper an install would only be a simple yay -S icloudpd-bin.

AUR allows for co-maintainers. So I could add additional people if available. If for some reason I would stop maintaining the package suddenly the package can be flagged though an 'Orphan Request'. If I don't respond someone else will be able to take over maintenance. Exact details can be found on the wiki again :)

@AndreyNikiforov
Copy link
Collaborator

I looked at the PKGBUILD -- it is good that you are using existing released binaries instead recompiling. How can AUR/PKGBUILD support multiple architectures? icloudpd and archlinux both support amd64, arm32, and arm64 IIUC.

@undefined-landmark
Copy link
Contributor Author

There are builtin PKGBUILD options to allow for installation on different architectures. Basically comes down to adding extra sources and checksums for each architecture. I can take a look and update the PKGBUILD accordingly.

@AndreyNikiforov
Copy link
Collaborator

There are builtin PKGBUILD options to allow for installation on different architectures. Basically comes down to adding extra sources and checksums for each architecture. I can take a look and update the PKGBUILD accordingly.

Awesome! May I also suggest renaming package to icloudpd (remove -bin). To end user it is irrelevant information -- they just install icloudpd and the fact that it uses precompiled binaries instead of building from the source should/can be hidden.

@undefined-landmark
Copy link
Contributor Author

The bin suffix is an AUR submission rule. It indicates that the package uses prebuilt binaries. No suffix would indicate the package is built from source. So with the current PKGBUILD I can't just remove it unfortunately.

Making a PKGBUILD that builds from source is possible of course. Albeit a bit more effort.

Reference:
AUR guidelines

Packages that use prebuilt deliverables, when the sources are available, must use the -bin suffix. An exception to this is with Java. The AUR should not contain the binary tarball created by makepkg, nor should it contain the filelist.

@undefined-landmark
Copy link
Contributor Author

The PKGBUILD now supports armv7h, arm64 and i686. I don't have those architectures around to test but, assuming I matched the architectures and bins correctly, they should function.

@AndreyNikiforov AndreyNikiforov merged commit a5b3f0e into icloud-photos-downloader:master Jan 30, 2024
8 checks passed
@undefined-landmark
Copy link
Contributor Author

Thanks for the quick merge. Just saw there's another set of download links at the start of the README. Bit inattentive on my part. Something I noticed before is that the links point to README's of each download option, instead of direct links. Is there any need for such a README for the AUR option?

Can fix both of course. But already great that a direct link is visible in the README now.

@undefined-landmark undefined-landmark deleted the aur-link branch February 1, 2024 20:34
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants