Skip to content

(Linux) Packaging #1864

Open
Open
@dvzrv

Description

@dvzrv

I'm currently trying to package sonic-pi for Arch Linux' [community] repository.
However, this proves extremely painful, because of

  • conflicting installation information and about a dozen different "package scripts" for various distributions (that all seem slightly different and/or outdated)
  • four (!) different make systems (qmake, erlang, something that should probably be ruby bundler and cmake) in use to create (but not install!) this environment
  • no FHS compliance (which is bad as distribution usually try to avoid dumping applications in /opt)
  • no XDG desktop entry integration

This all makes it very hard to package sonic-pi without major headache.

It would be very beneficial to have a Make-like system, that takes care of all of the building and installing, as maintaining a package with a lot of customization and workaround steps, such as this, is very time-consuming and therefore off-putting to any packager.

There are a few open pull requests, that should be followed through with (e.g. #218, but especially #1291), as they improve on exactly this issue.
However, I don't think the latter approach should be chosen for e.g. building the Qt interface. If a standard GNU make is chosen, this can use rake, build the GUI and place things where they should go.

According to FHS, all things below etc should actually end up in /usr/share/sonic-pi, the executables below app in /usr/bin and so on.

I'm currently trying to find a way to make sonic-pi FHS compliant, but I'm not sure it's possible in its current form.
I'd definitely appreciate any help and pointers!

Metadata

Metadata

Assignees

No one assigned

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions