@@ -7,11 +7,19 @@ description: Create a Catalog Store for publishing your own Flox packages
77
88Publishing your own software to your organization's Flox Catalog requires some
99initial setup, but the process is relatively straightforward. Flox supports
10- publishing packages to a Catalog Store, which will exist in an AWS S3 bucket
11- that is managed by your organization. In order to use this bucket to store
12- binaries built with Flox, you will need to set ingress and egress URIs on the
13- catalog using a utility published by Flox. Then, all you need to do to publish
14- your software is to call ` flox publish ` , and Flox will take care of the rest.
10+ publishing packages to a Catalog Store, which can exist in an AWS S3 bucket
11+ or in any S3 compatible service, like [ MinIO] [ minio-s3-compatible ] {: target ="\_ blank"}
12+ or [ Backblaze B2] [ backblaze-b2-cloud-storage ] {: target ="\_ blank"}. (For the
13+ sake of simplicity, this guide focuses on S3, but there are other providers
14+ available if you prefer them to AWS.)
15+
16+ In order to use an S3 bucket to store artifacts built with Flox, you will need
17+ to set ingress and egress URIs on the catalog using a utility published by Flox.
18+ Then, all you need to do to publish your software is to call ` flox publish ` ,
19+ and Flox will take care of the rest.
20+
21+ [ minio-s3-compatible ] : https://min.io/product/s3-compatibility
22+ [ backblaze-b2-cloud-storage ] : https://www.backblaze.com/cloud-storage
1523
1624## Configure an AWS S3 Bucket
1725
@@ -35,18 +43,20 @@ and we'll work with you to get you up and running.
3543[ aws-cli-reference-s3 ] : https://docs.aws.amazon.com/cli/latest/reference/s3/
3644[ aws-s3-api-reference ] : https://docs.aws.amazon.com/AmazonS3/latest/API/Welcome.html
3745
38- ## Ensure the ` nix daemon ` Has Access to the S3 Bucket
46+ ## Ensure the Nix Daemon Has Access to the S3 Bucket
3947
4048As you probably know by now, the underlying technology powering Flox is Nix.
41- Accordingly, we need to take a couple steps to ensure that the ` nix daemon`
49+ Accordingly, we need to take a couple steps to ensure that the Nix daemon
4250has access to the S3 bucket you've just created. To do so,
4351you have a couple of options:
4452
45- 1 . Set ` AWS_ACCESS_KEY_ID ` , ` AWS_SECRET_ACCESS_KEY ` , and, if applicable, ` AWS_SESSION_TOKEN `
46- as environment variables
53+ 1 . Set ` AWS_ACCESS_KEY_ID ` , ` AWS_SECRET_ACCESS_KEY ` , and, if applicable,
54+ ` AWS_SESSION_TOKEN ` as environment variables, both for Flox and for
55+ the daemon itself
47561 . Use the ` aws configure ` command
4857[ as described in the CLI reference] [ aws-cli-configure-command ] {: target ="\_ blank"}
49- to set those same values
58+ to set those same values, and ensure that the AWS profile and region match those
59+ configured for the S3 bucket
5060
5161If you follow the second set of steps, you can confirm that everything is set
5262up correctly by inspecting the values stored in ` $HOME/.aws/credentials ` .
0 commit comments