πŸ’Ύ Archived View for gemi.dev β€Ί gemini-mailing-list β€Ί 000989.gmi captured on 2024-05-12 at 16:20:41. Gemini links have been rewritten to link to archived content

View Raw

More Information

⬅️ Previous capture (2023-12-28)

-=-=-=-=-=-=-

[Discussion][Workflow] What do you use to write and upload to your capsules?

1. Andrew Singleton (singletona082 (a) gmail.com)

This isn't a question of server software, or anything backend related 
(unless the pages are generated by the server.)

Example: When I was on windows 10 I used notepad and now that I am on 
Linux mint I use xed to write the actual page content of my capsules.

Granted the fiction writing components may be written in other programs 
(most notesbly focus writer) but for the sake of avoiding BOM and any 
other potential snarls I copy paste everything into xed for the sake of 
formatting and saving as gmi before upload.

I use filezilla to upload that content both because I find it handy to 
have an active sit backup that also contains content drafts that I can 
then zip and back up to several locations, and because flounder explicitly allows sftp.

What do you guys use?

Link to individual message.

2. Alex // nytpu (alex (a) nytpu.com)

My feed aggregator page is generated server-side by comitium on a cron
job:
https://git.nytpu.com/comitium/about/

And my cheetah-a-day page is also generated server-side with a crappy
bot I wrote on a cron job:
https://git.nytpu.com/cheetah-bot/about/

I use a tool I wrote to generate the atom feed and index page on my
gemlog, this I run locally before I sync my capsule:
https://git.sr.ht/~nytpu/gemlog.sh

Everything else is written manually (including index pages, etc.) in
native gemtext format in neovim[0], and I have a local git repository
with my entire capsule that I sync to my VPS with rsync[1].

The conversion to HTML for my website is done on-the-fly by kineto:
https://git.sr.ht/~nytpu/kineto

So I guess a lot of my capsule is more automated than most, but I try to
only use software written by me for automation on my capsule (everything
other than kineto).

~nytpu


[0]: Gemini syntax highlighting for vim:
     https://tildegit.org/sloum/gemini-vim-syntax
[1]: I use a simple shell function to exclude the auto-generated
     directories and stuff I don't want copied like drafts folders:
     https://git.nytpu.com/personal/dotfiles/tree/.config/zsh/functions-aliases.zsh#n10


-- 
Alex // nytpu
alex@nytpu.com
gpg --locate-external-key alex@nytpu.com
https://useplaintext.email/

Link to individual message.

3. Alan Morgan (alanxoc3 (a) gmail.com)

I created an automated workflow too, though probably not as advanced as
nytpu's.

My html conversion is also done on the fly with kineto. I modified it a bit
though on a github fork:
https://github.com/alanxoc3/kineto

The actual capsule is in a git repo:
https://github.com/alanxoc3/capsule

There's a compile script in that repo that generates headers and most of
the index page. I'm also using rsync to apply those changes.

The git repo is pulled and compiled every 15 minutes with a systemd timer:
https://github.com/alanxoc3/dotfiles/tree/main/install_scripts/gemini

I use kakoune to edit files and push to github when I'm ready to publish.

- Alan Morgan

Link to individual message.

4. Chris McGee (newton688 (a) gmail.com)

I will be using acme and git/scp/rsync and server invokable shell scripts
for this shortly. I'm just working on the finishing touches on the SSH
Capsules spec and related tools before I go live with it.

On Sat, Aug 14, 2021 at 1:39 PM Andrew Singleton <singletona082@gmail.com>
wrote:

> This isn't a question of server software, or anything backend related
> (unless the pages are generated by the server.)
>
> Example: When I was on windows 10 I used notepad and now that I am on
> Linux mint I use xed to write the actual page content of my capsules.
>
> Granted the fiction writing components may be written in other programs
> (most notesbly focus writer) but for the sake of avoiding BOM and any other
> potential snarls I copy paste everything into xed for the sake of
> formatting and saving as gmi before upload.
>
> I use filezilla to upload that content both because I find it handy to
> have an active sit backup that also contains content drafts that I can then
> zip and back up to several locations, and because flounder explicitly
> allows sftp.
>
> What do you guys use?
>

Link to individual message.

5. panda-roux (contact (a) panda-roux.dev)

