In the middle of the desert you can say anything you want
For functions/callables, Callable
is not the entire story: you can annotate the arguments and returns values of these callables!
From mypy documentation:
The type of a function that accepts arguments
A1
,…
,An
and returnsRt
isCallable[[A1, ..., An], Rt]
."You can only have positional arguments, and only ones without default values, in callable types
If your @abstractmethod
should also be a @staticmethod
, you can
happily blend both, as long as the @staticmethod
(or other) decorator comes first.
In other words, @abstractmethod
should always be the innermost decorator.1
Bitwarden-rs in now called vaultwarden.
Second time I find setting it up on Yunohost hard, so documenting.
“Create account” from main page with the yh email doesn’t work because the user allegedly exists.
admin@me:~$ sudo yunohost log
usage: yunohost log {list,show,display,share} ... [-h]
yunohost log: error: the following arguments are required: {list,show,display,share}
Interesting different commands doing different things!
User Guide — Certbot 1.30.0 documentation
Needed to manually get a cerificate.
`` Needed to manually get a cerificate, as opposet to ‘get and install automatically’. `
sudo certbot certonly --manual -d *.my.domain
The reason I’m doing this is weird DNS configuration.
Let’s try getting around it: Certificate | Yunohost Documentation
yunohost domain cert-install your.domain.tld --self-signed --force
if the certificate installation still doesn’t work, you can disable the checks with
--no-checks
after the cert-install command.
Oh nice! Let’s try with non self-signed:
admin@me:~$ sudo yunohost domain cert install sub.do.main --no-checks
Works! Even if the web interface complains of DNS issues, this works as long as it’s actually accessible from outside - say, with one of the 220924-2043 Options to access a host from behind NAT and firewall or something.
Adding domains through CLI is also much faster than using the GUI:
admin@me:~$ sudo yunohost domain add my.domain.another.one
And the certificate bit accepts lists of domains. Okay!
admin@me:~$ sudo yunohost domain add b.my.doma.in && sudo yunohost domain add g.my.doma.in && sudo yunohost domain add n.my.doma.in
admin@me:~$ sudo yunohost domain cert install n.my.doma.in b.my.doma.in g.my.doma.in --no-checks
The Yunohost documentation adds checkmarks to articles you already read, I love this. Not to track progress, but to quickly parse the list and find the 4 articles I keep reading.
ssh -v localhost
is a quick way to get the versions of everything.
Here and later, ‘host’ is the thingy hidden behind NAT.
cloudflared
on the server
Was diagnosing an intermittent internet failure, and for logging when it disappears - ping -D 8.8.8.8
. -D
prints the timestamps:
[1664029219.968932] 64 bytes from 8.8.8.8: icmp_seq=27 ttl=115 time=17.1 ms
[1664029220.971096] 64 bytes from 8.8.8.8: icmp_seq=28 ttl=115 time=18.0 ms
[1664029222.100859] 64 bytes from 8.8.8.8: icmp_seq=29 ttl=115 time=147 ms
[1664029222.973428] 64 bytes from 8.8.8.8: icmp_seq=30 ttl=115 time=19.4 ms
[1664029223.973696] 64 bytes from 8.8.8.8: icmp_seq=31 ttl=115 time=18.1 ms
[1664029224.990894] 64 bytes from 8.8.8.8: icmp_seq=32 ttl=115 time=33.9 ms
[1664029225.973556] 64 bytes from 8.8.8.8: icmp_seq=33 ttl=115 time=15.4 ms
[1664029226.978178] 64 bytes from 8.8.8.8: icmp_seq=34 ttl=115 time=18.5 ms
[1664029227.980347] 64 bytes from 8.8.8.8: icmp_seq=35 ttl=115 time=19.0 ms
[1664029228.989004] 64 bytes from 8.8.8.8: icmp_seq=36 ttl=115 time=26.4 ms
[1664029230.091472] 64 bytes from 8.8.8.8: icmp_seq=37 ttl=115 time=127 ms
[1664029230.982869] 64 bytes from 8.8.8.8: icmp_seq=38 ttl=115 time=18.3 ms
Have a vodafone router and a real ASUS router that does everything better, and I connect the vodafone router to it and then use the ASUS router for everything else.
Was debugging stuff and set it to AP mode - wanted to go back, but I couldn’t access the ASUS admin panel anymore at the usual 192.168.2.1.
It had a different IP, one I could find in the Vodafone router control panel, and through that found the ASUS router admin interface.