Remove tmate as it is no longer maintained.
This commit is contained in:
@ -1,5 +0,0 @@
|
|||||||
set-option -g set-clipboard on
|
|
||||||
set-option -g mouse on
|
|
||||||
set-option -g history-limit 50000
|
|
||||||
set -g tmate-identity "james"
|
|
||||||
set -s escape-time 0
|
|
||||||
38
setup.org
38
setup.org
@ -26,13 +26,13 @@ cd ~/ && mkdir Documents Downloads
|
|||||||
|
|
||||||
Now that we have our home directory done let's install the standard packages we use.
|
Now that we have our home directory done let's install the standard packages we use.
|
||||||
|
|
||||||
#+begin_src tmate
|
#+begin_src tmux
|
||||||
sudo apt install --yes btop nvtop screenfetch git curl wget xclip wl-clipboard xsel emacs xterm xtermcontrol jq tmux tmate apt-transport-https dict gh unrar ripgrep
|
sudo apt install --yes btop nvtop screenfetch git curl wget xclip wl-clipboard xsel emacs xterm xtermcontrol jq tmux apt-transport-https dict gh unrar ripgrep
|
||||||
#+end_src
|
#+end_src
|
||||||
|
|
||||||
For working with container images locally outside of kubernetes clusters we use [[https://podman.io/][~podman~]] so that we can avoid the security problems of a standard docker daemon. Follow the steps below to install podman:
|
For working with container images locally outside of kubernetes clusters we use [[https://podman.io/][~podman~]] so that we can avoid the security problems of a standard docker daemon. Follow the steps below to install podman:
|
||||||
|
|
||||||
#+begin_src tmate
|
#+begin_src tmux
|
||||||
# Add the repositories to our apt sources
|
# Add the repositories to our apt sources
|
||||||
echo "deb https://download.opensuse.org/repositories/devel:/kubic:/libcontainers:/stable/xUbuntu_20.04/ /" | sudo tee /etc/apt/sources.list.d/devel:kubic:libcontainers:stable.list
|
echo "deb https://download.opensuse.org/repositories/devel:/kubic:/libcontainers:/stable/xUbuntu_20.04/ /" | sudo tee /etc/apt/sources.list.d/devel:kubic:libcontainers:stable.list
|
||||||
|
|
||||||
@ -46,7 +46,7 @@ sudo apt update && sudo apt --yes install podman
|
|||||||
When working with kubernetes applications we often use [[https://helm.sh][helm]], unfortunately we need an extra ~apt~ repository for this so let's add that now and install.
|
When working with kubernetes applications we often use [[https://helm.sh][helm]], unfortunately we need an extra ~apt~ repository for this so let's add that now and install.
|
||||||
|
|
||||||
#+NAME: Install helm
|
#+NAME: Install helm
|
||||||
#+BEGIN_SRC tmate
|
#+BEGIN_src tmux
|
||||||
curl https://baltocdn.com/helm/signing.asc | sudo apt-key add -
|
curl https://baltocdn.com/helm/signing.asc | sudo apt-key add -
|
||||||
echo "deb https://baltocdn.com/helm/stable/debian/ all main" | sudo tee /etc/apt/sources.list.d/helm-stable-debian.list
|
echo "deb https://baltocdn.com/helm/stable/debian/ all main" | sudo tee /etc/apt/sources.list.d/helm-stable-debian.list
|
||||||
sudo apt-get update && sudo apt install -y helm
|
sudo apt-get update && sudo apt install -y helm
|
||||||
@ -56,7 +56,7 @@ sudo apt-get update && sudo apt install -y helm
|
|||||||
Finally, we should upgrade the python package manger ~pip~ that we installed, before using it to install [[https://github.com/containers/podman-compose][podman-compose]].
|
Finally, we should upgrade the python package manger ~pip~ that we installed, before using it to install [[https://github.com/containers/podman-compose][podman-compose]].
|
||||||
|
|
||||||
#+NAME: Upgrade pip
|
#+NAME: Upgrade pip
|
||||||
#+BEGIN_SRC tmate
|
#+BEGIN_src tmux
|
||||||
sudo pip install --upgrade pip && sudo pip3 install podman-compose
|
sudo pip install --upgrade pip && sudo pip3 install podman-compose
|
||||||
#+END_SRC
|
#+END_SRC
|
||||||
|
|
||||||
@ -64,7 +64,7 @@ sudo pip install --upgrade pip && sudo pip3 install podman-compose
|
|||||||
For managing secrets we use [[https://bitwarden.com/][bitwarden]] which provides a great [[https://github.com/bitwarden/cli][cli utility]]. Additionally in our [[.bashrc][bashrc]] file included in this repository there are a number of helper functions to make working with ~bw~ easier.
|
For managing secrets we use [[https://bitwarden.com/][bitwarden]] which provides a great [[https://github.com/bitwarden/cli][cli utility]]. Additionally in our [[.bashrc][bashrc]] file included in this repository there are a number of helper functions to make working with ~bw~ easier.
|
||||||
|
|
||||||
#+NAME: Install bitwarden and login
|
#+NAME: Install bitwarden and login
|
||||||
#+begin_src tmate
|
#+begin_src tmux
|
||||||
# Download the latest release
|
# Download the latest release
|
||||||
wget "https://vault.bitwarden.com/download/?app=cli&platform=linux" --output-document "bw.zip"
|
wget "https://vault.bitwarden.com/download/?app=cli&platform=linux" --output-document "bw.zip"
|
||||||
|
|
||||||
@ -81,7 +81,7 @@ For ad-hoc system administration we use [[https://deb.nodesource.com/setup_12.x
|
|||||||
For significant ansible or python projects a virtual environment for python is suggested to keep project packages separate from system python packages.
|
For significant ansible or python projects a virtual environment for python is suggested to keep project packages separate from system python packages.
|
||||||
|
|
||||||
#+NAME: Install ansible via pip
|
#+NAME: Install ansible via pip
|
||||||
#+BEGIN_SRC tmate
|
#+BEGIN_src tmux
|
||||||
pip3 install ansible
|
pip3 install ansible
|
||||||
#+END_SRC
|
#+END_SRC
|
||||||
|
|
||||||
@ -144,7 +144,7 @@ source ~/.bashrc
|
|||||||
Currently ~kubectl~ is packaged separately to ~gcloud~ and other cloud provider tools so let's install that first.
|
Currently ~kubectl~ is packaged separately to ~gcloud~ and other cloud provider tools so let's install that first.
|
||||||
|
|
||||||
#+NAME: Install kubectl
|
#+NAME: Install kubectl
|
||||||
#+begin_src tmate
|
#+begin_src tmux
|
||||||
sudo apt-get update && sudo apt-get install -y apt-transport-https ca-certificates curl
|
sudo apt-get update && sudo apt-get install -y apt-transport-https ca-certificates curl
|
||||||
|
|
||||||
sudo curl -fsSLo /usr/share/keyrings/kubernetes-archive-keyring.gpg https://packages.cloud.google.com/apt/doc/apt-key.gpg
|
sudo curl -fsSLo /usr/share/keyrings/kubernetes-archive-keyring.gpg https://packages.cloud.google.com/apt/doc/apt-key.gpg
|
||||||
@ -159,7 +159,7 @@ sudo apt-get update && sudo apt-get install -y kubectl
|
|||||||
For working with google cloud platform we use the [[https://cloud.google.com/sdk/][GCP SDK]], which provides our cli tools.
|
For working with google cloud platform we use the [[https://cloud.google.com/sdk/][GCP SDK]], which provides our cli tools.
|
||||||
|
|
||||||
#+NAME: Install google cloud sdk
|
#+NAME: Install google cloud sdk
|
||||||
#+BEGIN_SRC tmate
|
#+BEGIN_src tmux
|
||||||
# Download the sdk archive
|
# Download the sdk archive
|
||||||
curl -o gcpsdk.tar -O https://dl.google.com/dl/cloudsdk/channels/rapid/downloads/google-cloud-sdk-375.0.0-linux-x86_64.tar.gz
|
curl -o gcpsdk.tar -O https://dl.google.com/dl/cloudsdk/channels/rapid/downloads/google-cloud-sdk-375.0.0-linux-x86_64.tar.gz
|
||||||
|
|
||||||
@ -181,7 +181,7 @@ sudo chown -R $USER:$USER /usr/local/google-cloud-sdk
|
|||||||
For working with [[https://aws.com][Amazon Web Services]] we need the [[https://docs.aws.amazon.com/cli/latest/userguide/install-cliv2-linux.html][AWS CLI]].
|
For working with [[https://aws.com][Amazon Web Services]] we need the [[https://docs.aws.amazon.com/cli/latest/userguide/install-cliv2-linux.html][AWS CLI]].
|
||||||
|
|
||||||
#+NAME: Install amazon web services cli
|
#+NAME: Install amazon web services cli
|
||||||
#+BEGIN_SRC tmate
|
#+BEGIN_src tmux
|
||||||
# Download the binary
|
# Download the binary
|
||||||
cd ~/Downloads/
|
cd ~/Downloads/
|
||||||
curl "https://awscli.amazonaws.com/awscli-exe-linux-x86_64.zip" -o "awscliv2.zip"
|
curl "https://awscli.amazonaws.com/awscli-exe-linux-x86_64.zip" -o "awscliv2.zip"
|
||||||
@ -200,7 +200,7 @@ rm -rf ~/Downloads/aws*
|
|||||||
Some of my project work involves working with [[https://nodejs.org/en][nodejs]] and for package management namely we sometimes use [[https://www.npmjs.com/][node package manager]]. The code below installs node ~16.x~, which is the latest stable release as of <2022-09-16 Fri>.
|
Some of my project work involves working with [[https://nodejs.org/en][nodejs]] and for package management namely we sometimes use [[https://www.npmjs.com/][node package manager]]. The code below installs node ~16.x~, which is the latest stable release as of <2022-09-16 Fri>.
|
||||||
|
|
||||||
#+NAME: Install nodejs
|
#+NAME: Install nodejs
|
||||||
#+BEGIN_SRC tmate
|
#+BEGIN_src tmux
|
||||||
# Curl down the shell script for adding version 16 of nodejs to apt
|
# Curl down the shell script for adding version 16 of nodejs to apt
|
||||||
sudo curl -sL https://deb.nodesource.com/setup_16.x | sudo bash -
|
sudo curl -sL https://deb.nodesource.com/setup_16.x | sudo bash -
|
||||||
|
|
||||||
@ -220,7 +220,7 @@ sudo npm install --global yarn
|
|||||||
An integral part of our pair development workflow is [[https://github.com/humacs/humacs][humacs]]. Below are the instructions to set this up.
|
An integral part of our pair development workflow is [[https://github.com/humacs/humacs][humacs]]. Below are the instructions to set this up.
|
||||||
|
|
||||||
#+NAME: Install and configure humacs
|
#+NAME: Install and configure humacs
|
||||||
#+BEGIN_SRC tmate
|
#+BEGIN_src tmux
|
||||||
# Clone down humacs
|
# Clone down humacs
|
||||||
git clone --recursive https://github.com/jmhbnz/humacs /home/$USER/Downloads/
|
git clone --recursive https://github.com/jmhbnz/humacs /home/$USER/Downloads/
|
||||||
|
|
||||||
@ -243,7 +243,7 @@ As you can see in the screenshot, contextual "segments" are presented in the pro
|
|||||||
To set up this prompt the first thing we need to do is install powerline fonts:
|
To set up this prompt the first thing we need to do is install powerline fonts:
|
||||||
|
|
||||||
#+NAME: Install powerline fonts
|
#+NAME: Install powerline fonts
|
||||||
#+begin_src tmate
|
#+begin_src tmux
|
||||||
# Install the powerline fonts package
|
# Install the powerline fonts package
|
||||||
sudo apt-get install fonts-powerline
|
sudo apt-get install fonts-powerline
|
||||||
|
|
||||||
@ -255,7 +255,7 @@ sudo fc-cache --force --verbose
|
|||||||
Once powerline fonts are installed we need to install simple bash prompt:
|
Once powerline fonts are installed we need to install simple bash prompt:
|
||||||
|
|
||||||
#+NAME: Install simple bash prompt
|
#+NAME: Install simple bash prompt
|
||||||
#+begin_src tmate
|
#+begin_src tmux
|
||||||
# Clone the repository
|
# Clone the repository
|
||||||
git clone https://github.com/jmhbnz/sbp ~/Downloads/sbp/
|
git clone https://github.com/jmhbnz/sbp ~/Downloads/sbp/
|
||||||
|
|
||||||
@ -321,14 +321,14 @@ The [[https://gitlab.com/muttmua/mutt/][mutt]] mail client fills these roles wel
|
|||||||
The first step to setup mutt is to ensure it is installed.
|
The first step to setup mutt is to ensure it is installed.
|
||||||
|
|
||||||
#+NAME: Install mutt
|
#+NAME: Install mutt
|
||||||
#+BEGIN_SRC tmate
|
#+BEGIN_src tmux
|
||||||
sudo apt-get install -y mutt urlscan
|
sudo apt-get install -y mutt urlscan
|
||||||
#+END_SRC
|
#+END_SRC
|
||||||
|
|
||||||
After installing mutt we then need to create configuration directories and files.
|
After installing mutt we then need to create configuration directories and files.
|
||||||
|
|
||||||
#+NAME: Create mutt config files
|
#+NAME: Create mutt config files
|
||||||
#+BEGIN_SRC tmate
|
#+BEGIN_src tmux
|
||||||
mkdir -p ~/.mutt/cache/headers
|
mkdir -p ~/.mutt/cache/headers
|
||||||
mkdir ~/.mutt/cache/bodies
|
mkdir ~/.mutt/cache/bodies
|
||||||
touch ~/.mutt/certificates
|
touch ~/.mutt/certificates
|
||||||
@ -344,13 +344,13 @@ The example provided in this repository utilises the ~bitwarden~ cli utility for
|
|||||||
I've been tinkering with learning the [[https://www.rust-lang.org/][Rust]] programming language lately, to set that up follow these steps:
|
I've been tinkering with learning the [[https://www.rust-lang.org/][Rust]] programming language lately, to set that up follow these steps:
|
||||||
|
|
||||||
#+NAME: Install pre-requisites
|
#+NAME: Install pre-requisites
|
||||||
#+begin_src tmate
|
#+begin_src tmux
|
||||||
# Ensure pre-requisites are installed
|
# Ensure pre-requisites are installed
|
||||||
sudo apt install curl build-essential gcc make -y
|
sudo apt install curl build-essential gcc make -y
|
||||||
#+end_src
|
#+end_src
|
||||||
|
|
||||||
#+NAME: Install rust via helper script
|
#+NAME: Install rust via helper script
|
||||||
#+begin_src tmate
|
#+begin_src tmux
|
||||||
# Install rust via helper script
|
# Install rust via helper script
|
||||||
curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | sh
|
curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | sh
|
||||||
#+end_src
|
#+end_src
|
||||||
@ -358,7 +358,7 @@ curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | sh
|
|||||||
Once installed you can check if the rust compiler is installed with the code block below:
|
Once installed you can check if the rust compiler is installed with the code block below:
|
||||||
|
|
||||||
#+NAME: Verify installation
|
#+NAME: Verify installation
|
||||||
#+begin_src tmate
|
#+begin_src tmux
|
||||||
rustc -V && cargo -V
|
rustc -V && cargo -V
|
||||||
#+end_src
|
#+end_src
|
||||||
|
|
||||||
|
|||||||
@ -4,7 +4,7 @@
|
|||||||
#+DATE: 25th January 2022
|
#+DATE: 25th January 2022
|
||||||
|
|
||||||
|
|
||||||
I use [[https://obsproject.com][Open Broadcast Studio]] in Linux Mint to manage my audio and video devices for virtual meetings which drastically improves my video and audio quality. This page documents how I set up and the configuration I use.
|
I use [[https://obsproject.com][Open Broadcast Studio]] to manage my audio and video devices for virtual meetings which drastically improves my video and audio quality. This page documents how I set up and the configuration I use.
|
||||||
|
|
||||||
Note: For audio hardware I generally rely on [[https://www.bluemic.com/en-us/products/yeti-nano/][Blue Yeti Nano]] microphones and [[https://electronics.sony.com/audio/headphones/headband/p/wh1000xm4-b][Sony WH-1000XM]] bluetooth headphones, for a camera I've recently moved to the [[https://www.logitech.com/en-au/products/webcams/brio-4k-hdr-webcam.960-001105.html][Logitech Brio 4k]].
|
Note: For audio hardware I generally rely on [[https://www.bluemic.com/en-us/products/yeti-nano/][Blue Yeti Nano]] microphones and [[https://electronics.sony.com/audio/headphones/headband/p/wh1000xm4-b][Sony WH-1000XM]] bluetooth headphones, for a camera I've recently moved to the [[https://www.logitech.com/en-au/products/webcams/brio-4k-hdr-webcam.960-001105.html][Logitech Brio 4k]].
|
||||||
|
|
||||||
@ -14,7 +14,7 @@ Note: For audio hardware I generally rely on [[https://www.bluemic.com/en-us/pro
|
|||||||
To get started install obs including all dependencies required using the steps below:
|
To get started install obs including all dependencies required using the steps below:
|
||||||
|
|
||||||
#+NAME: Install open broadcast studio dependencies
|
#+NAME: Install open broadcast studio dependencies
|
||||||
#+begin_src tmate
|
#+begin_src tmux
|
||||||
# Install dependencies first
|
# Install dependencies first
|
||||||
sudo apt install --yes ffmpeg v4l2loopback-dkms
|
sudo apt install --yes ffmpeg v4l2loopback-dkms
|
||||||
|
|
||||||
@ -26,7 +26,7 @@ sudo add-apt-repository ppa:obsproject/obs-studio
|
|||||||
#+end_src
|
#+end_src
|
||||||
|
|
||||||
#+NAME: Install open broadcast studio
|
#+NAME: Install open broadcast studio
|
||||||
#+begin_src tmate
|
#+begin_src tmux
|
||||||
# Install open broadcast studio
|
# Install open broadcast studio
|
||||||
sudo apt update && sudo apt install --yes obs-studio
|
sudo apt update && sudo apt install --yes obs-studio
|
||||||
#+end_src
|
#+end_src
|
||||||
@ -38,7 +38,7 @@ sudo apt update && sudo apt install --yes obs-studio
|
|||||||
Before we get underway we also install the StreamFX plugin for OBS so we can blur backgrounds without a greenscreen. Follow the steps below to install the plugin:
|
Before we get underway we also install the StreamFX plugin for OBS so we can blur backgrounds without a greenscreen. Follow the steps below to install the plugin:
|
||||||
|
|
||||||
#+NAME: Install streamfx plugin
|
#+NAME: Install streamfx plugin
|
||||||
#+begin_src tmate
|
#+begin_src tmux
|
||||||
# Ensure the plugin directory exists
|
# Ensure the plugin directory exists
|
||||||
mkdir --parents ~/.config/obs-studio && cd ~/.config/obs-studio
|
mkdir --parents ~/.config/obs-studio && cd ~/.config/obs-studio
|
||||||
|
|
||||||
@ -62,7 +62,7 @@ unzip -o streamfx.zip && rm streamfx.zip
|
|||||||
To control improve the quality of our audio we use a virtual audio output device, this allows us to take raw audio input from a microphone, apply filters and enhancements in obs, then output the enhanced audio to the virtual meeting software as a virtual microphone.
|
To control improve the quality of our audio we use a virtual audio output device, this allows us to take raw audio input from a microphone, apply filters and enhancements in obs, then output the enhanced audio to the virtual meeting software as a virtual microphone.
|
||||||
|
|
||||||
#+NAME: Create virtual audio devices
|
#+NAME: Create virtual audio devices
|
||||||
#+begin_src tmate
|
#+begin_src tmux
|
||||||
# Create the virtual speaker
|
# Create the virtual speaker
|
||||||
pactl load-module module-null-sink sink_name=Source sink_properties=device.description=VirtualSpeaker
|
pactl load-module module-null-sink sink_name=Source sink_properties=device.description=VirtualSpeaker
|
||||||
|
|
||||||
@ -80,7 +80,7 @@ The code snippet above sets up virtual audio devices for our current session onl
|
|||||||
To make it permanent we need to save the configuration to a file in our home directory.
|
To make it permanent we need to save the configuration to a file in our home directory.
|
||||||
|
|
||||||
#+NAME: Save virtual audio device configuration
|
#+NAME: Save virtual audio device configuration
|
||||||
#+begin_src tmate
|
#+begin_src tmux
|
||||||
# Ensure required directory exists
|
# Ensure required directory exists
|
||||||
mkdir --parents ~/.config/pulse
|
mkdir --parents ~/.config/pulse
|
||||||
|
|
||||||
@ -117,7 +117,7 @@ Once obs is installed we can launch it with the command below. The setup wizard
|
|||||||
If you see that option, select it; once you get to the main OBS Studio screen, you should now see a button in the bottom right, "Start Virtual Camera".
|
If you see that option, select it; once you get to the main OBS Studio screen, you should now see a button in the bottom right, "Start Virtual Camera".
|
||||||
|
|
||||||
#+NAME: Run open broadcast studio
|
#+NAME: Run open broadcast studio
|
||||||
#+begin_src tmate
|
#+begin_src tmux
|
||||||
obs&
|
obs&
|
||||||
#+end_src
|
#+end_src
|
||||||
|
|
||||||
@ -129,7 +129,7 @@ Our final step to get up and running is to restore our "Profile" and "Scene Coll
|
|||||||
You can use the snippet below to check the contents of the files.
|
You can use the snippet below to check the contents of the files.
|
||||||
|
|
||||||
#+NAME: Show included configuration files
|
#+NAME: Show included configuration files
|
||||||
#+begin_src tmate
|
#+begin_src tmux
|
||||||
# Show contents of profile ini file
|
# Show contents of profile ini file
|
||||||
cat ~/Documents/tooling/streaming/basic.ini
|
cat ~/Documents/tooling/streaming/basic.ini
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user