Add flake files

This commit is contained in:
Arnaud 2026-01-12 18:50:30 +04:00
commit 832f38ef9f
No known key found for this signature in database
GPG Key ID: 20E40A5D3110766F
2 changed files with 476 additions and 0 deletions

403
flake.lock generated Normal file
View File

@ -0,0 +1,403 @@
{
"nodes": {
"circom-compat": {
"inputs": {
"nixpkgs": [
"logos-storage-module",
"logos-storage",
"nixpkgs"
]
},
"locked": {
"lastModified": 1736521871,
"narHash": "sha256-d34XNLg9NGPEOARHW+BIOAWalkHdEUAwsv3mpLZQxds=",
"owner": "logos-storage",
"repo": "circom-compat-ffi",
"rev": "8cd4ed44fdafe59d4ec1184420639cae4c4dbab9",
"type": "github"
},
"original": {
"owner": "logos-storage",
"repo": "circom-compat-ffi",
"type": "github"
}
},
"logos-capability-module": {
"inputs": {
"logos-cpp-sdk": "logos-cpp-sdk",
"logos-liblogos": "logos-liblogos",
"nixpkgs": [
"logos-capability-module",
"logos-liblogos",
"nixpkgs"
]
},
"locked": {
"lastModified": 1767809111,
"narHash": "sha256-jehjsB+BpDJlVu3I7x+vFVOdXmy9MDmFTJtRqzFUONo=",
"owner": "logos-co",
"repo": "logos-capability-module",
"rev": "7b35383e0aa4e28a4633ed18a87efb57636939b1",
"type": "github"
},
"original": {
"owner": "logos-co",
"repo": "logos-capability-module",
"type": "github"
}
},
"logos-cpp-sdk": {
"inputs": {
"nixpkgs": "nixpkgs"
},
"locked": {
"lastModified": 1761230734,
"narHash": "sha256-CMRUwXH7pJZ1OI6bd/TDDDXKqQ1tQZHQEOOwK8TgYHI=",
"owner": "logos-co",
"repo": "logos-cpp-sdk",
"rev": "4b143922c190df00bb3835441c9f0075cb28283b",
"type": "github"
},
"original": {
"owner": "logos-co",
"repo": "logos-cpp-sdk",
"type": "github"
}
},
"logos-cpp-sdk_2": {
"inputs": {
"nixpkgs": "nixpkgs_2"
},
"locked": {
"lastModified": 1761230734,
"narHash": "sha256-CMRUwXH7pJZ1OI6bd/TDDDXKqQ1tQZHQEOOwK8TgYHI=",
"owner": "logos-co",
"repo": "logos-cpp-sdk",
"rev": "4b143922c190df00bb3835441c9f0075cb28283b",
"type": "github"
},
"original": {
"owner": "logos-co",
"repo": "logos-cpp-sdk",
"type": "github"
}
},
"logos-cpp-sdk_3": {
"inputs": {
"nixpkgs": "nixpkgs_3"
},
"locked": {
"lastModified": 1767724329,
"narHash": "sha256-UPkqxqxbKwU5Dmu00TnjiJVXUmfVylF3p1qziEuYwIE=",
"owner": "logos-co",
"repo": "logos-cpp-sdk",
"rev": "32f1d7080d784ff044d91d076ef2f0c7305d4784",
"type": "github"
},
"original": {
"owner": "logos-co",
"repo": "logos-cpp-sdk",
"type": "github"
}
},
"logos-cpp-sdk_4": {
"inputs": {
"nixpkgs": "nixpkgs_4"
},
"locked": {
"lastModified": 1764699992,
"narHash": "sha256-nCmK9C9F31cHvy6lWKR5WGl99aJbS3kIsROAoZ4OrwI=",
"owner": "logos-co",
"repo": "logos-cpp-sdk",
"rev": "5d0bbd0d1e00aad0532ffa7c8bf2c80f460a4f6d",
"type": "github"
},
"original": {
"owner": "logos-co",
"repo": "logos-cpp-sdk",
"type": "github"
}
},
"logos-cpp-sdk_5": {
"inputs": {
"nixpkgs": "nixpkgs_5"
},
"locked": {
"lastModified": 1767724329,
"narHash": "sha256-UPkqxqxbKwU5Dmu00TnjiJVXUmfVylF3p1qziEuYwIE=",
"owner": "logos-co",
"repo": "logos-cpp-sdk",
"rev": "32f1d7080d784ff044d91d076ef2f0c7305d4784",
"type": "github"
},
"original": {
"owner": "logos-co",
"repo": "logos-cpp-sdk",
"type": "github"
}
},
"logos-cpp-sdk_6": {
"inputs": {
"nixpkgs": "nixpkgs_6"
},
"locked": {
"lastModified": 1764699992,
"narHash": "sha256-nCmK9C9F31cHvy6lWKR5WGl99aJbS3kIsROAoZ4OrwI=",
"owner": "logos-co",
"repo": "logos-cpp-sdk",
"rev": "5d0bbd0d1e00aad0532ffa7c8bf2c80f460a4f6d",
"type": "github"
},
"original": {
"owner": "logos-co",
"repo": "logos-cpp-sdk",
"type": "github"
}
},
"logos-liblogos": {
"inputs": {
"logos-cpp-sdk": "logos-cpp-sdk_2",
"nixpkgs": [
"logos-capability-module",
"logos-liblogos",
"logos-cpp-sdk",
"nixpkgs"
]
},
"locked": {
"lastModified": 1761845775,
"narHash": "sha256-ulK8xq05ejK6qIgZ7WtWb/MJt2rk5BKfDA2z7mM3wq8=",
"owner": "logos-co",
"repo": "logos-liblogos",
"rev": "a92c2c1268bc70764c8f73c7bce07d21024f5af9",
"type": "github"
},
"original": {
"owner": "logos-co",
"repo": "logos-liblogos",
"type": "github"
}
},
"logos-liblogos_2": {
"inputs": {
"logos-cpp-sdk": "logos-cpp-sdk_4",
"nixpkgs": [
"logos-liblogos",
"logos-cpp-sdk",
"nixpkgs"
]
},
"locked": {
"lastModified": 1767958628,
"narHash": "sha256-Agm3BVWA+2ERuEGBu4SR2zexKeQCZMFYPumMAIbaBrQ=",
"owner": "logos-co",
"repo": "logos-liblogos",
"rev": "7aa17f65c60a64a2139fe81f0f0ad39cf2be49d0",
"type": "github"
},
"original": {
"owner": "logos-co",
"ref": "fix/logos-cleanup-on-terminate",
"repo": "logos-liblogos",
"type": "github"
}
},
"logos-liblogos_3": {
"inputs": {
"logos-cpp-sdk": "logos-cpp-sdk_6",
"nixpkgs": [
"logos-storage-module",
"logos-liblogos",
"logos-cpp-sdk",
"nixpkgs"
]
},
"locked": {
"lastModified": 1767722338,
"narHash": "sha256-89RYfnramvJRufy47Kdx662TMHaFVSpS88ouWff3Csw=",
"owner": "logos-co",
"repo": "logos-liblogos",
"rev": "ca1fda7cabd70027e51d86392f5e29b3fff385f9",
"type": "github"
},
"original": {
"owner": "logos-co",
"repo": "logos-liblogos",
"type": "github"
}
},
"logos-storage": {
"inputs": {
"circom-compat": "circom-compat",
"nixpkgs": "nixpkgs_7"
},
"locked": {
"lastModified": 1768225619,
"narHash": "sha256-PcHrim74Rnp6hnzWEEzOsJkBvswp/6p6x17ySb6nIjQ=",
"ref": "fix/close-discovery-store",
"rev": "8f11914e5750e2c39d0c65322249b551a7252ee9",
"revCount": 869,
"submodules": true,
"type": "git",
"url": "https://github.com/logos-storage/logos-storage-nim"
},
"original": {
"ref": "fix/close-discovery-store",
"submodules": true,
"type": "git",
"url": "https://github.com/logos-storage/logos-storage-nim"
}
},
"logos-storage-module": {
"inputs": {
"logos-cpp-sdk": "logos-cpp-sdk_5",
"logos-liblogos": "logos-liblogos_3",
"logos-storage": "logos-storage",
"nixpkgs": [
"logos-storage-module",
"logos-liblogos",
"nixpkgs"
]
},
"locked": {
"lastModified": 1768228023,
"narHash": "sha256-1Z3iaJOeT2eZ6HqxWUhwWf5j+6UBbFOLFTAvIJd3FLs=",
"owner": "logos-co",
"repo": "logos-storage-module",
"rev": "2284d2d35d12bf5df9fbc53ae0db8107767d603e",
"type": "github"
},
"original": {
"owner": "logos-co",
"repo": "logos-storage-module",
"type": "github"
}
},
"nixpkgs": {
"locked": {
"lastModified": 1759036355,
"narHash": "sha256-0m27AKv6ka+q270dw48KflE0LwQYrO7Fm4/2//KCVWg=",
"owner": "NixOS",
"repo": "nixpkgs",
"rev": "e9f00bd893984bc8ce46c895c3bf7cac95331127",
"type": "github"
},
"original": {
"owner": "NixOS",
"ref": "nixos-unstable",
"repo": "nixpkgs",
"type": "github"
}
},
"nixpkgs_2": {
"locked": {
"lastModified": 1759036355,
"narHash": "sha256-0m27AKv6ka+q270dw48KflE0LwQYrO7Fm4/2//KCVWg=",
"owner": "NixOS",
"repo": "nixpkgs",
"rev": "e9f00bd893984bc8ce46c895c3bf7cac95331127",
"type": "github"
},
"original": {
"owner": "NixOS",
"ref": "nixos-unstable",
"repo": "nixpkgs",
"type": "github"
}
},
"nixpkgs_3": {
"locked": {
"lastModified": 1759036355,
"narHash": "sha256-0m27AKv6ka+q270dw48KflE0LwQYrO7Fm4/2//KCVWg=",
"owner": "NixOS",
"repo": "nixpkgs",
"rev": "e9f00bd893984bc8ce46c895c3bf7cac95331127",
"type": "github"
},
"original": {
"owner": "NixOS",
"ref": "nixos-unstable",
"repo": "nixpkgs",
"type": "github"
}
},
"nixpkgs_4": {
"locked": {
"lastModified": 1759036355,
"narHash": "sha256-0m27AKv6ka+q270dw48KflE0LwQYrO7Fm4/2//KCVWg=",
"owner": "NixOS",
"repo": "nixpkgs",
"rev": "e9f00bd893984bc8ce46c895c3bf7cac95331127",
"type": "github"
},
"original": {
"owner": "NixOS",
"ref": "nixos-unstable",
"repo": "nixpkgs",
"type": "github"
}
},
"nixpkgs_5": {
"locked": {
"lastModified": 1759036355,
"narHash": "sha256-0m27AKv6ka+q270dw48KflE0LwQYrO7Fm4/2//KCVWg=",
"owner": "NixOS",
"repo": "nixpkgs",
"rev": "e9f00bd893984bc8ce46c895c3bf7cac95331127",
"type": "github"
},
"original": {
"owner": "NixOS",
"ref": "nixos-unstable",
"repo": "nixpkgs",
"type": "github"
}
},
"nixpkgs_6": {
"locked": {
"lastModified": 1759036355,
"narHash": "sha256-0m27AKv6ka+q270dw48KflE0LwQYrO7Fm4/2//KCVWg=",
"owner": "NixOS",
"repo": "nixpkgs",
"rev": "e9f00bd893984bc8ce46c895c3bf7cac95331127",
"type": "github"
},
"original": {
"owner": "NixOS",
"ref": "nixos-unstable",
"repo": "nixpkgs",
"type": "github"
}
},
"nixpkgs_7": {
"locked": {
"lastModified": 1736200483,
"narHash": "sha256-JO+lFN2HsCwSLMUWXHeOad6QUxOuwe9UOAF/iSl1J4I=",
"owner": "NixOS",
"repo": "nixpkgs",
"rev": "3f0a8ac25fb674611b98089ca3a5dd6480175751",
"type": "github"
},
"original": {
"owner": "NixOS",
"ref": "nixos-24.11",
"repo": "nixpkgs",
"type": "github"
}
},
"root": {
"inputs": {
"logos-capability-module": "logos-capability-module",
"logos-cpp-sdk": "logos-cpp-sdk_3",
"logos-liblogos": "logos-liblogos_2",
"logos-storage-module": "logos-storage-module",
"nixpkgs": [
"logos-liblogos",
"nixpkgs"
]
}
}
},
"root": "root",
"version": 7
}

