eea6cd3ffb
* Make the channel importer versions dynamic * few things fromt he list 1. add nixos-org-configurations as input to flake.nix 2. evaluate channels.nix file and export channels via environment variable. that environment variable (lets call it NIXOS_CHANNELS) should be present during the build and inside the nix shell. the content of the variable can be JSON. 3. we pickup the NIXOS_CHANNELS environment variable in frontend/webpack.config.js and pass it further to webpack process, just like we do with ELASTICSEARCH_MAPPING_SCHEMA_VERSION. 4. we forward NIXOS_CHANNELS to Elm via frontend/src/index.js as an Elm application flag. Just like we do with other variables there. * Decode nixosChannels in Elm * Use nixosChannels that came via application flag * read nixos channels in github action * defaultNixOSChannel should be calculated * add two pointers where the check should be added * pass nixosChannels to flake-info and remove title, rather calculate it * Add NixosChannels struct validation and validation Error * Read NIXOS_CHANNEL variable * Check channel * Add channel struct to fix parsing NIXOS_CHANNELS * Use `eachDefaultSystem` instead of listing them manually * Add individual dev shells for frontend and backend * Update .github/workflows/import-to-elasticsearch.yml Co-authored-by: Naïm Favier <n@monade.li> * use both development environments by default (as it was) but still provide devShells for each of the subprojects * pkgs.lib → lib everywhere and define lib = nixpkgs.lib before the call to eachDefaultSystem Also, version = lib.fileContents ./VERSION; * Update flake.nix Co-authored-by: Naïm Favier <n@monade.li> * typo * bumping version to test the changes to import-to-elasticsearch github action * some invisibile characters needed to be removed * typo * will this work * typo * forgot the checkout step * add some debugging * typo * read NIXOS_CHANNELS from environment not via argument * fix for the NIXOS_CHANNELS variable Co-authored-by: Janne Heß <janne@hess.ooo> Co-authored-by: ysndr <me@ysndr.de> Co-authored-by: Naïm Favier <n@monade.li>
40 lines
994 B
Nix
40 lines
994 B
Nix
{ pkgs ? import <nixpkgs> {}
|
|
, nixosChannels ? {}
|
|
}:
|
|
pkgs.rustPlatform.buildRustPackage rec {
|
|
name = "flake-info";
|
|
src = ./.;
|
|
cargoLock = {
|
|
lockFile = ./Cargo.lock;
|
|
outputHashes = {
|
|
"elasticsearch-8.0.0-alpha.1" = "sha256-gjmk3Q3LTAvLhzQ+k1knSp1HBwtqNiubjXNnLy/cS5M=";
|
|
};
|
|
};
|
|
nativeBuildInputs = with pkgs; [ pkg-config ];
|
|
buildInputs =
|
|
with pkgs; [
|
|
openssl
|
|
openssl.dev
|
|
makeWrapper
|
|
] ++ lib.optional pkgs.stdenv.isDarwin [
|
|
libiconv
|
|
darwin.apple_sdk.frameworks.Security
|
|
];
|
|
|
|
checkInputs = with pkgs; [ pandoc ];
|
|
|
|
NIXPKGS_PANDOC_FILTERS_PATH = "${pkgs.path + "/doc/build-aux/pandoc-filters"}";
|
|
|
|
checkFlags = [
|
|
"--skip elastic::tests"
|
|
"--skip nix_gc::tests"
|
|
];
|
|
|
|
postInstall = ''
|
|
wrapProgram $out/bin/flake-info \
|
|
--set NIXPKGS_PANDOC_FILTERS_PATH "${NIXPKGS_PANDOC_FILTERS_PATH}" \
|
|
--set NIXOS_CHANNELS '${builtins.toJSON nixosChannels}' \
|
|
--prefix PATH : ${pkgs.pandoc}/bin
|
|
'';
|
|
}
|