A flake for simplifying installation of the released encore binaries on nix systems.
Try it out by simply running
$ nix run github:encoredev/encore-flake
Add as an input in your nix configuration flake
{
inputs = {
# other inputs...
encore = {
url = "github:encoredev/encore-flake";
# optional
inputs.nixpkgs.follows = "nixpkgs";
};
};
}
Import encore.packages.default
into your nixos configuration
# Home manager
home.packages = [
inputs.encore.packages.${pkgs.system}.encore
];
# NixOS configuration
environment.systemPackages = [
inputs.encore.packages.${pkgs.system}.encore
];
Add a flake.nix
file in to your Encore project folder and include encore
in the available command line tools for that project/folder using the outputs
function.
{
inputs = {
nixpkgs.url = "github:nixos/nixpkgs?ref=nixos-unstable";
flake-utils.url = "github:numtide/flake-utils"
encore = {
url = "github:encoredev/encore-flake";
# optional
inputs.nixpkgs.follows = "nixpkgs";
};
# other inputs...
};
outputs = { self, nixpkgs, flake-utils, encore, ... }:
flake-utils.lib.eachDefaultSystem (system:
let
pkgs = import nixpkgs { inherit system; };
encorePkg = encore.packages.${system}.default;
in {
devShells.default = pkgs.mkShell {
buildInputs = with pkgs; [
encorePkg
git
go
# other outputs...
];
};
});
}
then run nix develop
from the project folder to enter the development shell for your project that will now include the encore
CLI in the tool chain.
Import encore.homeModules.default
into your home manager config
imports = [
inputs.encore.homeModules.default
];
and use the programs.encore
options
{
programs.encore = {
enable = true;
settings = {
browser = "never";
};
};
}
You can then keep it up to date by running
$ nix flake update encore