This commit is contained in:
Pedro Rey Anca 2025-12-15 23:39:39 +01:00
parent 1d48a2a77d
commit a70e52388c
Signed by: peprolinbot
GPG key ID: 053EA6E00116533A
7 changed files with 326 additions and 54 deletions

113
flake.nix
View file

@ -3,62 +3,73 @@
nixpkgs.url = "github:nixos/nixpkgs/nixos-25.11";
};
outputs = {
self,
nixpkgs,
}: let
supportedSystems = [
"x86_64-linux"
];
outputs =
{
self,
nixpkgs,
}:
let
supportedSystems = [
"x86_64-linux"
];
forAllSystems = nixpkgs.lib.genAttrs supportedSystems;
forAllSystems = nixpkgs.lib.genAttrs supportedSystems;
nixpkgsFor = forAllSystems (system: import nixpkgs {inherit system;});
in {
packages = forAllSystems (system: let
pkgs = nixpkgsFor.${system};
src = ./src;
slides = "${src}/slides.md";
presenterm_config = ./presenterm_config.yaml;
in rec {
run-presentation = pkgs.writeShellApplication {
name = "run-presentation";
nixpkgsFor = forAllSystems (system: import nixpkgs { inherit system; });
in
{
packages = forAllSystems (
system:
let
pkgs = nixpkgsFor.${system};
src = ./src;
slides = "${src}/slides.md";
presenterm_config = ./presenterm_config.yaml;
in
rec {
run-presentation = pkgs.writeShellApplication {
name = "run-presentation";
runtimeInputs = with pkgs; [
presenterm
nix # For snippet execution
];
runtimeInputs = with pkgs; [
presenterm
nix # For snippet execution
qrencode
];
text = ''
presenterm -x ${slides} -c ${presenterm_config}
'';
};
text = ''
presenterm -x ${slides} -c ${presenterm_config}
'';
};
run-presentation-kitty = pkgs.writeShellApplication {
name = "run-presentation-kitty";
run-presentation-kitty = pkgs.writeShellApplication {
name = "run-presentation-kitty";
runtimeInputs = [
run-presentation
pkgs.kitty
];
runtimeInputs = [
run-presentation
pkgs.kitty
];
text = ''
kitty --config=NONE run-presentation
'';
};
});
devShells = forAllSystems (
system: let
pkgs = nixpkgsFor.${system};
in {
default = pkgs.mkShell {
buildInputs = with pkgs; [
presenterm
python3Packages.weasyprint
markdown-oxide
];
};
}
);
};
text = ''
kitty --config=NONE run-presentation
'';
};
}
);
devShells = forAllSystems (
system:
let
pkgs = nixpkgsFor.${system};
in
{
default = pkgs.mkShell {
buildInputs = with pkgs; [
presenterm
python3Packages.weasyprint
markdown-oxide
qrencode
];
};
}
);
};
}