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

Install Instruction for Raspberry Pi (no more Kubic) #383

Closed
holgerpieta opened this issue Apr 13, 2021 · 23 comments
Closed

Install Instruction for Raspberry Pi (no more Kubic) #383

holgerpieta opened this issue Apr 13, 2021 · 23 comments

Comments

@holgerpieta
Copy link

Is this a BUG REPORT or FEATURE REQUEST? (leave only one on its own line)
/kind bug
Sort of, I guess.

Description
The install instruction on https://podman.io/getting-started/installation for Raspberry Pis recommend using the Kubic project repositories. Unfortunately the maintainer has announced to not support "old" distros anymore: https://podman.io/blogs/2021/03/02/podman-support-for-older-distros.html
So there will be no podman > 3.0 for Raspberry Pi OS for the foreseeable future.
The hint about switching to a newer distro version and that podman will be part of Debian 11 is only marginally helpful, because there is no release date for Debian 11 announced yet and it will take even longer until it will make it to the Raspis.
Even worse, the podman version currently in testing (i.e. most likely going to be new stable) is 3.0.1, so Debian 11 users are probably going to be stuck with some version of 3.0 for quite some time.
Debian unstable is currently also shipping 3.0.1, but I'm somewhat optimistic that they will follow the development more closely and will hopefully update to 3.1 in the near future.
All in all it might be wise to think about what should be done about the install instructions when podman moves further away from 3.0 and when, hopefully, Debian Unstable follows somewhat closely.

I've been quite successful with the following approach:

  • Add Unstable to the repositories (additionally to the backports as described in the install instructions):
cat /etc/apt/sources.list.d/unstable.list
deb http://deb.debian.org/debian/ unstable main contrib non-free
  • Pin down the priority to avoid (or at least reduce) chaos:
cat /etc/apt/preferences.d/99-prio
Package: *
Pin: release a=buster-backports
Pin-Priority: 90

Package: *
Pin: release a=unstable
Pin-Priority: 80
  • Install podman from the unstable repo.

Unfortunately I cannot say if that works if you start from scratch, because I still have the Kubic repos installed, so I'm currently running a bit of an unhealthy mix of Debian Unstable (podman 3.0) and Kubic (slirp4netns 1.1 instead of 1.0 from Debian Unstable).
Also I do not quite like to tear down my systems and give it a fresh start, because my Raspis are actually supposed to be doing work and are not really meant for testing.
So if there is someone with an idle Raspi, maybe they can give it a try.

@afbjorklund
Copy link
Contributor

afbjorklund commented Apr 13, 2021

Building podman from source seems like the best option, unless somebody wants to starting build packages for Raspberry Pi ?

Assuming that the new podman will actually work on the kernel, otherwise they will also have to stay with Podman 3 .0 forever

@holgerpieta
Copy link
Author

Technically yes, and I'd probably be able to do it, but I'm not sure all Raspi users will. And anyway, it looks it's working with Unstable packages. But we will only know once Unstable updates beyond Kubic.
It just needs someone with an idle Raspi to try (and probably update) my idea on a freshly installed Raspberry Pi OS.

@afbjorklund
Copy link
Contributor

There are no packages for the other systems either: containers/podman#3924 (comment)

So it is not only Raspberry Pi OS (raspbian), same goes for Ubuntu LTS

@lsm5 lsm5 transferred this issue from containers/podman Apr 14, 2021
@lsm5
Copy link
Member

lsm5 commented Apr 14, 2021

There are no packages for the other systems either: containers/podman#3924 (comment)

So it is not only Raspberry Pi OS (raspbian), same goes for Ubuntu LTS

It's only the older LTSs that have been discontinued. The latest LTS is still present on Kubic.

@holgerpieta The debian instructions mention the versions for which kubic packages exist from what I can tell. See: https://github.com/containers/podman.io/blob/master/getting-started/installation.md#debian . Let me know if there's anything else we need for more clarity.

Of course, if any community members are willing to own support for distros that have been discontinued, I'm willing to help them with getting started for OBS. So, let me know ..

@afbjorklund
Copy link
Contributor

afbjorklund commented Apr 14, 2021

It's only the older LTSs that have been discontinued. The latest LTS is still present on Kubic.

Thanks for clarifying, then I guess using Ubuntu 20.04 LTS could be an alternative for the RPi too.

@lsm5
Copy link
Member

lsm5 commented Apr 14, 2021

It's only the older LTSs that have been discontinued. The latest LTS is still present on Kubic.

Thanks for clarifying, then I guess using Ubuntu 20.04 could be an alternative for the RPi too.

Ubuntu 20.04 packages are available for both aarch64 and armv7l and I guess RPi could use either?

