Meteorology

Current weather in Donderskamp SR SA with the infinite power of wttr.in & the grace of lolcat(6) 🏳️‍🌈 wttr curl(1) & {ba{c{k{z{fi}}}}}sh

Background photograph is a Nature cloud scene composed with FL CIRC_POL and UV filters stacked using a Nikon prime lens

log

$ curl -v wttr.in/donderskamp|lolcat
% Total % Received % Xferd Average Speed Time Time Time Current
Dload Upload Total Spent Left Speed
0 0 0 0 0 0 0 0 --:--:-- 0:00:04 --:--:-- 0* Host wttr.in:80 was resolved.

  • IPv6: (none)
  • IPv4: 5.9.243.1870 0 0 0 0 0 0 0 --:--:-- 0:00:05 --:--:-- 0* Trying 5.9.243.187:80...
  • Connected to wttr.in (5.9.243.187) port 80
  • using HTTP/1.x> GET /donderskamp HTTP/1.1> Host: wttr.in> User-Agent: curl/8.14.1> Accept: />
  • Request completely sent off< HTTP/1.1 200 OK< Access-Control-Allow-Origin: *< Content-Length: 9389< Content-Type: text/plain; charset=utf-8< Date: Tue, 24 Mar 2026 16:47:50 GMT< { [2625 bytes data]100 9389 100 9389 0 0 1622 0 0:00:05 0:00:05 --:--:-- 2074
  • Connection #0 to host wttr.in left intactWeather report: donderskamp

`/"".-. Patchy rain nearby
,_( ). +26(29) °C

/(() ↙ 18 km/h

‘ ‘ ‘ ‘ 10 km

‘ ‘ ‘ ‘ 0.1 mm

Note:

Always remember to repeat the request with an interval of 8 then 60 secs when the server sends and empty response to curl, watch the LOG!

API

https://wttr.in

https://en.wikipedia.org/wiki/Bash_(Unix_shell)

https://gnu.org

https://directory.fsf.org/wiki/Bash

https://curl.se/

https://github.com/busyloop/lolcat

Z

#Weather #wttr #lolcat #curl #bash #csk #ksh #zsh #sh #fish #meteorology #environment #Physics #Chemistry #Mathematics #Lineair #algebra #technology #OpenSource #programming #POSIX

curl

Daniël Stenberg

facts and praise

I'm fortunate that I am allowed to follow Daniël, lead programmer of the mightycurl. The reason I formulated the line in this way, is because only through the power of the FediVerse I've gotten a boost from someone I follow, who found a post of the lead programmer or curl interesting

stats:

install base => 20000*106 devices

20 billion+ installations!

curl is used in command lines or scripts to transfer data. curl is also libcurl, used in:

  • cars
  • television sets
  • routers
  • printers
  • audio equipment
  • mobile phones
  • tablets
  • medical devices
  • settop boxes
  • computer games
  • media players

Curl is THE Internet transfer engine for countless software applications in over twenty billion installations!

curl is used daily by virtually every Internet-using human on the globe!

curl is 30 years old

Let that sink in!

Opinion

curl is mature critical network infrastructure software that we all need to have our internet powered software / hardware to function in respect to data transfer.

The syntax to use curl in simple implementations is IMHO quite easy. In case you need to know an extra option, the executable and libcurl have excellent documentation. End users normally interact with curl using the (elf) binary on Linux based POSIX operating systems. The more mature BSDs have another binary format

Just type curl to get an initial output which looks like this on my current system

curl
curl: try 'curl --help' or 'curl --manual' for more information

then type

curl --help
Usage: curl [options...] <url>
-d, --data <data> HTTP POST data
-f, --fail Fail fast with no output on HTTP errors
-h, --help <subject> Get help for commands
-o, --output <file> Write to file instead of stdout
-O, --remote-name Write output to file named as remote file
-i, --show-headers Show response headers in output
-s, --silent Silent mode
-T, --upload-file <file> Transfer local FILE to destination
-u, --user <user:password> Server user and password
-A, --user-agent <name> Send User-Agent <name> to server
-v, --verbose Make the operation more talkative
-V, --version Show version number and quit

This is not the full help; this menu is split into categories.
Use "--help category" to get an overview of all categories, which are:
auth, connection, curl, deprecated, dns, file, ftp, global, http, imap, ldap, output, pop3, post, proxy,
scp, sftp, smtp, ssh, telnet, tftp, timeout, tls, upload, verbose.
Use "--help all" to list all options
Use "--help [option]" to view documentation for a given option

When you type curl --manual|less you get the manpages which I delimited with less through a vertical pipe

_ _ ____ _
___| | | | _ \| |
/ __| | | | |_) | |
| (__| |_| | _ <| |___
\___|\___/|_| \_\_____|
NAME

curl - transfer a URL

SYNOPSIS

curl [options / URLs]

DESCRIPTION

curl is a tool for transferring data from or to a server using URLs. It
supports these protocols: DICT, FILE, FTP, FTPS, GOPHER, GOPHERS, HTTP,
HTTPS, IMAP, IMAPS, LDAP, LDAPS, MQTT, POP3, POP3S, RTMP, RTMPS, RTSP,
SCP, SFTP, SMB, SMBS, SMTP, SMTPS, TELNET, TFTP, WS and WSS.

curl is powered by libcurl for all transfer-related features. See
libcurl(3) for details.

URL

The URL syntax is protocol-dependent. You find a detailed description in
RFC 3986.

I can also type man curl to get a nice output:

curl(1) curl Manual curl(1)

NAME
curl - transfer a URL

SYNOPSIS
curl [options / URLs]

DESCRIPTION
curl is a tool for transferring data from or to a server using URLs. It supports these protocols:
DICT, FILE, FTP, FTPS, GOPHER, GOPHERS, HTTP, HTTPS, IMAP, IMAPS, LDAP, LDAPS, MQTT, POP3, POP3S,
RTMP, RTMPS, RTSP, SCP, SFTP, SMB, SMBS, SMTP, SMTPS, TELNET, TFTP, WS and WSS.

curl is powered by libcurl for all transfer-related features. See libcurl(3) for details.

URL
The URL syntax is protocol-dependent. You find a detailed description in RFC 3986.

If you provide a URL without a leading protocol:// scheme, curl guesses what protocol you want. It
then defaults to HTTP but assumes others based on often-used hostname prefixes. For example, for
hostnames starting with "ftp." curl assumes you want FTP.

You can specify any amount of URLs on the command line. They are fetched in a sequential manner in
the specified order unless you use -Z, --parallel. You can specify command line options and URLs
Manual page curl(1) line 1 (press h for help or q to quit)

The reasoning behind curl --manual is simple. On a machine without the manual system you still need access to the full manual. This is one of the reasons why man curl is also implemented as curl --manual

An important RFC is echoed to my terminal in the man curl output which is RFC 3986

A Uniform Resource Identifier (URI) is a compact sequence of
characters that identifies an abstract or physical resource. This
specification defines the generic URI syntax and a process for
resolving URI references that might be in relative form, along with
guidelines and security considerations for the use of URIs on the
Internet. The URI syntax defines a grammar that is a superset of all
valid URIs, allowing an implementation to parse the common components
of a URI reference without knowing the scheme-specific requirements
of every possible identifier. This specification does not define a
generative grammar for URIs; that task is performed by the individual
specifications of each URI scheme.

I shall not quote the whole RFC 3986 here. You can read all about it on the RFC site (see sources)

As you can see curl is thorougly documented, has all the features a simple end user needs to fetch all kind of data, scaled up all the way to the extensive complex features router hardware et all, needs to transfer data.

programming route

I came to this toot when I saw that certain external feature code, which lives in stable external libraries, is now being removed from curl. I should say the code is depreciated then phased out.

This is a logical step

  • It takes resources to maintain external code
  • If the (shared) libraries are stable and mature, it's much better to just call those libraries and be done.
  • The more external code you can remove from your project the better it is for all the programmers

The same is also happening in the Linux kernel, they are following in the footsteps of curl

Conclusion

There is a treasure trove of information in the sources. Just reading the pages on RFC 3986 will keep you occupied for hours.
Have fun and keep reading / learning and programming!

sources:

https://curl.se/

https://www.rfc-editor.org/rfc/rfc3986

https://curl.se/mail/lib-2026-03/0026.html

#curl #programming #mathematics #linear #algebra #libcurl #Linux #BSD #freeBSD #openBSD #netBSD #POSIX #bash #csh #ksh #sh #fish #radio #TV #smartTV #router

Meteorology

Current weather in Leonsberg SR SA with the massive power of wttr.in API

curl -v wttr.in/leonsberg_suriname|lolcat

& the infinite grace of lolcat(6) 🏳️‍🌈 wttr curl(1) & {ba{c{k{z{fi}}}}}sh [any shell you love]

Background photograph is Woman staring in Sunset composed in SR SA at the Marine Trap

log

$ curl -v wttr.in/leonsberg_suriname|lolcat
% Total % Received % Xferd Average Speed Time Time Time Current
Dload Upload Total Spent Left Speed
0 0 0 0 0 0 0 0 --:--:-- 0:00:08 --:--:-- 0* Host wttr.in:80 was resolved.

  • IPv6: (none)
  • IPv4: 5.9.243.187
  • Trying 5.9.243.187:80...
  • Connected to wttr.in (5.9.243.187) port 80
  • using HTTP/1.x> GET /leonsberg_suriname HTTP/1.1> Host: wttr.in> User-Agent: curl/8.14.1> Accept: />
  • Request completely sent off< HTTP/1.1 200 OK< Access-Control-Allow-Origin: *< Content-Length: 9210< Content-Type: text/plain; charset=utf-8< Date: Mon, 23 Mar 2026 14:47:33 GMT< { [9210 bytes data]100 9210 100 9210 0 0 1046 0 0:00:08 0:00:08 --:--:-- 2032
  • Connection #0 to host wttr.in left intact
    Weather report: leonsberg_suriname

    \ / Partly cloudy
    _ /"".-. +30(33) °C

    _( ). ↙ 15 km/h

    /(__(_) 10 km

    0.0 mm

Notice

Do not forget to repeat the request with an interval of 8 then 60 secs when the server sends and empty response to curl, watch the LOG~

API

https://wttr.in

sources:

https://en.wikipedia.org/wiki/Bash_(Unix_shell)

https://gnu.org

https://directory.fsf.org/wiki/Bash

https://curl.se/

https://github.com/busyloop/lolcat

Z

#Weather #wttr #lolcat #curl #bash #csk #ksh #zsh #sh #fish #meteorology #environment #Physics #Chemistry #Mathematics #Lineair #algebra #technology #OpenSource #programming #POSIX

Meteorology

Current weather in Groningen SR SA with the infinite power of wttr.in & the grace of lolcat(6) 🏳️‍🌈 wttr curl(1) & {ba{c{k{z{fi}}}}}sh
[that means any shell you love]

Background photograph is a sunset magnifico

log

$ curl --verbose wttr.in/groningen_suriname|lolcat
% Total % Received % Xferd Average Speed Time Time Time Current
Dload Upload Total Spent Left Speed
0 0 0 0 0 0 0 0 --:--:-- 0:00:04 --:--:-- 0* Host wttr.in:80 was resolved.

  • IPv6: (none)
  • IPv4: 5.9.243.187
  • Trying 5.9.243.187:80...0 0 0 0 0 0 0 0 --:--:-- 0:00:05 --:--:-- 0* Connected to wttr.in (5.9.243.187) port 80
  • using HTTP/1.x> GET /groningen_suriname HTTP/1.1> Host: wttr.in> User-Agent: curl/8.14.1> Accept: />
  • Request completely sent off0 0 0 0 0 0 0 0 --:--:-- 0:00:06 --:--:-- 0< HTTP/1.1 200 OK< Access-Control-Allow-Origin: *< Content-Length: 9209< Content-Type: text/plain; charset=utf-8< Date: Mon, 23 Mar 2026 14:31:36 GMT< { [3945 bytes data]100 9209 100 9209 0 0 1419 0 0:00:06 0:00:06 --:--:-- 2180
  • Connection #0 to host wttr.in left intact
    Weather report: groningen_suriname

    \ / Partly cloudy
    _ /"".-. +30(33) °C

    _( ). ↙ 14 km/h

    /(__(_) 10 km

    0.0 mm

Note:

Do not forget to repeat the request with an interval of 8 then 60 secs when the server sends and empty response to curl, watch the LOG~

API

https://wttr.in

https://en.wikipedia.org/wiki/Bash_(Unix_shell)

https://gnu.org

https://directory.fsf.org/wiki/Bash

https://curl.se/

https://github.com/busyloop/lolcat

Z

#Weather #wttr #lolcat #curl #bash #csk #ksh #zsh #sh #fish #meteorology #environment #Physics #Chemistry #Mathematics #Lineair #algebra #technology #OpenSource #programming #POSIX

Good old `export PATH="$PATH:..."` and its replacement: path add /path/to/depot_tools LuSH will modernize your shell environment without compromising compatibility. #hereus #luos #lush #shell #unix #posix #linux #darwin #macos #terminal #console #soon #chromium #dev #developer

@hackerworkspace shouldn't a 700+ MB on it's own not be considered "sus" and forcibly made non-executeable?

  • Or doesn't Windows to this day nit support #POSIX-esque chmod?

Hype for the Future 139J → A Simple C Program

Introduction Perhaps the simplest programs in the C Programming Language are such programs that only require the puts() function in the entirety of the code. However, in the GNU dialect of C (and in POSIX more broadly), an additional requirement of a try-catch block with errno set is essential to creating proper code. Program #include int main(void) { int rc = puts("Hello!"); if (rc == EOF) perror("puts()") // errno must be set as POSIX requirement. }

https://novatopflex.wordpress.com/2026/03/19/hype-for-the-future-139j-%e2%86%92-a-simple-c-program/

Hype for the Future 139J → A Simple C Program

Introduction Perhaps the simplest programs in the C Programming Language are such programs that only require the puts() function in the entirety of the code. However, in the GNU dialect of C (and i…

novaTopFlex

Meteorology

Current weather in Kwamalasemutu SR SA with the grace of wttr.in & the infinite power of
lolcat(6) 🏳️‍🌈 wttr.in curl & {ba{c{k{z{fi}}}}}sh

Background photograph is a sluis {NL} composed in Commewijn SR SA

log

metalloid@krasiwati:~/gate/audio/raw/flac/αβeats∞
$ curl --verbose wttr.in/kwamalasemutu|lolcat
% Total % Received % Xferd Average Speed Time Time Time Current
Dload Upload Total Spent Left Speed
0 0 0 0 0 0 0 0 --:--:-- --:--:-- --:--:-- 0* Trying 5.9.243.187:80...

  • Connected to wttr.in (5.9.243.187) port 80 (#0)> GET /kwamalasemutu HTTP/1.1> Host: wttr.in> User-Agent: curl/7.88.1> Accept: /> < HTTP/1.1 200 OK< Access-Control-Allow-Origin: *< Content-Length: 9092< Content-Type: text/plain; charset=utf-8< Date: Wed, 18 Mar 2026 22:53:31 GMT< { [2625 bytes data]100 9092 100 9092 0 0 10142 0 --:--:-- --:--:-- --:--:-- 10136
  • Connection #0 to host wttr.in left intactWeather report: kwamalasemutu

`/"".-. Patchy rain nearby
,_( ). +24(26) °C

/(() ↓ 9 km/h

‘ ‘ ‘ ‘ 10 km

‘ ‘ ‘ ‘ 0.1 mm

API:

https://wttr.in

Z

#Weather #wttr #lolcat #curl #bash #csk #ksh #zsh #sh #fish #meteorology #environment #Physics #Chemistry #Mathematics #Lineair #algebra #technology #OpenSource #programming #POSIX

Explore the Wild West of post-POSIX IO Interfaces with Anil Madhavapeddy! A lively VMIL'25 talk about new IO abstractions, performance, and systems design - perfect for OS devs, researchers, and curious programmers. Tune in! #VMIL25 #POSIX #IO #SystemsProgramming #OperatingSystems #AnilMadhavapeddy #English #TechTalk
https://crank.recoil.org/videos/watch/323e1d45-3cf6-4554-9d96-db730c3df8a7
[VMIL'25] The Wild West of post-POSIX IO Interfaces

PeerTube

Meteorology

Current weather in Apetina SR SA with the grace of wttr.in & the infinite power of
lolcat(6) 🏳️‍🌈 wttr.in curl & {ba{c{k{z{fi}}}}}sh

Background photgraph is a sluis {NL} composed in Commewijne SR SA

log

$ curl --verbose wttr.in/apetina|lolcat
% Total % Received % Xferd Average Speed Time Time Time Current
Dload Upload Total Spent Left Speed
0 0 0 0 0 0 0 0 --:--:-- --:--:-- --:--:-- 0* Trying 5.9.243.187:80...

  • Connected to wttr.in (5.9.243.187) port 80 (#0)> GET /apetina HTTP/1.1> Host: wttr.in> User-Agent: curl/7.88.1> Accept: /> < HTTP/1.1 200 OK< Access-Control-Allow-Origin: *< Content-Length: 9223< Content-Type: text/plain; charset=utf-8< Date: Fri, 13 Mar 2026 13:05:23 GMT< { [3945 bytes data]100 9223 100 9223 0 0 7720 0 0:00:01 0:00:01 --:--:-- 7724
  • Connection #0 to host wttr.in left intactWeather report: apetina

`/"".-. Light rain shower
,_( ). +25(28) °C

/(() ↙ 6 km/h

‘ ‘ ‘ ‘ 10 km

‘ ‘ ‘ ‘ 0.8 mm

API:

https://wttr.in

Z

#Weather #wttr #lolcat #curl #bash #csk #ksh #zsh #sh #fish #meteorology #environment #Physics #Chemistry #Mathematics #Lineair #algebra #technology #OpenSource #programming #POSIX