facebook / PathPicker

PathPicker accepts a wide range of input -- output from git commands, grep results, searches -- pretty much anything. After parsing the input, PathPicker presents you with a nice UI to select which files you're interested in. After that you can open them in your favorite editor or execute arbitrary commands.
https://facebook.github.io/PathPicker/
MIT License
5.11k stars 283 forks source link

Linux packages #43

Closed Daniel15 closed 9 years ago

Daniel15 commented 9 years ago

It would be good to have Linux packages available, at least .deb and .rpm versions. I don't know anyone that uses Linuxbrew, it doesn't seem ideal on Linux when better solutions exist.

The HHVM team distribute Linux packages, you could probably see how they do it.

diwu1989 commented 9 years ago

+1 linuxbrew?! wat is that?! Make it work with apt-get please.

gutenye commented 9 years ago

For ArchLinux, Install it by $ pacaur -S fpp

pcottle commented 9 years ago

Yeah this would be sweet, ill have to ask around internally since i have no idea how to build / release a linux package. @Daniel15 let me know if you have any names in mind for people we can bug :)

Daniel15 commented 9 years ago

I have no idea either :D I think @ptarjan and @jwatzman maintain the HHVM packaging scripts so they might know how to get started with this.

jwatzman commented 9 years ago

https://github.com/hhvm/packaging/blob/master/hhvm/deb/package is how HHVM does it -- that runs on a cronjob on a VM on a Mac Pro under someone's desk :-P Someone was in the process of writing a proper Debian package, which might be the way to go -- AIUI it isn't actually that hard, and has a lot better tooling than some random shell script, Debian is actually quite good at that sort of thing. As for the actual builds, last I heard the sandcastle/Fog team(s) were working on getting Debian VMs on Sandcastle so we can do our CI/builds that way; I got access to a couple VMs but never really got it set up, and haven't heard anything more about the actual infra and CI stuff there.

Feel free to grab me in the office if you want to chat; sometime May 25 or after would be best unless this is urgent, I'm working on the HHVM lockdown right now.

jwatzman commented 9 years ago

But you're going to have a much easier time since it looks like this is just pure python, right? Most of the HHVM complexity has to do with supporting finding several third-party libraries (or building new enough versions of them if the distro's is too old) for C++ compilation, and then generalizing that over a bunch of different supported versions of Debian and Ubuntu.

lsmag commented 9 years ago

There's also (fpp-git)[https://aur.archlinux.org/packages/fpp-git/] in AUR which installs PathPicker directly from github's master.

Also, maybe it's better not to point pacaur as the package manager? I use aurapm, for example.

pcottle commented 9 years ago

Oh thanks for the tip @lsmag . I'd be fine with pointing towards fpp-git in AUR since we won't have to worry about updating the release (downside is that it'll run a less stable version of the code, aka master)

Anyone have any objections to pointing to fpp-git? Or should we do that + pacaur?

Also thanks @jwatzman for the comment! Will ping you if we don't get any community contributions that work. I do agree that this is much easier than building hhvm releases

Daniel15 commented 9 years ago

We should still make .deb and .rpm packages for distros that use those.

lsmag commented 9 years ago

I believe most Arch users know how to install an AUR package, so I don't believe favouring a certain package manager is good (and there are many )

Daniel15 commented 9 years ago

Yes, Debian users don't use AUR packages though. Not everyone uses Arch :)

Sent from my mobile. On May 12, 2015 2:33 PM, "lsmag" notifications@github.com wrote:

I believe most Arch users know how to install an AUR package, so I don't believe favouring a certain package manager is good (and there are many https://wiki.archlinux.org/index.php/AUR_helpers#AUR_search.2Fbuild_helpers )

Reply to this email directly or view it on GitHub https://github.com/facebook/PathPicker/issues/43#issuecomment-101428168.

lsmag commented 9 years ago

Yep @Daniel15 , I was only answering @pcottle 's question regarding AUR or AUR+pacaur ;)

Daniel15 commented 9 years ago

Oh right :+1:

pcottle commented 9 years ago

Alright now we are at least pointing to fpp-git, and non-Arch peeps can install manually. Closing out since I don't think maintaining our own distribution packages is going to be super sustainable (at least until we get some internal volunteers).

If anyone wants to attach the command line inputs to pull down / install that package, shoot em over! I can at least inline those instructions

pcottle commented 9 years ago

@lsmag lemme know if you have the above^^

lsmag commented 9 years ago

You can point to the Arch wiki, it has a link for the AUR helpers

Daniel15 commented 9 years ago

@pcottle - Can we keep this task open for tracking purposes, until we have .rpm and .deb packages? Most likely someone will open an identical task when they notice a lack of packages, so we should still keep this open to track that.

pcottle commented 9 years ago

sure @Daniel15 -- hope people notice the "help wanted" label in bold

pallavagarwal07 commented 9 years ago

I am a student of IIT Kanpur with a lot of free time and multiple testing platforms (Debian, Arch, Fedora). Is there anything I can do to help?

pcottle commented 9 years ago

Sure @pallavagarwal07 -- could you try whipping up a list of the install commands for the different package managers that use the package we link to above? and make sure it works on debian / arch / fedora

For instance, we have the homebrew install command as : brew update; brew install fpp; fpp

It'd be nice if we could point to something similar like:

pacaur -S fpp; fpp # for pacaur
arch apt-get fpp; fpp # for whatever works for arch
pallavagarwal07 commented 9 years ago

@pcottle OK, I'll get right on it.

pallavagarwal07 commented 9 years ago

@pcottle I think the best way of distributing it to debian platforms would be with a .deb package. It installs instantly and since the project is pure python, the .deb package is extremely easy to create.

Here is the one I created using current master branch : https://drive.google.com/file/d/0B6jsnt965ZwraVk1bEo2VmpXd1U/view?usp=sharing It should install on any debian based OS.

pcottle commented 9 years ago

My only worry about Debian packages is that our team wouldn't know how to build / update / maintain them. Could you add to the scripts/makeDist.sh with the commands necessary? That way we can update it along with homebrew and keep everyone up to date

pallavagarwal07 commented 9 years ago

I'll write a script as soon as I generalize the method (extracting necessary details from the package itself) Could you tell me the Name and email of the person whose info is to be written in packaging control file (Maintainer: is a necessary field) ?

pcottle commented 9 years ago

Yeah sure @pallavagarwal07 --

1) Owner name: Peter Cottle 2) Owner email: pcottle@fb.com

pallavagarwal07 commented 9 years ago

@pcottle Debian packages also require (or rather recommend) a man page for every executable (in this case fpp). Is there one? Or should I skip the man page in the packaging?

pcottle commented 9 years ago

Hrm, the output of fpp --help is basically what I would describe as our man page. could we use that automatically somehow? maybe do it as part of the script?

pallavagarwal07 commented 9 years ago

@pcottle I think man pages are supposed to follow a very strict format. Scripting to use the same at both places wouldn't be hard at all if the existing is modified to fit the criteria (should I do it?) For now, I have done it without the man page (help command obviously still works) and opened a pull request. Have you seen it?

pcottle commented 9 years ago

I think man pages are supposed to follow a very strict format.

ah well in that case, lets not bother. we can move this discussion to the PR!