diff --git a/Makefile b/Makefile index 88afe1d..8d34c27 100644 --- a/Makefile +++ b/Makefile @@ -1,20 +1,22 @@ -default: _site - $(eval TMP := $(shell mktemp)) - cp _site/vercel.json $(TMP) +default: bundle exec jekyll build - mv $(TMP) _site/vercel.json serve: - bundle exec jekyll serve --port 3000 + bundle exec jekyll serve --port 3000 --livereload dependencies: gem install jekyll +cloudflare: + sudo gem install bundler + bundle config path vendor/bundle + bundle install + bundle exec jekyll build + svgs: scripts/cleanup-svgs.sh assets/images/*.svg -publish: - bundle exec jekyll build - vercel --prod +publish: default + wrangler deploy -.PHONY: publish +.PHONY: default publish diff --git a/_config.yml b/_config.yml index 580d703..722547b 100644 --- a/_config.yml +++ b/_config.yml @@ -24,3 +24,5 @@ exclude: - LICENSE - flake.* - README.md +include: + - _redirects diff --git a/_redirects b/_redirects new file mode 100644 index 0000000..bfe19db --- /dev/null +++ b/_redirects @@ -0,0 +1,5 @@ +/apt https://files.radicle.xyz/apt +/apt/* https://files.radicle.xyz/apt/:splat + +/desktop https://desktop.radicle.xyz +/desktop/* https://desktop.radicle.xyz/:splat diff --git a/flake.nix b/flake.nix index 26cc1db..cb55d7a 100644 --- a/flake.nix +++ b/flake.nix @@ -25,39 +25,42 @@ flake-utils.lib.eachDefaultSystem (system: let pkgs = import nixpkgs { inherit system; - overlays = [ ruby-nix.overlays.ruby ]; + overlays = [ruby-nix.overlays.ruby]; }; rubyNix = ruby-nix.lib pkgs; - bundixcli = bundix.packages.${system}.default; + bundixcli = bundix.packages.${system}.default; - deps = with pkgs; [ env ruby bundixcli nodePackages.vercel ]; + deps = with pkgs; [env ruby bundixcli wrangler]; - inherit (rubyNix { - name = "seroperson.gitlab.io"; - gemset = ./gemset.nix; - gemConfig = pkgs.defaultGemConfig; - }) - env ruby; + inherit + (rubyNix { + name = "seroperson.gitlab.io"; + gemset = ./gemset.nix; + gemConfig = pkgs.defaultGemConfig; + }) + env + ruby + ; in { packages = let bundlecli = pkgs.writeShellApplication { name = "bundle"; runtimeInputs = deps; text = '' - export BUNDLE_PATH=vendor/bundle - bundle "$@" - ''; + export BUNDLE_PATH=vendor/bundle + bundle "$@" + ''; }; jekyll = pkgs.writeShellApplication { name = "jekyll"; runtimeInputs = deps; text = '' - if [ $# -eq 0 ]; then - jekyll build - else - jekyll "$@" - fi - ''; + if [ $# -eq 0 ]; then + jekyll build + else + jekyll "$@" + fi + ''; }; in { jekyll = jekyll; @@ -68,9 +71,9 @@ devShells.default = pkgs.mkShell { shellHook = '' - export BUNDLE_PATH=vendor/bundle - ''; + export BUNDLE_PATH=vendor/bundle + ''; buildInputs = deps; - }; - }); + }; + }); } diff --git a/_site/vercel.json b/vercel.json similarity index 100% rename from _site/vercel.json rename to vercel.json diff --git a/wrangler.toml b/wrangler.toml new file mode 100644 index 0000000..f2d73af --- /dev/null +++ b/wrangler.toml @@ -0,0 +1,8 @@ +name = "website" +compatibility_date = "2025-01-01" +account_id = "dcd58b4607e42dafa1592d13077a60bc" + +[assets] +directory = "_site" +html_handling = "drop-trailing-slash" +not_found_handling = "404-page"