Skip to main content

Pixie Fairy - a Pixiecore API companion

Tag and build

Pixiefairy is a companion for pixiecore a tool to manage network booting of machines. Pixiecore in API mode send a request to an external service for each pxe booting event; pixiefairy is that service, answering to api calls and serving the configured info, like the kernel, the initrd and the command line to boot.

Pixiefairy is higly configurable, you can decide which mac-address and which set of parameters to serve to each client.

Installation

Pixiefairy requires python >= 3.9 It's as easy as

pip3 install pixiefairy

Then you will have available the pixiefairy binary

Usage

Pixiefairy can be started using the start command. It requires a config.yaml file with a bunch of defaults in order to know how to serve the requests.

pixiefairy start -c config.yaml

Configuration

An example configuration can be found into examples/config.yaml like

defaults:
  boot:
                # the kernel to boot into
    kernel: "file:///root/vmlinuz-amd64"
    initrd:     # the list of initrd files to load at boot
      - "file:///root/initramfs-amd64.xz"
    message: "" # optional, a boot message
    cmdline: "" # optional, the command line to boot
  net:
    dhcp: true                 # use dhcp or send n ip=.... kernel parameters to configure the network
    gateway: "192.168.1.0"     # the default gateway to send to the requestor
    netmask: "255.255.255.0"   # the netmask to send to requestor
    dns: "8.8.8.8"         # default dns server
    ntp: "192.168.1.0"         # default ntp server
  deny_unknown_clients: false  # either boot unknown clients or boot only the mac address listed in mapping below
mapping:  # optional
  aa:bb:cc:dd:ee:ff:  # the matching mac address
    net: null             # net block, optional, identical to the net block in defaults, override
    boot: null            # boot block, optional, identical to the boot block in defaults, override

Dev Requirements

In order to participate in development you need the following requirements:

And bootstrap the local dev environment with:

just setup

This will setup locally a python virtualenv with all the dependencies, ready to start coding

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

pixiefairy-0.2.1.tar.gz (6.4 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

pixiefairy-0.2.1-py3-none-any.whl (8.2 kB view details)

Uploaded Python 3

File details

Details for the file pixiefairy-0.2.1.tar.gz.

File metadata

  • Download URL: pixiefairy-0.2.1.tar.gz
  • Upload date:
  • Size: 6.4 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/7.0.0 CPython/3.13.14

File hashes

Hashes for pixiefairy-0.2.1.tar.gz
Algorithm Hash digest
SHA256 3c955ea828411ae12d14f76493f461214807baf1903375687e95d762d8e04892
MD5 9a3ef59ba587ea77c4a60839e3d0bc24
BLAKE2b-256 2dc2596cf7127aea933086ddf80492e6c2603bd2f8301c03654652cc8ebf0a3e

See more details on using hashes here.

Provenance

The following attestation bundles were made for pixiefairy-0.2.1.tar.gz:

Publisher: build-image.yaml on mbovo/pixiefairy

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file pixiefairy-0.2.1-py3-none-any.whl.

File metadata

  • Download URL: pixiefairy-0.2.1-py3-none-any.whl
  • Upload date:
  • Size: 8.2 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/7.0.0 CPython/3.13.14

File hashes

Hashes for pixiefairy-0.2.1-py3-none-any.whl
Algorithm Hash digest
SHA256 176520790a53663320528bfb219d3feadc9fd80eaab3893ff77b4d38a225d4fe
MD5 9ad0ae6b24e1ab0772ede5def8e29978
BLAKE2b-256 604954eea30c50c1816646a3bf1ea6cf560d07e60c849ec875ce55e98bc80dd2

See more details on using hashes here.

Provenance

The following attestation bundles were made for pixiefairy-0.2.1-py3-none-any.whl:

Publisher: build-image.yaml on mbovo/pixiefairy

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Release history Release notifications | RSS feed

This release

0.2.1 This release

2 files

0.1.3

2 files

0.1.2

2 files

0.1.1

2 files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page