The Funtoo Linux project has transitioned to "Hobby Mode" and this wiki is now read-only.
Difference between revisions of "User:Siris"
(Updating priorities, wiki doc listing, and adding maintainer packages) |
|||
Line 3: | Line 3: | ||
|Location name=Home Sweet Home | |Location name=Home Sweet Home | ||
}} | }} | ||
== About == | == About == | ||
I am an enthusiastic | I am an enthusiastic Penguin Wrangler, Pythonist, Rubyist, Rustacean, and GNU Herder. | ||
My passion with Funtoo Linux runs deep as I have been using Gentoo continuously since 2005 and then shortly there after switching to Funtoo Linux. | My passion with Funtoo Linux runs deep as I have been using Gentoo continuously since 2005 and then shortly there after switching to Funtoo Linux. | ||
The expansive and world changing engineering efforts of the Linux Kernel as the largest globally developed software project has and continues to provide daily inspiration to keep | The expansive and world changing engineering efforts of the Linux Kernel as the largest globally developed software project has and continues to provide daily inspiration to keep learning, sharing, creating, volunteering, and having fun. | ||
== Top Priorities == | == Top Priorities == | ||
* '''Engineer Funtoo Prometheus Exporter and release a Beta version to all Funtoo users-- [https://bugs.funtoo.org/browse/FL-9559 FL-9559]''' | * '''Engineer Funtoo Prometheus Exporter and release a Beta version to all Funtoo users-- [https://bugs.funtoo.org/browse/FL-9559 FL-9559]''' | ||
== Current Projects == | == Current Projects == | ||
Line 28: | Line 21: | ||
* [[Funtoo:Telemetry]] | * [[Funtoo:Telemetry]] | ||
* [[Funtoo:Ruby]] | * [[Funtoo:Ruby]] | ||
== Current Funtoo Software Maintenance == | == Current Funtoo Software Maintenance == | ||
There are various bits of software I help maintain on Funtoo either by direct code contributions in the past or through Projects. Below is a listing of | There are various bits of software I help maintain on Funtoo either by direct code contributions in the past or through Projects. My key focus areas include: | ||
* Two lang-kit programming languages, Golang and Rust | |||
* Golang (modules) and Rust (crates) Packages spread across various kits | |||
* All packages in ruby-kit | |||
* Telemetry related autogen packages in core-server-kit | |||
* Enlightenment DE related packages | |||
* 1Password bin package in security-kit | |||
Below is a listing of additional Funtoo packages and their kits I help with or contribute to: | |||
{| class="wikitable" | {| class="wikitable" | ||
Line 147: | Line 145: | ||
* [https://turingpi.com/v1/ Turning Pi v1 Raspberry Pi Cluster Board] | * [https://turingpi.com/v1/ Turning Pi v1 Raspberry Pi Cluster Board] | ||
** [https://www.raspberrypi.com/products/compute-module-3-plus/ Raspberry Pi Compute Modules 3+] | ** [https://www.raspberrypi.com/products/compute-module-3-plus/ Raspberry Pi Compute Modules 3+] | ||
* [https://turingpi.com/ Turning Pi v2 Cluster Board (on pre-order)] | * [https://turingpi.com/ Turning Pi v2 Cluster Board (on pre-order)] | ||
* [https://www.raspberrypi.com/products/raspberry-pi-4-desktop-kit/ Raspberry Pi 4 Desktop Kit] | * [https://www.raspberrypi.com/products/raspberry-pi-4-desktop-kit/ Raspberry Pi 4 Desktop Kit] | ||
Line 203: | Line 200: | ||
alias gref='git reflog -10' | alias gref='git reflog -10' | ||
alias gstat='git status' | alias gstat='git status' | ||
# Funtoo | # Funtoo | ||
Line 276: | Line 248: | ||
# Git Prompt | # Git Prompt | ||
git_prompt () | git_prompt() { | ||
{ | |||
c_reset='\[\e[0m\]' | c_reset='\[\e[0m\]' | ||
c_git_clean='\[\e[36;1m\]' | c_git_clean='\[\e[36;1m\]' | ||
Line 294: | Line 265: | ||
echo "$git_color[$git_branch]${c_reset}" | echo "$git_color[$git_branch]${c_reset}" | ||
} | } | ||
}} | }} | ||
Line 331: | Line 295: | ||
== Blog == | == Blog == | ||
More information can be found at [https://siris.fun/ Siris's Funtoo Linux Dev Blog]. Happy | More information can be found at [https://siris.fun/ Siris's Funtoo Linux Dev Blog]. Happy hacking and have fun! |
Revision as of 06:38, February 7, 2023
Location
About
I am an enthusiastic Penguin Wrangler, Pythonist, Rubyist, Rustacean, and GNU Herder.
My passion with Funtoo Linux runs deep as I have been using Gentoo continuously since 2005 and then shortly there after switching to Funtoo Linux.
The expansive and world changing engineering efforts of the Linux Kernel as the largest globally developed software project has and continues to provide daily inspiration to keep learning, sharing, creating, volunteering, and having fun.
Top Priorities
- Engineer Funtoo Prometheus Exporter and release a Beta version to all Funtoo users-- FL-9559
Current Projects
Official Funtoo Projects I am actively working or participating on:
Current Funtoo Software Maintenance
There are various bits of software I help maintain on Funtoo either by direct code contributions in the past or through Projects. My key focus areas include:
- Two lang-kit programming languages, Golang and Rust
- Golang (modules) and Rust (crates) Packages spread across various kits
- All packages in ruby-kit
- Telemetry related autogen packages in core-server-kit
- Enlightenment DE related packages
- 1Password bin package in security-kit
Below is a listing of additional Funtoo packages and their kits I help with or contribute to:
CatPkg Name | Kit Name |
---|---|
dev-lang/ruby | ruby-kit |
dev-lang/go | lang-kit |
dev-lang/rust | lang-kit |
sys-kernel/debian-sources | core-kit |
app-metrics/prometheus-bin | core-server-kit |
app-metrics/alertmanager-bin | core-server-kit |
www-apps/grafana-bin | net-kit |
net-dns/coredns | net-kit |
dev-libs/efl | dev-kit |
x11-wm/enlightenment | desktop-kit |
x11-terms/terminology | desktop-kit |
www-client/firefox | browser-kit |
dev-util/just | dev-kit |
sys-apps/uutils-coreutils | dev-kit |
sys-fs/dust | dev-kit |
sys-process/bottom | dev-kit |
app-misc/yq-go | dev-kit |
dev-util/packer | dev-kit |
media-gfx/ascii-image-converter | dev-kit |
app-benchmarks/bootchart2 | core-hw-kit |
app-crypt/nwipe | security-kit |
app-crypt/onepassword-bin | security-kit |
Wiki Docs
Some different wiki documentation I am actively working on:
- Autogen Pull Request Examples
- Funtoo Community Live Streams on Discord
- Funtoo CI/CD Automated Pipelines
- User:Siris/Raspberry Pi arm64 BinPkgs
Some planned wiki documentation yet to be drafted:
- Funtoo Code Contribution Guide
- Debian Sources Custom Kernel Logos
- Raspberry Pi Compute Module 3+ on Turning Pi v1
- Funtoo Prometheus Exporter
Current System
Here are my current Funtoo system's specifications:
pibox # OS: Funtoo Linux next x86_64 pibox # Kernel: 6.0.6_p2-debian-sources pibox # Packages: 1357 (emerge) pibox # Shell: bash 5.2.0 pibox # Resolution: 3840x2160 pibox # WM: Enlightenment pibox # Theme: Adwaita [GTK2/3] pibox # Icons: Adwaita [GTK2/3] pibox # Terminal: terminology pibox # Terminal Font: Hack Nerd Font Mono pibox # CPU: MD Ryzen 9 5950X (32) @ 3.400GHz pibox # GPU: AMD Radeon Pro W6600 pibox # Memory: 64197MiB
Some other hardware I actively use for Funtoo Development:
- Core Rig Hardware and Accessories:
- Keyboard: Glorious GMMK-TKL-RGB Keyboard
- Mouse: Glorious Model D Wireless Mouse
- Wrist Rests: Glorious Wooden Wrist Rests
- Deskpad: NovelKeys NASA Deskpad
- Office Chair: Secretlab Titan Dark Knight Edition Gaming Chair
- Monitor: Gigabyte AORUS FV43U 43" QLED UHD 4K 3840 x 2160 144Hz 1ms Monitor
- Streaming Hardware:
- Microphone: HyperX QuadCast - USB Microphone
- Microphone Boom: Gator Frameworks -- Deluxe Frameworks Desktop Mic Boom Stand
- Microphone Boom Wall Mount: Heil Sound WM-1
ARM64 Systems
I am currently doing lots of active development and experimenting with various arm64 for Funtoo Linux.
Below is a list of some of the hardware I current own and either run or and working on running Funtoo Linux on
- Turning Pi v1 Raspberry Pi Cluster Board
- Turning Pi v2 Cluster Board (on pre-order)
- Raspberry Pi 4 Desktop Kit
- Firefly ROC-RK3588S-PC
Current Shell
There are so many fun ways to customize your shell on Funtoo Linux.
Here are some Bash customizations that I use on my primary Funtoo system that have evolved over many years and continue to do so. Have fun with them and customizing them even further.
Aliases
Shell aliases are a great way to supercharge your general workflow and navigation when working in a shell
.bashrc
(Shell source code) - Bash aliases# Aliases
# General
alias cat='bat -f --paging=never --theme ansi'
alias dsk='df -ahTP'
alias dski='df -ahTPi'
alias e='exit'
alias fxs='declare -f'
alias less='bat --theme ansi'
alias ll='lsd -alh --group-dirs first'
alias la='lsd -A --group-dirs first'
alias l='lsd -CF --group-dirs first'
alias l1='lsd -1 --group-dirs first'
alias pbcopy='xclip -selection clipboard'
alias pbpaste='xclip -selection clipboard -o'
alias psx='ps auwx | grep $1'
alias rbckt='rsync -avHPn --stats $1 $2'
alias rbck='rsync -avHP --stats $1 $2'
alias rel='source $HOME/.bashrc'
alias tree='lsd --tree'
# Git
alias gadd='git add'
alias gamd='git commit --amend'
alias gbase='git rebase master'
alias gbcn='git branch'
alias gcom='git commit -m'
alias gchk='git checkout'
alias gdif='git diff'
alias gdif1="git log --abbrev-commit --pretty=oneline -1 | cut -d' ' -f1 | xargs git show"
alias gdif2="git log --abbrev-commit --pretty=oneline -1 | awk {'print $1'} | git show | grep diff"
alias gfork='git checkout -b'
alias gig='git status --ignored'
alias glog='git log --abbrev-commit --pretty=oneline'
alias glogs='git log --abbrev-commit --pretty=oneline -10'
alias gnuke='git branch -D'
alias gpll='git pull --rebase'
alias gpush='git push'
alias gref='git reflog -10'
alias gstat='git status'
# Funtoo
alias e='exit'
alias em='sudo emerge -av'
alias e1='sudo emerge -av1'
alias ef='sudo emerge -avf'
alias er='sudo emerge -aC'
alias es='sudo emerge -avuD system'
alias eu='eix -Iuc'
alias ew='sudo emerge -avuD world'
alias epr='sudo emerge -av @preserved-rebuild'
alias ewn='sudo emerge -avuDN world'
alias esyn='sudo /usr/bin/ego sync && sudo /usr/bin/layman -S && sudo /usr/bin/eix-update'
Font
I current use a modified version of the Hack font from the Nerd Fonts project. This is primarily to support rendering of glyphs (icons) natively within your terminal emulator. More specifically to support glyph rendering with the drop in replacement for ls called lsd, that I use in my shell.
Functions
Some useful Bash functions used in and out of my shell prompt:
.bashrc
(Shell source code) - Bash functions# Functions
# Simple alphanumeric password generator
genalpha() {
local l=$1
[ "$l" == "" ] && l=20
tr -dc 'A-Za-z0-9' < /dev/urandom | head -c ${l} | xargs
}
# Simple random password generator
genrandom() {
local l=$1
[ "$l" == "" ] && l=20
tr -dc 'A-Za-z0-9_!@#$%^&*(),.;[]{}|=+-' < /dev/urandom | head -c ${l} | xargs
}
# Keychain wrapper
key(){
eval `keychain --eval --agents ssh $1`
}
# Git Prompt
git_prompt() {
c_reset='\[\e[0m\]'
c_git_clean='\[\e[36;1m\]'
c_git_dirty='\[\e[31;1m\]'
if ! git rev-parse --git-dir > /dev/null 2>&1; then
return 0
fi
git_branch=$(git branch 2>/dev/null | sed -n '/^\*/s/^\* //p')
if git diff --quiet 2>/dev/null >&2; then
git_color="$c_git_clean"
else
git_color="$c_git_dirty"
fi
echo "$git_color[$git_branch]${c_reset}"
}
Prompt
The shell prompt is arguably one of the most important aspects of the shell as it quickly and concisely display critical information. Here is a custom one that I use:
.bashrc
(Shell source code) - Bash prompt# Colors
BLACK=$'\033[30;01m'
RED=$'\033[31;01m'
GREEN=$'\033[32;01m'
YELW=$'\033[33;01m'
BLUE=$'\033[34;01m'
PURP=$'\033[35;01m'
CYAN=$'\033[36;01m'
WHITE=$'\033[37;01m'
OFF=$'\033[0m'
# Prompt
OS_ICON=
PROMPT_COMMAND='PS1="\n \[\033[1;34m\]╭─\[\033[0;36m\]\[\033[0;37m\]\[\033[46m\] $OS_ICON \[\033[0;37m\]\[\033[46m\]\u\[\033[0;33m\]\[\033[46m\]@\h \[\033[0m\]\[\033[0;36m\]\[\033[41m\]\[\033[0;31m\]\[\033[41m\]\[\033[0;30m\]\[\033[41m\] \s \V \[\033[0m\]\[\033[0;31m\]\[\033[43m\]\[\033[0;33m\]\[\033[43m\]\[\033[0;30m\]\[\033[43m\] \t \[\033[0m\]\[\033[0;33m\]\[\033[44m\]\[\033[0;34m\]\[\033[44m\]\[\033[0;30m\]\[\033[44m\] \W \[\033[0m\]\[\033[0;34m\]\[\033[40m\]\[\033[0;30m\]\[\033[40m\]\[\033[0;37m\]\[\033[40m\] $(git_prompt) \[\033[0m\]\[\033[0;30m\]\[\033[42m\]\[\033[0;32m\]\[\033[42m\]\[\033[0;30m\]\[\033[42m\] $(kube_context) \[\033[0m\]\[\033[0;32m\]\[\033[41m\]\[\033[0;31m\]\[\033[41m\]\[\033[0;30m\]\[\033[41m\] \# \[\033[0m\]\[\033[0;31m\]\n \[\033[1;34m\]╰ \[\033[1;36m\]\$ \[\033[0m\]"'
#eval "$(starship init bash)"
Make sure to always put PROMPT_COMMAND at the very end or bottom of your .bashrc configuration so that it evaluates last
Blog
More information can be found at Siris's Funtoo Linux Dev Blog. Happy hacking and have fun!