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

Please provide debian/ubuntu PPAs #859

Closed
teunvink opened this issue Dec 10, 2023 · 9 comments · Fixed by #1086
Closed

Please provide debian/ubuntu PPAs #859

teunvink opened this issue Dec 10, 2023 · 9 comments · Fixed by #1086
Labels
enhancement New feature or request linux package
Milestone

Comments

@teunvink
Copy link

Thanks for your nice tool! I manage a set of machines (https://ring.nlnog.net) on which this tool would be a nice addition. However, these machines do not run snap or docker, so that only leaves me with installing binaries directly on these machines. And that's something we prefer not to do, because it's harder to keep track of binaries and especially to update them when they are updated upstream.

I see that you build .deb files and link them on the project page, but these are only available on a changing URL containing the version number. Would it be possible to provide a PPA for trippy?

If that is not possible, a stable link (not containing any version numbers) to the latest deb could be useful as well. Now, we'd have to parse the table on https://trippy.cli.rs/#binary-asset-download to determine the URL of the latest version of trippy so we can package it (or copy the binary if we wouldn't package it) if it changed.

@c-git c-git added enhancement New feature or request linux labels Dec 10, 2023
@c-git
Copy link
Collaborator

c-git commented Dec 10, 2023

Hi @teunvink,

Thanks for your request. I will look into what would be required to have a stable link setup for you.

Regarding the PPA Option, are you familiar with the PPA setup process / able to help with getting that setup?

I'd also point out (although I suspect you may already be aware but just in case) that if you have cargo on these computers you can also use cargo install to update.

@fujiapple852
Copy link
Owner

Hi there @teunvink,

I must confess I wasn't aware of PPA before, I had though that the recommended way of packing software for Debian/Ubuntu was Snap and Deb files? Though I am far from an expert on that! But in any case, I would like for Trippy to be available in as many places as possible and do not object to adding a PPA.

I spent a little time reading up on it and eventually found this guide for Rust and it seems, complicated. Would you be able to guide us through the process of creating this for Trippy? if not do you have any contacts who could?

I created a placeholder for Trippy in launchpad.net for now.

Ideally this PPA package would be owned and maintained by a package maintainer closer to the Debian/Ubuntu universe than me. Better yet, what would be involved in making Trippy available as an official package in Debian/Ubuntu such that the PPA is not needed?

As for a stable link, I'm less keen on this as I wouldn't want to commit to never again changing urls, directory layouts, filenames etc. Also I do not own or control cli.rs (it is a service provided by cli.rs) so I cannot make stability guarantees on their behalf.

Trippy releases are infrequent, of the order of quarterly, so I'd hope updating some config in ring (which looks like a really great!) every now and again wouldn't be to much of a burden?

@teunvink
Copy link
Author

You are correct that deb is the default package format for Debian and Ubuntu based setups. However, downloading and installing deb-files isn't the normal way to do it. Packages are either included in the default repository, or a PPA is provided as an endpoint where the developer publishes versions of the deb files.

I don't have any experience in hosting PPA's, but I'm happy to ask around if anyone is able to help out.

@teunvink
Copy link
Author

I know next to nothing about rust either, but maybe this is useful? https://blog.zhimingwang.org/packaging-rust-project-for-ubuntu-ppa#impatient

@fujiapple852
Copy link
Owner

fujiapple852 commented Dec 28, 2023

@teunvink it looks like you found the same guide I mentioned above (great minds think alike!)

Do let me know if you find someone who is able to own or assist with this and i'd be happy to work with them to get a PPA created.

@c-git
Copy link
Collaborator

c-git commented Dec 31, 2023

@teunvink I was looking at another tool today and saw a way to get the latest version as part of their install script. I'm not sure something like that would be a temporary solution to the challenge that your facing. Let me know if it helps (mostly just curious but the PPA option would still be good if someone would want to take the lead on that).

@c-git
Copy link
Collaborator

