Skip to content
Kieran Wood edited this page Jan 6, 2020 · 4 revisions

Welcome to the pystall wiki!

Pystall is a utility to help download & install resources to help you setup your OS. Unlike regular configuration and monitoring utilities pystall is designed to be run-and-done without leaving any daemons or obscure monitoring services running on your machine.

Goals

  1. Make setting up fresh OS installs easier.
  2. Create an extensible framework that can be expanded upon to meet custom dependency installation management.
  3. Simple to use, with minimal boilerplate.
  4. Automation of tedious configuration and downloading.

Roadmap

  1. Class that's inherited to setup dependencies
  2. Main python module that can be installed with pip through pypi
    1. Can be used in a python script.
    2. Can be used as a CLI.
    3. Use pyinstaller to run as a direct binary.
  3. A way of supporting many filetypes (images, video files, installers etc.)
    1. Grab the files
    2. Put them in a particular path if necessary
    3. Run installers if necessary (make sure there is a flag not to run the binary, and that arguments can be passed)
  4. MacOS Support (needs to be validated)
  5. A CLI interface
    1. Pass files with a JSON schema for installing dependencies.
  6. Configuration of installations
    1. Handling PATH variables
    2. Handle running installers as admin.
  7. Asynchronously download files. (technically already possible with popen but a better solution can be found)

For more detailed roadmap check out the project planning board on github: https://github.com/Descent098/pystall/projects/1

Binary installers

Note that there are plans to be able to create binary installers that don't require python 3 by implementing a compile system using pyinstaller but this functionality is not natively available (though hack-able into a script). A demo of this can be found in the quick start

If you are interested I livestreamed the development of pystall and there is also a playlist of the development: https://www.youtube.com/watch?v=l3hBPfEtbko&list=PLY1W45yrIxjTF-5EqKSfZ1jKeb1YZo5ve

Clone this wiki locally