hashicorp / vagrant-installers

Project to automatically create Vagrant installers for various platforms.
MIT License
172 stars 69 forks source link

Vagrant package repo/ppa #12

Closed leth closed 1 year ago

leth commented 12 years ago

It'd be great if there were a package repo I could add to my system so that vagrant updates would happen automagically.

Obviously not an urgent requirement ;) Keep up the good work!

gwillem commented 11 years ago

@mitchellh, what are your reasons for not using an Ubuntu PPA repo? Are you fine if somebody else sets it up and maintains it?

tmatilai commented 10 years ago

Ubuntu PPA is not a perfect choice, as you can't upload only binary packages (.deb) there. Vagrant packages are now made using (the fantastic) fpm which eliminates the need to maintain source package. It would be possible to create a "vagrant-installer" package which just downloads and installs the official vagrant.deb from downloads.vagrantup.com, but it is still extra effort to maintain it.

Also the PPA repo URIs include Ubuntu release code names. As the same package can be installed to all Debian derivatives and versions (well, i386 and amd64 with minimum glibc requirement), this at least seems a bit funny.

For me a better approach would be to have apt.vagrantup.com. One repo that could be used for all Debianoids. As the Vagrant packages are already stored in Amazon S3, the apt repository could be there too. deb-s3 looks like a promising tool for that (/cc @krobertson).

I have only maintained private apt repositories using reprepro, but I'm happy to help building and maintaining official Vagrant apt repo if that helps. Or maybe we can start building an unofficial one and see if it gets promoted later?

thedrow commented 10 years ago

I still think it would make life much easier for Ubuntu users to use a PPA, despite the maintenance effort. There is a pending issue https://github.com/jordansissel/fpm/issues/170 that requests to support PPAs. If someone would contribute a patch that could help progressing this issue forward.

CarlFK commented 10 years ago

I have wallowed around trying to maintain my own PPA, so I appreciate the effort required.

given it doesn't look like the local devs are too interested in wallowing around (and I don't blame them, see above) I think it is best to stop bugging them and put that effort into finding someone proficient in packaging who will at a minimum get a single build up, and then submit the results here.

If such a thing existed now, but was out of date, I would spend a few hours trying to update it. I suspect I am not alone.

to be clear: I am not interested in trying to package it, and I have no idea if will be interested in updating something later when it falls out of date. I am just suggesting a use of efforts given my experience and reading the comments here.

tmatilai commented 10 years ago

I've heard rumors that the situation might be resolved in the future. =)

But in the meanwhile I tested to create a repo with deb-s3. Instructions to use it are here.

The downside is that all the debs need to be copied also there. So I started to over-engineer a setup which only stores the metadata and redirects the package downloads to files.vagrantup.com. The idea is make it totally automatic, so that it fetches tags and refs from the github repo, and metadata from S3. The work-in-progress can be found here. I'll try to get the repo running tonight if DadOps allows. ;)

naftulikay commented 10 years ago

All that really needs to be done for Debian at least is to simply upload releases to a Launchpad repository, AFAIK. Since you guys are already packaging the software, it shouldn't be so difficult. On May 16, 2014 7:30 AM, "Jesús Cerquides" notifications@github.com wrote:

+1

— Reply to this email directly or view it on GitHubhttps://github.com/mitchellh/vagrant-installers/issues/12#issuecomment-43337704 .

juriansluiman commented 10 years ago

@rfkrocktk vagrant-installers use fpm on GNU/Linux for packaging. Because Launchpad (main hoster for the PPAs) does not allow to upload .deb files, you have to let them build the package for you. As long as fpm does not support this, it's quite tedious for this repo to build first with fpm and then let Launchpad do it again.

naftulikay commented 10 years ago

Yeah, I get that, Launchpad annoys me terribly.

You might have to do it yourself. I'm not sure about any software available which makes managing debian repositories easy.

Does anyone else subscribed here know how to simply and easily manage Debian package repositories?

thedrow commented 10 years ago

What about https://github.com/krobertson/deb-s3?

rsrchboy commented 10 years ago

On Fri, May 16, 2014 at 8:06 AM, rfkrocktk notifications@github.com wrote:

All that really needs to be done for Debian at least is to simply upload releases to a Launchpad repository, AFAIK. Since you guys are already packaging the software, it shouldn't be so difficult.

Seriously, the source packaging can just be uploaded, launchpad will do its thing, and as an advantage the packages will actually be built against the same level of ubuntu people want to use them against. If something breaks, well, then it's broken and needs to be addressed.

I suspect that this is not a technical decision so much as an unfortunate political one.

tmatilai commented 10 years ago

As explained before, there are no source packages. The official deb packages are just packed up with fpm after building all the things.

I have tried to poke both @mitchellh and @bintray to enable the apt repo in bintray.com, but didn't get any answer what it would require.

rsrchboy commented 10 years ago

As explained before, there are no source package.

@tmatilai apologies -- I must have missed that. As someone who has spent way more time building packages than I really care to think about I still find approaches along those lines... tricky for my brain to handle.

I'm certainly willing to host a public S3 repo, assuming the costs aren't atrocious. :) Is there currently any sort of notification system (mailing list, twitter, etc) I could tie into to make sure things are kept current?

tmatilai commented 10 years ago

You can subscribe to the bintray project to get notified when new versions are uploaded.

I already started a project to semi-automatically build only metadata to S3, but that was before bintray hosting. But I could get back to that if bintray can't offer the apt repo directly as they advertice.

rsrchboy commented 10 years ago

Interesting. Looks like bintray provides an API through which package information can be obtained -- even if we had to poll it every hour or two that should work nicely.

Well, there goes my evening :)

benjaminoakes commented 10 years ago

I'm still using Vagrant 1.4.3, just because it's easier to manage. This locks me out of Vagrant Cloud, etc.

I'd love a repo just to get a more modern version of Vagrant, automatically.

jsteel44 commented 10 years ago

Use a distribution that packages Vagrant. Arch is one.

ivan-kolmychek commented 10 years ago

@jsteel44 Your suggestion is good, but it does not help Ubuntu-using devs I work with. ;) I use ArchLinux on both my desktops and it packages latest vagrant indeed. But it still will be awesome to get repos for Debian and Ubuntu too.

naftulikay commented 10 years ago

Stop trolling. You might as well just tell us to compile it ourselves. Of course we know how to compile it ourselves, but the main concern here is getting updates consistently. I, for one, don't have time every day to Google every package I've installed and manually check the version numbers. Plus, it's nice having PGP signed packages to know authenticity.

On Wed, Oct 1, 2014 at 11:30 AM, Ivan Kolmychek notifications@github.com wrote:

@jsteel44 https://github.com/jsteel44 Your suggestion is good, but it does not help Ubuntu-using devs I work with. ;) I use ArchLinux on both my desktops and it packages latest vagrant indeed. But it still will be awesome to get repos for Debian and Ubuntu too.

— Reply to this email directly or view it on GitHub https://github.com/mitchellh/vagrant-installers/issues/12#issuecomment-57512842 .

benjaminoakes commented 10 years ago

What's required to make this happen? It's been an open issue since 2012, and there seem to be a number of people interested in having it. If one of the Vagrant maintainers could step in to let the community know how we can help make this a reality, I'd guess you'd get a couple of volunteers...

i-trofimtschuk commented 10 years ago

i really don't know what's hindering this.

it's already packaged as a deb, so what's left ist setting up a new location like http://www.vagrantup.com/repo/ or http://repo.vagrantup.com/ and set up a repo using a tool like reprepro https://wiki.debian.org/SettingUpSignedAptRepositoryWithReprepro

then all you have to do for every version is this:

reprepro includedeb <osrelease> <debfile>
benjaminoakes commented 10 years ago

@mitchellh How can the community help with this?

rmetzler commented 9 years ago

@mitchellh https://packagecloud.io/ might be a nice hosted solution

thedrow commented 9 years ago

@hashicorp is already using bintry and they have debian repositories. They just need to set them up.

hackel commented 9 years ago

Time to dump FPM. The reason that Debian packages are so vastly superior to their RPM counterparts is because the packaging is done right, and Debian policy must be strictly adhered to, resulting in reliable, high-quality packages. I don't want to install some random binary-only package that installs things to /opt (a directory which shouldn't even exist!). It feels so amateurish. If you don't want to maintain your own proper packages, that's fine. Let the professional package maintainers for Debian, Ubuntu, etc. do it and give us proper updates in a PPA. Stop releasing your own binaries! There is no reason this should work differently than any other myriad of software packages out there.

