Skip to content

ClemensElflein/openmower.de

Repository files navigation

openmower.de


This is the source code for the openmower.de website.




If you find some issues with the documentation or want to add to it, please fork this repo and open a pull request.
It's a good idea to tell us that you are working on some part of the website. This maximises the chance, that your changes will be merged to the website.







Running the website on OpenMowerOS

Since OpenMowerOS already ships with the container engine Podman it is very easy to use deploy a container here.

  • ssh as the openmower user into your mower and then clone this repo:

    cd ~/
    git clone --depth=1 https://github.com/ClemensElflein/openmower.de
    cd ~/openmower.de/
  • Build the container:

    podman build -t openmower.de .
  • Now make your changes to the files and then start the container.

    podman run --detach --name openmower.de --publish 1313:1313 --volume ./:/src/ openmower.de
  • Be patient while the container installs all dependencies and builds the website. 🍵
    You can check its logs by

    podman logs -f openmower.de

    A successfull start may looks like this - (Click to expand)
    > tech-doc-hugo@0.0.1 prepare
    > npm run _prepare:docsy
    
    
    > tech-doc-hugo@0.0.1 _prepare:docsy
    > cd themes/docsy && npm install --no-bin-links
    
    
    changed 4 packages, and audited 180 packages in 18s
    
    42 packages are looking for funding
      run `npm fund` for details
    
    found 0 vulnerabilities
    
    changed 5 packages, and audited 75 packages in 21s
    
    19 packages are looking for funding
      run `npm fund` for details
    
    found 0 vulnerabilities
    npm notice
    npm notice New major version of npm available! 9.6.6 -> 10.2.0
    npm notice Changelog: https://github.com/npm/cli/releases/tag/v10.2.0
    npm notice Run npm install -g npm@10.2.0 to update!
    npm notice
    Start building sites …
    hugo v0.111.3-5d4eb5154e1fed125ca8e9b5a0315c4180dab192+extended linux/amd64 BuildDate=2023-03-12T11:40:50Z VendorInfo=hugoguru
    
                       | EN
    -------------------+------
      Pages            | 134
      Paginator pages  |   0
      Non-page files   |  52
      Static files     | 100
      Processed images | 149
      Aliases          |   0
      Sitemaps         |   1
      Cleaned          |   0
    
    Built in 11309 ms
    Watching for changes in /src/{assets,content,layouts,package.json,static,themes}
    Use watcher with poll interval 1s
    Watching for config changes in /src/config.toml, /src/themes/docsy/config.yaml
    Environment: "DEV"
    Serving pages from memory
    Running in Fast Render Mode. For full rebuilds on change: hugo server --disableFastRender
    Web Server is available at //localhost:1313/ (bind address 0.0.0.0)
    Press Ctrl+C to stop
    

    If you see the following lines the container successfully build the website and you can access it on port 1313 of you mower (openmower.local:1313)

    Web Server is available at //localhost:1313/ (bind address 0.0.0.0)
    Press Ctrl+C to stop
    

Tip

You can now make your changes on the fly - the container watches the source and will rebuild individual sites automatically on changes.

If for some circumstances it does not rebuild you can try to restart the container:

podman restart openmower.de



Once you are done you can stop the container

podman stop openmower.de

If you do not plan to edit the site once more you can remove the container and the images.

podman rm openmower.de
podman rmi openmower.de docker.io/klakegg/hugo:0.111.3-ext-ubuntu



Running the website locally...


Running the website locally on Bare Metal

Building and running the site locally requires a recent extended version of Hugo.
You can find out more about how to install Hugo for your environment in our Getting started guide.

Once you've made your working copy of the site repo, from the repo root folder, run:

hugo server

Running the website locally on Podman/Docker

to be writen...


Running the website locally on Docker Compose

You can run openmower.de inside a container (Docker or Podman), the container runs with a volume bound to the docsy-example folder. This approach doesn't require you to install any dependencies other than Docker Desktop on Windows and Mac, and Docker Compose on Linux.

  • Build the docker image

    docker compose build
  • Run the built image

    docker compose up

Tip

You can run both commands at once with docker compose up --build.

  • Verify that the service is working.

    Open your web browser and type http://localhost:1313 in your navigation bar, This opens a local instance of the openmower.de homepage. You can now make changes to the website and those changes will immediately show up in your browser after you save (not on Windows though. Hot reload only works on the non-dockerized hugo!).

Cleanup

To stop Docker Compose, on your terminal window, press Ctrl+C.

To remove the produced images run:

docker compose rm

For more information see the Docker Compose documentation.




Troubleshooting

As you run the website locally, you may run into the following error:

➜ hugo server

INFO 2021/01/21 21:07:55 Using config file: 
Building sites … INFO 2021/01/21 21:07:55 syncing static files to /
Built in 288 ms
Error: Error building site: TOCSS: failed to transform "scss/main.scss" (text/x-scss): resource "scss/scss/main.scss_9fadf33d895a46083cdd64396b57ef68" not found in file cache

This error occurs if you have not installed the extended version of Hugo. See this section of the user guide for instructions on how to install Hugo.

Or you may encounter the following error:

➜ hugo server

Error: failed to download modules: binary with name "go" not found

This error occurs if you have not installed the go programming language on your system. See this section of the user guide for instructions on how to install go.

About

No description, website, or topics provided.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published