exo icon indicating copy to clipboard operation
exo copied to clipboard

[BOUNTY - $1500] Package exo as installable(s)

Open AlexCheema opened this issue 1 year ago • 7 comments

Background

Right now exo requires installing python, installing packages with pip and then running the exo command. This is too difficult for people who are non-technical. A lot of the people who want to use exo are non-technical.

Proposed Solution

To make exo easier to use for non-technical people, I'd like to simplify and make a single installable that users can install. This can be one installable or multiple installables for each target platform (e.g. Linux, MacOS, Windows). This needs to be as frictionless as possible, installing all prerequisites for the user from a fresh installation of their OS.

Deliverables:

  • A single installable or multiple installables (one per platform) that can be installed with one click on each target platform (Linux, MacOS, Windows)
  • The installable(s) need to handle edge cases like what version of MacOS you're running on or whether you have CUDA installed. Everything needs to happen in one installable.
  • A circleci CI/CD pipeline that creates the installable(s) automatically on commit

AlexCheema avatar Oct 07 '24 11:10 AlexCheema

same, I also had same thoughts about the installation process.

Shivp1413 avatar Oct 10 '24 05:10 Shivp1413

I've been looking into this, and so far it's been fairly successful. I got it packaging with all the libraries and running nicely- currently working on building with github actions and probably more thorough testing.

Also, just a couple of thoughts that after being packaged into an application.. How do we want it to act? Does there need to be interfaces designed to reduce the barrier of entry completely? Or keep it minimal similar to ollama with a thing that sits in the taskbar / menubar?

SethBurkart123 avatar Oct 11 '24 05:10 SethBurkart123

I also had same thoughts about the installation process

Quote reply Reference in n

maybe only an executable file is required? like .exe on windows. Cause the exo is a B/S application? for that,this issue aim to build a installable app maybe with pyinstaller/py2app(or others) with all prerequisites exo required ? 👀

tomy128 avatar Oct 11 '24 10:10 tomy128

Is this still up since there's already a PR in progress?

Bashorun97 avatar Oct 12 '24 23:10 Bashorun97

I think that this is a still an issue that would be beneficial.

I have some ideas, but would anyone like to take this on with me?

larson-carter avatar Oct 14 '24 14:10 larson-carter

I've assigned this to @SethBurkart123 as they seem to be furthest along with making this work.

AlexCheema avatar Oct 14 '24 22:10 AlexCheema

just to be fully transparent, there seem to be two almost complete PR's for this: #354 and #334.

in the interest of fairness and rewarding good work, the one that gets merged will receive the $1500 bounty. the other will receive $750 (provided a full attempt at a solution was made).

#332 will also receive $200 for experimenting on the circleci part.

AlexCheema avatar Oct 16 '24 06:10 AlexCheema

This is complete.

AlexCheema avatar Jan 30 '25 00:01 AlexCheema