Git Product home page Git Product logo

Comments (18)

rhl- avatar rhl- commented on May 23, 2024

to start achieving this you can first create a separate homebrew tap, and then as it is popular, request it to be merged in..

from conan.

memsharded avatar memsharded commented on May 23, 2024

Yes, I think is good idea to have it in brew. Maybe not necessary to creat a new tap, but use homebrew cask? what do you think about it?

from conan.

ldionne avatar ldionne commented on May 23, 2024

Personally, I would just create a formula and request it to be merged in Homebrew's main trunk, but I wouldn't care if it was in a tap too.

Homebrew casks are for .app applications, not simple command-line utilities. Clearly, conan is the latter, which brings me to a separate issue. Right now, conan installs a bunch of stuff into your /Applications/conan directory, which is really bad-behaved for a command line utility on OS X. It would be preferable for it to be a self-standing executable (like every single command line tool I know), and to leave the /Applications folder alone.

Without exageration, I almost wet my pants when I saw this:
conan-wtf

This is definitely not the canonical way of installing command-line utilities on OS X.

from conan.

ldionne avatar ldionne commented on May 23, 2024

By the way, if you provide me with a sensibly-packaged command-line utility, I don't mind creating the Homebrew formula. I've done it before, and I think it might be easier for me since you guys don't seem to be on OS X.

from conan.

memsharded avatar memsharded commented on May 23, 2024

We are using pyinstaller to create the conan client application from a bunch of python files. All those files are packaged there by pyinstaller and are required to run the application. It is true that pyinstaller can create a "single executable" file, but it is kind of fake, as it is just a container for all those files, explodes it for every invocation, and then delete those temporary files. The result: it is sensible slower as command than the "exploded" installation, so we chose the "exploded" one for the installer, and as it lives inside a "conan" folder, having there lots of files didn't feel a problem.

Also, the installer contains 2 executables, the client and the server, not just one. Most of the shared libraries included within that installation folder are shared by both client and server, so embedding them duplicated in client and server could probably cause issues while on the fly exploding them to run.

Thanks very much for your offer, please tell me what you think about the above issues, so we could try to provide both versions of the packaged command line utility, so you can try yourself and check if the loss in speed for the single file executable is acceptable.

from conan.

rhl- avatar rhl- commented on May 23, 2024

In the last homebrew community has been reluctant to take any packages and only those that are widely used. That's why I suggested the tap.

from conan.

memsharded avatar memsharded commented on May 23, 2024

As a first step, we will release the pyinstaller (creation of the binaries from python sources) stuff asap, so anybody can easily create binaries for their platform, and package creators can also create packages from such binaries for their respective systems. This should be in next release 0.5

from conan.

ldionne avatar ldionne commented on May 23, 2024

Sorry for the late reply; I had my end-of-semester exams.

Actually, perhaps a good option would be to make conan available through PyPI? So basically, one could just use pip install conan instead of doing what the documentation says here.

Then, it would probably be straightforward to create a Homebrew formula that uses pip to install conan, or even not provide a Homebrew formula at all. I'm not sure yet what's the best way to go for Python formulas on Homebrew; I know it's possible, but I think they recommend handling dependencies manually (and not relying on pip), which would be a pain (and I'm not sure it's worth it).

Plus, having the package available through PyPI will benefit not only OS X users, but everyone. What do you think?

from conan.

bjoernpollex avatar bjoernpollex commented on May 23, 2024

@ldionne FWIW I like the pip approach. Homebrew would be the most convenient, but pip already goes a long way, especially when used with pipsi. I'd like to help if such an effort were to be undertaken.

from conan.

memsharded avatar memsharded commented on May 23, 2024

Thanks @ldionne for your interest, no need to apologize for late replies. Yes, I definitely think that providing a pip package is a good thing and should be easy to provide. Let's do both (releasing the creation of binaries from python and the pip package) for next release if possible. @bjoernpollex, thanks, we will probably try to address the pip package Monday or Tuesday, post here our progress. Feel free to advance things and propose, PR..., whatever contribution is valuable.

from conan.

ldionne avatar ldionne commented on May 23, 2024

@memsharded I just installed conan through pip, and it seems to work well. Do you know how can I uninstall what was installed by pyinstaller?

from conan.

memsharded avatar memsharded commented on May 23, 2024

Sure. Besides the Applications/conan folder, the only thing that the installer does is:

sudo ln -s -f /Applications/conan/conan /usr/local/bin/conan
sudo ln -s -f /Applications/conan/conan_server /usr/local/bin/conan_server

So removing Applications/conan folder and those 2 links, the system should be clean.
User conf and cached binaries packages are stored in ~/.conan. You might want to remove it too, though not necessary.

from conan.

ldionne avatar ldionne commented on May 23, 2024

Thanks! No need to remove ~/.conan, since this is still used by the pip installation, correct?

from conan.

memsharded avatar memsharded commented on May 23, 2024

You are welcome. Yes, it is used by any installation of conan (source, pip, binary), no need to remove it, but if you remove it, it will be regenerated by next conan command.

I meant that typically there is no problem to remove this folder, unless you have made explicit changes to the default configuration files that live there, or you don't want to lose the local package binaries in the cache, because you have not uploaded them to a server yet.

from conan.

memsharded avatar memsharded commented on May 23, 2024

any feedback about the "pip install conan". Is it enough, or still a homebrew package should be the way to go?

from conan.

ldionne avatar ldionne commented on May 23, 2024

Installing through pip seems to work fine. It is sufficient for my needs, and I'd be OK with closing this issue. We can always reopen it if someone really wants a Homebrew package.

from conan.

memsharded avatar memsharded commented on May 23, 2024

Great, thanks for your feedback!

from conan.

lasote avatar lasote commented on May 23, 2024

The brew package is available since 0.8.

from conan.

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.