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

feat: add debian build #92

Merged
merged 3 commits into from
May 19, 2024
Merged

feat: add debian build #92

merged 3 commits into from
May 19, 2024

Conversation

drlkf
Copy link
Contributor

@drlkf drlkf commented May 16, 2024

Added the necessary structure to create a deb package. It has specificities so I kept the old Makefile around for backwards-compatibility:

  • using cmake allows for pre-flight checks e.g libhidapi installation
  • udev rules adding uaccess does not allow userspace HID interaction on debian, so I created a new file that grants everyone read-write access to matching devices

Also reworked the following:

  • moved header files to include directory
  • moved source files to src directory
  • factorized Makefile to use the same code for all targets
  • reworked Makefile rules to actually compile object files to a separate obj directory

While all this setup works, my device (3553:c010) is actually not supported by this project yet, so I actually don't know if this is all end-to-end functional. I tried adding the VID:PID to the sources but the commands seem to do nothing, so I need to investigate more to find out what is not working, and though it's unlikely due to the build changes, it's not entirely ruled out yet.

Copy link
Owner

@rgerganov rgerganov left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Adding a debian build would be great, thanks for your work. I have some comments and suggestions inline. You can also consider adding a CI job in .github/workflows/build.yml which builds the debian package

CMakeLists.txt Outdated Show resolved Hide resolved
CMakeLists.txt Outdated Show resolved Hide resolved
Dockerfile Show resolved Hide resolved
debian/footswitch-cli.udev Outdated Show resolved Hide resolved
@drlkf
Copy link
Contributor Author

drlkf commented May 17, 2024

Adding a debian build would be great, thanks for your work. I have some comments and suggestions inline. You can also consider adding a CI job in .github/workflows/build.yml which builds the debian package

I've added the job to the workflows, but there is nothing configured yet to upload artifacts, should I add some? Or is it only for testing purposes?

@rgerganov rgerganov merged commit 5d96018 into rgerganov:master May 19, 2024
3 checks passed
@rgerganov
Copy link
Owner

I've added the job to the workflows, but there is nothing configured yet to upload artifacts, should I add some?

If you find out how to do that, sure!

Do you know how we can apply for adding this project in Debian?

@drlkf
Copy link
Contributor Author

drlkf commented May 19, 2024

Do you know how we can apply for adding this project in Debian?

You would need to to submit the package to the Debian organization, most likely through a sponsor, you can start here to learn more about the inner workings of Debian. It can be a hefty process so you might want to setup a separate repository if you want to have the package available in the near future. Otherwise, adding the artifact to the newer releases is probably a good bet imho.

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

Successfully merging this pull request may close these issues.

2 participants