Coder Social home page Coder Social logo

Comments (6)

vergoh avatar vergoh commented on August 26, 2024 1

Based on my understanding of the package release process in Ubuntu, none of the packages in the universe section will get any version updates once the Ubuntu distribution release has been done. The only exceptions are security updates and those can result only in minor changes like the -1 version becoming -2 either directory by some patch being needed in the package or some build dependency requiring a rebuild. If you'd want to use more recent versions then you'd need to use more recent Ubuntu distribution releases, currently published twice per year. With LTS releases you are kind of stuck with specific versions for two years at time.

As for how my vnStat releases get to Ubuntu, the flow goes somewhat like this:

  1. I make a release
  2. Either the Debian package maintainers notice it directly or the about once per week new release poller sends them a notification
  3. They create a new version of the Debian package and then request a Debian Developer to approve the upload of the new package to Debian unstable
  4. After some time in unstable the package gets migrated to Debian testing (can be followed for example from https://tracker.debian.org/pkg/vnstat), this step may get delayed if Debian is having a feature freeze period
  5. If there's no Debian Import Freeze ongoing in Ubuntu the package will eventually get picked up by import automation and included for the next release, if the import freeze is ongoing then the package will have to wait for the following release

from vnstat.

vergoh avatar vergoh commented on August 26, 2024 1

It looks like the htop dev team (https://github.com/htop-dev/htop) isn't responsible for the snap package but instead there's a developer from Canonical (which happens to be the same company behind snap and Ubuntu) providing the necessary setup for the snap package: https://github.com/maxiberta/htop-snap

I can't see directly from that repository if there's some automation being used for creating the releases every time a new htop version is released and then pushing that content to the snap store or is that all done manually.

from vnstat.

vergoh avatar vergoh commented on August 26, 2024

You have several options depending on the level of install complexity and how "clean" you'd want the end result to be. The following aren't in any specific order:

  1. Using the source package, upgrade the new version on top of the existing without removing the Ubuntu package first. Essentially this would only overwrite the binary files with the new version leaving apt to still think 2.9 is installed. The downside it that if there would for some reason be a minor update of the Ubuntu package (say 2.9-1 -> 2.9-2) then that would overwrite the version back to 2.9 and you'd need to repeat the process.

  2. Same as 1 but uninstall the apt installed version first while keeping the database (which you may want to backup as I can't remember if the package uninstall removes the database directory by default). This way you don't have the (rather low risk) of apt downgrading the version during some system upgrade but, on the other hand, you'll need to manage the systemd file yourself (but that's documented in the install instructions for example: https://github.com/vergoh/vnstat/wiki/Install-in-Ubuntu )

  3. Backport the package from a more recent Ubuntu release where 2.10 is likely to already be present. Assuming there aren't any packaging dependency changes, it should be enough to have the build dependencies installed, extracting the source and Ubuntu patch packages and then invoking the build which would the result in a .deb package file that can be used to upgrade the current 2.9-1 to 2.10. If 2.9-2 would then end up getting released, that wouldn't result in 2.10 getting downgraded. However, once 2.11 is released then there will again be some delay before the distribution specific packages are available, which is something you may or may not see as a downside depending on your needs.

  4. Migrate to use the docker image: https://github.com/vergoh/vnstat-docker - It does have support for arm64 (which you appear to be using), is likely to be the easiest to upgrade later for new releases and can be configured to start with or without that httpd providing the image output depending on your needs. If you like to use the command line then from ease of use point of view you could alias the vnstat command to execute docker exec vnstat vnstat.

As for snap, flatpak or appimage, I haven't really investigated those options but I suspect those would prefer to sandbox the process as much as possible and are likely to limit the access to kernel interfaces vnStat requires for getting the interface details and traffic tracking.

from vnstat.

hongbo-miao avatar hongbo-miao commented on August 26, 2024

It would be great to update the version to latest in apt (not sure if author have control). Or publish to snap store. Then we don't need to compile ourselves to use latest version. Thanks @vergoh ! ☺️

from vnstat.

hongbo-miao avatar hongbo-miao commented on August 26, 2024

Thank you much for explaining, @vergoh !
I am kind of curious about how htop keeps up-to-date in the snap store: https://snapcraft.io/htop

from vnstat.

hongbo-miao avatar hongbo-miao commented on August 26, 2024

Oh, I see. You are right! https://github.com/maxiberta/htop-snap is maintained by another person.

from vnstat.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    πŸ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. πŸ“ŠπŸ“ˆπŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❀️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.