amazonlinux / amazon-linux-2023

Amazon Linux 2023
https://aws.amazon.com/linux/amazon-linux-2023/
Other
500 stars 37 forks source link

[Package Request] - below #729

Open thimslugga opened 2 weeks ago

thimslugga commented 2 weeks ago

What package is missing from Amazon Linux 2023? Please describe and include package name.

Package: below Fedora src package: rust-below

Features:

Is this an update to existing package or new package request?

new package request

Is this package available in Amazon Linux 2? If it is available via external sources such as EPEL, please specify.

Neither but it is in Fedora.

Any additional information you'd like to include. (use-cases, etc)

To install the package:

$ sudo dnf install -y below

To turn on the recording daemon:

$ sudo systemctl enable --now below

To view live system stats:

$ sudo below live

Replay mode replays previously recorded data:

$ sudo below replay --time "20 minutes ago"
daniejstriata commented 2 weeks ago

You can build your own packages in Fedora COPR for AL2023. I've done so here below: https://copr.fedorainfracloud.org/coprs/faramirza/al2023 for some packages that have been requested by previously by building either from Fedora, Centos Stream or my own spec. Below is a build of my own as not even Fedora has it.

thimslugga commented 2 weeks ago

@daniejstriata

I'm aware that packages can be built using Fedora COPR and installed in AL2023. I'd prefer to see this particular package in included in the AL2023 repos. COPR is similar to Ubuntu PPAs and Arch AUR i.e. you still have to trust the package and it's packager in regards to the packages content as there's no third party review that is taking place. IMO Fedora COPR is a nice solution for personal usage, when you want to add some package(s) but I wouldn't personally recommend someone to use another packagers COPR repo but their own.

Below is a build of my own as not even Fedora has it.

I'm not sure what you mean by this statement as below is definitely in the fedora repos and has been for a number of years.

⬢ [username@toolbox[toolbox fedora-toolbox-40] ~]$ dnf info below
Fedora 40 - x86_64                                                                                                                                                                 171 kB/s |  29 kB     00:00    
Fedora 40 - x86_64 - Updates                                                                                                                                                       142 kB/s |  27 kB     00:00    
Fedora 40 - x86_64 - Updates                                                                                                                                                       2.9 MB/s | 4.2 MB     00:01    
Available Packages
Name         : below
Version      : 0.8.1
Release      : 1.fc40
Architecture : x86_64
Size         : 2.9 M
Source       : rust-below-0.8.1-1.fc40.src.rpm
Repository   : updates
Summary      : Interactive tool to view and record historical system data
URL          : https://crates.io/crates/below
License      : Apache-2.0 AND (MIT OR Apache-2.0) AND Unicode-DFS-2016 AND (Apache-2.0 OR BSL-1.0) AND (Apache-2.0 WITH LLVM-exception OR Apache-2.0 OR MIT) AND BSD-2-Clause AND (BSD-2-Clause OR Apache-2.0 OR
             : MIT) AND (BSD-3-Clause OR MIT OR Apache-2.0) AND (LGPL-2.1-only OR BSD-2-Clause) AND MIT AND (MPL-2.0 OR MIT OR Apache-2.0) AND (Unlicense OR MIT)
Description  : below is an interactive tool to view and record historical system data. It has
             : support for:
             : 
             : - information regarding hardware resource utilization
             : - viewing the cgroup hierarchy
             : - cgroup and process information
             : - pressure stall information (PSI)
             : - record mode to record system data
             : - replay mode to replay historical system data
             : - live mode to view live system data
             : - dump subcommand to report script-friendly information (e.g. JSON and CSV)
             : 
             : below does not have support for cgroup1.
             : 
             : The name "below" stems from the fact that the below developers rejected many of
             : atop's design and style decisions.
daniejstriata commented 2 weeks ago

Thanks for letting me know about the Fedora package. I missed it for some reason. Doubt it will build as al2023 does not have all the golang dependencies. I understand your view about trust on copr repos.

stewartsmith commented 2 weeks ago

For Go and Rust in Amazon Linux, we bundle the modules/crates. Much for the reason CentOS Stream does: we don't want users to take dependencies on these packages, as they may change or be removed at any time. It also doesn't tie us to having everything synced to the same versions, or end up with a lot of compat packages.

daniejstriata commented 2 weeks ago

The Fedora package is called rust-below, that's why I did not see it. I was not able to build it from Fedora as rust-packaging version is too old.

thimslugga commented 2 weeks ago

@daniejstriata ah good to know about the rust version and fedora src package from 40.

Do all the packages in your copr, have their source under your github? A community maintained repo with supplementary packages similar to EPEL or RPMFusion but for AL2023 and later is somewhat interesting.

daniejstriata commented 2 weeks ago

I build from my GitHub repository anything I can't get from Fedora or CentOS Stream. I might look at other Distros for inspiration if I have to build my own.

For a community repository, we need clear rules and measures to minimize supply chain risks. While PPAs and AUR are suitable for hobbyists, they are not appropriate for enterprise environments.

thimslugga commented 2 weeks ago

@daniejstriata

I do the same and I agree around concerns, measures and usage for community resource.

I also updated my initial comment in this issue to include the fedora src package name.

elsaco commented 2 weeks ago

AL2023 does provide a Rust toolchain for building code, however it is slightly behind the mainstream Rust release. There's more info at https://docs.aws.amazon.com/linux/al2023/ug/rust.html

Because of so many dependencies reusing a Fedora SRPM to build below is not practical. Using the Rust toolchain the app can be build easily with cargo install below:

aws_below

stewartsmith commented 2 weeks ago

The Rust packaging macros on AL2023 are closer to CentOS Stream 9 than Fedora.