Package Details: nerdshade 1.2.0-1

Git Clone URL: https://aur.archlinux.org/nerdshade.git (read-only, click to copy)
Package Base: nerdshade
Description: hyprsunset client to smoothly transition color temperature during sunrise/sunset
Upstream URL: https://github.com/sstark/nerdshade
Licenses: MIT
Submitter: sstark
Maintainer: sstark
Last Packager: sstark
Votes: 3
Popularity: 1.79
First Submitted: 2025-04-26 14:39 (UTC)
Last Updated: 2025-05-05 14:29 (UTC)

Latest Comments

Korialo commented on 2025-05-05 09:44 (UTC) (edited on 2025-05-05 09:48 (UTC) by Korialo)

Valid point and helpful input, I updated again and the RELRO warning is gone.

Thank you for putting the effort to add it.

go does not support user-space shadow stacks, so the GNU_PROPERTY_X86_FEATURE_1_SHSTK warning can not be addressed.

As I said don't worry about it, it's a common issue.

I don't see a reason to change the dependency because of that warning. I could use 'optdepends' instead of 'depends', but that would be very confusing to users that expect nerdshade to do anything useful on their non-hyprland system.

No need to worry about these warnings, your approach is correct, but it's would be more clearer to those who read the PKGBUILD when depends is called, early for "be ready to be called by build() " or late as "not needed for the build process but they are needed". As you said it doesn't matter, and it is better to have them as depends than optdepends as they not enforced in general (the optional dependencies I mean), but you would suspect from users to have hyprland already installed and not to be installed (if not there already) when this package ready to be installed in the system. Last thing nothing is mandatory and if it works it works, thank you @sstark for this package and the PKGBUILD. I appreciate the effort.

sstark commented on 2025-05-05 00:18 (UTC)

Valid point and helpful input, I updated again and the RELRO warning is gone.

As far as I understand, go does not support user-space shadow stacks, so the GNU_PROPERTY_X86_FEATURE_1_SHSTK warning can not be addressed (see https://github.com/golang/go/issues/66840).

Regarding depends: namcap can not know that nerdshade will call hyprsunset. It's not linked against it. So the dependency is there, but not detectable in an automated fashion. I don't see a reason to change the dependency because of that warning. I could use 'optdepends' instead of 'depends', but that would be very confusing to users that expect nerdshade to do anything useful on their non-hyprland system.

Korialo commented on 2025-05-04 18:11 (UTC)

Thank you for the hint. I commited an update to deal with the (I hope) proper GOFLAGS. However

First thing thank you for the reply, but also you probably should include the LDFLAGS part, so we can get the RELRO and silence this warning lacks FULL RELRO, this still present after the pkgrel push, this warning lacks GNU_PROPERTY_X86_FEATURE_1_SHSTK still persists, I've only seen this warning in packages built with Clang, I can't give you an opinion probably the mailing list is where you should ask, but I wouldn't give it much thought.

I do not fully understand why the dependency on hyprsunset and hyprland are an issue.

Dependencies differ in there use, if the are only for making the package and discarded later then it's a makedepends, if they also to run (and make the package) then it's a depends, but if only you only needs it to run the package after installation then you should but them as depends inside package() function see https://wiki.archlinux.org/title/PKGBUILD#depends .

sstark commented on 2025-05-03 18:34 (UTC)

Thank you for the hint. I commited an update to deal with the (I hope) proper GOFLAGS. However, I do not fully understand why the dependency on hyprsunset and hyprland are an issue. Yes, technically the program can be built and run without those, but it is completely useless. Would you still recommend not having a hard dependency?

Korialo commented on 2025-05-03 14:09 (UTC)

Wouldn't hurt if you followed the guidelines https://wiki.archlinux.org/title/Go_package_guidelines#Flags_and_build_options, to prevent such warnings

[2025-05-03T14:01:43.635Z] Checking PKGBUILD
[2025-05-03T14:01:43.732Z] Checking nerdshade-1.1.1-1-x86_64.pkg.tar.zst
[2025-05-03T14:01:44.014Z] nerdshade W: ELF file ('usr/bin/nerdshade') lacks FULL RELRO, check LDFLAGS.
[2025-05-03T14:01:44.115Z] nerdshade W: ELF file ('usr/bin/nerdshade') is unstripped.
[2025-05-03T14:01:44.129Z] nerdshade W: ELF file ('usr/bin/nerdshade') lacks PIE.
[2025-05-03T14:01:44.133Z] nerdshade W: ELF file ('usr/bin/nerdshade') lacks GNU_PROPERTY_X86_FEATURE_1_SHSTK.
[2025-05-03T14:01:44.136Z] nerdshade W: Dependency included, but may not be needed ('hyprsunset')
[2025-05-03T14:01:44.140Z] nerdshade W: Dependency included, but may not be needed ('hyprland')