How To Use Linux For Language Learning (Setup And Ricing)

  • Donovan Nagel
    Written byDonovan Nagel
    Donovan NagelTeacher, translator, polyglot
    🎓 B.A., Theology, Australian College of Theology, NSW
    🎓 M.A., Applied Linguistics, University of New England, NSW

    Applied Linguistics graduate, teacher and translator. Founder of The Mezzofanti Guild and Talk In Arabic.
  • Read time4 mins
  • Comments4
How To Use Linux For Language Learning (Setup And Ricing)

I decided to do something a little unusual over the next few weeks.

Recently I decided to revisit and update one of my old tutorials called How To Install Learning With Texts On Your Own Computer (here).

It’s an open source LingQ clone that a guy put together way back in 2011 (it was popularized and briefly hosted by Fi3M).

Despite its age, it’s still one of the most useful and innovative programs available in my opinion. The how-to that I put together is still one of the most popular articles I’ve written in fact even though I wrote it years ago (I’ll cover it in an upcoming video).

As I was looking at it, I had a fun idea to put together some short screencasts of my Linux setup for language learning.

I know it may only interest a small number of people but I think it’s a topic worth covering as Linux is the preferred OS of many language learners including myself.

There’s nothing groundbreaking in these screencasts and I haven’t provided any detailed tutorials on how to set things up but I’ll be happy to provide it if there’s enough interest.

Expect several of these screencasts to follow.

Part 1: mpd, ncmpcpp + trans with Assimil

OS: Arch Linux
WM: i3 (i3-gaps to be specific)
Software: mpd + ncmpcpp + trans
Also: Assimil Russian (the same package I reviewed here)

Note that as I intimate in the video, most of this can be achieved in a thousand different ways and there are no special secrets here.

I guess you could call them my own personal efficiency or productivity hacks in a sense.

The two main reasons why this particular setup works for me:

  1. Simplicity and minimal distraction.
  2. Accessibility. Since I can connect to it from anywhere, I can have this database of language learning course material on my home PC and listen to it from my mobile while driving or a laptop in a coffee shop (provided I leave my computer on when I go out). No cloud. No mobile storage.

As I said in the video, Assimil is exceptional for this kind of thing because they’ve done an amazing job naming their MP3’s correctly.

It’s also a great way to use Glossika.

Part 2: youtube-dl, mpv, qutebrowser + ranger bindings

In this screencast, I get into some of the joys of key bindings in qutebrowser and ranger.

Setting a few quick bindings with youtube-dl and mpv, you can make some fun little convenience hacks when working with videos on YouTube and subtitles to build your own collection of learning material.

In particular, I show how I’m attempting to use some simple scripts to automatically download, edit and load media content (incl. transcripts) directly into tools like Learning With Texts (see my next video).

One of the beautiful things about using Linux is that you can set up a swathe of useful scripts to save yourself a lot of time.

OS: Arch Linux
WM: i3 (i3-gaps to be specific)
Software: youtube-dl, mpv, qutebrowser, ranger
Also: AnkiSRS

The purpose of this particular setup:

  1. Speed and convenience. While there are sites out there that help you save videos and subs from YouTube, I prefer to be able hit a key and have it all automatically save, automatically edit and automatically add itself straight into a learning app like LWT.
  2. Minimizing distraction. Accessing learning content without the excessive distraction of sites like YouTube.
  3. Accessibility. Being able to build a learning material database and making it accessible to all my own devices.

Part 3: LWT, mpv, qutebrowser

In this video I show you a few things I’m working on to improve the usability of Learning With Texts.

One is purely asthetic – just trying to make LWT look a little less plain and blend in with the color scheme of my desktop automagically.

The rest is me showing you how I’ve been attempting to add a video component to LWT and further automate the process of adding new texts/media to learn with. Last week I said I was trying to find a way to clean up the subtitle files I’d downloaded with keybindings.

Here I demonstrate that working.

OS: Arch Linux
WM: i3 (i3-gaps to be specific)
Software: LWT (How-to), youtube-dl, mpv, qutebrowser, ranger

Bash script used to clean up a subtitle file so it can be used in Learning With Texts:

for file in $files ; do  
echo “Processing $file”  
sed -i “/\[0-2\]\[0-9\]:\[0-5\]\[0-9\]:\[0-5\]\[0-9\].\*\\-\\->.\*\[0-2\]\[0-9\]:\[0-5\]\[0-9\]:\[0-5\]\[0-9\].\*/d” “$file” && tail -n +5 “$file” > “$file.tmp” && mv “$file.tmp” “$file”  
text=$(cat “$file”)


The purpose of this particular setup:

  1. Make LWT look pretty. Because why not!
  2. Automate adding media and texts. To speed up the process of adding new material to learn from and make it easy to add videos to Learning With Texts (currently only audio works).

Does this style of post/video interest you?

Make sure to let me know in the comment section so I know if I should do more of it in the future (or not!). 🙂

🎓 Cite article

Share link Grab the link to this article
Copy Link
The Mezzofanti Guild



Who is this?The Mezzofanti Guild
Cardinal MezzofantiCardinal Guiseppe Mezzofanti was a 19th century polyglot who is believed to have spoken at least 39 languages!Learn more
Support me by sharing:
  • Reddit share
  • Facebook share
  • X / Twitter share

Let me help you learn a language

Donovan Nagel
Donovan Nagel - B. Th, MA AppLing
I'm an Applied Linguistics graduate, teacher and translator with a passion for language learning (especially Arabic).
Currently learning: Greek


Comment Policy: I love comments and feedback (positive and negative) but I have my limits. You're in my home here so act accordingly.
NO ADVERTISING. Links will be automatically flagged for moderation.
Donovan Nagel

Donovan Nagel

Hey Peter,
Sorry I never replied to this comment. Must have missed it or forgotten about it.
Thanks for your feedback.
Have you seen my other YouTube channel? Here.



I’m very interested in learning more about using your set up, especially for language hacking but just productivity hacking in general. I currently use windows and I have all my files sync across my 4 computers via microsoft’s onedrive cloud product (like dropbox). I have no experience with Linux but I’ve been using Anki for a few years and just installed LWT with help from your tutorial. Would you be able to point me in the general direction of some resources for gaining familiarity with Linux and other potential hacks, as well as how to build your setup (as you mentioned you might do in the body of the article above) for language hacking specifically with syncing all your mp3 files and creating the youtube downloader and srt file stripper? Anki and LWT have transformed my language learning process and I really like what I’ve seen you do with technology that I haven’t seen anywhere else.

BTW I just listened to all your podcasts on itunes and love the ones on esperanto and brexit (and your Christian influence). I couldn’t agree more. It’s nice to see someone out there whose so ‘transgressive’ and hasn’t drank the proverbial kool-aid ;-)


Donovan Nagel

Donovan Nagel

Thanks Brett.

Merry Christmas to you too.



As someone with zero coding skills, I must say this is pretty impressive!

Merry Christmas

"The limits of my language mean the limits of my world."
- Ludwig Wittgenstein
© The Mezzofanti Guild, 2024. NAGEL PTY LTD. All Rights Reserved.
Join The Guild

Let Me Help You Learn A Language

  • Get my exclusive language learning content delivered straight to your inbox.
  • Learn about the best language resources that I've personally test-driven.
  • Get insider tips for learning languages.

Language you're learning...

No spam. Ever.