My gemlog is stored in a SQLite database and generated by Lua scripts
that my server runs.  I have a handful of Lua scripts I use in order to
interface with it.  They can all be found here:

https://git.sr.ht/~panda-roux/GeminiLuaScripts/tree

Typical workflow looks like running `gemlog new` which creates and opens
a temp file in my editor (Vim) and saves it to the database once I save
and exit.  This is done SSH'd into a VPS.

Toodles

panda-roux


On Sat, Aug 14, 2021 at 05:39:07PM +0000, Andrew Singleton wrote:
> This isn't a question of server software, or anything backend related 
(unless the pages are generated by the server.)
> 
> Example: When I was on windows 10 I used notepad and now that I am on 
Linux mint I use xed to write the actual page content of my capsules.
> 
> Granted the fiction writing components may be written in other programs 
(most notesbly focus writer) but for the sake of avoiding BOM and any 
other potential snarls I copy paste everything into xed for the sake of 
formatting and saving as gmi before upload.
> 
> I use filezilla to upload that content both because I find it handy to 
have an active sit backup that also contains content drafts that I can 
then zip and back up to several locations, and because flounder explicitly allows sftp.
> 
> What do you guys use?

Link to individual message.

6. Jonathan McHugh (indieterminacy (a) libre.brussels)

Dear panda-roux,

Thanks for an interesting project. Its interesting to see database 
approaches for that type of workflow.

Out of curiosity, is there a reason why LuaXML_lib.so is provided 
compiled? Is there any possibility of releasing the C code for completeness?

Thanks,

====================
Jonathan McHugh
indieterminacy@libre.brussels

August 14, 2021 9:42 PM, "panda-roux" <contact@panda-roux.dev> wrote:

> My gemlog is stored in a SQLite database and generated by Lua scripts
> that my server runs. I have a handful of Lua scripts I use in order to
> interface with it. They can all be found here:
> 
> https://git.sr.ht/~panda-roux/GeminiLuaScripts/tree
> 
> Typical workflow looks like running `gemlog new` which creates and opens
> a temp file in my editor (Vim) and saves it to the database once I save
> and exit. This is done SSH'd into a VPS.
> 
> Toodles
> 
> panda-roux
> 
> On Sat, Aug 14, 2021 at 05:39:07PM +0000, Andrew Singleton wrote:
> 
>> This isn't a question of server software, or anything backend related 
(unless the pages are
>> generated by the server.)
>> 
>> Example: When I was on windows 10 I used notepad and now that I am on 
Linux mint I use xed to write
>> the actual page content of my capsules.
>> 
>> Granted the fiction writing components may be written in other programs 
(most notesbly focus
>> writer) but for the sake of avoiding BOM and any other potential snarls 
I copy paste everything
>> into xed for the sake of formatting and saving as gmi before upload.
>> 
>> I use filezilla to upload that content both because I find it handy to 
have an active sit backup
>> that also contains content drafts that I can then zip and back up to 
several locations, and because
>> flounder explicitly allows sftp.
>> 
>> What do you guys use?

Link to individual message.

7. Fuwn (fuwnzy (a) gmail.com)

My content is served via an ad-hoc wrapper I made over the Gig framework
using a series of content writeups and templates:

Gig: https://github.com/pitr/gig
Wrapper: https://github.com/fuwn/space

however, I am considering moving my writeups to a traditional database.

My content is proxied to HTTP with Capybara:

Capybara: https://github.com/fuwn/capybara

On Sat, Aug 14, 2021 at 10:39 AM Andrew Singleton <singletona082@gmail.com>
wrote:

> This isn't a question of server software, or anything backend related
> (unless the pages are generated by the server.)
>
> Example: When I was on windows 10 I used notepad and now that I am on
> Linux mint I use xed to write the actual page content of my capsules.
>
> Granted the fiction writing components may be written in other programs
> (most notesbly focus writer) but for the sake of avoiding BOM and any other
> potential snarls I copy paste everything into xed for the sake of
> formatting and saving as gmi before upload.
>
> I use filezilla to upload that content both because I find it handy to
> have an active sit backup that also contains content drafts that I can then
> zip and back up to several locations, and because flounder explicitly
> allows sftp.
>
> What do you guys use?
>

