|
|
Line 1: |
Line 1: |
| ==Utility & OpenJDK== | | ==JMeter== |
| {| | | {| |
| | valign="top" colspan="2" | | | |colspan="2"| |
| <syntaxhighlight lang="bash">
| |
| echo 'apt-get update;echo;apt list -a --upgradable;apt-get upgrade -y'|sudo bash
| |
| </syntaxhighlight>
| |
| | |
| |-
| |
| | colspan="2" |
| |
| ----
| |
| |-
| |
| | valign="top" |
| |
| <syntaxhighlight lang="bash">
| |
| cat <<-'EXE'|sudo bash
| |
| for package in apt-transport-https ca-certificates gnupg curl
| |
| do apt-get install -y ${package};done
| |
| EXE
| |
| </syntaxhighlight>
| |
| | |
| | valign="top" |
| |
| <syntaxhighlight lang="bash">
| |
| cat <<-'EXE'|sudo bash
| |
| for package in build-essential git file procps libfuse2
| |
| do apt-get install -y ${package};done
| |
| EXE
| |
| </syntaxhighlight>
| |
| | |
| |-
| |
| | colspan="2" |
| |
| ----
| |
| |-
| |
| | valign="top" |
| |
| <syntaxhighlight lang="bash">
| |
| cat <<-'EXE'|sudo bash
| |
| for release in 8 11 17 21
| |
| do apt-get install -y openjdk-${release}-jdk;done
| |
| EXE
| |
| </syntaxhighlight>
| |
| | |
| | valign="top" |
| |
| <syntaxhighlight lang="bash">
| |
| cat <<-'EXE'|sudo bash
| |
| for package in ant npm maven nodejs
| |
| do apt-get install -y ${package};done
| |
| EXE
| |
| </syntaxhighlight>
| |
| | |
| |}
| |
| | |
| ==Text Editor » Sublime==
| |
| <syntaxhighlight lang="bash">
| |
| curl -fsSL https://download.sublimetext.com/sublimehq-pub.gpg\
| |
| | sudo gpg --dearmor -o /usr/share/keyrings/sublimehq-pub.gpg
| |
| | |
| cat << EOF | sudo tee /etc/apt/sources.list.d/sublime-text.list >/dev/null
| |
| deb [arch=$(dpkg --print-architecture)\
| |
| signed-by=/usr/share/keyrings/sublimehq-pub.gpg]\
| |
| https://download.sublimetext.com/ apt/stable/
| |
| EOF
| |
| | |
| echo 'apt-get update;echo;apt-get install -y sublime-text'|sudo bash
| |
| </syntaxhighlight>
| |
| | |
| ==JetBrains Toolbox==
| |
| <syntaxhighlight lang="bash">
| |
| wget -cq https://download-cdn.jetbrains.com/toolbox/jetbrains-toolbox-2.4.0.32175.tar.gz -P ${HOME}/Downloads
| |
| tar -xzf ${HOME}/Downloads/jetbrains-toolbox-2.4.0.32175.tar.gz -C ${HOME}/Downloads
| |
| rm -rf ${HOME}/Downloads/jetbrains-toolbox-2.4.0.32175.tar.gz
| |
| sudo apt update && sudo apt install libfuse2
| |
| | |
| ${HOME}/Downloads/jetbrains-toolbox-2.4.0.32175/jetbrains-toolbox
| |
| rm -rf ${HOME}/Downloads/jetbrains-toolbox-2.4.0.32175
| |
| </syntaxhighlight>
| |
| | |
| ==Spring Tool Suite==
| |
| <syntaxhighlight lang="bash">
| |
| cat <<-'EXE'|sudo bash
| |
| mkdir -p /opt/ide
| |
| wget -cq https://cdn.spring.io/spring-tools/release/STS4/4.23.1.RELEASE/dist/e4.32/spring-tool-suite-4-4.23.1.RELEASE-e4.32.0-linux.gtk.x86_64.tar.gz -P /opt/ide
| |
| tar -xzf /opt/ide/spring-tool-suite-4-4.23.1.RELEASE-e4.32.0-linux.gtk.x86_64.tar.gz -C /opt/ide
| |
| rm -rf /opt/ide/spring-tool-suite-4-4.23.1.RELEASE-e4.32.0-linux.gtk.x86_64.tar.gz
| |
| EXE
| |
| | |
| # https://marketplace.eclipse.org/content/jaspersoft-studio
| |
| # https://projectlombok.org/setup/eclipse
| |
| cat <<-'EXE'|sudo bash
| |
| mkdir -p /opt/ide/lombok/bin
| |
| wget -cq https://projectlombok.org/downloads/lombok.jar -P /opt/ide/lombok/bin
| |
| java -jar /opt/ide/lombok/bin/lombok.jar
| |
| EXE
| |
| </syntaxhighlight>
| |
| | |
| <syntaxhighlight lang="ini">
| |
| cat << EOF | sudo tee /usr/share/applications/SpringToolSuite4.desktop >/dev/null
| |
| [Desktop Entry]
| |
| Name=SpringSource Tool Suite 4
| |
| Comment=SpringSource Tool Suite 4
| |
| Exec=/opt/ide/sts-4.23.1.RELEASE/SpringToolSuite4
| |
| Icon=/opt/ide/sts-4.23.1.RELEASE/icon.xpm
| |
| Keywords=Java,Eclipse,Spring,IDE,Development
| |
| Categories=Development;IDE;Java;
| |
| StartupNotify=true
| |
| Type=Application
| |
| Terminal=false
| |
| EOF
| |
| </syntaxhighlight>
| |
| | |
| ==Camunda==
| |
| <syntaxhighlight lang="bash">
| |
| cat <<-'EXE'|sudo bash
| |
| mkdir -p /opt/ide
| |
| mkdir -p /tmp/camunda/images
| |
| | |
| wget -cq https://downloads.camunda.cloud/release/camunda-modeler/5.25.0/camunda-modeler-5.25.0-linux-x64.tar.gz -P /opt/ide
| |
| tar -xzf /opt/ide/camunda-modeler-5.25.0-linux-x64.tar.gz -C /opt/ide
| |
| chmod 4755 /opt/ide/camunda-modeler-5.25.0-linux-x64/chrome-sandbox
| |
| rm -rf /opt/ide/camunda-modeler-5.25.0-linux-x64.tar.gz
| |
| | |
| wget -cq https://camunda.com/wp-content/uploads/2022/09/Camunda_Secondary_Logo.zip -P /tmp/camunda
| |
| unzip -qq /tmp/camunda/Camunda_Secondary_Logo.zip -d /tmp/camunda/images/
| |
| cp /tmp/camunda/images/Secondary-Logo_Rounded-Orange.png \
| |
| /opt/ide/camunda-modeler-5.25.0-linux-x64/camunda-modeler.png
| |
| rm -rf /tmp/camunda/
| |
| EXE
| |
| </syntaxhighlight>
| |
| | |
| <syntaxhighlight lang="ini">
| |
| cat << EOF | sudo tee /usr/share/applications/CamundaModeler.desktop >/dev/null
| |
| [Desktop Entry]
| |
| Name=Camunda Modeler 5
| |
| Comment=Camunda Modeler 5.25.0
| |
| Exec=/opt/ide/camunda-modeler-5.25.0-linux-x64/camunda-modeler
| |
| Icon=/opt/ide/camunda-modeler-5.25.0-linux-x64/camunda-modeler.png
| |
| Keywords=Camunda,Modeler,BPMN,IDE,Development
| |
| Categories=Development;IDE;BPMN;
| |
| StartupNotify=true
| |
| Type=Application
| |
| Terminal=false
| |
| EOF
| |
| </syntaxhighlight>
| |
| | |
| ==JMeter==
| |
| <syntaxhighlight lang="bash"> | | <syntaxhighlight lang="bash"> |
| cat <<-'EXE'|sudo bash | | cat <<-'EXE'|sudo bash |
Line 149: |
Line 10: |
| EXE | | EXE |
| </syntaxhighlight> | | </syntaxhighlight> |
| | | |- |
| | |colspan="2"| |
| | ---- |
| | |- |
| | |colspan="2"| |
| <syntaxhighlight lang="ini"> | | <syntaxhighlight lang="ini"> |
| cat << INI | sudo tee /usr/share/applications/jmeter.desktop >/dev/null | | cat << INI | sudo tee /usr/share/applications/jmeter.desktop >/dev/null |
Line 165: |
Line 30: |
| INI | | INI |
| </syntaxhighlight> | | </syntaxhighlight> |
|
| |
| <syntaxhighlight lang="ini">
| |
| cat << INI | sudo tee -a /opt/ide/apache-jmeter-5.6.3/bin/user.properties >/dev/null
| |
|
| |
| #jmeter extended properties
| |
| jmeter.hidpi.mode=true
| |
| jmeter.hidpi.scale.factor=2.0
| |
| jmeter.toolbar.icons.size=48x48
| |
| jmeter.tree.icons.size=48x48
| |
| jsyntaxtextarea.font.family=Hack
| |
| jsyntaxtextarea.font.size=28
| |
| swing.plaf.metal.controlFont=Dialog-20
| |
| swing.plaf.metal.systemFont=Dialog-20
| |
| swing.plaf.metal.userFont=SansSerif-18
| |
| swing.plaf.metal.smallFont=SansSerif-16
| |
| swing.plaf.metal.controlFont=Dialog-32
| |
| swing.plaf.metal.systemFont=Dialog-32
| |
| swing.plaf.metal.userFont=SansSerif-20
| |
| swing.plaf.metal.smallFont=SansSerif-20
| |
| INI
| |
| </syntaxhighlight>
| |
|
| |
| ==PostgreSQL==
| |
| ===Install===
| |
| ----
| |
| <syntaxhighlight lang="bash">
| |
| sudo apt install postgresql postgresql-contrib
| |
| sudo systemctl enable postgresql
| |
| sudo systemctl status postgresql
| |
| sudo systemctl start postgresql
| |
| sudo systemctl daemon-reload
| |
| </syntaxhighlight>
| |
|
| |
| <syntaxhighlight lang="sql">
| |
| sudo -i -u postgres bash << EOF
| |
| createuser ${USER}
| |
| createdb ${USER}
| |
| cat << DDL | psql
| |
| ALTER USER ${USER} WITH SUPERUSER;
| |
| DDL
| |
| EOF
| |
| </syntaxhighlight>
| |
|
| |
| <syntaxhighlight lang="bash">
| |
| pg_lsclusters
| |
| less /var/log/postgresql/postgresql-14-main.log
| |
|
| |
| sudo pg_createcluster --start 14 mycluster
| |
| sudo pg_dropcluster --stop 14 mycluster
| |
| </syntaxhighlight>
| |
|
| |
| ===Schema===
| |
| ----
| |
| <syntaxhighlight lang="sql">
| |
| sudo -i -u postgres bash << EOF
| |
| cat << DDL | psql
| |
| CREATE DATABASE chorke_academia_staging;
| |
| CREATE USER chorke WITH ENCRYPTED PASSWORD 'sadaqah!';
| |
| DDL
| |
| EOF
| |
|
| |
| sudo -i -u postgres bash << EOF
| |
| cat << DCL | psql
| |
| GRANT ALL PRIVILEGES ON DATABASE chorke_academia_staging TO chorke;
| |
| DCL
| |
| EOF
| |
| </syntaxhighlight>
| |
|
| |
| psql chorke_academia_staging < chorke_academia_staging.sql
| |
| psql -h db00.chorke.org -p 5432 -d chorke_academia_staging -U chorke
| |
| psql -h db00.chorke.org -p 5432 -d chorke_academia_staging -U chorke -W -f chorke_academia_staging.sql
| |
| pg_restore -h db00.chorke.org -p 5432 -d chorke_academia_staging -U chorke chorke_academia_staging.dump
| |
|
| |
| ===Revoke===
| |
| ----
| |
| <syntaxhighlight lang="sql">
| |
| sudo -i -u postgres bash << EOF
| |
| cat << DCL | psql
| |
| REVOKE CONNECT ON DATABASE chorke_academia_staging FROM public;
| |
| DCL
| |
| EOF
| |
| </syntaxhighlight>
| |
|
| |
| ===Delete===
| |
| ----
| |
| ps -ef | grep postgres
| |
| kill -9 PID
| |
|
| |
| <syntaxhighlight lang="sql">
| |
| sudo -i -u postgres bash << EOF
| |
| cat << DQL | psql
| |
| SELECT pg_terminate_backend(pg_stat_activity.pid) FROM pg_stat_activity
| |
| WHERE pg_stat_activity.datname in ('chorke_academia_staging');
| |
| DQL
| |
| EOF
| |
|
| |
| sudo -i -u postgres bash << EOF
| |
| cat << DDL | psql
| |
| DROP DATABASE IF EXISTS chorke_academia_staging;
| |
| DDL
| |
| EOF
| |
| </syntaxhighlight>
| |
|
| |
| ===DBeaver===
| |
| <syntaxhighlight lang="bash">
| |
| sudo snap install dbeaver-ce
| |
|
| |
| # register apt-get repository
| |
| sudo mkdir -p /etc/apt/keyrings
| |
| curl -fsSL https://dbeaver.io/debs/dbeaver.gpg.key\
| |
| | sudo gpg --dearmor -o /etc/apt/keyrings/dbeaver.gpg.key
| |
|
| |
| cat << EOF | sudo tee /etc/apt/sources.list.d/dbeaver.list >/dev/null
| |
| deb [arch=$(dpkg --print-architecture)\
| |
| signed-by=/etc/apt/keyrings/dbeaver.gpg.key]\
| |
| https://dbeaver.io/debs/dbeaver-ce /
| |
| EOF
| |
| </syntaxhighlight>
| |
|
| |
| ===PgAdmin4===
| |
| ----
| |
| <syntaxhighlight lang="bash">
| |
| sudo apt install curl
| |
| sudo apt install apache2
| |
|
| |
| # curl https://www.pgadmin.org/static/packages_pgadmin_org.pub | sudo apt-key add
| |
| # sudo sh -c 'echo "deb https://ftp.postgresql.org/pub/pgadmin/pgadmin4/apt/$(lsb_release -cs) pgadmin4 main" > \
| |
| # /etc/apt/sources.list.d/pgadmin4.list && apt update'
| |
|
| |
| sudo mkdir -p /etc/apt/keyrings
| |
| curl -fsSL https://www.pgadmin.org/static/packages_pgadmin_org.pub\
| |
| | sudo gpg --dearmor -o /etc/apt/keyrings/pgadmin4.gpg
| |
|
| |
| cat << EOF | sudo tee /etc/apt/sources.list.d/pgadmin4.list >/dev/null
| |
| deb [arch=$(dpkg --print-architecture)\
| |
| signed-by=/etc/apt/keyrings/pgadmin4.gpg]\
| |
| https://ftp.postgresql.org/pub/pgadmin/pgadmin4/apt/$(lsb_release -cs) pgadmin4 main
| |
| EOF
| |
|
| |
| sudo apt update
| |
| sudo apt install pgadmin4-web
| |
| sudo /usr/pgadmin4/bin/setup-web.sh
| |
| </syntaxhighlight>
| |
|
| |
| <syntaxhighlight lang="bash">
| |
| a2enmod ssl
| |
| a2enmod proxy
| |
| a2enmod proxy_http
| |
| a2enmod proxy_balancer
| |
| </syntaxhighlight>
| |
|
| |
| ==Sencha CMD==
| |
| <syntaxhighlight lang="bash">
| |
| unzip SenchaCmd-7.5.1.20-linux-amd64.sh.zip
| |
| sudo sh SenchaCmd-7.5.1.20-linux-amd64.sh
| |
| export SENCHA_CMD='/opt/cli/sencha/cmd'
| |
| export OPENSSL_CONF='/etc/ssl'
| |
| export PATH=$PATH:$SENCHA_CMD
| |
|
| |
| mkdir -p ~/.sencha/cmd
| |
| cat << EOF > $HOME/.sencha/cmd/sencha.cfg
| |
| #------------------------------------------------------------------------------
| |
| # The folder for the local package repository. By default, this folder is shared
| |
| # by all versions of Sencha Cmd. In other words, upgrading Sencha Cmd does not
| |
| # affect the local repository.
| |
|
| |
| repo.local.dir=${HOME}/.sencha/cmd/repo
| |
|
| |
| EOF
| |
|
| |
| sencha diag show
| |
| </syntaxhighlight>
| |
|
| |
| ==Redis==
| |
| <syntaxhighlight lang="bash" highlight="13">
| |
| apt install redis-server
| |
| nano /etc/redis/redis.conf
| |
| : <<'END_COMMENT'
| |
| # If you run Redis from upstart or systemd, Redis can interact with your
| |
| # supervision tree. Options:
| |
| # supervised no - no supervision interaction
| |
| # supervised upstart - signal upstart by putting Redis into SIGSTOP mode
| |
| # supervised systemd - signal systemd by writing READY=1 to $NOTIFY_SOCKET
| |
| # supervised auto - detect upstart or systemd method based on
| |
| # UPSTART_JOB or NOTIFY_SOCKET environment variables
| |
| # Note: these supervision methods only signal "process is ready."
| |
| # They do not enable continuous liveness pings back to your supervisor.
| |
| supervised systemd
| |
| END_COMMENT
| |
| systemctl status redis-server
| |
| </syntaxhighlight>
| |
|
| |
| ==Workspace==
| |
| <syntaxhighlight lang="bash">
| |
| mkdir -p $HOME/chorke
| |
| mkdir -p /opt/dev/$USER/chorke/academia
| |
| chown $USER:$USER -R /opt/dev/$USER
| |
|
| |
| export ACADEMIA_WSS="$HOME/chorke/academia"
| |
| ln -s /opt/dev/$USER/chorke/academia $ACADEMIA_WSS
| |
| ls -lah $HOME/chorke
| |
| nano ~/.bashrc
| |
| </syntaxhighlight>
| |
|
| |
| ==Editor==
| |
| ===Install & Config Tmux===
| |
| ----
| |
| <syntaxhighlight lang="bash">
| |
| sudo apt install tmux
| |
|
| |
| cat << EOF | tee ${HOME}/.tmux.conf >/dev/null
| |
| set -g base-index 1
| |
| # remap prefix from 'C-b' to 'C-a'
| |
| unbind C-b
| |
| set-option -g prefix C-a
| |
| bind-key C-a send-prefix
| |
|
| |
| set -g default-terminal 'screen-256color'
| |
| set -g history-limit 10000
| |
| set -g status-fg green
| |
| set -g status-bg black
| |
|
| |
| # Window/pane split
| |
| bind | split-window -h
| |
| bind - split-window -v
| |
| unbind '"'
| |
| unbind %
| |
| EOF
| |
| </syntaxhighlight>
| |
|
| |
| ==Git SCM==
| |
| <syntaxhighlight lang="bash">
| |
| sudo apt -y install gitk
| |
| | |
| : <<'END_COMMENT'
| |
| Generating public/private rsa key pair.
| |
| Enter file in which to save the key (/home/user/.ssh/id_rsa): /home/user/.ssh/git_academia_chorke_org_rsa
| |
| Enter passphrase (empty for no passphrase):
| |
| Enter same passphrase again:
| |
| Your identification has been saved in /home/user/.ssh/git_academia_chorke_org_rsa
| |
| Your public key has been saved in /home/user/.ssh/git_academia_chorke_org_rsa.pub
| |
| The key fingerprint is:
| |
| | |
| The key's randomart image is:
| |
| +---[RSA 4096]----+
| |
| | .oo+*++o.+@|
| |
| | .++ =o..o+|
| |
| | + .....|
| |
| | + . E o |
| |
| | S . o o|
| |
| | . . o o.|
| |
| | . o o =|
| |
| | o+.o+ +.|
| |
| | o..+=o+ooo|
| |
| +----[SHA256]-----+
| |
| END_COMMENT
| |
| ls -lah ~/.ssh/
| |
| cat < ~/.ssh/git_academia_chorke_org_rsa.pub
| |
| </syntaxhighlight>
| |
|
| |
| <syntaxhighlight lang="bash">
| |
| nano ~/.ssh/config
| |
| : <<'END_COMMENT'
| |
| Host git.academia.chorke.org
| |
| HostName git.academia.chorke.org
| |
| PreferredAuthentications publickey
| |
| IdentityFile ~/.ssh/git_academia_chorke_org_rsa
| |
| User git
| |
| END_COMMENT
| |
| </syntaxhighlight>
| |
|
| |
| <syntaxhighlight lang="bash">
| |
| | |
| git config --global user.name "FULL NAME"
| |
| ssh -vT git.academia.chorke.org
| |
| </syntaxhighlight>
| |
|
| |
| <syntaxhighlight lang="bash">
| |
| # add the new key(s) to known_hosts
| |
| ssh-keyscan -H git.academia.chorke.org >> ~/.ssh/known_hosts
| |
|
| |
| # remove the old key(s) from known_hosts
| |
| ssh-keygen -R git.academia.chorke.org
| |
| </syntaxhighlight>
| |
|
| |
| ==Podman==
| |
| sudo apt update
| |
| sudo apt install podman
| |
| podman -v
| |
|
| |
| <syntaxhighlight lang="bash">
| |
| cat << EOF | sudo tee -a /etc/containers/registries.conf >/dev/null
| |
| [registries.search]
| |
| registries=["registry.access.redhat.com", "registry.fedoraproject.org", "docker.io"]
| |
| EOF
| |
|
| |
| podman search ubuntu
| |
| podman pull ubuntu
| |
| podman images
| |
| podman info
| |
| </syntaxhighlight>
| |
|
| |
| ==Vagrant==
| |
| <syntaxhighlight lang="bash">
| |
| curl -fsSL https://apt.releases.hashicorp.com/gpg\
| |
| | sudo gpg --dearmor -o /usr/share/keyrings/hashicorp-archive-keyring.gpg
| |
|
| |
|
| |
| cat << EOF | sudo tee /etc/apt/sources.list.d/hashicorp.list >/dev/null
| |
| deb [arch=$(dpkg --print-architecture)\
| |
| signed-by=/usr/share/keyrings/hashicorp-archive-keyring.gpg]\
| |
| https://apt.releases.hashicorp.com $(lsb_release -cs) main
| |
| EOF
| |
|
| |
| sudo apt update && sudo apt list --upgradeable
| |
| sudo apt upgrade && sudo apt install vagrant
| |
| vagrant -v
| |
| </syntaxhighlight>
| |
|
| |
| <syntaxhighlight lang="bash">
| |
| sudo apt install -y qemu-kvm virt-manager libvirt-daemon-system virtinst libvirt-clients bridge-utils
| |
|
| |
| sudo systemctl enable --now libvirt-guests.service
| |
| sudo systemctl enable --now virtlogd.service
| |
| sudo systemctl enable --now libvirtd.service
| |
|
| |
| systemctl status libvirt-guests.service
| |
| systemctl status libvirtd.service
| |
| systemctl status virtlogd.service
| |
|
| |
| sudo usermod -aG libvirt $USER
| |
| sudo usermod -aG kvm $USER
| |
| newgrp libvirt
| |
| newgrp kvm
| |
| </syntaxhighlight>
| |
|
| |
| <syntaxhighlight lang="bash">
| |
| sudo systemctl disable --now libvirt-guests.service
| |
| sudo systemctl disable --now virtlogd.service
| |
| sudo systemctl disable --now libvirtd.service
| |
|
| |
| sudo systemctl disable --now virtlogd-admin.socket
| |
| sudo systemctl disable --now virtlogd.socket
| |
|
| |
| sudo systemctl disable --now libvirtd-admin.socket
| |
| sudo systemctl disable --now libvirtd-ro.socket
| |
| sudo systemctl disable --now libvirtd.socket
| |
| </syntaxhighlight>
| |
|
| |
| ==Docker==
| |
| <syntaxhighlight lang="bash">
| |
| sudo apt install apt-transport-https ca-certificates curl software-properties-common
| |
| # curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo apt-key add -
| |
| # sudo add-apt-repository "deb [arch=amd64] https://download.docker.com/linux/ubuntu focal stable"
| |
|
| |
| sudo mkdir -p /etc/apt/keyrings
| |
| curl -fsSL https://download.docker.com/linux/ubuntu/gpg\
| |
| | sudo gpg --dearmor -o /etc/apt/keyrings/docker.gpg
| |
|
| |
| cat << EOF | sudo tee /etc/apt/sources.list.d/docker.list >/dev/null
| |
| deb [arch=$(dpkg --print-architecture)\
| |
| signed-by=/etc/apt/keyrings/docker.gpg]\
| |
| https://download.docker.com/linux/ubuntu $(lsb_release -cs) stable
| |
| EOF
| |
|
| |
| sudo apt update
| |
|
| |
| apt-cache policy docker-ce
| |
| sudo apt install docker-ce
| |
| sudo systemctl status docker
| |
|
| |
| sudo usermod -aG docker academia
| |
| sudo usermod -aG docker ${USER}
| |
| su - ${USER}
| |
| id -nG
| |
| </syntaxhighlight>
| |
|
| |
| <syntaxhighlight lang="bash">
| |
| cat << EOF | sudo tee /etc/docker/daemon.json >/dev/null
| |
| {
| |
| "bip" : "10.20.13.1/24",
| |
| "mtu" : 1500,
| |
| "dns" : [
| |
| "8.8.8.8",
| |
| "8.8.4.4"
| |
| ],
| |
| "debug": true
| |
| }
| |
| EOF
| |
|
| |
| sudo systemctl stop docker.socket
| |
| sudo systemctl stop docker.service
| |
| sudo systemctl start docker.service
| |
|
| |
| su - ${USER}
| |
| docker run --rm alpine cat /etc/resolv.conf
| |
| docker run --rm alpine cat /etc/hosts
| |
| </syntaxhighlight>
| |
|
| |
| ==LXC==
| |
| <syntaxhighlight lang="bash">
| |
| sudo apt upgrade && sudo apt autoremove
| |
| sudo snap install lxd --channel=5.11/stable
| |
| sudo usermod -aG lxd ${USER}
| |
| su - ${USER}
| |
| lxc version
| |
| id -nG
| |
| </syntaxhighlight>
| |
|
| |
| <syntaxhighlight lang="bash">
| |
| sudo lxd init
| |
| :'
| |
| Would you like to use LXD clustering? (yes/no) [default=no]:
| |
| Do you want to configure a new storage pool? (yes/no) [default=yes]:
| |
| Name of the new storage pool [default=default]:
| |
| Name of the storage backend to use (dir, lvm, btrfs, ceph) [default=btrfs]:
| |
| Create a new BTRFS pool? (yes/no) [default=yes]:
| |
| Would you like to use an existing empty block device (e.g. a disk or partition)? (yes/no) [default=no]:
| |
| Size in GiB of the new loop device (1GiB minimum) [default=30GiB]:
| |
| Would you like to connect to a MAAS server? (yes/no) [default=no]:
| |
| Would you like to create a new local network bridge? (yes/no) [default=yes]:
| |
| What should the new bridge be called? [default=lxdbr0]:
| |
| What IPv4 address should be used? (CIDR subnet notation, "auto" or "none") [default=auto]: 10.20.23.1/24
| |
| Would you like LXD to NAT IPv4 traffic on your bridge? [default=yes]:
| |
| What IPv6 address should be used? (CIDR subnet notation, "auto" or "none") [default=auto]:
| |
| Would you like the LXD server to be available over the network? (yes/no) [default=no]:
| |
| Would you like stale cached images to be updated automatically? (yes/no) [default=yes]:
| |
| Would you like a YAML "lxd init" preseed to be printed? (yes/no) [default=no]:
| |
| '
| |
|
| |
| sudo ufw allow http
| |
| sudo ufw allow OpenSSH
| |
| sudo ufw allow in on lxdbr0
| |
| sudo ufw route allow in on lxdbr0
| |
| sudo ufw route allow out on lxdbr0
| |
|
| |
| sudo ufw status verbose
| |
| sudo systemctl status ufw
| |
| sudo ufw enable
| |
|
| |
| su - ${USER}
| |
| lxc launch images:alpine/3.17 academia &&
| |
| lxc exec academia sh
| |
| </syntaxhighlight>
| |
|
| |
| ==Arduino==
| |
| sudo apt install arduino
| |
| sudo snap install arduino
| |
|
| |
| <syntaxhighlight lang="bash">
| |
| sudo wget -c https://downloads.arduino.cc/arduino-1.8.19-linux64.tar.xz -P /opt/ide/
| |
| sudo tar -xvf /opt/ide/arduino-1.8.19-linux64.tar.xz -C /opt/ide/
| |
| sudo rm -rf /opt/ide/arduino-1.8.19-linux64.tar.xz
| |
| sudo /opt/ide/arduino-1.8.19/install.sh
| |
| sudo usermod -aG dialout ${USER}
| |
| newgrp dialout
| |
| id -nG
| |
| </syntaxhighlight>
| |
|
| |
| ==Qt Creator==
| |
| sudo apt install qtcreator
| |
| sudo apt remove qtcreator
| |
| sudo apt auto-remove qtcreator
| |
|
| |
| ==Microsoft==
| |
| <syntaxhighlight lang="bash">
| |
| sudo apt install apt-transport-https\
| |
| ca-certificates curl software-properties-common wget
| |
|
| |
| wget -qO - microsoft.gpg https://packages.microsoft.com/keys/microsoft.asc\
| |
| | sudo gpg --dearmor -o /etc/apt/keyrings/microsoft-archive-keyring.gpg
| |
|
| |
| cat << EOF | sudo tee /etc/apt/sources.list.d/microsoft-edge.list >/dev/null
| |
| deb [arch=$(dpkg --print-architecture)\
| |
| signed-by=/etc/apt/keyrings/microsoft-archive-keyring.gpg]\
| |
| https://packages.microsoft.com/repos/edge stable main
| |
| EOF
| |
|
| |
| sudo apt update && sudo apt list --upgradeable
| |
| sudo apt upgrade && sudo apt install microsoft-edge-stable
| |
| microsoft-edge -version
| |
| </syntaxhighlight>
| |
|
| |
| ==Remote==
| |
| sudo ufw allow 5900/tcp
| |
| sudo ufw status verbose
| |
| systemctl --user restart gnome-remote-desktop.service
| |
| systemctl --user status gnome-remote-desktop.service
| |
|
| |
| gsettings set org.gnome.desktop.remote-desktop.rdp screen-share-mode extend
| |
|
| |
| ==DaVinci Resolve==
| |
| <syntaxhighlight lang="bash">
| |
| wget -cq https://sw.blackmagicdesign.com/DaVinciResolve/v18.1.4/DaVinci_Resolve_18.1.4_Linux.zip\
| |
| ?Key-Pair-Id=${KEY_PAIR_ID}==&Expires=${KEY_EXPIRES} -P ${HOME}/Downloads
| |
|
| |
| unzip DaVinci_Resolve_18.1.4_Linux.zip -d ${HOME}/Downloads
| |
| sudo apt install libfuse2 libxcb-cursor0 libxcb-damage0
| |
| sudo ./DaVinci_Resolve_18.1.4_Linux.run -i
| |
| </syntaxhighlight>
| |
|
| |
| ==K8s Lens==
| |
| <syntaxhighlight lang="bash">
| |
| # install from snapcraft
| |
| sudo snap install kontena-lens --classic
| |
|
| |
| # license version
| |
| curl -fsSL https://downloads.k8slens.dev/keys/gpg\
| |
| | sudo gpg --dearmor -o /etc/apt/keyrings/k8slens.gpg
| |
|
| |
| cat << EOF | sudo tee /etc/apt/sources.list.d/k8slens.list >/dev/null
| |
| deb [arch=$(dpkg --print-architecture)\
| |
| signed-by=/etc/apt/keyrings/k8slens.gpg]\
| |
| https://downloads.k8slens.dev/apt/debian stable main
| |
| EOF
| |
|
| |
| sudo apt install lens
| |
| lens-desktop
| |
| </syntaxhighlight>
| |
|
| |
| ==Knowledge==
| |
| {|
| |
| | valign="top" |
| |
| tmux ls
| |
| tmux new -s my_session
| |
| tmux attach-session -t 0
| |
| tmux attach-session -t my_session
| |
|
| |
| '''Ctrl + b''' % » Split pane horizontally
| |
| '''Ctrl + b''' " » Split pane vertically
| |
| '''Ctrl + b''' x » Close current pane
| |
|
| |
| | valign="top" |
| |
| '''Ctrl + b''' c » Create a new window
| |
| '''Ctrl + b''' w » Choose window from a list
| |
| '''Ctrl + b''' 0 » Switch to window by number
| |
| '''Ctrl + b''' , » Rename the current window
| |
|
| |
| '''Ctrl + b''' o » Go to the next pane
| |
| '''Ctrl + b''' ; » Toggle between pane
| |
| '''Ctrl + b''' d » Detach the session
| |
|
| |
| |-
| |
| | colspan="2" |
| |
| ----
| |
| |-
| |
| | valign="top" |
| |
| lsblk
| |
| lscpu
| |
| lsusb
| |
| free -h
| |
| sudo lshw
| |
|
| |
| ufw status
| |
| ufw status verbose
| |
| systemctl status ufw
| |
| apt list --installed
| |
|
| |
| | valign="top" |
| |
| sudo ufw allow http
| |
| sudo ufw allow OpenSSH
| |
| sudo ufw allow 5900/tcp
| |
|
| |
| sudo ss -tulpn | grep LISTEN
| |
| sudo ss -tulwn | grep LISTEN
| |
| sudo ss -tulpn | grep LISTEN | grep sshd
| |
| sudo ss -tulpn | grep LISTEN | grep redis
| |
| sudo ss -tulpn | grep LISTEN | grep gnome
| |
| sudo ss -tulpn | grep LISTEN | grep apache
| |
|
| |
|
| |- | | |- |
| | colspan="2" | | | |colspan="2"| |
| ---- | | ---- |
| |- | | |- |
| | valign="top" | | | |valign='top'| |
| sudo dmidecode -t
| |
| sudo dmidecode -t 1
| |
| sudo dmidecode -t 3
| |
| | |
| | valign="top" |
| |
| sudo dmidecode | grep 'SKU Number'
| |
| sudo dmidecode -s system-product-name
| |
| sudo dmidecode -s system-serial-number
| |
| | |
| |-
| |
| | colspan="2" |
| |
| ----
| |
| |-
| |
| | valign="top" |
| |
| '''disk usage'''
| |
| du -h /var
| |
| du -sh /var
| |
| du -csh ~/Do*
| |
| du -csh /var/log /var/lib
| |
| du -sh --apparent-size /var/lib
| |
| du -h /var/ | sort -rh | head -5
| |
| sudo dpkg --remove --force-remove-reinstreq ${PACAKGE_NAME:-vim}
| |
| | |
| | valign="top" |
| |
| sudo apt install ~/Downloads/TIB_js-studiocomm_6.16.0_linux_amd64.deb
| |
| sudo apt install ~/Downloads/code_1.74.3-1673284829_amd64.deb
| |
| sudo apt install ~/Downloads/teams_1.5.00.23861_amd64.deb
| |
| sudo apt install ~/Downloads/anydesk_6.2.1-1_amd64.deb
| |
| sudo apt install ~/Downloads/freedownloadmanager.deb
| |
| sudo apt install ~/Downloads/zoom_amd64.deb
| |
| sudo apt --fix-broken install
| |
| sudo apt install -f
| |
| | |
| |-
| |
| | colspan="2" |
| |
| ----
| |
| |-
| |
| | valign="top" |
| |
| sudo apt install balena-etcher-electron
| |
| sudo apt install inetutils-traceroute
| |
| sudo apt install libavcodec58 ffmpeg
| |
| sudo apt install gedit-plugins
| |
| sudo apt install sublime-text
| |
| sudo apt install obs-studio
| |
|
| |
| sudo apt install mesa-utils
| |
| sudo apt install filezilla
| |
| sudo apt install net-tools
| |
| sudo apt install neofetch
| |
| sudo apt install libfuse2
| |
|
| |
| sudo apt install gtkhash
| |
| sudo apt install upx-ucl
| |
| sudo apt install hwinfo
| |
| sudo apt install ktouch
| |
| sudo apt install podman
| |
| sudo apt install bolt
| |
| sudo apt install tree
| |
| sudo apt install tmux
| |
| sudo apt install jq
| |
| sudo apt install mc
| |
| | |
| | valign="top" |
| |
| sudo snap install maas --channel=3.3/stable
| |
| sudo snap install dotnet-sdk --classic
| |
| sudo snap install powershell --classic
| |
| sudo snap install notepad-plus-plus
| |
| sudo snap install telegram-desktop
| |
|
| |
| sudo snap install skype --classic
| |
| sudo snap install nvim --classic
| |
| sudo snap install code --classic
| |
| sudo snap install figma-linux
| |
| sudo snap install zoom-client
| |
| sudo snap install arduino
| |
|
| |
| sudo snap install firefox
| |
| sudo snap install postman
| |
| sudo snap install drawio
| |
| sudo snap install maas
| |
|
| |
| sudo snap disable mass
| |
| sudo snap install slack
| |
| sudo snap refresh drawio
| |
| sudo snap refresh firefox
| |
| sudo snap remove postman
| |
| | |
| |-
| |
| | colspan="2" |
| |
| ----
| |
| |-
| |
| | valign="top" |
| |
| ls -lah ~/.local/share/applications/
| |
| ls -lah ~/.config/autostart/
| |
| ls -lah ~/.local/share/
| |
| | |
| | valign="top" |
| |
| rm -rf ~/.local/share/applications/jetbrains-toolbox.desktop
| |
| rm -rf ~/.config/autostart/jetbrains-toolbox.desktop
| |
| rm -rf ~/.local/share/JetBrains/Toolbox
| |
| | |
| |-
| |
| | colspan="2" |
| |
| ----
| |
| |-
| |
| | valign="top" |
| |
| lspci | grep -i thunder
| |
|
| |
| '''git stashing'''
| |
| git stash; git checkout -b new_branch; git stash pop
| |
| git add .; git commit -m "new feature added"; git push
| |
| | |
| | valign="top" |
| |
| '''reset time zone'''
| |
| timedatectl set-ntp true
| |
| timedatectl set-ntp false
| |
| timedatectl set-time '2021-12-31 23:58:00'
| |
| timedatectl set-timezone 'Asia/Kuala_Lumpur'
| |
| | |
| |-
| |
| | colspan="2" |
| |
| ----
| |
| |-
| |
| | valign="bottom" |
| |
| <syntaxhighlight lang="bash"> | | <syntaxhighlight lang="bash"> |
| #nano ~/.bashrc | | # jmeter find jvm_args |
| #nano ~/.zshenv | | JMETER_JVM_ARGS_FIND=$(cat <<FIN |
| #nano ~/.profile | | ## JVM_ARGS="-Xms512m -Xmx512m" jmeter.sh etc.\n\ |
| #nano ~/.bash_profile | | ##\n\ |
| export ACADEMIA_WSS="$HOME/chorke/academia"
| | ## ==============================================\n |
| export ACADEMIA_LOG_PATH="$HOME/.chorke/academia/var/http/logs"
| | FIN |
| | ) |
| </syntaxhighlight> | | </syntaxhighlight> |
|
| |
|
| | valign="bottom" | | | |valign='top'| |
| <syntaxhighlight lang="bash"> | | <syntaxhighlight lang="bash"> |
| source ~/.bashrc
| | # jmeter fill jvm_args |
| source ~/.profile
| | JMETER_JVM_ARGS_FILL=$(cat <<FIL |
| source ~/.bash_profile
| | ${JMETER_JVM_ARGS_FIND}\ |
| | | JVM_ARGS="-Dsun.java2d.uiScale=200%"\ |
| source ~/.zshenv
| | \n |
| source ~/.zprofile/.zlogin
| | FIL |
| | ) |
| </syntaxhighlight> | | </syntaxhighlight> |
|
| |
|
| |- | | |- |
| | colspan="2" | | | |colspan="2"| |
| ---- | | ---- |
| |- | | |- |
| | colspan="2" | | | |colspan="2"| |
| <syntaxhighlight lang="bash"> | | <syntaxhighlight lang="bash"> |
| ssh-keygen -p -f ~/.ssh/git_academia_chorke_org_rsa
| | sudo sed -z "s|${JMETER_JVM_ARGS_FIND}|$(echo "${JMETER_JVM_ARGS_FILL}")|" \ |
| : <<'END_COMMENT'
| | -i /opt/ide/apache-jmeter-5.6.3/bin/jmeter.sh |
| Enter old passphrase:
| |
| Key has comment 'email.id@academia.chorke.org'
| |
| Enter new passphrase (empty for no passphrase):
| |
| Enter same passphrase again:
| |
| Your identification has been saved with the new passphrase.
| |
| END_COMMENT
| |
| </syntaxhighlight> | | </syntaxhighlight> |
|
| |
| |-
| |
| | colspan="2" |
| |
| ----
| |
| |-
| |
| | colspan="2" |
| |
| '''comment and uncomment sql'''
| |
| sed -i -e 's|^|-- |g' src/main/resources/db/migration/*.sql
| |
| sed -i -e 's|^-- ||g' src/main/resources/db/migration/*.sql
| |
|
| |
| sudo systemctl enable --now ssh
| |
| sudo systemctl disable --now ssh
| |
|
| |
| '''hide mounted drives:'''
| |
| gsettings set org.gnome.shell.extensions.dash-to-dock show-mounts true
| |
| gsettings set org.gnome.shell.extensions.dash-to-dock show-mounts false
| |
|
| |
| |}
| |
|
| |
| ==References==
| |
| {|
| |
| | valign="top" |
| |
| * [https://www.digitalocean.com/community/tutorials/how-to-install-and-use-postgresql-on-ubuntu-18-04 Install and Use PostgreSQL on Ubuntu 18.04]
| |
| * [https://www.digitalocean.com/community/tutorials/how-to-install-and-secure-redis-on-ubuntu-18-04 Install and Secure Redis on Ubuntu 18.04]
| |
| * [https://www.linuxbabe.com/desktop-linux/install-telegram-ubuntu Install Telegram Messenger on Ubuntu]
| |
| * [https://www.digitalocean.com/community/tutorials/how-to-install-java-with-apt-on-ubuntu-18-04 Install Java with Apt on Ubuntu 18.04]
| |
| * [https://www.sublimetext.com/docs/3/linux_repositories.html#apt Sublime Text Linux Package Manager]
| |
| * [https://askubuntu.com/questions/893263/ Install Anydesk desktop in Ubuntu]
| |
| * [https://gist.github.com/invinciblycool/ecc1c6e32b581b68932ac7452f4c911c Installing Postman on Ubuntu]
| |
| * [https://www.pgadmin.org/download/pgadmin-4-apt/ Install PgAdmin4 desktop]
| |
| * [https://anydesk.com/en/downloads/linux Get AnyDesk for Ubuntu]
| |
| * [[PostgreSQL]]
| |
|
| |
| | valign="top" |
| |
| * [https://www.digitalcitizen.life/connecting-windows-remote-desktop-ubuntu/ Connect to a Windows PC from Ubuntu using RDP]
| |
| * [https://stackoverflow.com/questions/25515166/ Redis Daemon unable to creating a PID file]
| |
| * [https://ubuntu.com/tutorials/access-remote-desktop Remmina access a remote desktop]
| |
| * [https://stackoverflow.com/questions/2099471/ Add a prefix beginning of each line]
| |
| * [https://www.digitalocean.com/community/tutorials/how-to-install-and-use-docker-on-ubuntu-20-04 Install Docker on Ubuntu 20.04]
| |
| * [https://www.digitalocean.com/community/tutorials/how-to-install-and-use-docker-on-ubuntu-18-04 Install Docker on Ubuntu 18.04]
| |
| * [https://help.ubuntu.com/kubuntu/desktopguide/C/manual-install.html Debian Package Manual Install]
| |
| * [https://snapcraft.io/install/code/ubuntu Visual Studio Code on Ubuntu]
| |
| * [[LAMP Stack for PI]]
| |
| * [[LAPP Stack for PI]]
| |
|
| |
| | valign="top" |
| |
| * [https://www.omgubuntu.co.uk/2019/11/hide-mounted-drives-ubuntu-dock Hide Mounted Drives from the Ubuntu Dock]
| |
| * [https://www.linuxbabe.com/desktop-linux/switch-intel-nvidia-graphics-card-ubuntu Install Nvidia Graphics Card on Ubuntu]
| |
| * [https://askubuntu.com/questions/1033069/ Ubuntu Move to Workspace Left/Right]
| |
| * [https://www.sublimetext.com/docs/linux_repositories.html Sublime Text Linux Package Manager]
| |
| * [https://askubuntu.com/questions/1145050/ IntelliJ IDEA Receive System Env]
| |
| * [https://www.baeldung.com/linux/solve-shared-object-error Solving Shared Object Error]
| |
| * [https://stedolan.github.io/jq/ JQ is a CLI JSON processor]
| |
| * [https://jqplay.org JQ Play Online]
| |
| * [[JQ Tool]]
| |
| * [[ExtJS]]
| |
|
| |
| |-
| |
| | colspan="3" |
| |
| ----
| |
| |-
| |
| | valign="top" |
| |
| * [https://askubuntu.com/questions/214421/ Install the MPEG-4 AAC & H.264 Decoder]
| |
| * [https://superuser.com/questions/1428579/ Can't Switch between Tabs in Terminal]
| |
| * [https://askubuntu.com/questions/15520/ Do Nothing When Laptop Lid Closed]
| |
| * [https://rufus.ie/en/ Rufus » Create Bootable USB Drive]
| |
| * [https://github.com/ventoy/Ventoy/releases Ventoy » Bootable USB Solution]
| |
| * [https://www.balena.io/etcher Balena Etcher » Flash Flawless]
| |
| * [https://github.com/balena-io/etcher Balena Etcher » Install]
| |
| * [[Unijoy|Install Unijoy on Linux]]
| |
| * [https://quarkus.io/guides/ide-tooling Quarkus IDE Tooling]
| |
| * [https://obsproject.com/wiki/install-instructions Install OBS]
| |
|
| |
| | valign="top" |
| |
| * [https://dba.stackexchange.com/questions/316681/ PostgreSQL 14 not Started on Ubuntu 22.04]
| |
| * [https://www.hostinger.my/tutorials/how-to-install-and-setup-phpmyadmin-on-ubuntu Install phpMyAdmin on Ubuntu]
| |
| * [https://zoom.us/download?os=linux Zoom Desktop Client for Linux]
| |
| * [https://code.visualstudio.com/docs/?dv=linux64_deb Visual Studio Code for Linux]
| |
| * [[Linux Containers]]
| |
| * [[Alpine/Morefine]]
| |
| * [[Podman]]
| |
| * [[Vagrant]]
| |
| * [[Docker]]
| |
| * [[Qemu]]
| |
|
| |
| | valign="top" |
| |
| * [https://www.digitalocean.com/community/tutorials/how-to-set-up-a-firewall-with-ufw-on-ubuntu-22-04 Set Up a Firewall with UFW on Ubuntu 22.04]
| |
| * [https://help.gnome.org/users/gnome-help/stable/net-firewall-ports.html.en Gnome Commonly Used Network Ports]
| |
| * [[Linux Virtual Display for iPad Pro]]
| |
| * [[VS Code on iPad Pro]]
| |
| * [[IntelliJ IDEA]]
| |
| * [[Camunda]]
| |
| * [[Minikube]]
| |
| * [[VSCode]]
| |
| * [[NodeJS]]
| |
| * [[MinIO]]
| |
|
| |
| |-
| |
| | colspan="3" |
| |
| ----
| |
| |-
| |
| | valign="top" |
| |
| * [https://unix.stackexchange.com/questions/8656/ <code>/usr/bin</code> vs <code>/usr/local/bin</code> on Linux]
| |
| * [https://askubuntu.com/questions/525088/ Delete broken packages in Ubuntu]
| |
| * [[Macrium Reflect Alternatives]]
| |
| * [[Linux Mount Drive]]
| |
| * [https://github.com/AntJanus/my-dotfiles/blob/master/.tmux.conf TMux Config]
| |
| * [[OpenVPN]]
| |
| * [https://apps.kde.org/ktouch/ KTouch]
| |
| * [[MAAS]]
| |
| * [[TMux]]
| |
| * [https://www.atlassian.com/git/tutorials/gitk Gitk]
| |
|
| |
| | valign="top" |
| |
| * [https://stackoverflow.com/questions/77295243/ JDK » 21 » Maven compilation error]
| |
| * [https://github.com/MuhammedKalkan/OpenLens/releases K8s » OpenLens]
| |
| * [https://www.rancher.com/quick-start K8s » Rancher]
| |
| * [https://github.com/lensapp/lens K8s » Lens]
| |
| * [[S2I]]
| |
|
| |
| | valign="top" |
| |
|
| |
|
| |} | | |} |