Also, an advance word of caution, the Ubuntu 22.04 LTS (about 1 year to go) will have podman included by default, and once that gets released, I plan to discontinue all Ubuntu builds on Kubic.

@afbjorklund
Copy link
Contributor

Ubuntu 20.04 packages are available for both aarch64 and armv7l and I guess RPi could use either?

Yes, https://ubuntu.com/download/raspberry-pi - the only thing not supported are the RPi 0-1 (armv6)

@holgerpieta
Copy link
Author

Ubuntu 20.10 Groovy currently ships podman 2.0.6. I don't know enough about Ubuntu release cycles to know if they are ever going to update to anything more recent.
Ubuntu Hirsute ships 3.0.1, quite like Debian Unstable. We'll see who'll be faster on 3.1.

Ubuntu on Raspi looks like an option for the likes of me and I may give it a try in the future. But I'm not sure it'll be good for every user, there still seems to be better support in Raspbian. And you have to find it in the first place. If you, like me, started off with Raspbian, doing the switch isn't exactly an easy decision.

@lsm5: Are you going to build current podman for Debian Unstable (or maybe even Testing)? I understand that you are going to do it for Ubuntu 20.10 and Hirsute, right?
If yes, it might be possible to update the install instructions to add the Unstable repository to Raspbian with a low priority to pull in all the requirements needed for a recent podman.

@lsm5
Copy link
Member

lsm5 commented Apr 14, 2021

Ubuntu 20.10 Groovy currently ships podman 2.0.6. I don't know enough about Ubuntu release cycles to know if they are ever going to update to anything more recent.
Ubuntu Hirsute ships 3.0.1, quite like Debian Unstable. We'll see who'll be faster on 3.1.

Ubuntu on Raspi looks like an option for the likes of me and I may give it a try in the future. But I'm not sure it'll be good for every user, there still seems to be better support in Raspbian. And you have to find it in the first place. If you, like me, started off with Raspbian, doing the switch isn't exactly an easy decision.

@lsm5: Are you going to build current podman for Debian Unstable (or maybe even Testing)? I understand that you are going to do it for Ubuntu 20.10 and Hirsute, right?
If yes, it might be possible to update the install instructions to add the Unstable repository to Raspbian with a low priority to pull in all the requirements needed for a recent podman.

Sorry, I have a hard time with the Ubuntu names, so let me just use YY.MM to talk about Ubuntu plans. Given that Fedora 33 now has podman v3.1.0 in stable, I'll add v3.1.0 to Ubuntu on Kubic, so Ubuntu 20.04, 20.10 and 21.04 should be getting v3.1.0 soon.

RE: Debian Unstable and Testing, since those already have podman and since those later on get cut into debian releases, I was told to stop building for those if we didn't have plans to support debian releases on Kubic going forward. So, that's why I disabled those too.

But, if you still insist on using some Debian Unstable repo from Kubic, you might wanna check out https://build.opensuse.org/project/show/devel:kubic:libcontainers:testing . There's a Debian Unstable repo in there which I actually use for my own package testing work (nobody else uses it so far). It's been taken off the podman.io docs, and will not be added again. I cannot recommend it for production use either. That repo will get RC / beta packages. So, use at your own risk.

If you want something fit for production use, I highly recommend you stick with what's available in the default debian testing/unstable or ubuntu repos and not depend on the kubic repos.

@holgerpieta
Copy link
Author

Puh, let me try to summarize from a Raspi's user point of view:

Ubuntu 20.04: Nothing.
Ubuntu 20.10: 2.0.6
Ubuntu 21.04: 3.0.1
Kubic now has 3.1 for all Ubuntus, but will discontinue all Ubuntu builds once 20.04 gets any version natively.
Does anyone has any feeling about the versions we are going to get in the Ubuntus in future? 21.04 is supposed to be released in about a week. Will it track development (somewhat) closely?

Debian 10 (Stable): Nothing
Debian 11 (Testing): 3.0.1
Debian Unstable: 3.0.1
@lsm5 has been asked to discontinue Kubic builds for Debian, because Debian now has it's own packages.
I guess Unstable will track development somewhat closely, but testing is probably going to be stuck with 3.0 or something like that.

Raspberry Pi OS 10: Nothing
Raspberry Pi OS 11: Probably like Debian 11, but totally unknown when it is going to become available.
Kubic has 3.0.1 and will not provide anything newer, at least not until RPO 11 is released.

So, back to the Raspi user:
If you're stuck with Raspberry Pi OS, the best guess is to use the Debian Unstable packages. How closely they'll track development is to be seen. I think that should actually work quite nicely, but it needs to be tried from scratch to work out a procedure we can put in the instructions. I see some danger with slirp4netns version 1.0 in Unstable vs. 1.1 in Kubic, but we'll see.