73
flake.nix Normal file
View File

@ -0,0 +1,73 @@
{
description = "Logos Storage UI - A Qt UI app for Logos Storage";
inputs = {
# Follow the same nixpkgs as logos-liblogos to ensure compatibility
nixpkgs.follows = "logos-liblogos/nixpkgs";
logos-cpp-sdk.url = "github:logos-co/logos-cpp-sdk";
logos-liblogos.url = "github:logos-co/logos-liblogos?ref=fix/logos-cleanup-on-terminate";
logos-storage-module.url = "github:logos-co/logos-storage-module";
logos-capability-module.url = "github:logos-co/logos-capability-module";
};
outputs = { self, nixpkgs, logos-cpp-sdk, logos-liblogos, logos-storage-module, logos-capability-module }:
let
systems = [ "aarch64-darwin" "x86_64-darwin" "aarch64-linux" "x86_64-linux" ];
forAllSystems = f: nixpkgs.lib.genAttrs systems (system: f {
pkgs = import nixpkgs { inherit system; };
logosSdk = logos-cpp-sdk.packages.${system}.default;
logosLiblogos = logos-liblogos.packages.${system}.default;
logosStorageModule = logos-storage-module.packages.${system}.default;
logosCapabilityModule = logos-capability-module.packages.${system}.default;
});
in
{
packages = forAllSystems ({ pkgs, logosSdk, logosLiblogos, logosStorageModule, logosCapabilityModule }:
let
# Common configuration
common = import ./nix/default.nix {
inherit pkgs logosSdk logosLiblogos;
};
src = ./.;
# App package
app = import ./nix/app.nix {
inherit pkgs common src logosLiblogos logosSdk logosStorageModule logosCapabilityModule;
logosStorageUI = lib;
};
in
{
# Individual outputs
app = app;
# Default package
default = app;
}
);
devShells = forAllSystems ({ pkgs, logosSdk, logosLiblogos, logosStorageModule, logosCapabilityModule }: {
default = pkgs.mkShell {
nativeBuildInputs = [
pkgs.cmake
pkgs.ninja
pkgs.pkg-config
];
buildInputs = [
pkgs.qt6.qtbase
pkgs.qt6.qtremoteobjects
pkgs.zstd
pkgs.krb5
pkgs.abseil-cpp
];
shellHook = ''
export LOGOS_CPP_SDK_ROOT="${logosSdk}"
export LOGOS_LIBLOGOS_ROOT="${logosLiblogos}"
echo "Logos Storage UI development environment"
echo "LOGOS_CPP_SDK_ROOT: $LOGOS_CPP_SDK_ROOT"
echo "LOGOS_LIBLOGOS_ROOT: $LOGOS_LIBLOGOS_ROOT"
'';
};
});
};
}