github.com/kubri/kubri@v0.5.1-0.20240317001612-bda2aaef967e/website/docs/intro.md (about)

     1  ---
     2  sidebar_position: 1
     3  ---
     4  
     5  # Introduction
     6  
     7  Kubri is a tool which automates signing and releasing software for common package managers and
     8  software update frameworks.
     9  
    10  ## Why we made it
    11  
    12  Kubri was created to solve the common problem of releasing your software for multiple different
    13  platforms. This is usually done with custom scripts, using various different tools which often even
    14  need to run on different operating systems, making the release process complex and disjointed.
    15  
    16  For example, to create a YUM repository you'd use the createrepo tool which only runs on Linux,
    17  while creating an App Installer file is commonly done in Visual Studio, which only runs on Windows.
    18  To make matters worse, many package managers require creating pull requests to public repositories
    19  using various different file formats.
    20  
    21  Kubri was created to simplify this process, allowing you to just write a small YAML configuration
    22  file and then release your software for all common package managers and software update frameworks
    23  with just a single command.
    24  
    25  It runs on Windows, Mac & Linux with zero dependencies.
    26  
    27  ## Usage
    28  
    29  Your release process is configured through a YAML file called `.kubri.yml`.  
    30  Once you've set it up you can publish your new releases anytime by running the command
    31  `kubri build`.
    32  
    33  See the example below for a configuration that would fetch your releases from GitHub and generate an
    34  APT repository, a YUM repository, a Windows App Installer file and a Sparkle feed and publish them
    35  to Amazon S3.
    36  
    37  ```yaml
    38  source:
    39    type: github
    40    owner: my-org
    41    repo: my-repo
    42  
    43  target:
    44    type: s3
    45    bucket: my_bucket
    46    region: us-east-1
    47    url: https://download.example.com
    48  
    49  # Use an empty object to enable the integration with default settings.
    50  apt: {}
    51  yum: {}
    52  apk: {}
    53  appinstaller: {}
    54  
    55  sparkle:
    56    title: My app feed title
    57    description: My app feed description
    58    params:
    59      - os: macos
    60        minimum-system-version: '10.13.0'
    61  ```
    62  
    63  ## Why the name "Kubri"?
    64  
    65  The word "Kubri" derives from Arabic and translates to "bridge". We chose this name because it
    66  perfectly represents our mission to bridge the gap between software release and distribution,
    67  providing a seamless and efficient process.
    68  
    69  ## Need more?
    70  
    71  If you need further help or would like to request a new feature, feel free to
    72  [file an issue](https://github.com/kubri/kubri).