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

Create installation process #11

Open
jmanera opened this issue Jan 5, 2023 · 7 comments
Open

Create installation process #11

jmanera opened this issue Jan 5, 2023 · 7 comments

Comments

@jmanera
Copy link
Owner

jmanera commented Jan 5, 2023

The next step is to create a consistent installation process.

@blaxpot or @j4ckp0t85 do you have any suggestions?

Thanks!

@blaxpot
Copy link
Contributor

blaxpot commented Jan 5, 2023

A more detailed build/install instructions section in the project README would be a good start. Maybe include a list of package names that the project depends on for a few common distros.

I currently have a Pi 4 with Raspberry Pi OS, a Ubuntu machine, an Arch machine and a Guix machine that I can test on if needed.

I guess after that the next step is to distribute some install packages.

A .deb package for apt distros is probably a good idea. I'm not super familiar with the apt packaging system but I think this should be fairly straightforward to build and will cover a good chunk of users. Maybe look into setting up a PPA to make updates easier and such? Even just having the .deb file on the GitHub releases page will work, though.

An AUR package for Arch based distros would be good too. This should be pretty easy. I will volunteer to help with that if you like. Arch is my main desktop OS currently.

I think someone on the Mixxx forums mentioned Fedora, so maybe it'd be good to have an RPM package as well. I have no experience at all with RPM distros, so can't comment on what that will be like really.

It would probably also be a good idea to look into some kind of automated build process to produce binaries/packages when there's a new release. Maybe GitHub actions could work?

@blaxpot
Copy link
Contributor

blaxpot commented Jan 6, 2023

Ok, so I had a go at building the project. AFAICT there are no cmake install scipts set up yet. I tried cmake --install . and had a look at the config files in the repo.

It'd be nice to have this, since then people for whom there's no install package can clone the repo, and build/install themselves.

@jmanera
Copy link
Owner Author

jmanera commented Jan 9, 2023

Hi! I agree, maybe the first natural step is to create the build and install process with cmake (and document it in README).

It can be interesting to include on the repo the XML and js files from the Mixxx mapping and prepare the installation for it (include in ~/.mixxx/controllers).

I'm going to prepare it...

In the future, we can prepare the distributable files for the distros (Ubuntu, Fedora, Arch, etc...)

Thanks for the suggestions.

@j4ckp0t85
Copy link

hi @jmanera @blaxpot

Not properly an installation process but it would be great if the driver could be bundled inside the mixxx raspberry pi 4 ready-to-flash images made by fayaaz (see here)

@jmanera
Copy link
Owner Author

jmanera commented Feb 7, 2023

@j4ckp0t85 @blaxpot I think that we can close this issue, right?

@j4ckp0t85
Copy link

@jmanera for me surely yes

@blaxpot
Copy link
Contributor

blaxpot commented Feb 7, 2023

I'm not so sure - we have a build process documented and tested now, but what that gets you is just a compiled and working binary.

IMO an install process would mean full setup instructions (as discussed in #14) describing a way to obtain the binary along with any supporting stuff it needs, and properly those into the target system.

Ideally this would mean install packages for various common systems including stuff for automating the startup of the application (e.g. udev rules / systemd unit / etc. as discussed in #8), but at a minimum there should be something to install stuff via CMake, and instructions for doing so in the README.

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

3 participants