Update for radicle

This commit is contained in:
Aleks Rutins 2025-06-04 16:56:27 -04:00
parent b2c1890de8
commit e316928593
3 changed files with 11 additions and 3 deletions

View file

@ -12,7 +12,7 @@ require_relative "pages/post"
require_relative "pages/gomod" require_relative "pages/gomod"
def go_modules = { def go_modules = {
'farthergate.com/terminated': 'git.farthergate.com/ztYyRKXjvYE5Ri7YjsXf8gGY5cXy' 'farthergate.com/terminated': 'https://git.farthergate.com/ztYyRKXjvYE5Ri7YjsXf8gGY5cXy.git'
} }
Phlexite::Site.new { |s| Phlexite::Site.new { |s|

View file

@ -2,6 +2,12 @@ class Pages::GoMod < ::Phlex::HTML
def initialize(import, repo) def initialize(import, repo)
@import = import @import = import
@repo = repo @repo = repo
@repourl = repo.to_s
if @repourl.start_with?("https://git.farthergate.com")
@repourl = "https://git.farthergate.com/p/rad:" + @repourl.delete_prefix("https://git.farthergate.com/").delete_suffix(".git")
end
end end
def view_template def view_template
render ::Pages::Layout.new({title: @import.to_s}, meta: { render ::Pages::Layout.new({title: @import.to_s}, meta: {
@ -11,7 +17,7 @@ class Pages::GoMod < ::Phlex::HTML
h1 { @import } h1 { @import }
p { p {
plain "This is a generated page to host the Go module located at " plain "This is a generated page to host the Go module located at "
a(href: @repo) { @repo } a(href: @repo) { @repourl }
plain ". You'll probably find more information about it over there." plain ". You'll probably find more information about it over there."
} }
} }

View file

@ -3,6 +3,8 @@ title: Custom import paths for Go modules
published_on: '2025-02-13' published_on: '2025-02-13'
--- ---
*Updated 6/4/2025: Replaced the demo page.*
Go modules are great. URL-based imports, generally, are great. One of the things that makes them so great is that putting them on your own domain provides a good way of verifying ownership without going through a third party or a complicated review process. Plus, it looks cool. Go modules are great. URL-based imports, generally, are great. One of the things that makes them so great is that putting them on your own domain provides a good way of verifying ownership without going through a third party or a complicated review process. Plus, it looks cool.
So, how exactly does one accomplish such a thing? Well, it's [buried in the documentation](https://pkg.go.dev/cmd/go#hdr-Remote_import_paths), but it's really pretty simple. For each import path (e.g. `mysite.com/mypackage`), just put a page on your website with a `go-import` meta tag: So, how exactly does one accomplish such a thing? Well, it's [buried in the documentation](https://pkg.go.dev/cmd/go#hdr-Remote_import_paths), but it's really pretty simple. For each import path (e.g. `mysite.com/mypackage`), just put a page on your website with a `go-import` meta tag:
@ -22,4 +24,4 @@ def go_modules = {
} }
``` ```
See [farthergate.com/stack](/stack) for the generated page. Look in the web inspector for the `meta` tag! See [farthergate.com/terminated](/terminated) for an example of a generated page. Look in the web inspector for the `meta` tag!