gboddin commented 9 years ago

Okay so :

https://gist.github.com/gboddin/d3fa7e386868a0862b81

Apt source line :

deb http://oraw.waro.be/vagrant deb main

Not signed, so you know :)

The mentioned script is ran everyday at midnight, so you get daily updates

regards,

alexanderadam commented 9 years ago

@gboddin cool stuff! :+1:

(although an official repo would be ideal of course) :wink:

thedrow commented 9 years ago

That's an improvement but still. hashicorp uses bintray which already provides debian repositories.

gboddin commented 9 years ago

Yeah well, considering the amount of +1, let's assume they just don't care about making their product widely available.

That's okay, I just did it to ease the life of the devs working with it, but to me Vagrant is now depcrecated, slow, and not community focused (let's say dead).

Make a proper source code, it'll build wherever you want, the fact that it needs that kind of hacks says it all for me.

Period.

stalet commented 9 years ago

Thanks @gboddin :)

mitchellh commented 9 years ago

@gboddin You're welcome to that opinion, and I'm glad you found value out of Vagrant while you could!

We don't base our roadmap on "+1"s and the count is not a good indicator of features that are necessary vs. features that are nice. What is necessary is fixing bugs wherever possible, improving platform support (host, guest, hypervisor), and adding features that the community requests. Note our very active and long CHANGELOG which included many installer improvements in the last major release: https://github.com/mitchellh/vagrant/blob/master/CHANGELOG.md

Distribution isn't Vagrant's priority right now, in that you're correct. Our downloads per month are still growing at a staggering rate, so distribution clearly isn't a short term problem. But stability, platform support, and specific features are.

The reason this issue is still open is because we intend to do it one day, but work is prioritized based on immediate need vs. time issue is opened or "+1 count".

So for the remainder of folks in this issue who have decided that Vagrant is still useful despite the fact we don't provide a proper Debian repo, thank you, your patience is appreciated, and we continue to work towards making Vagrant the best it can be with important bug fixes and improvements.

thedrow commented 9 years ago

@mitchellh Isn't this issue a low hanging fruit since you already use bintray which provides debian repositories?

gboddin commented 9 years ago

I think it's an important features, being able to be up to date with the latest version and with security fixes, also :

If you make distribution without that FPM thingy wide available, you'll get more developer involved with the project, for ... fixing bugs, improvements.

Also your download per month would growth with a repo. Most of the time, I discard solutions not providing update facilities, if there's another one covering the need.

I might be the only one, but so you know where your beardy linux users might be hidding ;)

Btw, I gave the code to generate a generic repo, all you need now is to sign it with your own gpg key when you make a new release ;) (and tell people to trust that gpg key in APT).

CarlFK commented 9 years ago

@gboddin Thank you for your efforts, and I'm sorry the powers that be aren't taking advantage of what you have provided.

@mitchellh Your post bothers me. I think you have done nothing but be annoying.
"Distribution isn't Vagrant's priority" did you really think any of us couldn't figure that out?
"we intend to do it one day" is empty words given this issue has been open for 3 years.
"distribution clearly isn't a short term problem" is simply wrong, and you are being rude to the group of people here saying "it is a problem."

"community requests" - what does that mean?

ivan-kolmychek commented 9 years ago

@mitchellh if this issue, comments in it and all of the "+1" do not qualify as a community request, could you, please, tell me, what will qualify as such?

gboddin commented 9 years ago

@ivan-kolmychek Run OSX ;)

ivan-kolmychek commented 9 years ago

@gboddin I personaly have no problems with obtaining fresh vagrant version, as I said before, but now I'm interested - what exactly is considered "ommunity request". Before @mitchellh comment I was quite sure, that github issue with alot of followers qualifies as one. =)

gboddin commented 9 years ago

I think the difficulty of providing a correct source package is what's holding them back.

Also, I have the feeling that Vagrant is most widely used by OSX users/developpers.

One plus the other makes it easy to deny this issue with non-sense terminology ("like community requests", blah ...).

