Commit Diff


commit - 92af1ef1f33a75bd51db9842a760bd228f3b1a61
commit + 24a58b81d73f151c7ba7236890a6e13aea9f0c78
blob - 74c69e206dc9bbc0ee6070b505d36387d8c53c07
blob + 831bfad5f935135afedacb20444085599ba04f44
--- .gitignore
+++ .gitignore
@@ -2,3 +2,7 @@
 .idea
 slides_ed25519
 slides_ed25519.pub
+
+# Nix
+/result
+/result-*
blob - /dev/null
blob + 414b47485cd1dd7b5abd7ed0dd81a78047a21d56 (mode 644)
--- /dev/null
+++ flake.lock
@@ -0,0 +1,61 @@
+{
+  "nodes": {
+    "flake-utils": {
+      "inputs": {
+        "systems": "systems"
+      },
+      "locked": {
+        "lastModified": 1731533236,
+        "narHash": "sha256-l0KFg5HjrsfsO/JpG+r7fRrqm12kzFHyUHqHCVpMMbI=",
+        "owner": "numtide",
+        "repo": "flake-utils",
+        "rev": "11707dc2f618dd54ca8739b309ec4fc024de578b",
+        "type": "github"
+      },
+      "original": {
+        "owner": "numtide",
+        "repo": "flake-utils",
+        "type": "github"
+      }
+    },
+    "nixpkgs": {
+      "locked": {
+        "lastModified": 1785318670,
+        "narHash": "sha256-dN6Ou5x/+23FZLEpYP3IffO+NyJFzUlGumt1uu3MMaY=",
+        "owner": "NixOS",
+        "repo": "nixpkgs",
+        "rev": "0954f7ee2f6bb3dc7d4e3d0d8bcb8fd4bde4cfc5",
+        "type": "github"
+      },
+      "original": {
+        "owner": "NixOS",
+        "ref": "nixos-unstable",
+        "repo": "nixpkgs",
+        "type": "github"
+      }
+    },
+    "root": {
+      "inputs": {
+        "flake-utils": "flake-utils",
+        "nixpkgs": "nixpkgs"
+      }
+    },
+    "systems": {
+      "locked": {
+        "lastModified": 1681028828,
+        "narHash": "sha256-Vy1rq5AaRuLzOxct8nz4T6wlgyUR7zLU309k9mBC768=",
+        "owner": "nix-systems",
+        "repo": "default",
+        "rev": "da67096a3b9bf56a91d16901293e51ba5b49a27e",
+        "type": "github"
+      },
+      "original": {
+        "owner": "nix-systems",
+        "repo": "default",
+        "type": "github"
+      }
+    }
+  },
+  "root": "root",
+  "version": 7
+}
blob - /dev/null
blob + dcd4bd8e62ea96f342caf48af330a34494b40503 (mode 644)
--- /dev/null
+++ flake.nix
@@ -0,0 +1,57 @@
+{
+  description = "slides (fork adaptado: LaTeX, imágenes e imágenes con pie de foto, bibliografía)";
+
+  inputs = {
+    nixpkgs.url = "github:NixOS/nixpkgs/nixos-unstable";
+    flake-utils.url = "github:numtide/flake-utils";
+  };
+
+  outputs =
+    { self, nixpkgs, flake-utils, ... }:
+    flake-utils.lib.eachDefaultSystem (
+      system:
+      let
+        pkgs = import nixpkgs { inherit system; };
+      in
+      {
+        devShells.default = pkgs.mkShell {
+          packages = with pkgs; [
+            go
+            gopls
+            gotools
+            go-tools # staticcheck
+            delve
+
+            # LaTeX -> PNG pipeline
+            tectonic
+            ghostscript
+            imagemagick
+
+            # comodidad
+            git
+          ];
+
+          shellHook = ''
+            export GOFLAGS="-mod=mod"
+          '';
+        };
+
+        packages.default = pkgs.buildGoModule {
+          pname = "slides";
+          version = "dev";
+          src = self;
+
+          vendorHash = "sha256-ULF6zzg1fY0xW4eUOC452XlnG3/Pxm+H9thyZO2OtDc=";
+
+          # Los tests que ejecutan procesos externos (tectonic, gs) se
+          # excluyen del build sandboxeado de Nix.
+          checkFlags = [ "-short" ];
+
+          meta = {
+            description = "Terminal slides, fork personal con soporte de LaTeX/imágenes/bibliografía";
+            mainProgram = "slides";
+          };
+        };
+      }
+    );
+}