Author Archives: Fred

Concat MP3s into one

https://github.com/mxdpeep/linux-bash-scripts/blob/master/concat_mp3.sh

#!/bin/bash

for i in *
do
  if [ ! -d "$i" ]; then continue; fi # not a directory
  if [ -f "$i.mp3" ]; then continue; fi # file exists
  cd "$i"
  echo -en "Processing: $i\n\n"
  ls *.mp3 | sed -e "s/\(.*\)/file '\1'/" | ffmpeg -protocol_whitelist 'file,pipe' -f concat -safe 0 -i - -c copy "../$i.mp3"
  cd ..
done

Batch run WP-CLI on Docker containers


list themes:

docker ps -f "ancestor=wordpress" --format "{{.Names}}" | xargs -I % \
  sh -c 'echo "\n\n%\n"; docker exec % wp --allow-root theme list'

update all themes:

docker ps -f "ancestor=wordpress" --format "{{.Names}}" | xargs -I % \
  sh -c 'echo "\n\n%\n"; docker exec % wp --allow-root theme update --all'

Caustic 3

Caustic 3 is a music creation tool (DAW) inspired by rack-mount synthesizers and samplers rigs.

Software archive: https://drive.google.com/drive/folders/11htZDE018DALJhyO9Mup9EEK6SXwtWGK
(Windows version runs smoothly under Linux Wine)

Discussion about Caustic 3 on Reddit: https://www.reddit.com/r/CausticDAW

Caustic 3 YouTube channel: https://www.youtube.com/channel/UCcM7HcMAhmhaLNX80o4FFRA

WordPress in Docker

GS Cloud runs this blog and many others as Docker containers.

Repository: docker_wordpress Demo: wordpress-in-docker.mxd.cz

WordPress in Docker consists of three service containers: WordPress, MariaDB and phpMyAdmin.

WordPress and MariaDB use local volumes to store persistent data. PMA and WordPress are enhanced with uploads.ini injection to modify the default PHP settings. Both WordPress and PMA containers connect directly to the MariaDB container. There’s also a WP-CLI phar available as “wp” in the WordPress container.

WordPress output is then passed through Apache 2.4 proxy with Cloudflare certificates (not part of the demo).

Convert Ogg Vorbis files to MP3

Nejprve je důležité mít nainstalovaný ffmpeg, můžete si vybrat ze dvou jednoduchých způsobů (Ubuntu).

  1. pomocí APT:

sudo apt-get install -yq ffmpeg

2. pomocí Snapu:

snap install ffmpeg

A pak už je to snadné:

for i in *.ogg; do ffmpeg -i "$i" "${i%.ogg}.mp3"; done

Jak se mi programovalo ve Windows

Článek je shrnutím mého dvouletého programování pod operačním systémem Windows 10 🙂 Ze všeho nejdůležitější je správně si připravit vývojové prostředí a vymazlit operační systém. Protože mi nevyhovuje standardní tlačítko Start, používám výborný doplněk Classic Start Menu (classic-shell).

Nejlepším souborovým manažerem je pro mě už zhruba 20 let Far Manager, ten používali i téměř všichni programátoři a skripteři v Pterodonu ještě před Vietcongem 🙂

OKAMŽITĚ jsem se zbavil zastaralé příkazové řádky cmd.exe a nahradil ji nástrojem Clink. Odkaz na něj v Classic Start Menu  je dobré upravit tak, aby se vždy spouštěl jako Administrátor (k ničemu jinému se stejně nehodí).

Používám CLI správce programů Chocolatey. Ten spouštím v Clinku a většinou si vystačím s příkazy “choco upgrade all -y” nebo “choco install app -y“. Možnost rychle aktualizovat většinu programů, na což jsem z Ubuntu zvyklý, ocení každý programátor, protože těch různých drobných prográmků má určitě desítky…

Seznam programů, které doporučuji pomocí “čoka” nainstalovat:

  1. 7zip – archiver
  2. Bitnami-XAMPP – Windows verze LAMP stacku
  3. classic-shell – Classic Start Menu
  4. clink (aktualizovat jej musíte z cmd.exe)
  5. docker-cli (pouze pro Windows 10 Professional, používá Hyper-V)
  6. docker-desktop (pouze pro Windows 10 Professional, používá Hyper-V)
  7. git
  8. gitextensions
  9. nodejs
  10. nvm.portable – Node Version Manager
  11. notepadplusplus – editor Notepad++ se hodí pro práci s velkými textovými soubory
  12. winscp
  13. yarn

Jako integrované vývojové prostředí (IDE) používám Visual Studio Code (VSCode), které je napsané ve frameworku electron a vyniká především vysokou rychlostí práce. Také se velmi snadno rozšiřuje o doplňky.

Neboť jsem odchovaný Unixem (posléze Linuxem), tak většinu operací pouštím pod Ubuntu WSL, který lze nově pod Windows 10 provozovat formou Windows Subsystem for Linux (WSL). WSL v1 nepotřebuje Hyper-V, takže funguje i pod Windows Home.