c-git commented Jan 3, 2024

I see another project setting up a PPA actually doesn't seem too bad other than key management. atuinsh/atuin#1497

@teunvink
Copy link
Author

Do let me know if you find someone who is able to own or assist with this and i'd be happy to work with them to get a PPA created.

Sadly, I haven't really found someone yet. Packaging go stuff seems to be a bit unpopular (at least with the people I am in contact with).

I found a small script we use in our Ansible repository to make a deb-repository to host the PPA's for our customized tools, you can see it here: https://github.com/NLNOG/ring-ansible/blob/master/roles/apt-repository/files/deb2repo.

Since you already have .deb's, making a repo out of them seems to be a small step (other than hosting it perhaps).

@zarkdav zarkdav self-assigned this Apr 3, 2024
@zarkdav zarkdav linked a pull request Apr 3, 2024 that will close this issue
@fujiapple852
Copy link
Owner

@teunvink Trippy now has a PPA: https://launchpad.net/~fujiapple/+archive/ubuntu/trippy

Currently only available for Jammy on amd64.

To install:

sudo add-apt-repository ppa:fujiapple/trippy
sudo apt update && apt install trippy

All credit goes to @zarkdav.

@fujiapple852 fujiapple852 added this to the 0.11.0 milestone Apr 4, 2024
fujiapple852 added a commit that referenced this issue Apr 4, 2024
fujiapple852 added a commit that referenced this issue Apr 4, 2024
netbsd-srcmastr pushed a commit to NetBSD/pkgsrc that referenced this issue Aug 12, 2024
[0.11.0] - 2024-08-11

Added

- Added NAT detection for `IPv4/udp/dublin` ([#1104](fujiapple852/trippy#1104))
- Added public API ([#1192](fujiapple852/trippy#1192))
- Added support for NAT detection (`N`) column ([#1219](fujiapple852/trippy#1219))
- Added support for last icmp packet type (`T`) column ([#1105](fujiapple852/trippy#1105))
- Added support for last icmp packet code (`C`) column ([#1109](fujiapple852/trippy#1109))
- Added support for the probe failure count (`f`) column ([#1258](fujiapple852/trippy#1258))
- Added settings dialog tab hotkeys ([#1217](fujiapple852/trippy#1217))
- Added `--dns-ttl` flag to allow refreshing the reverse DNS
  results ([#1233](fujiapple852/trippy#1233))
- Added `--generate-man` flag for generating [ROFF](https://en.wikipedia.org/wiki/Roff_(software)) man
  page ([#85](fujiapple852/trippy#85))
- Added Ubuntu PPA package ([#859](fujiapple852/trippy#859))
- Added Chocolatey package ([#572](fujiapple852/trippy#572))

Changed

- [BREAKING CHANGE] Changed initial sequence to be `33434` ([#1203](fujiapple852/trippy#1203))
- [BREAKING CHANGE] Renamed `tui-max-[samples|flows]`
  as `max-[samples|flows]` ([#1187](fujiapple852/trippy#1187))
- Separated library and binary crates ([#1141](fujiapple852/trippy#1141))
- Record `icmp` packet code ([#734](fujiapple852/trippy#734))
- Transient error handling for `IPv4` on macOS, Linux &
  Windows ([#1255](fujiapple852/trippy#1255))
- Improved error messages ([#1150](fujiapple852/trippy#1150))
- Revamp the help dialog ([#1260](fujiapple852/trippy#1260))

Fixed

- Fixed `DestinationUnreachable` incorrectly assumed to come from target
  host ([#1225](fujiapple852/trippy#1225))
- Fixed incorrect target hop calculation ([#1226](fujiapple852/trippy#1226))
- Do not conflate `AddressInUse` and `AddrNotAvailable`
  errors ([#1246](fujiapple852/trippy#1246))
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement New feature or request linux package
Projects
None yet
Development

Successfully merging a pull request may close this issue.

4 participants