nicokaiser / hugo-theme-gallery

Gallery Theme for Hugo
https://nicokaiser.github.io/hugo-theme-gallery/
MIT License
305 stars 85 forks source link

Cant find v4 #70

Closed eskopp closed 2 months ago

eskopp commented 2 months ago

PS C:\git\photos\photos> hugo server Hugo provides its own webserver which builds and serves the site. While hugo server is high performance, it is a webserver with limited options.

The hugo server command will by default write and serve files from disk, but you can render to memory by using the --renderToMemory flag. This can be faster in some cases, but it will consume more memory.

By default hugo will also watch your files for any changes you make and automatically rebuild the site. It will then live reload any open browser pages and push the latest content to them. As most Hugo sites are built in a fraction of a second, you will be able to save and see your changes nearly instantly.

Usage: hugo server [command] [flags] hugo server [command]

Aliases: server, serve

Available Commands: trust Install the local CA in the system trust store.

Flags: --appendPort append port to baseURL (default true) -b, --baseURL string hostname (and path) to the root, e.g. https://spf13.com/ --bind string interface to which the server will bind (default "127.0.0.1") -D, --buildDrafts include content marked as draft -E, --buildExpired include expired content -F, --buildFuture include content with publishdate in the future --cacheDir string filesystem path to cache directory --cleanDestinationDir remove files from destination not found in static directories -c, --contentDir string filesystem path to content directory --disableBrowserError do not show build errors in the browser --disableFastRender enables full re-renders on changes --disableKinds strings disable different kind of pages (home, RSS etc.) --disableLiveReload watch without enabling live browser reload on rebuild --enableGitInfo add Git revision, date, author, and CODEOWNERS info to the pages --forceSyncStatic copy all files when static is changed. --gc enable to run some cleanup tasks (remove unused cache files) after the build -h, --help help for server --ignoreCache ignores the cache directory -l, --layoutDir string filesystem path to layout directory --liveReloadPort int port for live reloading (i.e. 443 in HTTPS proxy situations) (default -1) --minify minify any supported output format (HTML, XML etc.) -N, --navigateToChanged navigate to changed content file on live browser reload --noBuildLock don't create .hugo_build.lock file --noChmod don't sync permission mode of files --noHTTPCache prevent HTTP caching --noTimes don't sync modification time of files --panicOnWarning panic on first WARNING log --poll string set this to a poll interval, e.g --poll 700ms, to use a poll based approach to watch for file system changes -p, --port int port on which the server will listen (default 1313) --pprof enable the pprof server (port 8080) --printI18nWarnings print missing translations --printMemoryUsage print memory usage to screen at intervals --printPathWarnings print warnings on duplicate target paths etc. --printUnusedTemplates print warnings on unused templates. --renderSegments strings named segments to render (configured in the segments config) --renderStaticToDisk serve static files from disk and dynamic files from memory --templateMetrics display metrics about template executions --templateMetricsHints calculate some improvement hints when combined with --templateMetrics -t, --theme strings themes to use (located in /themes/THEMENAME/) --tlsAuto generate and use locally-trusted certificates. --tlsCertFile string path to TLS certificate file --tlsKeyFile string path to TLS key file --trace file write trace to file (not useful in general) -w, --watch watch filesystem for changes and recreate as needed (default true)

Global Flags: --clock string set the clock used by Hugo, e.g. --clock 2021-11-06T22:30:00.00+09:00 --config string config file (default is hugo.yaml|json|toml) --configDir string config dir (default "config") --debug debug output -d, --destination string filesystem path to write files to -e, --environment string build environment --ignoreVendorPaths string ignores any _vendor for module paths matching the given Glob pattern --logLevel string log level (debug|info|warn|error) --quiet build in quiet mode -M, --renderToMemory render to memory (mostly useful when running the server) -s, --source string filesystem path to read files relative from --themesDir string filesystem path to themes directory -v, --verbose verbose output

Use "hugo server [command] --help" for more information about a command.

Error: command error: failed to load modules: module "github.com/nicokaiser/hugo-theme-gallery/v4" not found in "C:\git\photos\photos\themes\github.com\nicokaiser\hugo-theme-gallery\v4"; either add it as a Hugo Module or store it in "C:\git\photos\photos\themes".: module does not exist PS C:\git\photos\photos>

nicokaiser commented 2 months ago

What version of Hugo do you use? How does your hugo.toml look like?

eskopp commented 2 months ago

What version of Hugo do you use? How does your hugo.toml look like?

PS C:\Users\eskopp> hugo version hugo v0.126.2-8f3d902ce51512931f5759e9279d93e346c9e649 windows/amd64 BuildDate=2024-05-30T15:19:22Z VendorInfo=gohugoio

baseURL = 'https://example.org/'
languageCode = 'en-us'
title = 'My New Hugo Site'
name = "Gallery"
license = "MIT"
licenselink = "https://github.com/nicokaiser/hugo-theme-gallery/blob/main/LICENSE"
description = "A very simple and opinionated photo gallery theme for Hugo"
homepage = "https://github.com/nicokaiser/hugo-theme-gallery"
demosite = "https://nicokaiser.github.io/hugo-theme-gallery/"
tags = ["gallery", "responsive", "minimal", "dark"]
min_version = "0.121.2"
theme = "hugo-theme-gallery"
[author]
  name = "Nico Kaiser"
  homepage = "https://kaiser.me"
eskopp commented 2 months ago

As soon as you load the template via hugo.toml in the Github repo, it does not find version v4. This is also the case when you open the link. GitHub only responds with a 404. Could you please have a look or am I doing something fundamentally wrong. I really like your template and would like to use it. Switching to Hugo extend didn't help either.

eskopp commented 2 months ago
[module]
  [module.hugoVersion]
    min = "0.121.2"
  [[module.imports]]
    path = "github.com/nicokaiser/hugo-theme-gallery/v4"

https://github.com/nicokaiser/hugo-theme-gallery/v4 --> 404

nicokaiser commented 2 months ago

Yes, github.com/nicokaiser/hugo-theme-gallery/v4 is not a URL, it's a module name.

Did you do hugo mod init github.com/<your_user>/<your_project> (e.g. hugo mod init example.com) before creating hugo.toml? You need to do that before creating hugo.toml (or create go.mod manually).

eskopp commented 2 months ago

Hi, I seem to have made a fundamental error somewhere. Here is my "workflow". Where am I doing something wrong? I am not doing hugo mod init. To be honest, I don't know when and where either.

  1. create an empty Git repo
  2. hugo new site photos
  3. create submodule
  4. copy example site
  5. download images via sh script
  6. customize toml
  7. hugo server

Where am I going wrong here? Unfortunately I am not familiar with Hugo.

nicokaiser commented 2 months ago

Please try to add a go.mod with this content:

module example.com

go 1.22.4

require github.com/nicokaiser/hugo-theme-gallery/v4 v4.1.11 // indirect

(You can replace example.com with your site's name)

eskopp commented 2 months ago

Creating the file and then running hugo server again helps. I did not create the file in the git root folder but in the root folder of the Hugo project. I would like to thank you very much