Git Product home page Git Product logo

Baulk - Minimal Package Manager for Windows

license badge Master Branch Status Latest Release Downloads Total Downloads Version 996.icu

简体中文

Baulk is a minimalist, portable package manager for Windows.

Why Baulk

Baulk was originally born to solve the inefficiency of the package manager command devi of Clangbuilder, and devi is based on Powershell, and the poor performance is self-evident.

In May 2020, when Microsoft announced the Windows Package Manager Preview, Baulk had been in development for several months. It did not mean that winget appeared, and similar tools would not develop. In addition, Baulk is better than package managers such as winget/scoop in terms of portability, isolation, virtual environment, and zero dependencies on tools. These are the reasons for its existence.

Features

  • Core feature is of course the package management function, which is portable and free of installation. All packages, whether msi/exe or other archives, will be decompressed by Baulk to the root directory of the package itself.
  • Environment isolation and virtual environment
    • All packages have their own directory, and the invocation of the program in the package is initiated through its launcher or symbolic link, and the environment variables do not interfere or affect.
    • There are different major versions of the same software, and different distributions can be switched through venv, such as openjdk/msjdk.
  • Excellent package extraction experience: Baulk itself provides decompression capabilities in zip/tar and other formats, supports automatic detection of filename encoding, and avoids garbled filenames caused by CodePage.
    • Baulk also provides baulk extract/unzip/untar commands for users to use baulk's decompression function in other scenarios.
    • Baulk also provides Unscrew Extractor (unscrew) a minimalist graphical decompression tool that can be integrated into the right-click menu to provide the ability to decompress tar.* files with one click.
  • Limited compatibility with scoop manifest (compatibility mode, inability to use baulk advanced features like environment isolation and virtual environments).
  • Written in pure C++20 with superior performance.
  • IntelliSense network settings when downloading packages.
  • Supports updating buckets using github-archives or git.
  • Baulk also provides the baulk brand command to detect operating system information.

Get Started

We can go to Github Release to download the latest version:https://github.com/baulk/baulk/releases/latest, If in doubt, refer to the table below.

Installation Mode x64 arm64 Remark
Completely Portable Baulk-${VERSION}-win-x64.zip Baulk-${VERSION}-win-arm64.zip Unzip it to any directory and double-click baulk-terminal.exe (you can also create a shortcut for it)
Installation without administrator rights BaulkUserSetup-x64.exe BaulkUserSetup-arm64.exe Double click to run the installer
Install with administrator privileges BaulkSetup-x64.exe BaulkSetup-arm64.exe Double click to run the installer
Experimental Experience Appx Baulk-x64.appx Baulk-arm64.appx baulk version > 4.0

Once installed you can experience Baulk:

# Install any packages you need
# baulk i neovim curl wget ripgrep belautils
baulk install neovim curl wget ripgrep belautils
# Now you can run commands like curl in Windows Terminal 
curl -V
# update metadata (bucket)
# baulk u --> baulk update && baulk upgrade
baulk update
# upgrade package
baulk upgrade
# uninstall package
# baulk r wget
baulk uninstall wget

Look, it's so simple!

Search package:

Integration into Windows Terminal (shell replacement):

Changelog

Changelog

Baulk tools usage

Usually you can run baulk -h to see help for commands (other commands are also -h), you can also see:Detailed Help

Advanced Experience with Baulk

Other Baulk Tools

Barrels - Baulk environment dock (Windows 11 22H2 or Later)

Build Baulk

  • Visual Studio 2022 (17.2 or later)
  • Windows SDK 10.0.22000.0
  • CMake 3.22.0 or Later
git clone https://github.com/baulk/baulk.git
cd baulk
mkdir build
cd build
cmake -GNinja ..
ninja all

Article

《Baulk - 开发一个简单的包管理工具历程》

Thanks

Baulk depends many license-friendly open source projects, I would like to express my sincere gratitude.

Baulk Icons made by Smashicons from www.flaticon.com

Baulk's Projects

b7z icon b7z

A 7z build maintained by Baulk

baulk icon baulk

baulk - Minimal Package Manager for Windows

bulk icon bulk

bulk - I don't know what this tool will be used for

chardet icon chardet

Charset detector library for golang derived from ICU

less-windows icon less-windows

About GNU less compiled for Windows 11. Stand-alone version with no dependencies.

uncia icon uncia

Uncia - Simple archive extraction tool

unrar icon unrar

unrar's baulk maintenance release

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.