Skip to content

Towards a packaged distribution of the PiSCSI software #740

Description

@funkyfuture

initiated from a discussion about proper installtion paths,
i tried to get an understanding of the possibilities and challenges regarding
the distribution of the RASCSI software as Debian packages.

the motivations for that are:

  • simplified, streamlined software installation & updates
  • possibility to cleanly uninstall components
  • simple backup and restoration as only configuration and user data needs to be
    considered
  • separation of concerns as a architectorial sideeffect
  • reduced power and time consumption among the user base

i found one aspect to be a major concern, that is the dependency on other
software that is also not (yet) available as Debian packages, namely:

i can think of three strategies to deal with this:

  • inquire whether the software maintainer's are interested in providing Debian
    packages themself
  • create packages within this project
  • just keep distributing a helper tool that facilitates installing these
    components from source

what also should be figured out is how an apt repository could be provided to
distribute the resulting RASCSI packages. i haven't done any research on that.

the other aspects and tasks that i found necessary are included in the draft
for a roadmap.

Roadmap

  • establish a scheme for configuration files
    • as the daemon and the web frontend are system services their configuration
      should be located within /etc
    • as it opens the question of of legacy support, the possibility to use one file format, and more, this certainly deserves its own issue
    • should this include a possible wifi-setup as qol?
      (so that a user that runs a standalone deployment just needs to handle one
      set of configurations.)
  • consolidate the Python software
    • host them in one or multiple repositories?
    • make a proper Python package (with setuptools) or one per component
  • factor out disk image related tasks from easyinstall.sh to seperate
    scripts
  • package all rascsi components as .deb (source and binary)
    • rascsi as meta-package that depends these:
    • rascsi-daemon
      • includes disk image related scripts
    • rascsi-python-tools or rascsi-{oled,pylib,web}
    • rascsi-docs would be optional and include all docs incl. hardware
  • create a meta-package that depends on all Macintosh computer specific
    software
  • update the easyinstall.sh with hints to replacing modes of use or just
    drop it?
  • find a feasible hosting solution that the CI can upload to

please let me know when i should be more elaborate to clarify things. or amend
/ correct things, any feedback is appreciated.

regarding myself, i'm not even a RASCSI user yet and i don't have the time to
coninuously participate in another project. but i could certainly help with
progressing the Python parts and the actual packaging.

Metadata

Metadata

Assignees

Labels

enhancementNew feature or request

Type

No type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions