HEY! I think we all noticed that privacy is dying. Government and corporate entities around the world are building the laws and tools to track you, from everything you write, to the media you consume, to where you drive your car and the people you associate with. Gopher I believe Is one of the last bastions of freedom away from what I call “Corpo web”. GopherSpace is free, I wrote my client so I know it’s safe, and I can route my traffic over tor or any proxy of my choosing. I think we should use gopher as a means to communicate and get out of the modern corpo web because soon everything you do and say on the modern web or possibly corporate owned devices is under scrutiny, even more so than it ALREADY IS. Right now I can use tor and my custom gopher cli to communicate privately here. With the ways the laws are going they are going to implement things like age verification to track you and they’ll deem privacy focused open source software as tools for circumventing these rules. It’s a slippery slope. I need to stop writing before I sound really crazy.
Hi i am using cli
v2 branch and @doesnm.p.psf.lt has been incredibly helpful so far. Be great ot have a few more folks to join us, some of the v2 highlights include:
@bender@twtxt.net Here is a properly formatted version of your message:
Not yet — but that’s probably a good idea.
Instructions:
- Clone the repository
git clone https://git.mills.io/saltyim/saltyim.git
cd saltyim
- Check out the
v2branch
git checkout v2
- Build and install the CLI/TUI
make DESTDIR=$HOME/bin install
After installation, run:
salty-chat
@bender@twtxt.net gemini-cli, something something https://github.com/google-gemini/gemini-cli/issues/16723
/me clones the repository, calls gemini-cli, and asks for an executive summary. Gemini-CLI replies “Don’t bother!” LOL.
newly minted gopher fan from the cli- I’m amazed!
I used Gemini (the Google AI) twice at work today, asking about Google Workspace configuration and Google Cloud CLI usage (because we use those a lot). You’d think that it’d be well-suited for those topics. It answered very confidently, yet completely wrong. Just wrong. Made-up CLI arguments, whatever. It took me a while to notice, though, because it’s so convincing and, well, you implicitly and subconsciously trust the results of the Google AI when asking about Google topics, don’t you?
Will it get better over time? Maybe. But what I really want is this:
- Good, well-structured, easy-to-read, proper documentation. Google isn’t doing too bad in this regard, actually, it’s just that they have so much stuff that it’s hard to find what you’re looking for. Hence …
- … I want a good search function. Just give me a good fuzzy search for your docs. That’s it.
I just don’t have the time or energy to constantly second-guess this stuff. Give me something reliable. Something that is designed to do the right thing, not toy around with probabilities. “AI for everything” is just the wrong approach.
@melyanna@tilde.club can you share your script that post from CLI to Mast and etc?
I have fully restored my script that posts from CLI to Mastodon, twtxt, and my ichi.city web page.
@zvava@twtxt.net And yes yarnd does have a well documented API and two clients (CLI and unmaintained Flutter App)
And I am finally able to post from CLI again!
Been playing on sdf.org the past couple days. It’s like wandering through a commune made of unix. If you’re a cli sort and on gemini, check it out. It feels very ‘smolweb’ even though its more than that.
i know yarn has a CLI client in yarnc but ngl i wish there was a TUI client. that’d be really fun
I am posting from CLI on my new laptop
Timeline of Evolution of Twtxt/Yarn.social:
- 2016 – Twtxt created by John Downey: plain text + HTTP = minimalist microblogging
- 2017–2019 – Community builds CLI tools, but adoption remains niche
- 2020 – Yarn.social launched by @prologic@twtxt.net with federation, threading, UI
- 2021–2023 – Pods sync, user mentions, blocking, search, and media support added
- 2024+ – Yarn.social becomes the reference Twtxt platform, with active federated pods
hello friends i spent a couple hours today using a random string generator by charm CLI called hotdiva2000 to make a script that 1) generates a static index.html page 2) the page is a prompt generator where all the prompts are from hotdiva2000!!!!!
this makes more sense if you look at it check it out
@movq@www.uninformativ.de Yeah, most of the graphical applications are actually KDE programs:
- KMail – e-mail client
- Okular – PDF viewer
- Gwenview – image viewer
- Dolphin – file browser
- KWallet – password manager (I want to check out
passone day. The most annoying thing is that when I copy a password, it says that the password has been modified and asks me whether I want to save the changes. I never do, because the password is still the same. I don’t get it.)
- KPatience – card game
- Kdenlive – video editor
- Kleopatra – certificate manager
Qt:
- VLC – video player
- Psi – Jabber client (I happily used Kopete in the past, but that is not supported anymore or so. I don’t remember.)
- sqlitebrowser – SQLite browser
Gtk:
- Firefox – web browser
- Quod Libet – music player (I should look for a better alternative. Can’t remember why I had to move away from Amarok, was it dead? There was a fork Clementine or so, but I had to drop that for some unknown reason, too.)
- Audacity – audio editor
- GIMP – image editor
These are the things that are open right now or that I could think of. Most other stuff I actually do in the terminal.
In the past™, I used the Python KDE4 bindings. That was really nice. I could pass most stuff directly in the constructor and didn’t have to call gazillions of setters improving the experience significantly. If I ever wanted to do GUI programming again, I’d definitely go that route. There are also great Qt bindings for Python if one wanted to avoid the KDE stuff on top. The vast majority I do for myself, though, is either CLI or maybe TUI. A few web shit things, but no GUIs anymore. :-)
@lyse@lyse.isobeef.org oh yeah i use the CLI sometimes it’s fun af
@kat@yarn.girlonthemoon.xyz Allegedly, there’s at least a CLI for that, yarnc. I neither used nor looked at it, though.
you know i’m posting from CLI right now and i still haven’t figured out how to reply to my own post via yarnc
Web page readability on the CLI https://xn–gckvb8fzb.com/reader-web-page-readability-on-the-cli/
@andros@twtxt.andros.dev Could you share (perhaps in the extension document) the private key for alice?
I want to compare that I can read the encrypted message both from OpenSSL CLI and from the PHP OpenSSL library, following the spec.
cli/q: 🌱 A simple programming language. - q - Projects I really like this little q lang that Ed has created ❤️ Really nice and simpler, great design and implementation and really lovely cross-platform compiler supporting DOS, Windows, Darwin and Linux on AMD64 and ARM64 💪
Introducing ralf : Rename A Lot of Files cli tool written in #c. Please, send your suggestions. https://si3t.ch/log/2025-01-27-ralf.txt
Done, I finally finished my cli renamer, something like Thunar file renamer, unsing regex. Need to write a manpage and explain how it works now. If you’re curious: https://git.sr.ht/~prx/ralf
I recently saw in my feeds a tool to see the sky map in a terminal. a Cli tool to see stars position and I hope, constellations. Do you see what I mean?
i self hosted the soft serve git server cuz i felt like it. it’s sooo cute i love everything charm CLI does
ssh -p 24010 soft.git.girlonthemoon.xyz
I’m sitting in official cabal.club with nicknames doesnm and doesnm-seed from vps because can’t install cli in Termux
been playing with making fun scripts using charm CLI’s gum library :P
one that gets lyrics from an open lyrics database’s API and accepts input for artist & song names: https://asciinema.org/a/697860
and one that uses a user-provided last.fm API key to pull what’s currently playing or what last played on your account :) https://asciinema.org/a/697874
can i still post from here on cli or do i need to re-auth hmm
GUYS HELP I LOCKED MYSELF OUT OF MY ACCOUNT ON WEB AND I COULDN’T GET EMAILS WORKING I’M STUCK POSTING FROM CLI LOLLLL
i’ve been transitioning CLI text editors from nano (godforsaken editor) to micro (normal and not overly opinionated to the point where i feel like i’m defusing a bomb trying to learn its keybindings) and the only weird thing is that i can’t get it to persist an alias from nano to micro when i run sudo despite me configuring that. well at least on my servers, it persists on this machine. idk i’ll look at it later
posting from CLI just cuz i can lalalala i have nothing to talk about
i like this little ideas utility i’ve been using like i keep pulling up the idea table to see what i’ve added and it makes me wanna start one of them like the CLI app i wanna write in golang with charmbracelet’s bubbletea even though i only have a vague idea of what i want in a CLI app
i’ve transitioned text editors from nano (yeah i know) to micro and god micro is just so much better i did not know there was a CLI text editor i could use with sensible keyboard shortcuts that did not leave me feeling like i’m typing nuclear codes to do simple tasks like saving and editing
wanna play with CLI stuff or host something new… maybe play with that charmbracelet git server but i don’t need that lol
another cli test for icons this time
cli test 3
cli test 2
cli test
the feed is made using my own cli app called txtlog, it also supports bluesky cross-posting as well!
the feed is made using my own cli app called txtlog, it also supports bluesky cross-posting as well!
the feed is made using my own cli app called txtlog, it also supports bluesky cross-posting as well!
https://terokarvinen.com/2021/calendar-txt/ keep your calendar in a simple text file. I love the idea #cli
I think it’s centralized shit with lying about decentralization. All network is worked by two centralized things: plc.directory (did storage?) and network relay (bsky.network). You can host your relay but this require TOO MUCH resources (2TB storage and 32GB RAM read more ). Also i try running PDS and: 1. I can’t register account via app,only via cli 2. It leaked on 2GB virtual machine then killed by oom after trying to register account via cli
Thank you, @eapl.me@eapl.me! No need to apologize in the introduction, all good. :-)
Section 3: I’m a bit on the fence regarding documenting the HTTP caching headers. It’s a very general HTTP thing, so there is nothing special about them for twtxt. No need for the Twtxt Specification to actually redo it. But on the other hand, a short hint could certainly help client developers and feed authors. Maybe it’s thanks to my distro’s Ngninx maintainer, but I did not configure anything for the Last-Modified and ETag headers to be included in the response, the web server just already did it automatically.
The more that I think about it while typing this reply, the more I think your recommendation suggestion is actually really great. It will definitely beneficial for client developers. In almost all client implementation cases I’d say one has to actually do something specifically in the code to send the If-Modified-Since and/or If-None-Match request headers. There is no magic that will do it automatically, as one has to combine data from the last response with the new request.
But I also came across feeds that serve zero response headers that make caching possible at all. So, an explicit recommendation enables feed authors to check their server setups. Yeah, let’s absolutely do this! :-)
Regarding section 4 about feed discovery: Yeah, non-HTTP transport protocols are an issue as they do not have User-Agent headers. How exactly do you envision the discovery_url to work, though? I wouldn’t limit the transports to HTTP(S) in the Twtxt Specification, though. It’s up to the client to decide which protocols it wants to support.
Since I currently rely on buckket’s twtxt client to fetch the feeds, I can only follow http(s):// (and file://) feeds. But in tt2 I will certainly add some gopher:// and gemini:// at some point in time.
Some time ago, @movq@www.uninformativ.de found out that some Gopher/Gemini users prefer to just get an e-mail from people following them: https://twtxt.net/twt/dikni6q So, it might not even be something to be solved as there is no problem in the first place.
Section 5 on protocol support: You’re right, announcing the different transports in the url metadata would certainly help. :-)
Section 7 on emojis: Your idea of TUI/CLI avatars is really intriguing I have to say. Maybe I will pick this up in tt2 some day. :-)
@eapl.me@eapl.me here are my replies (somewhat similar to Lyse’s and James’)
Metadata in twts: Key=value is too complicated for non-hackers and hard to write by hand. So if there is a need then we should just use #NSFS or the alt-text file in markdown image syntax
if something is NSFWIDs besides datetime. When you edit a twt then you should preserve the datetime if location-based addressing should have any advantages over content-based addressing. If you change the timestamp the its a new post. Just like any other blog cms.
Caching, Yes all good ideas, but that is more a task for the clients not the serving of the twtxt.txt files.
Discovery: User-agent for discovery can become better. I’m working on a wrapper script in PHP, so you don’t need to go to Apaches log-files to see who fetches your feed. But for other Gemini and gopher you need to relay on something else. That could be using my webmentions for twtxt suggestion, or simply defining an email metadata field for letting a person know you follow their feed. Interesting read about why WebMetions might be a bad idea. Twtxt being much simple that a full featured IndieWeb sites, then a lot of the concerns does not apply here. But that’s the issue with any open inbox. This is hard to solve without some form of (centralized or community) spam moderation.
Support more protocols besides http/s. Yes why not, if we can make clients that merge or diffident between the same feed server by multiples URLs
Languages: If the need is big then make a separate feed. I don’t mind seeing stuff in other langues as it is low. You got translating tool if you need to know whats going on. And again when there is a need for easier switching between posting to several feeds, then it’s about building clients with a UI that makes it easy. No something that should takes up space in the format/protocol.
Emojis: I’m not sure what this is about. Do you want to use emojis as avatar in CLI clients or it just about rendering emojis?
I think salty.im is simplest than simplex. But attempt to implement this i have problems than salty cli cant decrypt messages from another saltpack realization (and reverse) . Also simplex is more decentralized (like nostr?)