Cloudron makes it easy to run web apps like WordPress, Nextcloud, GitLab on your server. Find out more or install now.


Skip to content
  • Categories
  • Recent
  • Tags
  • Popular
  • Bookmarks
  • Search
Skins
  • Light
  • Cerulean
  • Cosmo
  • Flatly
  • Journal
  • Litera
  • Lumen
  • Lux
  • Materia
  • Minty
  • Morph
  • Pulse
  • Sandstone
  • Simplex
  • Sketchy
  • Spacelab
  • United
  • Yeti
  • Zephyr
  • Dark
  • Cyborg
  • Darkly
  • Quartz
  • Slate
  • Solar
  • Superhero
  • Vapor

  • Default (No Skin)
  • No Skin
Collapse
Brand Logo

Cloudron Forum

Apps | Demo | Docs | Install
  1. Cloudron Forum
  2. App Packaging & Development
  3. Trying to package Agate - A Gemini server

Trying to package Agate - A Gemini server

Scheduled Pinned Locked Moved App Packaging & Development
11 Posts 3 Posters 97 Views 3 Watching
  • Oldest to Newest
  • Newest to Oldest
  • Most Votes
Reply
  • Reply as topic
Log in to reply
This topic has been deleted. Only users with topic management privileges can see it.
  • D Offline
    D Offline
    DidierMalenfant
    wrote last edited by
    #1

    This is my first foray into Cloudron app packaging, please be kind 😂

    I decided to try and package Agate which is a simple Gemini server.

    I've published the repo and the image online.

    Agate listens on port 1950 which is a standard Gemini port so I used Caddy to respond to Cloudron's health check and I added a tcpPort in the manifest for port 1950.

    Running the docker imager locally (without Cloudron) seems to work ok. I map /app/data to a local folder, define CLOUDRON_APP_DOMAIN to 'localhost' and map ports 80 and 1950 to my local host. I can then see the response on port 80 and the Gemini page when browsing localhost with Lagrange.

    When installing the image on my test server the http port works fine and serves the http response but port 1950 doesn't seem to be forwarded to the container when browsing with Lagrange.

    Anything obvious I'm getting wrong here?

    1 Reply Last reply
    2
    • D Offline
      D Offline
      DidierMalenfant
      wrote last edited by DidierMalenfant
      #2

      Oh man... I found the bonehead mistake causing this... The gemini port is 1965 not 1950 🤦

      After letting everything happily propagate, I now have a gemini server running on my test Cloudron at gemini://test.malenfant.dev... YAY!

      I'm going to play with it for a bit. If someone with more experience than me could sanity check the Dockerfile, CloudronManifest.json and start.sh to make sure I'm not doing anything stupid then I can make this a 1.0.0 version.

      1 Reply Last reply
      4
      • timconsidineT Offline
        timconsidineT Offline
        timconsidine
        App Dev
        wrote last edited by
        #3

        @DidierMalenfant well done !
        It's great to have more developers, and more people scratching their itches on something that might might never make it into the appstore but nevertheless is valuable to have.

        I'm curious - what is your use for Gemini ?

        1 Reply Last reply
        1
        • timconsidineT Offline
          timconsidineT Offline
          timconsidine
          App Dev
          wrote last edited by
          #4

          @DidierMalenfant hey, works for me !
          I download the repo, built docker image from scratch, pushed to my repo, and installed in my cloudron.
          No errors, up and running ! 👏 👏 👏

          I haven't done a code review of Dockerfile as I'm not familiar with some technologies like Caddy (didn't know you could install Caddy on a cloudron image!).

          1 Reply Last reply
          1
          • timconsidineT Offline
            timconsidineT Offline
            timconsidine
            App Dev
            wrote last edited by timconsidine
            #5

            I'm not convinced by terminal browsing - early trauma 😆 - was it Lynx in them bad old days ?
            But I'm totally on board with lightweight browsing, and avoiding the bloat of the modern browser world is a clear winner (IMHO). The world is GUI (except dev tasks) so providing it a site looks good, clear and presentable, bring it on.
            Using Lagrange as gemini client, seems to work well

            1 Reply Last reply
            0
            • D Offline
              D Offline
              DidierMalenfant
              wrote last edited by DidierMalenfant
              #6

              I use Lagrange too. My main capsule (as they are known) is at gemini://gemini.malenfant.net

              To answer your question, it's a bit of a throwback to simpler times. I post different things on my gemini site sometimes, the crowd reading it is different too. A bit like Twitter vs Mastodon kinda thing.

              1 Reply Last reply
              1
              • D Offline
                D Offline
                DidierMalenfant
                wrote last edited by
                #7

                Just updated the app to 0.2.0.

                • added some user-modifiable information about gemini when the app is accessed on the HTTP port
                • user can now set a different port for the gemini server if they want
                • removed an unnecessary mkdir in the Dockerfile

                I'm going to dogfood it on my own server for a bit and then if everything looks good I will look into posting it to the App Store here.

                1 Reply Last reply
                3
                • robiR Offline
                  robiR Offline
                  robi
                  wrote last edited by
                  #8

                  Are there any HTTP browsers that have added gemini support?

                  Perhaps there's a plugin/extension for it.

                  Conscious tech

                  D timconsidineT 2 Replies Last reply
                  0
                  • robiR robi

                    Are there any HTTP browsers that have added gemini support?

                    Perhaps there's a plugin/extension for it.

                    D Offline
                    D Offline
                    DidierMalenfant
                    wrote last edited by
                    #9

                    @robi said in Trying to package Agate - A Gemini server:

                    Are there any HTTP browsers that have added gemini support?

                    The problem is when you search for gemini plugin you get results for Google's AI stuff instead...

                    1 Reply Last reply
                    1
                    • robiR robi

                      Are there any HTTP browsers that have added gemini support?

                      Perhaps there's a plugin/extension for it.

                      timconsidineT Offline
                      timconsidineT Offline
                      timconsidine
                      App Dev
                      wrote last edited by timconsidine
                      #10

                      @robi I have been looking but as Didier says, searching return mostly google gemini.

                      With some further research, it seems that the main way to achieve viewing a gemini capsule in a regular browser is through a proxy.
                      2 that I tried are down/broken, but this seems to work :

                      https://portal.mozz.us

                      It seems the gemini universe has proportionally way more broken abandoned links and sites than the mainstream http universe. Seems like people play but abandon it.

                      Shame, as I think there is (or should be) a good use case for gemini sites in preference to http bloat.

                      EDIT : having agate on Cloudron would be a good addition, maybe niche, but hey, niches are good. Well done @DidierMalenfant

                      robiR 1 Reply Last reply
                      2
                      • timconsidineT timconsidine

                        @robi I have been looking but as Didier says, searching return mostly google gemini.

                        With some further research, it seems that the main way to achieve viewing a gemini capsule in a regular browser is through a proxy.
                        2 that I tried are down/broken, but this seems to work :

                        https://portal.mozz.us

                        It seems the gemini universe has proportionally way more broken abandoned links and sites than the mainstream http universe. Seems like people play but abandon it.

                        Shame, as I think there is (or should be) a good use case for gemini sites in preference to http bloat.

                        EDIT : having agate on Cloudron would be a good addition, maybe niche, but hey, niches are good. Well done @DidierMalenfant

                        robiR Offline
                        robiR Offline
                        robi
                        wrote last edited by
                        #11

                        @timconsidine Seems odd there isn't an extension. Just checked chrome webstore.

                        zero:// and gemini:// protocols might be very useful for LLMs and other domains overusing or cluttering http. I doubt folks will have self control in using it as such.

                        Conscious tech

                        1 Reply Last reply
                        2
                        Reply
                        • Reply as topic
                        Log in to reply
                        • Oldest to Newest
                        • Newest to Oldest
                        • Most Votes


                        • Login

                        • Don't have an account? Register

                        • Login or register to search.
                        • First post
                          Last post
                        0
                        • Categories
                        • Recent
                        • Tags
                        • Popular
                        • Bookmarks
                        • Search