Git Product home page Git Product logo

fiss's Introduction

fiss (Friedel's Initialization and Service Supervision)

0.3.3 (May 2023)

fiss is a lightweight and easy-to-use tool for initializing and supervising long-running services on Unix-like systems. It provides a simple and reliable way to start, stop, and monitor services. It supports automatic restarts, logging, and customizable startup options.

fiss is inspired by tools like runit and daemontools, but it aims to be simpler and more flexible, while still providing a similar level of reliability and security.

Features

fiss provides the following features:

  • Automatic restarts: If a service exits unexpectedly, fiss will automatically restart it, up to a configurable number of times.
  • Logging: fiss captures the stdout and stderr of the service and writes them to log files, which can be rotated and compressed.
  • Customizable startup options: fiss allows you to specify environment variables, working directory, umask, and other options for the service.
  • Supervision: fiss monitors the service and ensures that it stays running, or else it terminates the service and retries later.
  • Status monitoring: fiss provides a simple command-line interface to check the status of a service, including its uptime, PID, and exit code.
  • Simple configuration: fiss uses a simple directory structure to store the configuration for each service, making it easy to manage and version control.

Thanks to

Thanks to D. J. Bernstein for daemontools and build a sane and beautiful service management system.

Thanks to G. Pape to contribute and extend daemontool by building the init-system runit.

Thanks to the contributers of Void Linux for the runit-tools to make some scripts and programs around runit to make it an complete init-system for linux.

Without you, fiss would not be possible โค๏ธ!

Contributing

Contributing is always welcome ๐Ÿ˜!

This is possible by issueing problems or ideas at GitHub, I'll look forward to implement them.

Or if you got some free time left, you can add code to this project do a pull-request! To help you on your way, a little description:

directory description
.github/ workflows for github, like building
assets/ assets for the docs-website
bin/ resulting executables
bin/*.c C-sources
bin/*.lnk links to other executables1
bin/*.sh shell-scripts
contrib/ helpful files for contributing
contrib/command.txt internal commands for service's supervise/control
contrib/docs.txt custom documentation and manual format in docs/
contrib/make.txt custom make-headers
contrib/serialize.txt serialization of supervise/status
docs/ pages to include on the website
include/ C-headers
man/ manuals
mk/ common files for make
share/ files for fiss, should be installed at /usr/share
src/ C-sources for executables
tools/ tools for building
tools/make-docs.py converts a .txt-file to .html
tools/make-man.py converts a .txt-file to a roff-file
.clang-format format-specification for clang-format
configure configure behaviour of the resulting executables
fiss.svg logo of fiss
LICENSE license-text (zlib-license)
Makefile makefile for gnu make
readme.md what you are reading right now
  • 1plain text files containing the name of the symbolic link

โš ๏ธ please format your modification using clang-format and the .clang-format specifications!

Licensing

This project is licensed under the terms of the zlib license.

fiss's People

Contributors

friedelschoen avatar kenrap avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.