I'll translate this issue once and for all :

"We don't know how source package should be handled and/or we made a design mistake at the beginning that we don't want to fix it right now because of linux users complaining"

Again, all you neeed @mitchellh (considering you don't want your package to comply to ubuntu/debian policies) is to take the code I gave you, drop it on a server and fucking sign the repo. It'll just deliver the debs you're currently providing and keep everyone up to date.

Whatever ...

troyready commented 9 years ago

Guys, this is out of hand and inappropriate. Yes, this is low hanging fruit and a nice benefit for devs on debian-family systems. No, that does not make the attitudes presented here appropriate.

That said, it would be nice to get this issue resolved. It seems like bintray would be the best option for this, since it (as others have mentioned) is already being used for the packages. Is there some way we can help test/implement this?

gboddin commented 9 years ago

@troyready

I don't know about bintray but :

Does that summarize our frustration enough (especially when people say the same thing than you over and over again without any result for 2 full years, and without any return from @mitchellh on the why is it so hard to do it at bintray) ?

I'm really confuzzled on how an almost-devops software has so much trouble with that, especially when there are solutions providen ...

thedrow commented 9 years ago

@gboddin As far as I can tell from their documentation they don't require source packages.

wolfgang42 commented 9 years ago

Before I saw @gboddin's post, I created my own repository. It's using a slightly different technique, and actually signs the files. There's any number of ways this can be done; my choice of tools was entirely arbitrary and dictated primarily by what I got to work first. The deb packages are downloaded from bintray and served locally; it might even be possible to set up a redirect so they're downloaded directly from bintray, though I have no idea how apt would react to that.

Instructions for adding the repository to your computer: http://vagrant-deb.linestarve.com/

This only took a couple of hours to set up, and seems to work well. It's just serving static files, so hosting it on S3 would be very easy. I intend to continue supporting this until an official repository becomes available, at which point I'll set up appropriate redirects to point there instead.

arnt commented 9 years ago

Ubuntu 15.04 includes a package for vagrant 1.6, which should make this less pressing.

sparrc commented 9 years ago

That's more a testament to how badly this is needed, Ubuntu 15.04 has only been released this month and it's already pretty far behind (1.7.2 is the latest vagrant version vs. 1.6 on Ubuntu 15.04)

additionally, very few Ubuntu users are going to be on 15.04 since it's not LTS

ivan-kolmychek commented 9 years ago

@arnt this issue was opened 3 years (~ 6 releases of Ubuntu) ago and, considering how the discussion goes, it can easily stay unresolved for another few years, so, I suggest you to not hope that Ubuntu will ship an actual version for a long time - it never does. ;)

arnt commented 9 years ago

@ivan-kolmychek http://packages.ubuntu.com/vivid/vagrant says the currently shipping version is 1.6.5. This should be recent enough for me at least (I need vagrant-libvirt).

ivan-kolmychek commented 9 years ago

@arnt v. 1.6.5 was released Sep 5, 2014. So, Ubuntu 15.04, which was just released, already contains more than half a year old version. That is even more interesting if you consider that half a year is a time between "regular" Ubuntu releases.

arnt commented 9 years ago

Ubuntu 15.04 is supposed to mostly contain packages dating from between the 14.10 freeze in late August 2014 and the 15.04 freeze in late February 2015, so that sounds reasonable enough. Unless Vagrant changed significantly between September 2014 and February 2015?

arnt commented 9 years ago

Actually a PPA can be quite a bit more work than a .deb. For example, you cannot take liberties with versions and dependencies when you build for a PPA, since the actual building is done on Canonical's servers.

I've no idea what the concrete problem is with Vagrant though.

hackel commented 9 years ago

The Vagrant team doesn't want (or doesn't have the resources) to make quality packages that adhere to the Debian Policy Manual, they'd rather produce the hack-job we see today. Honestly, I think a better solution would be for the Vagrant team to stop releasing binary packages of any kind, just like most other projects. Then the distributions will all package their own properly, and hopefully a team of kind volunteers will step up to maintain a PPA with more recent versions (based on the existing Debian/Ubuntu package), as people already have here on this thread.

DavidJFelix commented 9 years ago

Ppa won't need to adhere to debían policy and I think is most people's minimum expectation.