~jack/cosmo.nix

Nix helpers for Cosmopolitan Libc
Set up flake, with options for ape-loader
Initial commit

refs

master
browse  log 

clone

read-only
https://git.sr.ht/~jack/cosmo.nix
read/write
git@git.sr.ht:~jack/cosmo.nix

You can also use your local clone with git send-email.

#cosmo.nix

This Nix Flake is about integrating Cosmopolitan Libc, the build-once run-anywhere C library, with Nix.

#Using this Flake

You can build packages directly using nix build in the usual way.

#Integrating with your Flake

Add cosmo-nix to your inputs:

inputs.cosmo-nix = {
  url = "sourcehut:~jack/cosmo.nix";
  inputs.nixpkgs.follows = "nixpkgs";
};

If you use flake-parts and/or Cachix's git-hooks, you should override those inputs too.

We provide nixpkgs Overlays that declare the packages exposed in the .#packages output, and a NixOS Module to configure the APE loader to run αcτµαlly pδrταblε εxεcµταblεs on NixOS.

#Flake Outputs

#Packages

  • packages.aarch64-linux.ape-loader

    APE Loader (AArch64 edition).

  • packages.x86_64-linux.ape-loader

    APE Loader (x86-64 edition).

#Nixpkgs Overlays

  • overlays.default

    All other overlays provided by this flake, merged together.

  • overlays.ape-loader

    Provides the ape-loader package.

#NixOS Modules

  • nixosModules.default

    All other NixOS modules provided by this flake, merged together.

  • nixosModules.ape-loader

    Provides options to register the APE loader with binfmt_misc XOR patch your kernel so it recognises APEs within binfmt_elf.

#Questions?

Do not follow this link