Link to individual message.

8. panda-roux (contact (a) panda-roux.dev)

> Out of curiosity, is there a reason why LuaXML_lib.so is provided 
compiled? Is there any possibility of releasing the C code for completeness?

The version of LuaXML that's hosted on LuaRocks wouldn't compile against
Lua 5.4 when I tried to install it on my machine, so I had to make a
couple of minor changes in order to get it to build.  After that I just
toted the binary around for convenience.

I don't have the altered code anymore unfortunately, but the original
can be found here: https://luarocks.org/modules/djerius/luaxml

Take care,

panda-roux

On Sat, Aug 14, 2021 at 09:36:27PM +0000, Jonathan McHugh wrote:
> Dear panda-roux,
> 
> Thanks for an interesting project. Its interesting to see database 
approaches for that type of workflow.
> 
> Out of curiosity, is there a reason why LuaXML_lib.so is provided 
compiled? Is there any possibility of releasing the C code for completeness?
> 
> Thanks,
> 
> ====================
> Jonathan McHugh
> indieterminacy@libre.brussels
> 
> August 14, 2021 9:42 PM, "panda-roux" <contact@panda-roux.dev> wrote:
> 
> > My gemlog is stored in a SQLite database and generated by Lua scripts
> > that my server runs. I have a handful of Lua scripts I use in order to
> > interface with it. They can all be found here:
> > 
> > https://git.sr.ht/~panda-roux/GeminiLuaScripts/tree
> > 
> > Typical workflow looks like running `gemlog new` which creates and opens
> > a temp file in my editor (Vim) and saves it to the database once I save
> > and exit. This is done SSH'd into a VPS.
> > 
> > Toodles
> > 
> > panda-roux
> > 
> > On Sat, Aug 14, 2021 at 05:39:07PM +0000, Andrew Singleton wrote:
> > 
> >> This isn't a question of server software, or anything backend related 
(unless the pages are
> >> generated by the server.)
> >> 
> >> Example: When I was on windows 10 I used notepad and now that I am on 
Linux mint I use xed to write
> >> the actual page content of my capsules.
> >> 
> >> Granted the fiction writing components may be written in other 
programs (most notesbly focus
> >> writer) but for the sake of avoiding BOM and any other potential 
snarls I copy paste everything
> >> into xed for the sake of formatting and saving as gmi before upload.
> >> 
> >> I use filezilla to upload that content both because I find it handy 
to have an active sit backup
> >> that also contains content drafts that I can then zip and back up to 
several locations, and because
> >> flounder explicitly allows sftp.
> >> 
> >> What do you guys use?

Link to individual message.

9. Jonathan Lane (tidux (a) sdf.org)

I use SDF for my Gemini posting thus far, and keep my gemlog source in a
Fossil monorepo with all my other writing projects.  I write in either
Vim or VSCode with the Vim extension depending on the machine.  Once
I've got my changes committed to Fossil, I SSH to the SDF MetaArray,
pull the latest changes if they didn't originate on SDF, and run the
following command:

$ rsync -avx path/to/gemlog/source/ ~/gemroot/

to publish.  Is this manual and a little old fashioned?  Yeah.  That's
the charm of SDF.  I work with enough CI/CD gitops bullshit in my day
job to enjoy taking the time to do things by hand sometimes. 

-- 
tidux@sdf.org
SDF Public Access UNIX System - http://sdf.org

Link to individual message.

10. Rohan Kumar (seirdy (a) seirdy.one)

Workflow for seirdy.one:

TLDR version: write in Neovim, git commit, git push. After a minute the site is updated.

Long version:

I write my content in Neovim. I use markdown for WWW content and Gemtext 
for Gemini content. I typically draft in Gemtext and convert to Markdown, 
then edit the Markdown a bit for stuff like inline links and inline 
metadata (semantic tags like <time> and microformats mostly).

I do this all in a git repository. When I push commits, Sourcehut CI 
builds both my Gemini and Web content using Hugo. Hugo's custom output 
formats made it really easy to support both. `make build` builds the pages 
and generates zopfli-gzip and brotli compressed files in advance; `make 
deploy` deploys assets to my Web and Gemini servers via rsync + ssh. It 
builds a separate version of my Web site for my Tor hidden service. I 
haven't gotten around to launching a Gemini capsule into Deep Space 
(Gemini on Tor) yet, but I really should.

