216 lines
6.5 KiB
Markdown
216 lines
6.5 KiB
Markdown
|
|
||
|
# UNIX FOR ARTISTS
|
||
|
### Fun with FFMPEG
|
||
|
|
||
|
## Requirements
|
||
|
|
||
|
The following applications and runtime environments are needed to run the scripts used in the workshop.
|
||
|
Installation instructions are available below, broken down by operating system.
|
||
|
|
||
|
* [Bash](https://www.gnu.org/software/bash/) - *You probably have it already!*
|
||
|
* [FFMPEG](https://www.ffmpeg.org/)
|
||
|
* [ImageMagick](https://imagemagick.org/index.php)
|
||
|
* [Youtube-dl](https://ytdl-org.github.io/youtube-dl/index.html)
|
||
|
* [Golang](https://golang.org/)
|
||
|
* \*[Python3](https://www.python.org/downloads/) (*optional*)
|
||
|
* \*[Node.js](https://nodejs.org/en/) (*optional*)
|
||
|
|
||
|
It's very helpful to have a text editor that you can comfortably read and edit scripts in.
|
||
|
This selection of text editors ranges from free and open source to "free to use" and "free to try".
|
||
|
You can also use TextEdit or Notepad or any text editing application you prefer as long as it's capable of editing in plaintext.
|
||
|
|
||
|
* [Atom](https://atom.io/) - Free. *macOS, Windows and Linux.*
|
||
|
* [GNU Emacs](https://www.gnu.org/software/emacs/download.html) - Free. *Linux, macOS and Windows.*
|
||
|
* [Visual Studio Code](https://code.visualstudio.com/download) - Free. *macOS, Windows and Linux.*
|
||
|
* [Sublime Text 3](https://www.sublimetext.com/3) - Free to evaluate. *macOS, Windows and Linux.*
|
||
|
* [Notepad++](https://notepad-plus-plus.org/downloads/) - Free to use. *Windows only.*
|
||
|
* [BBEdit](http://www.barebones.com/products/bbedit/download.html) - Freemium. *macOS only.*
|
||
|
|
||
|
-------
|
||
|
|
||
|
## macOS
|
||
|
|
||
|
![The macOS Terminal](img/mac_terminal.png "The macOS Terminal")
|
||
|
|
||
|
Open the Terminal app located in your Applications folder.
|
||
|
Bash 3.2 is available by default on macOS.
|
||
|
|
||
|
|
||
|
##### Install Homebrew
|
||
|
|
||
|
Go to [https://brew.sh](https://brew.sh) and run the command under the "Install Homebrew" heading after pasting it into your Terminal.
|
||
|
|
||
|
You will be asked to confirm a few things while Homebrew installs.
|
||
|
|
||
|
Once the installation process is complete you can install the applications we will be using in this workshop by running the following commands:
|
||
|
|
||
|
```bash
|
||
|
brew install ffmpeg imagemagick youtube-dl
|
||
|
```
|
||
|
|
||
|
Optionally, you can install Node.js for a single example that we will be covering in the workshop.
|
||
|
|
||
|
```bash
|
||
|
brew install node
|
||
|
```
|
||
|
|
||
|
Make sure that you have a compatible version of Python installed by running the following command:
|
||
|
|
||
|
```bash
|
||
|
python3 --version
|
||
|
```
|
||
|
|
||
|
It should print out a value similar to `Python 3.8.2`.
|
||
|
Anything higher than 3.7.0 will work.
|
||
|
|
||
|
##### Install Golang on macOS
|
||
|
|
||
|
Go to the [Golang download site](https://golang.org/doc/install).
|
||
|
|
||
|
Select the "Mac" tab under "2. Go install." if not already selected and download the .pkg installer using the "Download Go for Mac" button.
|
||
|
|
||
|
Open the installer and follow the instructions.
|
||
|
|
||
|
Confirm that Go is installed by running the following command in Terminal:
|
||
|
|
||
|
```bash
|
||
|
go version
|
||
|
```
|
||
|
|
||
|
If Golang has been installed correctly you can now install `primitive`.
|
||
|
|
||
|
```bash
|
||
|
go get -u github.com/fogleman/primitive
|
||
|
```
|
||
|
|
||
|
-------
|
||
|
|
||
|
## Windows 10
|
||
|
|
||
|
Windows has its own command-line interpreter, but in order to keep code and examples consistent across different operating systems you will need to install the Windows Subsystem for Linux (WSL).
|
||
|
|
||
|
##### Enable WSL
|
||
|
|
||
|
Open the "Turn Windows Features on or off" dialog by searching in your command bar.
|
||
|
|
||
|
![Turn Windows features on or off](img/windows_10_turn_windows_features.png "Turn Windows features on or off")
|
||
|
|
||
|
Enable "Virtual Machine Platform" and "Windows Subsystem for Linux" by selecting the checkboxes next to the items and hit "OK".
|
||
|
|
||
|
![Enable WSL and Virtual Machine Platform](img/windows_10_enable.png "Enable WSL and Virtual Machine Platform")
|
||
|
|
||
|
Restart your computer for changes to apply.
|
||
|
|
||
|
|
||
|
##### Install Ubuntu 20.04 LTS
|
||
|
|
||
|
Open the Microsoft Store and search for "Ubuntu".
|
||
|
For the latest LTS version, install `Ubuntu 20.04`.
|
||
|
|
||
|
![Install Ubuntu 20.04](img/windows_10_install.png "Install Ubuntu 20.04 through the Microsoft Store")
|
||
|
|
||
|
Other versions of Ubuntu or openSUSE may work, but will be subject to differences in behavior.
|
||
|
|
||
|
![Select the Ubuntu shell](img/windows_10_ubuntu.png "Select the Ubuntu shell")
|
||
|
|
||
|
Once you've installed Ubuntu, you can open the shell and begin running commands using Bash.
|
||
|
|
||
|
|
||
|
##### Install Requirements on Windows 10
|
||
|
|
||
|
![The Ubuntu shell on Windows 10](img/windows_10_terminal.png "The Ubuntu shell on Windows 10")
|
||
|
|
||
|
You can now run the following commands to install the applications for this workshop:
|
||
|
|
||
|
```bash
|
||
|
sudo apt update
|
||
|
sudo apt install -y ffmpeg imagemagick youtube-dl
|
||
|
```
|
||
|
|
||
|
Optionally install Node.js.
|
||
|
|
||
|
```bash
|
||
|
sudo apt install -y nodejs npm
|
||
|
```
|
||
|
|
||
|
|
||
|
##### Install Golang on Windows 10
|
||
|
|
||
|
Go to the [Golang download site](https://golang.org/doc/install).
|
||
|
|
||
|
Select the "Windows" tab under "2. Go install." if not already selected and download the .msi installer by using the "Download Go for Windows" button.
|
||
|
|
||
|
Confirm that Go is installed by running the following command in your shell:
|
||
|
|
||
|
```bash
|
||
|
go version
|
||
|
```
|
||
|
|
||
|
If Golang has been installed correctly you can now install `primitive`.
|
||
|
|
||
|
```bash
|
||
|
go get -u github.com/fogleman/primitive
|
||
|
```
|
||
|
|
||
|
-------
|
||
|
|
||
|
Additional tutorials for installing Bash on Windows 10.
|
||
|
|
||
|
* [How to Install Linux Bash Shell on Windows 10](https://itsfoss.com/install-bash-on-windows/)
|
||
|
* [Install Bash on Windows 10](https://bayton.org/docs/linux/ubuntu/install-bash-on-windows-10-build-14316/)
|
||
|
|
||
|
-------
|
||
|
|
||
|
## Linux
|
||
|
|
||
|
Open up your preferred terminal application and install the required applications on a Debian-based system.
|
||
|
|
||
|
```bash
|
||
|
sudo apt install -y ffmpeg imagemagick youtube-dl
|
||
|
```
|
||
|
|
||
|
Or, if your distribution uses the `yum` package manager.
|
||
|
|
||
|
```bash
|
||
|
yum install ffmpeg imagemagick youtube-dl
|
||
|
```
|
||
|
|
||
|
Optionally install Node.js.
|
||
|
|
||
|
```bash
|
||
|
sudo apt install -y nodejs npm
|
||
|
```
|
||
|
Or using yum.
|
||
|
|
||
|
```
|
||
|
yum install nodejs
|
||
|
```
|
||
|
|
||
|
##### Install Golang on Linux
|
||
|
|
||
|
Go to the [Golang download site](https://golang.org/doc/install).
|
||
|
|
||
|
Select the "Linux" tab under "2. Go install." if not already selected and download the .tar.gz archive using the "Download Go for Linux" button.
|
||
|
|
||
|
Navigate to the folder you downloaded the archive into.
|
||
|
For the following commands, `go1.16.3.linux-amd64.tar.gz` can be replaced by the filename of the version that you just downloaded.
|
||
|
|
||
|
```bash
|
||
|
sudo rm -rf /usr/local/go
|
||
|
sudo tar -C /usr/local -xzf go1.16.3.linux-amd64.tar.gz
|
||
|
export PATH=$PATH:/usr/local/go/bin
|
||
|
```
|
||
|
|
||
|
Either restart your terminal or run the command `source $HOME/.profile` to apply the changes just made to your system.
|
||
|
|
||
|
Confirm that Go is installed by running the following command:
|
||
|
|
||
|
```bash
|
||
|
go version
|
||
|
```
|
||
|
|
||
|
If Golang has been correctly installed you can now install `primitive`.
|
||
|
|
||
|
```bash
|
||
|
go get -u github.com/fogleman/primitive
|
||
|
```
|