2023-12-30 18:27:23 +00:00
|
|
|
{
|
|
|
|
description = "A site in nix?";
|
|
|
|
|
2024-01-02 10:53:45 +00:00
|
|
|
inputs = {tix.url = "git+https://git.tristans.cloud/tristan/tix";};
|
2024-01-02 09:18:30 +00:00
|
|
|
|
2024-01-02 10:53:45 +00:00
|
|
|
outputs = {
|
|
|
|
self,
|
|
|
|
nixpkgs,
|
|
|
|
tix,
|
|
|
|
}: let
|
|
|
|
system = "x86_64-linux";
|
|
|
|
pkgs = import nixpkgs {inherit system;};
|
|
|
|
nixite = import ./nixite/. {inherit pkgs;};
|
|
|
|
in
|
|
|
|
nixite
|
|
|
|
// {
|
2023-12-31 09:28:28 +00:00
|
|
|
packages.${system} = {
|
2024-01-01 06:33:57 +00:00
|
|
|
raw = nixite.mkSite (let
|
2024-01-01 11:12:37 +00:00
|
|
|
readme = {
|
2024-01-01 09:43:52 +00:00
|
|
|
name = "readme";
|
|
|
|
content = nixite.md.mdToPage ./README.md;
|
|
|
|
};
|
2024-01-01 08:10:32 +00:00
|
|
|
markup = {
|
2024-01-02 10:53:45 +00:00
|
|
|
"index.html" = with nixite.elems; let
|
|
|
|
blue = nixite.style.component span "blue" {
|
|
|
|
style = {color = "blue";};
|
|
|
|
};
|
|
|
|
underblue = nixite.style.component blue "under" {
|
|
|
|
style = {text-decoration = "underline";};
|
|
|
|
};
|
|
|
|
in (Doc {} [
|
|
|
|
[(title "Nixite")]
|
|
|
|
(main [
|
|
|
|
(a {href = nixite.site.link readme;} "Readme")
|
|
|
|
(a "/blog" "blog")
|
|
|
|
(List {} ["item 1" "item 2" "item 3"])
|
|
|
|
(p [
|
|
|
|
"check out my"
|
|
|
|
(blue "blue span")
|
|
|
|
"isn't it"
|
|
|
|
(underblue {onclick = "alert(1)";} "great!")
|
2023-12-31 09:28:28 +00:00
|
|
|
])
|
2024-01-02 10:53:45 +00:00
|
|
|
])
|
|
|
|
]);
|
2023-12-31 10:33:05 +00:00
|
|
|
blog = nixite.md.readDir ./testing/blog;
|
2024-01-01 08:10:32 +00:00
|
|
|
};
|
2024-01-02 10:53:45 +00:00
|
|
|
site =
|
|
|
|
nixite.site.prepare {favicon = ./testing/src/favicon.png;}
|
|
|
|
markup;
|
|
|
|
in
|
|
|
|
site);
|
2023-12-31 00:48:19 +00:00
|
|
|
|
2024-01-01 00:04:17 +00:00
|
|
|
default = nixite.serve self.packages.${system}.raw;
|
2023-12-30 18:27:23 +00:00
|
|
|
|
2024-01-02 09:18:30 +00:00
|
|
|
test = tix.run [
|
2024-01-01 06:33:57 +00:00
|
|
|
./testing/md.test.nix
|
2024-01-01 03:20:59 +00:00
|
|
|
./testing/html.test.nix
|
2024-01-01 06:33:57 +00:00
|
|
|
./testing/elems.test.nix
|
|
|
|
./testing/site.test.nix
|
2024-01-01 03:20:59 +00:00
|
|
|
./testing/style.test.nix
|
|
|
|
];
|
2024-01-02 04:01:19 +00:00
|
|
|
|
2024-01-02 10:53:45 +00:00
|
|
|
watch = tix.watch "nix run .#test | ${pkgs.fx}/bin/fx" "fx";
|
2024-01-02 04:01:19 +00:00
|
|
|
|
2024-01-02 09:18:30 +00:00
|
|
|
dev = tix.watch "nix run .# --show-trace" "caddy";
|
2023-12-31 09:28:28 +00:00
|
|
|
};
|
2023-12-30 18:27:23 +00:00
|
|
|
};
|
|
|
|
}
|