Using a static site generator/templating engine is really neat because it 
makes it easy to have multiple versions of your content in multiple 
places, each version having different values substituted in the pages.  My 
hidden service has different urls than my Web content, and my Gemini 
content uses gemini:// links instead of https://. In the source code, I 
use relative paths; the SSG expands URLs by default.

Hugo's GitInfo fills in timestamps based on commit dates. So all I have to 
do is commit and push; my sites are then updated momentarily.

There's no vendor-lock-in. I build the binaries that I use in CI myself, 
except for rsync and make. I rsync them over from my server. So all I need 
for CI is an environment that can run "make build && make deploy".  If my 
VPS provider does something bad, I can switch to a different VPS easily; 
if Sourcehut disappears, any other CI system will work. I get the 
Netlify-like experience of "just `git push` and deployment automatically 
happens" without having to depend on a service like Netlify.

-- /Seirdy (seirdy.one)

Link to individual message.

11. Luke Emmet (luke (a) marmaladefoo.com)



On 14-Aug-2021 18:39, Andrew Singleton wrote:
> This isn't a question of server software, or anything backend related 
(unless the pages are generated by the server.)
> 
> I use filezilla to upload that content both because I find it handy to 
have an active sit backup that also contains content drafts that I can 
then zip and back up to several locations, and because flounder explicitly allows sftp.
> 
> What do you guys use?

WinSCP to connect with SFTP and edit the files in situ with Scite.

 - Luke

Link to individual message.

12. Sigrid Solveig HaflΓ­nudΓ³ttir (ftrvxmtrx (a) gmail.com)

Quoth Andrew Singleton <singletona082@gmail.com>:
> This isn't a question of server software, or anything backend related 
(unless the pages are generated by the server.)
> 
> Example: When I was on windows 10 I used notepad and now that I am on 
Linux mint I use xed to write the actual page content of my capsules.
> 
> Granted the fiction writing components may be written in other programs 
(most notesbly focus writer) but for the sake of avoiding BOM and any 
other potential snarls I copy paste everything into xed for the sake of 
formatting and saving as gmi before upload.
> 
> I use filezilla to upload that content both because I find it handy to 
have an active sit backup that also contains content drafts that I can 
then zip and back up to several locations, and because flounder explicitly allows sftp.
> 
> What do you guys use?
> 

I open /n/ftrv.se/www/blah.md in my text editor, edit markdown, save.
To create a draft, the file name used is `_blah.md` instead, so the
post is only visible if accessed directly.  To enable comments, I run
`touch /n/ftrv.se/www/blah.comments`.  Short one-line description for
RSS is stored as plain text in `blah.descr`.  Each post has a comment
like `<!-- date 2020-05-22T14:13:54+02:00 -->` that provides a way to
specify when the post was *actually* modified, regardless of any
filesystem timestamps.

The server software does the rest (rendering to HTML, Gemtext, RSS,
etc).  Server filesystem is mounted with sshfs at all times.

Link to individual message.

13. ew.gemini (ew.gemini (a) nassur.net)

Hello,

Andrew Singleton <singletona082@gmail.com> writes:

> What do you guys use?

Interesting collection of answers, thank you all.

Me:

I use emacs to write .gmi files. I use fundamental mode, not
gemini-mode.

Then I create the new indices using make and shell scripts. I
start a local (very old!) instance of agate (v1.2.2) to serve
the new stuff on localhost, I use emacs/elpher to view the newly
created content.

Once content I call make again. This will create html files (by
shell script as well), recreate indices, checksum and signature
files and the atom feed. I check this state into git.

Then I push this state to sourcehut and let the CI create the
new state of gemini/html pages.

I also serve the gemlog from a local machine behind a onion
site. The content ist one "git pull" away.

And I have a clone of the git repo on another small machine in
my house. so another git push.

Once the new content appears on sourcehut, I call "make ping",
which calls Antenna to indicate new entries.


The Makefile and all scripts are available here:
https://git.sr.ht/~ew/ew.srht.site/tree

tl;dr:
emacs, elpher, make, shell, gnupg, signify-openbsd, git,
sourcehut-ci, sourcehut.sites.


