8000 GitHub - yuuyins/nix-init: Generate Nix packages from URLs with hash prefetching, dependency inference, license detection, and more [maintainer=@figsoda] · GitHub
[go: up one dir, main page]

Skip to content
  • About

    Generate Nix packages from URLs with hash prefetching, dependency inference, license detection, and more [maintainer=@figsoda]

    Resources

    Stars

    0 stars

    Watchers
    0 watching

    Forks

     
     

    Repository files navigation

    nix-init

    matrix release version deps license ci

    Generate Nix packages from URLs

    Note: It is likely that the generated package will not work without some tweaks, also remember to double check the license and description even if it does work

    • Hash prefetching powered by nurl with support for cargoHash and vendorHash
    • Dependency inference for Rust, Go, and Python projects
    • Interactive prompts with fuzzy tab completions
    • License detection

    Installation

    The latest release of nix-init is packaged in nixpkgs and kept up to date on the unstable branches

    If you want to use a more recent snapshot of nix-init, it is also available as a flake. The following command is equivalent to running nix-init --help:

    nix run github:nix-community/nix-init -- --help

    or if you don't have flakes enabled:

    nix run --extra-experimental-features "flakes nix-command" github:nix-community/nix-init -- --help

    Usage

    Usage: nix-init [OPTIONS] [OUTPUT]
    
    Arguments:
      [OUTPUT]  The path or directory to output the generated file to
    
    Options:
      -u, --url <URL>          Specify the URL
      -n, --nixpkgs <NIXPKGS>  Path to nixpkgs (in nix)
      -c, --config <CONFIG>    Specify the config file
      -h, --help               Print help
      -V, --version            Print version
    

    Supported builders

    • stdenv.mkDerivation
    • buildRustPackage
    • buildPythonApplication and buildPythonPackage
    • buildGoModule

    Supported fetchers

    • fetchCrate
    • fetchFromGitHub
    • fetchFromGitLab
    • fetchFromGitea
    • fetchPypi
    • All other fetchers supported by nurl are also supported, you just have to manually input the tag/revision of the package

    Configuration

    nix-init will try to find nix-init/config.toml under XDG configuration directories

    # ~/.config/nix-init/config.toml
    
    # maintainers that will get added to the package meta
    maintainers = ["figsoda"]
    
    # path to nixpkgs, equivalent to `--nixpkgs`
    nixpkgs = "<nixpkgs>"
    
    # access tokens to access private repositories and avoid rate limits
    [access-tokens]
    "github.com" = "ghp_blahblahblah..."
    "gitlab.com".command = ["secret-tool", "or", "whatever", "you", "use"]
    "gitlab.gnome.org".file = "/path/to/api/token"

    Changelog

    See CHANGELOG.md

    About

    Generate Nix packages from URLs with hash prefetching, dependency inference, license detection, and more [maintainer=@figsoda]

    Resources

    Stars

    0 stars

    Watchers

    0 watching

    Forks

    Releases

    Packages

    Contributors

    Languages

    0