597 private links
Over >1300 public domain movies, tracked in #wikidata and hosted by Commons, #internetarchive (and even YouTube), watchable from a bespoke interface.
https://wikis.world/@magnusmanske/111743082678277750
What a cool project! This could make public domain movies much more accessible for all kinds of users.
Learn more on the WikiFlix Help page.
This is an extension of the very common find ... -exec grep ... {} \;
construct I use almost daily to find which files contain a particular text string.
Now, let's say you're looking for files in all your Ansible roles containing the string ppa:
, because you want to create a new role using a suitable existing role as a template. In this case, I think most recently modified is an excellent proxy for suitability.
Thus, the challenge: can we tack on something to the find ... grep
construct such that the output shows matching files in order of most recently modified?
taha@asks2:~
$ cd /media/bay/taha/projects/ansible && find . -not -path '*/legacy/*' -type f -name "*.yml" -exec grep -il "ppa:" {} \; -printf "%T+ %p\n" | grep -v "^\\./.*" | sort && cd $OLDPWD
2021-06-09+22:27:20.6889730070 ./roles/public/php-versions/tasks/setup-Debian.yml
2022-01-09+07:39:51.1836426130 ./roles/public/java-openjdk/tasks/ppa.yml
2022-02-23+15:33:13.2318546100 ./roles/dev/deluge/tasks/install.yml
2022-03-31+04:42:16.5644336650 ./roles/dev/editor-notepadqq/tasks/main.yml
2022-05-09+15:21:01.7974094830 ./roles/dev/qownnotes/tasks/main.yml
2022-06-25+02:46:13.0580097480 ./playbooks/workstation/roles/boot-grub/tasks/main.yml
2022-06-25+02:46:18.2940273650 ./roles/dev/libreoffice/tasks/main.yml
2022-07-03+00:16:44.5563131800 ./roles/dev/shutter/tasks/main.yml
2022-07-04+20:35:15.6128270470 ./roles/dev/magnus/tasks/main.yml
2022-07-14+21:09:01.6502524570 ./roles/dev/flatpak-remote/tasks/main.yml
2022-07-14+22:05:43.3325667290 ./roles/public/firejail/tasks/install.yml
2022-07-16+13:42:04.3756138100 ./roles/public/variety/tasks/main.yml
2022-07-16+22:05:52.0552035060 ./roles/public/browser-chromium/tasks/install.yml
2022-07-21+00:14:51.1137716920 ./roles/public/foliate-ebookreader/tasks/ppa.yml
2022-07-21+03:07:42.2876610030 ./roles/public/graphics-driver-nvidia/tasks/install.yml
2022-07-21+06:05:27.4514643180 ./roles/public/foliate-ebookreader/tasks/flatpak.yml
2022-07-23+18:32:46.8466638700 ./roles/dev/handbrake/tasks/main.yml
2022-08-12+00:09:51.6575729520 ./roles/dev/x2goclient/tasks/main.yml
2022-08-19+15:28:49.5605481840 ./roles/dev/x2goserver/tasks/main.yml
2022-11-04+11:35:14.6208169990 ./roles/public/python3/tasks/python-ppa.yml
2022-11-19+03:16:16.7832183030 ./roles/public/browser-firefox/tasks/main.yml
2022-12-24+23:04:01.2033026010 ./roles/public/R/tasks/dependencies.yml
2022-12-31+19:38:32.9105553030 ./roles/public/digikam/tasks/install-ppa.yml
2023-01-01+01:39:08.2045090970 ./roles/public/digikam/tasks/install-appimage.yml
2023-01-14+00:44:34.8526187360 ./roles/public/java-openjdk/defaults/main.yml
2023-01-26+14:10:18.9247087870 ./roles/public/ansible/tasks/main.yml
2023-01-26+16:14:59.9903243110 ./roles/public/sioyek-pdf/defaults/main.yml
2023-05-12+12:01:30.4705549280 ./roles/public/mpv/tasks/install.yml
2023-05-13+00:47:41.1561557100 ./roles/public/nextcloud-desktop/tasks/main.yml
2023-08-27+18:19:44.8291334420 ./roles/public/digikam/defaults/main.yml
Eureka!
Explainer
- the initial
cd <path-parent>
ensure that the resulting paths displayed byfind
don't contain the<path-parent>
part (to avoid cluttering the output), and the finalcd $OLDPWD
just make sure that the bash prompt is not changed to<path-parent>
. - unless you want to exclude some path from the search, there is obviously no need for
-not -path '*/<some-path>/*'
. grep -i
for case insensitive matching, and-l
(that's the letterl
for list) makesgrep
print only the filename and not each matching line (this is crucial for this hack to work, we wantgrep
to produce as little output as possible, in fact, if I could figure out a way to silencegrep
altogether I would have, but I couldn't).-printf "%T+ %p\n"
adds the filemtime
to the output (on a new line). Thanks angus@Unix.SE.
At this point, an example of the unfinished product is order. Before sorting, and before the final grep -v
, the output looks like this (excerpt):
taha@asks2:~
$ cd /media/bay/taha/projects/ansible && find . -not -path '*/legacy/*' -type f -name "*.yml" -exec grep -il "ppa:" {} \; -printf "%T+ %p\n" && cd $OLDPWD
./roles/public/java-openjdk/defaults/main.yml
2023-01-14+00:44:34.8526187360 ./roles/public/java-openjdk/defaults/main.yml
./roles/public/java-openjdk/tasks/ppa.yml
2022-01-09+07:39:51.1836426130 ./roles/public/java-openjdk/tasks/ppa.yml
./roles/public/browser-firefox/tasks/main.yml
2022-11-19+03:16:16.7832183030 ./roles/public/browser-firefox/tasks/main.yml
./roles/public/R/tasks/dependencies.yml
2022-12-24+23:04:01.2033026010 ./roles/public/R/tasks/dependencies.yml
./roles/public/browser-chromium/tasks/install.yml
2022-07-16+22:05:52.0552035060 ./roles/public/browser-chromium/tasks/install.yml
./roles/dev/x2goclient/tasks/main.yml
2022-08-12+00:09:51.6575729520 ./roles/dev/x2goclient/tasks/main.yml
with the grep
output on its own line, followed by the time-stamped output of printf
. Like I said, it would have been better if we could somehow silence the grep
output at this point. If you know a way, feel free to let me know!
As expected, sorting resulted in the non-time-stamped lines dangling about like some unwanted appendage:
taha@asks2:~
$ cd /media/bay/taha/projects/ansible && find . -not -path '*/legacy/*' -type f -name "*.yml" -exec grep -il "ppa:" {} \; -printf "%T+ %p\n" && cd $OLDPWD
2022-01-09+07:39:51.1836426130 ./roles/public/java-openjdk/tasks/ppa.yml
2022-07-16+22:05:52.0552035060 ./roles/public/browser-chromium/tasks/install.yml
2022-08-12+00:09:51.6575729520 ./roles/dev/x2goclient/tasks/main.yml
2022-11-19+03:16:16.7832183030 ./roles/public/browser-firefox/tasks/main.yml
2022-12-24+23:04:01.2033026010 ./roles/public/R/tasks/dependencies.yml
2023-01-14+00:44:34.8526187360 ./roles/public/java-openjdk/defaults/main.yml
./roles/public/java-openjdk/tasks/ppa.yml
./roles/public/browser-chromium/tasks/install.yml
./roles/dev/x2goclient/tasks/main.yml
./roles/public/browser-firefox/tasks/main.yml
./roles/public/R/tasks/dependencies.yml
./roles/public/java-openjdk/defaults/main.yml
At this point I was out of ideas, so grep -v ...
it was, and we end up with the one-liner shown above. It's an ugly hack, but hey, it works :-)
Bash 5.1 on Ubuntu 22.04.3, with GNU find 4.8.0, GNU grep 3.7, and GNU sort 8.32.
Energisystemet är alltid i balans. Det betyder att den tillförda energin alltid är lika stor som den använda energin, inklusive förluster.
Via Energimyndigheten.
[...] Reddit cut off public access to Pushshift this summer, so Redditmap.social can only use data generated early this year.
From the blog post "How Big is YouTube?" by Ethan Zuckerman.
It really is time to learn to use a more open platform, preferably a Fediverse-compatible one.
Thanks mnalis for posting the fix on the Github issue thread. I had spent time fruitlessly trying the Nextcloud app settings, permissions settings, and other stuff, but nothing had any effect - auto upload would not trigger.
Under Android Settings / User & accounts / Nextcloud / Sync
the options File sync
was OFF
! I toggled it ON
and the thing started uploading photos immediately.
This is just a quick-and-dirty one-liner. I was compiling beamer slides, and for some reason the TikZ-generated PDF figures contained two pages under some circumstances. This way we can quickly see whether just some PDF files or all of them suffered a problem:
$ find figure/ -type f -name "*.pdf" -exec pdftk "{}" dump_data \; | grep NumberOfPages | awk '{print $2}'
1
1
1
1
1
1
(in this case they were all one page long).
This is just awesome! An open source magnetic stir heating plate!
Dr Erik Johansson (Uppsala universitet) ger i denna korta video en beskrivning av kvantprickar med anledning av årets nobelpris i kemi.
A very nice resource!
I found it while reading up on presentation software (pdfpc and such).
Det första föredraget av Petter Falk (doktorand på Karlstads universitet) var riktigt bra. Man får hoppas Trafikverket lyssnar.
Really nice work by Steve Byrnes. Very useful.
Archived.
I keep getting annoyed by Doodle. In this latest example, it proved impossible to change the shown "name" as guest user once my answer was submitted, despite it being possible to change everything else, or even decline. (I wanted to make use of the "name" field to include a single-word message to the organizer.) And when logged in the name field never even showed up during the answer flow.
Alternatives to Doodle
- https://crab.fit (it's FOSS, source code on Github)
- https://framadate.org/abc/en (FOSS, by the well-known French organization Framasoft)
- https://datumprikker.nl (not FOSS, but perhaps convenient since it offers Google and Apple apps). Don't forget to change to English in the menu.
Self-hostable alternatives
- https://github.com/lukevella/Rallly >2k stars, on v3.3.0, built on Next.js. Reddit thread.
- https://github.com/kellerben/dudle >300 stars, on v1.2, built on Ruby. Reddit thread.
- Nextcloud may have some doodle-like app (I haven't checked).
- https://www.nytimes.com/2023/10/15/business/nigeria-fertilizer-shortage.html Behind paywall, inaccessible. Intro to the article here, what appears to be the full article here. Via chemjobber.
- https://www.poynter.org/reporting-editing/2022/world-food-supply-threatened-global-fertilizer-shortage/
African farmers on average use the least fertilizer per acre in the world and have some of the lowest yields, particularly for corn and other grains that provide the bulk of the continent’s calories. As a result, despite having 60 percent of the world’s arable land, almost half the countries in Africa depends on imported wheat from Russia and Ukraine, with 14 African countries getting more than half their wheat from the two warring nations.
- https://www.nationalgeographic.com/environment/article/global-food-crisis-looms-as-fertilizer-supplies-dwindle National Geographic, 2023-05-23
First farm in Kenya to produce fossil-free fertilizer (ammonia from renewably produced hydrogen), built by US startup firm Talus Renewables. Yale Environment 360 Magazine, 2023-10-11.
- https://www.businessinsider.com/fertilizer-shortage-is-at-the-heart-of-pending-food-crisis-2022-8 Business Insider, 2022-08-01
- https://nelhydrogen.com/press-release/awarded-iberdrola-contract-for-20-mw-green-fertilizer-project-in-spain/
- https://africafertilizer.org - slightly suspect website, but might contain useful data.
avtal med företaget ArkivIT om drift och support av ett e-arkivsystem baserat på programvarorna Archivematica och AtoM (Access to Memory)
Hösten 2021 gick det Enskilda e-arkivet med Arkiv Sörmland i spetsen in i slutfasen för E-arkivportalen. Tanken är att portalen ska nyttjas av föreningar som vill arkivera digitalt material som i första hand tillkommit digitalt. Det kan röra sig om hemsidor, sociala medier, mailkorrespondens, avtal, räkenskaper, fotografier, videofiler, och mycket mer.
UNIDO's (UN Industrial Development Organization) projects and programmes at a glance. Has a really nice by country explorer.
Unfortunately neither the UNIDO website nor its Open Data platform appear to feature any RSS feeds.
I takt med att prisjakt försämras och dag för dag blir mindre användbart (senaste försämringen var Cloudflare "säkerhetskontroll" när man klickar på en produktlänk för att "gå till butik"...) blir det tyvärr nödvändigt att hålla en egen lista över återförsäljare och dylikt.
- https://www.alina.se, säljer även begagnat
- http://combitdata.se
- https://www.computersalg.se, säljer även begagnat
- https://www.dustin.se
- https://www.datagrottan.se, säljer även begagnat
- https://elektronik24.se
- https://www.inet.se, säljer även begagnat
- https://www.komplett.se
- https://net2world.se, säljer även begagnat
- https://www.netonnet.se, säljer även begagnat
- http://www.netvaruhuset.com/se
- https://www.proshop.se, säljer även begagnat
- https://www.senetic.se
- https://www.verbit.se
- https://www.westium.com
- https://www.shift.eco/en (repairable phones and related electronics, such as soundbars...)
Manufacturers
Aggregators (they pretend to be markets, terms may vary)
Let's say you have a very large Zotero library, from which you export a likewise large BibLaTeX file, say full-library.bib
.
In your document you load that large BIB-file (because that's easy), \addbibresource{full-library.bib}
, but naturally cite only a subset of works.
Now you want to share the source code for this document with someone else, and provide them with a BIB-file so they can recompile it if they wish. Can we produce a BIB-file containing only the entries that were actually cited in the document?
Yes, we can. biber
has built-in support for this scenario. Just make sure your latest compilation produced a proper .bcf
file, then:
biber --output_format=bibtex --output_resolve document.bcf
which will create document_biber.bib
, a properly formatted BibLaTeX BIB-file containing only the subset of works from your library that were actually cited in this document.
I'm afraid I don't remember where I learned this.
This is cool, research data on SND is now indexed and findable via the Swedish data portal.