Cheers,
~ew

-- 
Keep it simple!

Link to individual message.

14. Anna β€œCyberTailor” (cyber (a) sysrq.in)

I host my capsule on my home PC, so I just

	vim /var/www/sysrq/en/index.gmi

gemini.vim plugin does some highlighting
https://sr.ht/~torresjrjr/gemini.vim/

(I wish I could have motivation to continue writing but apathy said no)

Link to individual message.

15. Kujiu (kujiu-gemini (a) kujiu.org)

Hello,

I use sphinx-doc and I've written a builder (sphinx-gemini-builder on pypi). I 
just use git for synchronizing and I launch the "make gemini" command to 
create files on the server. In fact, I launch the "make html" too, so I have 
same base for my HTML and my Gemini space.

(Note in case of another reject, I received correctly mails from the list, so 
it seems I'm a member. Can you give me the error.)

Le samedi 14 aoΓ»t 2021, 19 h 39 min 07 s CEST Andrew Singleton a Γ©crit :
> This isn't a question of server software, or anything backend related
> (unless the pages are generated by the server.)
> 
> Example: When I was on windows 10 I used notepad and now that I am on Linux
> mint I use xed to write the actual page content of my capsules.
> 
> Granted the fiction writing components may be written in other programs
> (most notesbly focus writer) but for the sake of avoiding BOM and any other
> potential snarls I copy paste everything into xed for the sake of
> formatting and saving as gmi before upload.
> 
> I use filezilla to upload that content both because I find it handy to have
> an active sit backup that also contains content drafts that I can then zip
> and back up to several locations, and because flounder explicitly allows
> sftp.
> 
> What do you guys use?


-- 
Kujiu
SFFF Writer
gemini://kujiu.org

Link to individual message.

16. Andrew Singleton (singletona082 (a) gmail.com)

Seriously feeling like my approach is just plain peanuts compared to what 
a lot of you guys are doing. Granted I don't have to worry about server 
backend material, and my workflow handles what I need but...

Impressed at what a lot of you guys do.

Keep sharing!

Aug 15, 2021 8:15:46 AM Anna β€œCyberTailor” <cyber@sysrq.in>:

> I host my capsule on my home PC, so I just
> 
> Β  vim /var/www/sysrq/en/index.gmi
> 
> gemini.vim plugin does some highlighting
> https://sr.ht/~torresjrjr/gemini.vim/
> 
> (I wish I could have motivation to continue writing but apathy said no)

Link to individual message.

17. Matthew Ernisse (matt (a) going-flying.com)

On Sat, Aug 14, 2021 at 05:39:07PM +0000, Andrew Singleton said:
> This isn't a question of server software, or anything backend 
> related (unless the pages are generated by the server.)

For writing I use whatever text editor I land on at the time, mostly
nvi or emacs.  I did write a small elisp function that creates boilerplate
for my gemlog posts for me.

Standalone pages are written in straight text/gmi, gemlog posts are in a
somewhat modified dialect for convenience.  The biggest difference is that
I support YAML metadata at the top so I can set the title and date of the
article.

Once I am done with whatever I am writing I commit and push to a git
repository on my server.  Once there the process is as described here:

gemini://going-flying.com/how-built.gmi

--Matt

-- 
Matthew Ernisse
matt@going-flying.com
gemini://going-flying.com/

Link to individual message.

18. Oliver Simmons (oliversimmo (a) gmail.com)

For writing documents I use whatever plain-text editor I happen to
have at hand, usually lite or VSCode, gemtext is simple so you don't
need anything fancy.
=> https://github.com/rxi/lite lite

My capsule is hosted on a Rasp. Pi, to get files on to there I have a
Syncthing folder set up that I can just plop files in and they're
automatically transferred between my devices.
=> https://syncthing.net/ Syncthing
(If anyone knows of a better alternative to Synthing please link me)

I don't have any auto-generated pages apart from the folder indexes
agate creates.
=> https://github.com/mbrubeck/agate agate

-Oliver Simmons (GoodClover)

Link to individual message.

---

Previous Thread: [user] stargazer 0.5.0 release announcement

Next Thread: Re : [Discussion][Workflow] What do you use to write and upload to your capsules?