Coder Social home page Coder Social logo

aronson / wonderful-packages Goto Github PK

View Code? Open in Web Editor NEW

This project forked from wonderfultoolchain/wonderful-packages

0.0 1.0 0.0 317 KB

UNOFFICIAL Package and repository management scripts

Shell 75.87% Python 14.70% C 0.35% Inno Setup 1.01% Batchfile 4.23% Dockerfile 3.83%

wonderful-packages's Introduction

UNOFFICIAL macOS wonderful-packages

Repository containing unofficial build scripts and infrastructure based on Wonderful's Pacman-based packaging, specifically for macOS.

Note: Support is not provided by the Wonderful Toolchain upstream. I am happy to provide you volunteer support on this repo's issue tracker. If you want to report issues upstream, reproduce them using a Linux VM on your Mac with the official sources to rule out macOS specific issues.

Supported targets

Listed from most to least supported.

Target Description Container
macos/arm64 macOS, arm64 N/A
macos/x86_64 macOS, x86_64 N/A

Guide

As the packaging system is intended for internal use only, the list of tested setups is highly specific:

  • For macOS development, all you need is clang, brew, and pure grit (and a Mac)

Downloading repositories

Before using pkgtool for the first time, one should initialize the Poetry-based virtual environment:

$ poetry install

To start working with pkgtool, one must make mirrors of all the relevant repositories. This can be done by writing:

$ ./pkgtool mirror -c [targets...]

If no targets are specified, all targets supported by your environment will be downloaded. The -c argument removes all outdated/unused packages.

Building packages

Example call:

$ ./pkgtool build wf-tools@x86_64,aarch64 target-wswan-examples 

Building macOS bootstraps

The macOS bootstrap is effectively a self-contained repackagings of a pre-installed wf-pacman package, allowing easy end user installation.

$ ./pkgtool build-bootstrap [targets...]

Installation details

macOS

Installation instructions:

  1. The repository must be installed to /wf. While pkgtool is directory-agnostic, the PKGBUILD scripts are not.
  2. Install build dependencies, best obtained through homebrew, a non-exhaustive list is: cmake meson ninja coreutils

Notes:

  • wf-pacman is built as statically as possible with Apple's clang

License

Unless otherwise specified, the build scripts (config/, packages/) are licensed under Creative Commons 0. I don't see why instructions on building otherwise libre toolchains should be restricted by copyright in any way.

The Python package management tool (tool/) is licensed under the MIT license.

If you'd like to use these scripts and/or tools to build your own repository or toolchain, I'd appreciate it if steps were made to ensure that such toolchains are not misrepresented as my own work.

wonderful-packages's People

Contributors

asiekierka avatar aronson 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.