baya — FabricStudio, self-hosted
Installs and operates FabricStudio on your own Linux server: one command brings up the whole platform, and each engineer works in their own workspace, on their own home directory, signed in through a browser.
Published as bayafs; the command is baya.
Requirements
- Linux x86-64 — RHEL/Oracle 9, Debian 13, Ubuntu 22.04+, or SLES 15
- 4+ CPUs, 16 GB+ RAM, 100 GB+ free disk
- Python 3.9 or newer
- root: the installer manages docker, Kubernetes, and ports 80/443
- Inbound 80 and 443 from your users; outbound HTTPS to Baya and to Google Artifact Registry
- A licence key from Baya
Install
sudo python3 -m venv /opt/baya
sudo /opt/baya/bin/pip install bayafs
sudo ln -sf /opt/baya/bin/baya /usr/local/bin/baya
sudo baya doctor # check this host first; every failure names its fix
sudo baya license set <licence-key>
sudo baya storage set --base /home # where your engineers' home directories live
sudo baya init --hostname fs.yourcompany.com
A virtual environment rather than a plain pip install: several distributions mark their
system Python externally managed and refuse, and a user-level install puts baya where
sudo cannot see it.
init installs what is missing, starts a single-node Kubernetes cluster, pulls the images
your licence entitles you to, and brings up the platform — about ten minutes. It is safe to
re-run: a failed step resumes rather than repeats.
--hostname is the address your users will type. It goes into the certificate, the login
redirect, and the tokens, so changing it later means re-running init.
Give people access
sudo baya user map alice@yourcompany.com --linux-user alice --name "Alice Chen"
sudo baya verify
user map binds a login to a local account and starts that person's workspace on their
real home directory — files their designs produce are owned by them, exactly as if they
had run the tools from a shell. The account must already exist and own that directory, or
the mapping is refused rather than half-applied.
It also creates the account they sign in with, printing a one-time password unless you pass
--password.
verify proves the install works end to end — every service, the TLS front door, the login
page, the identity provider, and each person's workspace — and names the command to run for
anything that does not.
Then open https://<hostname> and sign in. The certificate is self-signed until you supply
your own, so browsers will warn.
Everyday commands
sudo baya status # version, health, licence, storage
sudo baya verify # end-to-end check; run it after every change
sudo baya user list # every mapping and the state of its workspace
sudo baya user describe <email> # one mapping, re-verified against the filesystem
sudo baya storage describe # the base, its filesystem, and every mapping
sudo baya release list # versions your licence allows
sudo baya start | stop | restart # the whole install
sudo baya uninstall --yes # removes the install; never touches your users' files
sudo baya selftest runs an offline check of the tool itself, with no cluster and no
credential — safe to run any time, including before you have a licence key.
Not yet available
These are specified and coming; this release does not have them:
baya idp add— federate your own identity provider (Entra, Google, GitHub, OIDC). Until then, sign-in accounts are held by the bundled Keycloak and created byuser map.baya tls set— install your own certificate. Until then the self-signed certificate generated at install is what browsers see.baya update/baya rollback— move between versions.baya workspace— per-engineer pod operations.baya logs— service logs withoutkubectl.baya support-bundle— a redacted diagnostic bundle for Baya.
Licensed software. baya itself is freely installable; running FabricStudio requires a
licence key issued by Baya Systems.
Metadata
Release files for bayafs 0.1.2
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| bayafs-0.1.2.tar.gz | 57.1 kB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| bayafs-0.1.2-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 118.9 kB
Release files / bayafs-0.1.2.tar.gz
| Download URL | bayafs-0.1.2.tar.gz |
|---|---|
| Size | 57.1 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
5873e9321404b641a916193c613281d35b57e96cdb4951c4a91994228c01639e
|
|
BLAKE2b-256 checksum How to use checksums |
d8eb7d6cbe03641253dc67b8b2b83edd4c26b451f9c3ac25a8c45d0429e50096
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
uv/0.11.3 {"installer":{"name":"uv","version":"0.11.3","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"macOS","version":null,"id":null,"libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":null}
|
Release files / bayafs-0.1.2-py3-none-any.whl
| Download URL | bayafs-0.1.2-py3-none-any.whl |
|---|---|
| Size | 61.8 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
41d95c61aeb4746b77083d2f4ef62832832ccf6c2d45c4b90ac1895dc8ea55c1
|
|
BLAKE2b-256 checksum How to use checksums |
949366c4dc7f72bdd96fd047b4a37b19f8473fdd4aa1752885a575eff2396468
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
uv/0.11.3 {"installer":{"name":"uv","version":"0.11.3","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"macOS","version":null,"id":null,"libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":null}
|