If you're able (and willing) to use Ubuntu, 21.04 should be the best guess once it's available. If you want bleeding edge, at least currently combine it with the Kubic repos. If you need it NOW and do not want to wait for 21.04, then 20.10 is also good, but then you need to use the Kubic repos.
Given that there seems to be still some pitfalls with using Ubuntu on Raspis, I'm not sure if that's an option we should recommend in the instruction. But at least it should be mentioned, because it feels like the more future-proof option to me.

@afbjorklund
Copy link
Contributor

afbjorklund commented Apr 15, 2021

Given that there seems to be still some pitfalls with using Ubuntu on Raspis, I'm not sure if that's an option we should recommend in the instruction. But at least it should be mentioned, because it feels like the more future-proof option to me.

As long are you not using the suggested OS (i.e. Raspberry Pi OS), and really want to use Podman you might as well go with Fedora ? Otherwise "someone" would need to provide native packages, compiled for Raspberry Pi (possibly from Debian)

@lsm5
Copy link
Member

lsm5 commented Apr 15, 2021

Kubic now has 3.1 for all Ubuntus, but will discontinue all Ubuntu builds once 20.04 gets any version natively.

To be clear, 22.04 will be the first LTS to have podman natively. Once that's released, I plan to stop all further kubic builds for ubuntu.

Does anyone has any feeling about the versions we are going to get in the Ubuntus in future? 21.04 is supposed to be released in about a week. Will it track development (somewhat) closely?

@siretart is the official Debian as well as Ubuntu maintainer. He probably has a much better idea. I would also recommend Debian/Ubuntu users help him out in any way possible toward official package release/testing.

@holgerpieta
Copy link
Author

Ah, good to know, sounds like Ubuntu and Debian are going to be very similar in the future.

I doubt I'd be a good choice as a maintainer for a critical package like this, but of course I'd be willing to support and test.

@oneofthemany
Copy link

oneofthemany commented Jul 19, 2021

I know slightly off topic, but I have been using fedora 34 with podman on my pi for approx 5 months now - aside from boot time on update I have no issues

[sean@fedora config]$ uname -a
Linux fedora 5.12.13-300.fc34.aarch64 #1 SMP Wed Jun 23 16:03:11 UTC 2021 aarch64 aarch64 aarch64 GNU/Linux
[sean@fedora config]$ podman --version
podman version 3.2.2
[sean@fedora config]$ 

@lsm5
Copy link
Member

lsm5 commented Apr 13, 2022

This can be closed. Raspberry Pi OS can use debian's own arm64 repos and that's mentioned in the current version of the installation doc.

@lsm5 lsm5 closed this as completed Apr 13, 2022
@torntrousers
Copy link

This can be closed. Raspberry Pi OS can use debian's own arm64 repos and that's mentioned in the current version of the installation doc.

A link or something would be helpful. I've just installed podman on a Raspberry Pi and got podman 3.0.1, but I wanted at least 4.4 to try out Quadlets. Googling came to this issue and I'm still none the wiser about what i need to do to run a recent podman on a Pi.

@afbjorklund
Copy link
Contributor

@torntrousers : the links are getting removed, and the remaining part is to use the debian packages (podman 3.0.1)

https://podman.io/docs/installation#linux-distributions sudo apt-get -y install podman

If you upgrade from Debian 11 to Debian 12, you get a slightly newer (4.3.1): https://packages.debian.org/podman

@torntrousers
Copy link

thanks @afbjorklund . I want to use Quadlets though so need at least 4.4 i think?

@afbjorklund
Copy link
Contributor

That might very well be, suggest to start a new discussion on how to do that on Debian (and not only Ubuntu)?

The Kubic packages are also sailing into the sunset, and the static binaries (Nixpkgs) are not being built anymore...

@torntrousers
Copy link

ok, new to the project though - how or where do i start a new discussion?

@afbjorklund
Copy link
Contributor

afbjorklund commented Jan 28, 2024

https://github.com/containers/podman/discussions or in the chat room

It is hidden under https://podman.io/community with links and stuff

Note: there are a lot of similar questions being asked there already.

The main "discussion" is where to provide the .deb packages, downstream.

@torntrousers
Copy link

containers/podman#21396

@siretart
Copy link

Please consider running debian testing, see https://wiki.debian.org/DebianTesting for details.
There are possible compromises that are unacceptable to you, like rate of updates, the associated bandwith costs, etc. If that is the case, consider installing the packages from debian/testing on your bookworm systems using Apt Pinning: https://wiki.debian.org/AptConfiguration?action=show&redirect=AptPreferences

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

No branches or pull requests

6 participants