Skip to content

A modern, universal, and system-native package manager

License

Notifications You must be signed in to change notification settings

koca-build/koca

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

29 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Koca

Crates.io GHCR

The universal build, package, and publishing tool.

Koca is a modern, universal, and system-native package manager designed to simplify the process of building and distributing applications across multiple platforms. It is so powerful that it even builds and packages itself!

Why Koca?

  • Universal: Build for any operating system—Windows, macOS, and Linux distributions (Ubuntu, Debian, Red Hat)—using a single build file.
  • System Native: Leverage native packaging systems to output familiar formats like .exe, .pkg, .deb, .rpm, and more.
  • Lightning Fast: Optimized for speed with a Rust-based backend, ensuring your builds are as fast as possible.
  • Developer First: Focus on building your application, not the packaging tooling around it.

Example: Packaging Claude Code

Koca uses a simple, bash-like syntax for its build files. Here is an example of how you can package Claude Code using Koca:

pkgname=claude-code
pkgver=2.1.50
pkgrel=1
pkgdesc='Terminal-based AI coding assistant'
arch=('x86_64')

build() {
    # Download the pre-built Claude Code binary, using the version we defined above with Bash variable syntax
    curl -L "https://storage.googleapis.com/claude-code-dist-86c565f3-f756-42ad-8dfa-d59b1c096819/claude-code-releases/${pkgver}/linux-x64/claude" -o claude
    chmod +x claude
}

package() {
    # Koca provides the $pkgdir environment variable to stage your package
    install -Dm 755 "claude" "${pkgdir}/usr/bin/claude"
}

To create a package from this script:

# Create a .deb and .rpm package for Claude Code
koca create claude-code.koca --output-type all

Getting Started

Installation

GitHub Releases

You can download the latest pre-built binaries for your platform from the GitHub releases page.

Via Cargo

If you have Rust and Cargo installed, you can build and install Koca from source:

cargo install koca-cli

Via Docker

You can also run Koca as a Docker container:

docker run --rm -v $(pwd):/workspace ghcr.io/koca-build/koca create /workspace/your-app.koca

Usage

The create command is the primary way to build packages:

# Create .deb and .rpm packages (default)
koca create your-app.koca

# Create an .rpm package
koca create your-app.koca --output-type rpm

License

Koca is released under the FSL-1.1-MIT license.

About

A modern, universal, and system-native package manager

Resources

License

Stars

Watchers

Forks

Packages

 
 
 

Contributors