#+TITLE: Installation #+SETUPFILE: ./setup/org-setup-file.org * =paru= - Package Manager Installation: #+begin_src bash mkdir ~/.local/soft && cd ~/.local/soft sudo pacman -S --needed base-devel git clone https://aur.archlinux.org/paru.git cd paru makepkg -si #+end_src After that, the =paru= folder may be removed. * =git= - Version Control System Installation: #+begin_src bash paru -S git #+end_src [[file:git.org][Git]] Configuration: - =~/.gitconfig= - =~/.gitignore_global= * =alacritty= - Terminal [[https://github.com/alacritty/alacritty][Alacritty]] is a very nice keyboard-centric terminal. It can be installed like so: #+begin_src bash paru -S alacritty #+end_src Its configuration file is described [[file:alacritty.org][here]]. #+caption: =alacritty= - Cheatsheet | Command | Usage | |--------------------+-------------------------| | =ctrl-shift-x= | activate url hints mode | | =ctrl-shift-c= | copy to CLIPBOARD | | =ctrl-shift-v= | paste from CLIPBOARD | | =ctrl-shift-space= | start selection mode | | =ctrl += | increase font size | | =ctrl -= | decrease font size | Also install =kitty= (better image support) #+begin_src bash paru -S kitty #+end_src * =bash= - Shell https://wiki.archlinux.org/index.php/Bash Installation: #+begin_src bash paru -S bash bash-completion zsh #+end_src [[file:bash.org][Bash]] configuration: - =~/.bashrc= - =~/.bash_profile= - =~/.config/bash/= - =~/.profile= * =tmux= - Terminal Multiplexer https://github.com/tmux/tmux Installation: #+begin_src bash paru -S tmux #+end_src [[file:tmux.org][TMUX]] configuration Ressources: - https://github.com/gpakosz/.tmux - https://gist.github.com/MohamedAlaa/2961058 - https://blog.bugsnag.com/tmux-and-vim/ - https://github.com/tmux-plugins/tmux-resurrect - https://github.com/rothgar/awesome-tmux - https://thoughtbot.com/upcase/tmux #+caption: =tmux= - Cheatsheet | Command | Usage | |----------------+-------------------------------| | =ctrl-spc= | Prefix | | =c= | New pane | | =/=, =-= | Split Vertically/Horizontally | | =s= | Change session | | =p=, =n= | Previous/Next Pane | | =ctrl-h,j,k,l= | Move between windows | * Fonts My font of choice is =nerd-fonts-hack= which can be installed as so: #+begin_src bash paru -S nerd-fonts-hack #+end_src For emojis, use: #+begin_src bash paru -S noto-fonts-emoji #+end_src Default font used: - Monospace Font: =Hack Nerd Font Mono= - Serif Font: =Hack Nerd Font= - Sans Font: =Hack Nerd Font= To list all fonts available: #+begin_src bash fc-list #+end_src To select fonts using a GUI, =gtk2fontsel= can be used: #+begin_src bash paru -S gtk2fontsel #+end_src * =emacs= and =vim= - Text Editors ** Neovim I use [[https://github.com/neovim/neovim][Neovim]] for all the small edits. Installation: #+begin_src bash paru -S neovim nodejs-neovim python-pynvim #+end_src The Neovim configuration can be found [[file:vim.org][here]]. Then install the plugin manager [[https://github.com/junegunn/vim-plug][plug]]: #+begin_src bash sh -c 'curl -fLo "${XDG_DATA_HOME:-$HOME/.local/share}"/nvim/site/autoload/plug.vim --create-dirs \ https://raw.githubusercontent.com/junegunn/vim-plug/master/plug.vim' #+end_src And to install/setup all the plugins: #+begin_src bash nvim +PlugInstall nvim +UpdateRemotePlugins #+end_src ** Emacs I use [[https://www.gnu.org/software/emacs/][Emacs]] and the [[https://github.com/hlissner/doom-emacs][Doom]] framework. Install Emacs: #+begin_src bash paru -S emacs-nativecomp #+end_src And then the Doom framework: #+begin_src bash git clone --depth 1 https://github.com/hlissner/doom-emacs ~/.emacs.d ~/.emacs.d/bin/doom install #+end_src The Emacs configuration can be found [[./doom.org][here]]. SpellCheck with Aspell: #+begin_src bash paru -S aspell aspell-en aspell-fr #+end_src * SSH setup Generate a new SSH key: #+begin_src bash ssh-keygen -t rsa -b 4096 -C "dehaeze.thomas@gmail.com" #+end_src Start the ssh-agent in the background: #+begin_src bash eval "$(ssh-agent -s)" #+end_src Add the SSH key to the ssh-agent: #+begin_src bash ssh-add ~/.ssh/id_rsa #+end_src * GnuPG https://gnupg.org/ Install the gnupg package: #+begin_src bash paru -S gnupg #+end_src Create a key pair: #+begin_src bash paru --full-gen-key #+end_src To configure the =gpg-agent= to cache the passphrase, edit the following file =~/.local/share/gnupg/gpg-agent.conf=: #+begin_src conf default-cache-ttl 60480000 max-cache-ttl 60480000 #+end_src Install =gnome-keyring= to automatically unlock the GnuPG keys: #+begin_src bash paru -S gnome-keyring #+end_src * =rofi= - Application Launcher [[https://github.com/DaveDavenport/rofi][Rofi]] is a very nice alternative to [[https://tools.suckless.org/dmenu/][dmenu]]. Installation: #+begin_src bash paru -S dmenu rofi rofi-calc #+end_src To be able to run sudo commands with =rofi= ([[https://github.com/DaveDavenport/rofi/issues/584#issuecomment-384555551][github issue]]), the command =sudo -A= can be used: it opens a =rofi= prompt to ask for the password. For that to work, we need to add the following code to =~/.profile=: #+begin_src bash export SUDO_ASKPASS=~/.local/bin/askpass-rofi #+end_src The =askpass= script is: #+begin_src bash #!/bin/sh rofi -dmenu \ -password \ -no-fixed-num-lines \ -p "$(printf "$1" | sed s/://)" #+end_src * =pass= - Password Manager https://www.passwordstore.org/ Installation: #+begin_src bash paru -S pass #+end_src #+begin_src bash mkdir .config/pass #+end_src Initialize the password store as a git repository #+begin_src bash cd .config/pass pass git init pass git remote add origin https://github.com/tdehaeze/pass.git #+end_src Gui Manager: [[https://github.com/IJHack/qtpass][qtpass]] #+begin_src bash paru -S qtpass #+end_src Integration with Rofi: [[https://github.com/carnager/rofi-pass][rofi-pass]] #+begin_src bash paru -S rofi-pass #+end_src Then we can add a shortcut to =rofi-pass= on i3 config. Integration with Git: [[https://github.com/languitar/pass-git-helper][pass-git-helper]] #+begin_src bash paru -S pass-git-helper #+end_src First, add the relation between repository addresses and entries in =pass=. This is done in the following config file =.config/pass-git-helper/git-pass-mapping.ini=: #+begin_src [github.com*] target=github.com/tdehaeze #+end_src Then, add the credential helper on the git configuration file =~/.gitconfig= and add the default username for the repositories adresses. #+begin_src [credential] helper = !pass-git-helper $@ [credential "https://github.com"] username = tdehaeze #+end_src ** Integration with other programs Integrate pass in other programs is usually very easy, here are few examples: - =~/.msmtprc=: - =passwordeval "pass email/dehaeze.thomas@gmail.com"= - =~/.mbsyncrc= - =PassCmd "pass email/dehaeze.thomas@gmail.com"= ** Alternative - Bitwarden Bitwarden https://github.com/bitwarden/cli #+begin_src bash paru -Ss bitwarden-bin bitwarden-cli-bin #+end_src * =qutebrowser= - Browser https://github.com/qutebrowser/qutebrowser ** Installation #+begin_src bash paru -S qutebrowser python-adblock #+end_src ** View Pdf inside qutebrowser with pdfjs *** Installation #+begin_src bash paru -S pdfjs #+end_src *** Usage When opening a pdf file on qutebrowser, you'll be ask for options: | Command | Usage | |------------+-------------------| | == | Download the file | | =Ctrl-x= | Download and open | | =Ctrl-p= | Open with pdf.js | | =Alt-y= | Yank the url | ** Integration with Pass: the password manager Add the key-binding on =~/.config/qutebrowser/config.py= #+begin_src config.bind(',p', 'spawn --userscript password_fill') #+end_src The =password_fill= script can be found on [[https://github.com/qutebrowser/qutebrowser/blob/master/misc/userscripts/password_fill][github.com]]. It is configured using the =~/.config/qutebrowser/password_fill_rc= file. ** Spell Checking #+begin_src bash /usr/share/qutebrowser/scripts/dictcli.py install fr-FR /usr/share/qutebrowser/scripts/dictcli.py install en-US #+end_src * =firefox= #+begin_src bash paru -S firefox-developer-edition #+end_src Addons: - [[https://addons.mozilla.org/fr/firefox/addon/ublock-origin/][uBlock Origin]] - [[https://addons.mozilla.org/en-US/firefox/addon/adblock-plus/][Adblock Plus]] - [[https://addons.mozilla.org/fr/firefox/addon/bukubrow/][Bukurow]] - [[https://addons.mozilla.org/fr/firefox/addon/i-dont-care-about-cookies/][I don't care about cookies]] In order to have passwords: #+begin_src bash paru -S passff-host #+end_src * =xrandr= - Monitor Manager #+begin_src bash paru -S xorg-xrandr arandr #+end_src [[https://wiki.archlinux.org/index.php/Xrandr][Xrandr]] is used in shell scripts ([[https://github.com/Ventto/mons][mons]] could be used as a layer on top of Xrandr). [[https://christian.amsuess.com/tools/arandr/][Arandr]] is a GUI application to manage monitors. * Music Setup ** =pipewire= - Sound Server https://wiki.archlinux.org/title/PipeWire Installation: #+begin_src bash paru -S pipewire pipewire-alsa pipewire-audio pipewire-jack pipewire-pulse wireplumber #+end_src #+begin_src bash systemctl --user enable --now pipewire.socket systemctl --user enable --now pipewire-pulse.socket systemctl --user enable --now wireplumber.service #+end_src ** =pwvucontrol= - Sound Manager =pwvucontrol= is used as a sound manager: #+begin_src bash paru -S pwvucontrol #+end_src ** =mopidy= - Audio Server https://github.com/mopidy/mopidy https://medium.com/@theos.space/using-mopidy-with-spotify-and-ncmpcpp-44352f4a2ce8 #+begin_src bash paru -S mopidy #+end_src #+begin_src bash python3 -m pip install --user mopidy-mpd mopidy-jellyfin mopidy-spotify #+end_src If mopidy is used, MPD should be disabled. (=systemctl disable --user mpd.service=) ** =ncmpcpp= - MPD Client https://wiki.archlinux.org/index.php/Ncmpcpp Installation: #+begin_src bash paru -S ncmpcpp #+end_src The main config is located here: =~/.ncmpcpp/config=. The key bindings can be configured here: =~/.ncmpcpp/bindings=. * Movies ** =mpv= - Media Player Installation: #+begin_src bash paru -S mpv #+end_src The configuration is set in =/.config/mpv/input.conf=. * Contact Manager ** =khard= - Google Conctacts https://github.com/scheibler/khard #+begin_src bash paru -S khard #+end_src This is the command line interface for contact management. Contact synchronization: Vdirsyncer is used for contact synchronization with Google. To search with Khard: =khard = ** =mu= - Index Emails #+begin_src bash paru -S mu #+end_src This looks for contacts in all indexed emails. =mu cfind = * =redshift= http://jonls.dk/redshift/ #+begin_src bash paru -S redshift-minimal #+end_src * Mail Setup [[file:mail.org][Link]] to the mail setup. ** =mbsync= - Synchronize Mailboxes http://isync.sourceforge.net/ https://wiki.archlinux.org/index.php/Isync *** Installation #+begin_src bash paru -S isync #+end_src *** Configuration =~/.mbsyncrc= *** Automation using systemd **** Retreive New mails - =checkmail= - =~/.config/systemd/user/checkmail.service= - =~/.config/systemd/user/checkmail.timer= #+begin_src bash systemctl --user enable checkmail.timer systemctl --user start checkmail.timer #+end_src **** Synchronize all the mailboxes - =~/.config/systemd/user/syncmail.service= - =~/.config/systemd/user/syncmail.timer= #+begin_src bash systemctl --user enable syncmail.timer systemctl --user start syncmail.timer #+end_src ** =msmtp= - Send Mails https://marlam.de/msmtp/ *** Installation #+begin_src bash paru -S msmtp #+end_src ** =mu= - Mail Index, Search and Tagging https://github.com/djcb/mu #+begin_src bash paru -S mu #+end_src #+begin_src bash mu init -m ~/.mail/ mu index #+end_src ** =neomutt= - Mail Client https://github.com/neomutt/neomutt *** Installation #+begin_src bash paru -S neomutt #+end_src *** Open Url from mail #+begin_src bash paru -S urlview #+end_src *** Ressources - http://therandymon.com/woodnotes/mutt/using-mutt.html - https://ankursinha.in/2017/12/16/transitioning-to-neomutt-and-friends-for-e-mail.html - https://github.com/LukeSmithxyz/mutt-wizard ** Notification system A script (=checkmail=) is used to retreive new mails and use =notify=send= is there are new received mails. * =ranger= and =pcmanfm= - File Manager Configuration files: - Terminal based: [[file:ranger.org][Ranger]] ** Ranger https://github.com/ranger/ranger *** Installation #+begin_src bash paru -S ranger #+end_src #+begin_src bash paru -S dragon-drop #+end_src *** Configuration The configuration file is =~/.config/ranger/rc.conf=. *** Display pdf All the display of the files are defined in =~/.config/ranger/scope.sh=. It seems that Ranger is not working well with Termite. The screen is not refreshing after viewing one image ([[https://github.com/ranger/ranger/issues/859][Github Issue]]). It works better with Urxvt. ** GUI File Manager: pcmanfm https://wiki.archlinux.org/index.php/PCManFM #+begin_src bash paru -S pcmanfm #+end_src * =nsxiv= - Image viewer https://github.com/nsxiv/nsxiv ** Installation #+begin_src bash paru -S nsxiv #+end_src ** Open Gif #+begin_src bash nsxiv -a file.gif #+end_src ** Cheatsheet | Command | Usage | |--------------+--------------------------| | =-t= | Start in Thumbmail mode | | =f= | Toggle fullscreen | | =Return= | Switch to thumbmail mode | | =<=, =>= | Rotate the image | | =\vert=, =_= | Flip the image | | =n=, =p= | Next, Previous image | * =sxhkd= - HotKey Manager #+begin_src bash paru -S sxhkd #+end_src Configuration file: [[file:sxhkd.org][SXHKD]]. * =i3= - Windows Manager [[file:i3.org][Link]] to the documentation ** Installation #+begin_src bash paru -S i3-gaps #+end_src ** Configuration =~/.i3/config= * =polybar= - Top Bar https://polybar.github.io/ [[file:polybar.org][Link]] to the documentation. ** Installation #+begin_src bash paru -S polybar #+end_src * =picom= - Compositor https://wiki.archlinux.org/index.php/Picom [[file:compositor.org][Link]] to the documentation. ** Installation #+begin_src bash paru -S picom #+end_src ** Configuration =~/.config/picom/picom.conf= ** Automatic run as daemon Compton is run from =.xprofile= config in the background: #+begin_src bash picom --daemon #+end_src * =dunst= - Notification Manager https://github.com/dunst-project/dunst https://wiki.archlinux.org/index.php/Dunst ** Installation #+begin_src bash paru -S dunst #+end_src ** Configuration =~/.config/dunst/dunstrc= ** Usage #+begin_src bash dunstify --replace=16549 "AppName" "Message" #+end_src The number =--replace= can be used with an ID to merge notifications from the same application for instance. * Office Suite ** =libreoffice= #+begin_src bash paru -S libreoffice-fresh libreoffice-fresh-fr #+end_src ** only-office #+begin_src bash paru -S onlyoffice-bin #+end_src * =blueman= - Bluetooth Manager Bluetooth manager: https://github.com/blueman-project/blueman #+begin_src bash paru -S blueman #+end_src * =udiskie= - Automatically Mount devices udiskie - Mount and unmount disks (https://github.com/coldfix/udiskie) #+begin_src bash paru -S udiskie #+end_src Automatically run =udiskie= on startup. * LaTeX Installation #+begin_src bash paru -S texlive-most tllocalmgr-git #+end_src Biber support for the bibliography: #+begin_src bash paru -S biber #+end_src Support for source code using minted: #+begin_src bash paru -S minted #+end_src Every custom class or packages can be put under =~/.local/share/texmf/tex/latex/local/= folder. In order for LaTeX to be aware of new packages/classes, run =sudo texhash= each time a new custom package is added. * Matrix - Gomuks #+begin_src bash paru -S gomuks #+end_src * Syncthing #+begin_src bash paru -S syncthing #+end_src #+begin_src bash systemctl --user enable --now syncthing #+end_src * Gotify #+begin_src bash paru -S gotify-dunst-git #+end_src * Custom Systemd Services Tangle everything in the [[file:systemd.org][Systemd]] config file. Then enable and start all the services: #+begin_src bash systemctl --user enable --now homelab-tunnel systemctl --user enable --now esrf-tunnel systemctl --user enable --now syncthing systemctl --user enable --now vdirsyncer.timer systemctl --user enable --now syncmail.timer systemctl --user enable --now checkmail.timer #+end_src * Mathematical Software ** Insect https://github.com/sharkdp/insect Installation #+begin_src bash paru -S insect #+end_src | Command | Usage | |-----------------+--------------| | =3 m/s to km/h= | Convert Unit | ** Matlab [[file:matlab.org][Link]] to the configuration. Download Matlab here: https://fr.mathworks.com/downloads/ Unzip, and run =./install=. Then, choose the install directory to be =~/.local/soft/Matlab/R2024b=. If there is a problem when opening a Simulink file, check the solution [[https://fr.mathworks.com/matlabcentral/answers/361053-can-t-reload-usr-local-matlab-r2017b-bin-glnxa64-libmwdastudio-so][here]] or [[https://bbs.archlinux.org/viewtopic.php?id=231299][here]]. Also, there might be a problem with displaying multi-body models. In such case type =opengl('save', 'software')= (see [[https://fr.mathworks.com/matlabcentral/answers/342906-could-not-initialize-shared-resources-for-x11graphicsdevice][here]]). To install a new package, run =./install= in =~/.local/soft/Matlab_Install=. ** Matlab - New way of installing Use [[https://github.com/mathworks-ref-arch/matlab-dockerfile][MPM]] to install Matlab. #+begin_src bash :eval no wget https://www.mathworks.com/mpm/glnxa64/mpm chmod +x ./mpm ./mpm install --inputfile=./mpm_input_r2024b.txt #+end_src With the input file: #+begin_src conf :tangle ~/Downloads/mpm_input_r2024b.txt ######################################################################## ## Configuration File for Installing or Downloading R2024b MathWorks Products ######################################################################## ## ## Use this file to configure the installation or download of MathWorks ## products and support packages from the command line using the ## MATLAB Package Manager (mpm). ## ## To configure your MATLAB installation or download: ## ## 1. Set configuration parameters by uncommenting lines that ## start with a single '#' and updating the values. The ## comments above each parameter describe the valid values. ## ## 2. Run mpm from the command line, using the --inputfile option ## to specify the full path to this configuration file. ## ## Install products: ## mpm install --inputfile ## ## Download products without installing: ## mpm download --inputfile ## ## You can download template input files for all supported releases from ## https://github.com/mathworks-ref-arch/matlab-dockerfile/blob/main/MPM.md ## ######################################################################## ######################################################################## ## RELEASE ######################################################################## ## ## By default, mpm gets the latest versions of R2024b MathWorks products ## and support packages using this input file. ## ## To get a specific update for R2024b, set the desired update ## number (for example, 1, 2, 3, and so on) and uncomment the following ## line. An updateLevel of 0 gets the general release. # updateLevel=0 ######################################################################## ## INSTALLATION OR DOWNLOAD FOLDER ######################################################################## ## ## When installing products using 'mpm install': ## ## Specify the full path to the folder where you want to install the ## products. When adding products or support packages to an ## existing MATLAB installation, specify the full path to the folder ## where MATLAB is installed. ## ## Example: ## (Linux) destinationFolder=/usr/local/MATLAB/RXXXX ## (Windows) destinationFolder=C:\Program Files\MATLAB\RXXXX ## (Mac) destinationFolder=/Applications/MATLAB_RXXXX.app ## ## When downloading products using 'mpm download': ## ## Specify the full path to the folder where you want to download the ## products. For 'mpm download', this option is required. ## ## Example: ## (Linux/Mac) destinationFolder=/home//downloads/mathworks ## (Windows) destinationFolder=C:\Users\\Downloads\MathWorks ## ## Set the desired value for destinationFolder and ## uncomment the following line. destinationFolder=/home/thomas/.local/soft/Matlab/R2024b ######################################################################## ## PRODUCTS ######################################################################## ## ## Uncomment the lines for the products you want to install or download. #product.5G_Toolbox #product.AUTOSAR_Blockset #product.Aerospace_Blockset #product.Aerospace_Toolbox #product.Antenna_Toolbox #product.Audio_Toolbox #product.Automated_Driving_Toolbox #product.Bioinformatics_Toolbox #product.Bluetooth_Toolbox #product.C2000_Microcontroller_Blockset #product.Communications_Toolbox #product.Computer_Vision_Toolbox product.Control_System_Toolbox product.Curve_Fitting_Toolbox #product.DDS_Blockset #product.DSP_HDL_Toolbox #product.DSP_System_Toolbox #product.Data_Acquisition_Toolbox #product.Database_Toolbox #product.Datafeed_Toolbox #product.Deep_Learning_HDL_Toolbox #product.Deep_Learning_Toolbox #product.Econometrics_Toolbox #product.Embedded_Coder #product.Filter_Design_HDL_Coder #product.Financial_Instruments_Toolbox #product.Financial_Toolbox #product.Fixed-Point_Designer #product.Fuzzy_Logic_Toolbox #product.GPU_Coder #product.Global_Optimization_Toolbox #product.HDL_Coder #product.HDL_Verifier #product.Image_Acquisition_Toolbox #product.Image_Processing_Toolbox #product.Industrial_Communication_Toolbox #product.Instrument_Control_Toolbox #product.LTE_Toolbox #product.Lidar_Toolbox product.MATLAB product.MATLAB_Coder product.MATLAB_Compiler #product.MATLAB_Compiler_SDK product.MATLAB_Parallel_Server #product.MATLAB_Production_Server #product.MATLAB_Report_Generator #product.MATLAB_Test #product.MATLAB_Web_App_Server #product.Mapping_Toolbox #product.Medical_Imaging_Toolbox #product.Mixed-Signal_Blockset #product.Model_Predictive_Control_Toolbox #product.Model-Based_Calibration_Toolbox #product.Motor_Control_Blockset #product.Navigation_Toolbox product.Optimization_Toolbox product.Parallel_Computing_Toolbox #product.Partial_Differential_Equation_Toolbox #product.Phased_Array_System_Toolbox #product.Polyspace_Bug_Finder #product.Polyspace_Bug_Finder_Server #product.Polyspace_Code_Prover #product.Polyspace_Code_Prover_Server #product.Polyspace_Test #product.Powertrain_Blockset #product.Predictive_Maintenance_Toolbox #product.RF_Blockset #product.RF_PCB_Toolbox #product.RF_Toolbox #product.ROS_Toolbox #product.Radar_Toolbox #product.Reinforcement_Learning_Toolbox #product.Requirements_Toolbox #product.Risk_Management_Toolbox #product.Robotics_System_Toolbox product.Robust_Control_Toolbox #product.Satellite_Communications_Toolbox #product.Sensor_Fusion_and_Tracking_Toolbox #product.SerDes_Toolbox #product.Signal_Integrity_Toolbox product.Signal_Processing_Toolbox #product.SimBiology #product.SimEvents product.Simscape #product.Simscape_Battery #product.Simscape_Driveline product.Simscape_Electrical #product.Simscape_Fluids product.Simscape_Multibody product.Simulink #product.Simulink_3D_Animation #product.Simulink_Check product.Simulink_Coder product.Simulink_Compiler product.Simulink_Control_Design #product.Simulink_Coverage #product.Simulink_Design_Optimization #product.Simulink_Design_Verifier product.Simulink_Desktop_Real-Time #product.Simulink_Fault_Analyzer #product.Simulink_PLC_Coder product.Simulink_Real-Time #product.Simulink_Report_Generator #product.Simulink_Test #product.SoC_Blockset #product.Spreadsheet_Link #product.Stateflow #product.Statistics_and_Machine_Learning_Toolbox product.Symbolic_Math_Toolbox #product.System_Composer product.System_Identification_Toolbox #product.Text_Analytics_Toolbox #product.UAV_Toolbox #product.Vehicle_Dynamics_Blockset #product.Vehicle_Network_Toolbox #product.Vision_HDL_Toolbox #product.WLAN_Toolbox #product.Wavelet_Toolbox #product.Wireless_HDL_Toolbox #product.Wireless_Testbench ######################################################################## ## SUPPORT PACKAGES ######################################################################## ## ## Uncomment the lines for the support packages you want to install or download. #product.6G_Exploration_Library_for_5G_Toolbox #product.ASIC_Testbench_for_HDL_Verifier #product.Aerospace_Blockset_Interface_for_Unreal_Engine_Projects #product.Audio_Toolbox_Interface_for_SpeechBrain_and_Torchaudio_Libraries #product.Automated_Driving_Toolbox_Importer_for_Zenrin_Japan_Map_API_3.0_(Itsumo_NAVI_API_3.0)_Service #product.Automated_Driving_Toolbox_Interface_for_Unreal_Engine_Projects #product.Automated_Driving_Toolbox_Model_for_Lidar_Lane_Detection #product.Automated_Driving_Toolbox_Test_Suite_for_Euro_NCAP_Protocols #product.Automated_Visual_Inspection_Library_for_Computer_Vision_Toolbox #product.CI/CD_Automation_for_Simulink_Check #product.Communications_Toolbox_Support_Package_for_Analog_Devices_ADALM-Pluto_Radio #product.Communications_Toolbox_Support_Package_for_RTL-SDR_Radio #product.Communications_Toolbox_Support_Package_for_USRP_Embedded_Series_Radio #product.Communications_Toolbox_Support_Package_for_USRP_Radio #product.Communications_Toolbox_Wireless_Network_Simulation_Library #product.Component_Deployment_Guideline_for_Embedded_Coder #product.Computer_Vision_Toolbox_Interface_for_OpenCV_in_MATLAB #product.Computer_Vision_Toolbox_Interface_for_OpenCV_in_Simulink #product.Computer_Vision_Toolbox_Model_for_Inflated-3D_Video_Classification #product.Computer_Vision_Toolbox_Model_for_Mask_R-CNN_Instance_Segmentation #product.Computer_Vision_Toolbox_Model_for_Object_Keypoint_Detection #product.Computer_Vision_Toolbox_Model_for_Pose_Mask_R-CNN_6-DoF_Object_Pose_Estimation #product.Computer_Vision_Toolbox_Model_for_R(2+1)D_Video_Classification #product.Computer_Vision_Toolbox_Model_for_RAFT_Optical_Flow_Estimation #product.Computer_Vision_Toolbox_Model_for_RTMDet_Object_Detection #product.Computer_Vision_Toolbox_Model_for_SOLOv2_Instance_Segmentation #product.Computer_Vision_Toolbox_Model_for_SlowFast_Video_Classification #product.Computer_Vision_Toolbox_Model_for_Text_Detection #product.Computer_Vision_Toolbox_Model_for_Vision_Transformer_Network #product.Computer_Vision_Toolbox_Model_for_YOLO_v2_Object_Detection #product.Computer_Vision_Toolbox_Model_for_YOLO_v3_Object_Detection #product.Computer_Vision_Toolbox_Model_for_YOLO_v4_Object_Detection #product.Computer_Vision_Toolbox_OCR_Language_Data #product.Data_Acquisition_Toolbox_Support_Package_for_Analog_Devices_ADALM1000_Hardware #product.Data_Acquisition_Toolbox_Support_Package_for_Digilent_Analog_Discovery_Hardware #product.Data_Acquisition_Toolbox_Support_Package_for_Measurement_Computing_Hardware #product.Data_Acquisition_Toolbox_Support_Package_for_National_Instruments_NI-DAQmx_Devices #product.Data_Acquisition_Toolbox_Support_Package_for_Windows_Sound_Cards #product.Database_Toolbox_Interface_for_Neo4j_Bolt_Protocol #product.Databricks_ODBC_Driver_for_Database_Toolbox #product.Deep_Learning_HDL_Toolbox_Support_Package_for_Intel_FPGA_and_SoC_Devices #product.Deep_Learning_HDL_Toolbox_Support_Package_for_Xilinx_FPGA_and_SoC_Devices #product.Deep_Learning_Toolbox_Converter_for_ONNX_Model_Format #product.Deep_Learning_Toolbox_Converter_for_PyTorch_Model_Format #product.Deep_Learning_Toolbox_Converter_for_TensorFlow_models #product.Deep_Learning_Toolbox_Importer_for_Caffe_Models #product.Deep_Learning_Toolbox_Interface_for_TensorFlow_Lite #product.Deep_Learning_Toolbox_Model_Quantization_Library #product.Deep_Learning_Toolbox_Model_for_AlexNet_Network #product.Deep_Learning_Toolbox_Model_for_DarkNet-19_Network #product.Deep_Learning_Toolbox_Model_for_DarkNet-53_Network #product.Deep_Learning_Toolbox_Model_for_DenseNet-201_Network #product.Deep_Learning_Toolbox_Model_for_EfficientNet-b0_Network #product.Deep_Learning_Toolbox_Model_for_GoogLeNet_Network #product.Deep_Learning_Toolbox_Model_for_Inception-ResNet-v2_Network #product.Deep_Learning_Toolbox_Model_for_Inception-v3_Network #product.Deep_Learning_Toolbox_Model_for_MobileNet-v2_Network #product.Deep_Learning_Toolbox_Model_for_NASNet-Large_Network #product.Deep_Learning_Toolbox_Model_for_NASNet-Mobile_Network #product.Deep_Learning_Toolbox_Model_for_Places365-GoogLeNet_Network #product.Deep_Learning_Toolbox_Model_for_ResNet-101_Network #product.Deep_Learning_Toolbox_Model_for_ResNet-18_Network #product.Deep_Learning_Toolbox_Model_for_ResNet-50_Network #product.Deep_Learning_Toolbox_Model_for_ShuffleNet_Network #product.Deep_Learning_Toolbox_Model_for_VGG-16_Network #product.Deep_Learning_Toolbox_Model_for_VGG-19_Network #product.Deep_Learning_Toolbox_Model_for_Xception_Network #product.Deep_Learning_Toolbox_Verification_Library #product.Embedded_Coder_Interface_to_QEMU_Emulator #product.Embedded_Coder_Support_Package_For_Linux_Applications #product.Embedded_Coder_Support_Package_for_AMD_SoC_Devices #product.Embedded_Coder_Support_Package_for_ARM_Cortex-A_Processors #product.Embedded_Coder_Support_Package_for_ARM_Cortex-M_Processors #product.Embedded_Coder_Support_Package_for_ARM_Cortex-R_Processors #product.Embedded_Coder_Support_Package_for_BeagleBone_Black_Hardware #product.Embedded_Coder_Support_Package_for_Infineon_AURIX_TC3x_Microcontrollers #product.Embedded_Coder_Support_Package_for_Infineon_AURIX_TC4x_Microcontrollers #product.Embedded_Coder_Support_Package_for_Intel_SoC_Devices #product.Embedded_Coder_Support_Package_for_Qualcomm_Hexagon_Processors #product.Embedded_Coder_Support_Package_for_STMicroelectronics_STM32_Processors #product.Ephemeris_Data_for_Aerospace_Toolbox #product.Extended_Tire_Features_for_Vehicle_Dynamics_Blockset #product.FMU_Builder_For_Simulink #product.GPU_Coder_Interface_for_Deep_Learning_Libraries #product.GUIDE_to_App_Designer_Migration_Tool_for_MATLAB #product.Geoid_Data_for_Aerospace_Toolbox #product.HDL_Coder_Support_Package_for_Intel_FPGA_and_SoC_Devices #product.HDL_Coder_Support_Package_for_Microchip_FPGA_and_SoC_Devices #product.HDL_Coder_Support_Package_for_Xilinx_FPGA_and_SoC_Devices #product.HDL_Verifier_Support_Package_for_AMD_FPGA_and_SoC_Devices #product.HDL_Verifier_Support_Package_for_Intel_FPGA_Boards #product.HDL_Verifier_Support_Package_for_Microsemi_FPGA_Boards #product.Hyperspectral_Imaging_Library_for_Image_Processing_Toolbox #product.Image_Acquisition_Toolbox_Support_Package_for_DCAM_Hardware #product.Image_Acquisition_Toolbox_Support_Package_for_Kinect_for_Windows_Sensor #product.Image_Acquisition_Toolbox_Support_Package_for_Matrox_Hardware #product.Image_Acquisition_Toolbox_Support_Package_for_National_Instruments_Frame_Grabbers #product.Image_Acquisition_Toolbox_Support_Package_for_OS_Generic_Video_Interface #product.Image_Acquisition_Toolbox_Support_Package_for_Point_Grey_Hardware #product.Image_Acquisition_Toolbox_Support_Package_for_Teledyne_DALSA_Sapera_Hardware #product.Image_Processing_Toolbox_Image_Data #product.Image_Processing_Toolbox_Model_for_Segment_Anything_Model #product.Instrument_Control_Toolbox_Support_Package_for_IVI_and_VXIplug&play_Drivers #product.Instrument_Control_Toolbox_Support_Package_for_Keysight_(Agilent)_IO_Libraries_and_VISA_Interface #product.Instrument_Control_Toolbox_Support_Package_for_National_Instruments_NI-845x_I2C/SPI_Interface #product.Instrument_Control_Toolbox_Support_Package_for_National_Instruments_NI-DCPower_Power_Supplies #product.Instrument_Control_Toolbox_Support_Package_for_National_Instruments_NI-DMM_Digital_Multimeters #product.Instrument_Control_Toolbox_Support_Package_for_National_Instruments_NI-FGEN_Function_Generators #product.Instrument_Control_Toolbox_Support_Package_for_National_Instruments_NI-SCOPE_Oscilloscopes #product.Instrument_Control_Toolbox_Support_Package_for_National_Instruments_NI-SWITCH_Hardware #product.Instrument_Control_Toolbox_Support_Package_for_National_Instruments_VISA_and_ICP_Interfaces #product.Instrument_Control_Toolbox_Support_Package_for_Rohde_Schwarz_VISA_Interface #product.Instrument_Control_Toolbox_Support_Package_for_Total_Phase_Aardvark_I2C/SPI_Interface #product.Integro-Differential_Modeling_Framework_for_MATLAB #product.Lidar_Toolbox_Interface_for_OpenPCDet_Library #product.Lidar_Toolbox_Model_for_RandLA-Net_Semantic_Segmentation #product.Lidar_Toolbox_Support_Package_for_Hokuyo_LiDAR_Sensors #product.Lidar_Toolbox_Support_Package_for_Ouster_Lidar_Sensors #product.Lidar_Toolbox_Support_Package_for_Velodyne_LiDAR_Sensors #product.MATLAB_Basemap_Data_-_bluegreen #product.MATLAB_Basemap_Data_-_colorterrain #product.MATLAB_Basemap_Data_-_grayland #product.MATLAB_Basemap_Data_-_grayterrain #product.MATLAB_Basemap_Data_-_landcover #product.MATLAB_Client_for_MATLAB_Production_Server #product.MATLAB_Coder_Interface_for_Deep_Learning_Libraries #product.MATLAB_Coder_Interface_for_Visual_Studio_Code_Debugging #product.MATLAB_Coder_Support_Package_for_NVIDIA_Jetson_and_NVIDIA_DRIVE_Platforms #product.MATLAB_Support_Package_for_Android_Sensors #product.MATLAB_Support_Package_for_Apple_iOS_Sensors #product.MATLAB_Support_Package_for_Arduino_Hardware #product.MATLAB_Support_Package_for_BeagleBone_Black_Hardware #product.MATLAB_Support_Package_for_LEGO_MINDSTORMS_EV3_Hardware #product.MATLAB_Support_Package_for_Quantum_Computing #product.MATLAB_Support_Package_for_Raspberry_Pi_Hardware #product.MATLAB_Support_Package_for_USB_Webcams #product.MATLAB_Support_for_MinGW-w64_C/C++/Fortran_Compiler #product.Machine_Learning_Pipelines_for_Statistics_and_Machine_Learning_Toolbox_(Beta) #product.MariaDB_ODBC_Driver_for_Database_Toolbox #product.Medical_Imaging_Toolbox_Interface_for_Cellpose #product.Medical_Imaging_Toolbox_Interface_for_MONAI_Label_Library #product.Medical_Imaging_Toolbox_Model_for_Medical_Segment_Anything_Model #product.Mixed-Signal_Blockset_Models #product.Modelscape_for_MATLAB #product.Multi-Version_Co-Simulation_for_Simulink #product.PostgreSQL_ODBC_Driver_for_Database_Toolbox #product.Powertrain_Blockset_Drive_Cycle_Data #product.RF_Blockset_Models_for_Analog_Devices_RF_Transceivers #product.ROS_Toolbox_Support_Package_for_TurtleBot-Based_Robots #product.Radar_Toolbox_Support_Package_for_Texas_Instruments_mmWave_Radar_Sensors #product.Robotics_System_Toolbox_Interface_for_Unreal_Engine_Projects #product.Robotics_System_Toolbox_Offroad_Autonomy_Library #product.Robotics_System_Toolbox_Robot_Library_Data #product.Robotics_System_Toolbox_Support_Package_for_Kinova_Gen3_Manipulators #product.Robotics_System_Toolbox_Support_Package_for_Universal_Robots_UR_Series_Manipulators #product.Scenario_Builder_for_Automated_Driving_Toolbox #product.Signal_Processing_Toolbox_Support_Package_for_Linux_IIO_Devices #product.Simulink_Coder_Support_Package_for_ARM_Cortex-based_VEX_Microcontroller #product.Simulink_Coder_Support_Package_for_BeagleBone_Blue_Hardware #product.Simulink_Coder_Support_Package_for_NXP_FRDM-K64F_Board #product.Simulink_Coder_Support_Package_for_NXP_FRDM-KL25Z_Board #product.Simulink_Coder_Support_Package_for_STMicroelectronics_Nucleo_Boards #product.Simulink_Coder_Support_Package_for_VEX_EDR_V5_Robot_Brain #product.Simulink_Interface_for_Siemens_MF-Tyre/MF-Swift_Tire_Model #product.Simulink_Real-Time_XIL_Support_Package #product.Simulink_Support_Package_for_Android_Devices #product.Simulink_Support_Package_for_Arduino_Hardware #product.Simulink_Support_Package_for_LEGO_MINDSTORMS_EV3_Hardware #product.Simulink_Support_Package_for_Parrot_Minidrones #product.Simulink_Support_Package_for_Raspberry_Pi_Hardware #product.Simulink_Test_Support_Package_for_ASAM_XIL #product.SoC_Blockset_Support_Package_for_AMD_FPGA_and_SoC_Devices #product.SoC_Blockset_Support_Package_for_Embedded_Linux_Devices #product.SoC_Blockset_Support_Package_for_Intel_Devices #product.Streaming_Data_Framework_for_MATLAB_Production_Server #product.Text_Analytics_Toolbox_Model_for_BERT-Base_Multilingual_Cased_Network #product.Text_Analytics_Toolbox_Model_for_BERT-Base_Network #product.Text_Analytics_Toolbox_Model_for_BERT-Large_Network #product.Text_Analytics_Toolbox_Model_for_BERT-Mini_Network #product.Text_Analytics_Toolbox_Model_for_BERT-Small_Network #product.Text_Analytics_Toolbox_Model_for_BERT-Tiny_Network #product.Text_Analytics_Toolbox_Model_for_all-MiniLM-L12-v2_Network #product.Text_Analytics_Toolbox_Model_for_all-MiniLM-L6-v2_Network #product.Text_Analytics_Toolbox_Model_for_fastText_English_16_Billion_Token_Word_Embedding #product.Text_Analytics_Toolbox_Model_from_UDify_Data #product.UAV_Toolbox_Interface_for_Unreal_Engine_Projects #product.UAV_Toolbox_Support_Package_for_PX4_Autopilots #product.Variant_Manager_for_Simulink #product.Vehicle_Dynamics_Blockset_Interface_for_Unreal_Engine_Projects #product.Vehicle_Dynamics_Blockset_Maneuver_Data #product.WINNER_II_Channel_Model_for_Communications_Toolbox #product.Wireless_Testbench_Support_Package_for_NI_USRP_Radios ######################################################################## ## CHECKSUM ######################################################################## ## ## NOTE: DO NOT edit this field. MathWorks uses this field to ## check the integrity of the input file. Changing the value ## of the checksum field invalidates this input file. ?checksum=UjIwMjRi #+end_src Then, add some binaries to the path with: #+begin_src bash :eval no ln -s ~/.local/soft/Matlab/R2024b/bin/mex ~/.local/bin ln -s ~/.local/soft/Matlab/R2024b/bin/matlab ~/.local/bin ln -s ~/.local/soft/Matlab/R2024b/bin/glnxa64/mlint ~/.local/bin #+end_src With R2024b on Arch Linux, some crash are due to gnutls. This can be resolves as explain in #10 [[https://bbs.archlinux.org/viewtopic.php?id=306939][here]]: #+begin_src bash :eval no MATLABPATH=$HOME/.local/soft/Matlab/R2024B/bin/glnxa64/ GNUTLSPATH=/tmp/gnutls-3.8.9-1-x86_64.pkg wget https://archive.archlinux.org/packages/g/gnutls/gnutls-3.8.9-1-x86_64.pkg.tar.zst mkdir -p "${GNUTLSPATH}" tar -xvf gnutls-3.8.9-1-x86_64.pkg.tar.zst -C ${GNUTLSPATH} mkdir "${MATLABPATH}"/gnutls cp -a "${GNUTLSPATH}"/usr/lib/* "${MATLABPATH}"/gnutls/ cd "${MATLABPATH}" ln -s gnutls/* ./ #+end_src Most of other issues are well explained in the [[https://wiki.archlinux.org/title/MATLAB][Arch Wiki]]. ** Python and Jupyter-notebook #+begin_src bash paru -S python ipython python-pip #+end_src * Download Manager ** =stig= #+begin_src bash paru -S stig #+end_src ** =youtube-dl= #+begin_src bash paru -S youtube-dl #+end_src * Default Applications https://wiki.archlinux.org/index.php/Default_applications https://www.guyrutenberg.com/2018/01/20/set-default-application-using-xdg-mime/ =~/.config/mimeapps.list= #+begin_src bash xdg-mime default qutebrowser.desktop x-scheme-handler/http xdg-mime default qutebrowser.desktop x-scheme-handler/https #+end_src * Desktop files [[file:applications.org][Desktop Applications]] =~/.local/share/applications/= * Calendar [[file:calendar-contact.org][Link]] to configuration ** =vdirsyncer= - Sync calendars https://github.com/pimutils/vdirsyncer Installation: #+begin_src bash paru -S vdirsyncer #+end_src | Command | Usage | |-------------------+-------------| | =vdirsyncer sync= | Synchronize | And start the =systemd= timer that automatically synchronize the calendars; #+begin_src bash systemctl --user enable --now vdirsyncer.timer #+end_src To check the status of the service: #+begin_src bash systemctl --user status vdirsyncer.service #+end_src ** =khal= - Calendar Client https://github.com/pimutils/khal Installation: #+begin_src bash paru -S khal #+end_src Import ICS files: #+begin_src bash khal import even.ics #+end_src * =zathura= - PDF Reader https://pwmt.org/projects/zathura/ ** Installation #+begin_src bash paru -S zathura #+end_src Then add dependecies to view specific files: #+begin_src bash paru -S zathura-pdf-mupdf zathura-djvu zathura-ps zathura-cb #+end_src It seems that mupdf is better that poppler to view pdf. ** Configuration =~/.config/zathura/zathurarc= ** Cheatsheet | Command | Usage | |---------+----------------------------| | =p= | Print the current pdf | | =tab= | Show the outline | | =r= | Reload | | =J/K= | Next/previous page | | =H/L= | Zoom in/out | | =a= | Fit height | | =s= | Fit width | | =D= | Double page | | =f= | Follow link | | =i= | Night Mode | | =gg= | Go to page n | | =mm= | Mark current location to m | | ='m= | Goto location m | ** Multi-monitor pdf presentation - pdfpc https://github.com/pdfpc/pdfpc pdfpc is a great tool for showing pdf presentations. It support: - screen splitting - support for videos in pdf presentations - support for notes - support for annotations *** Installation #+begin_src bash paru -S pdfpc #+end_src *** Video support #+begin_src bash paru -S gst-plugins-ugly gst-plugins-good gst-plugins-base-libs gst-plugins-base gst-plugins-bad gst-libav #+end_src *** Usage #+begin_src bash pdfpc filename.pdf #+end_src * =gtk=/=qt= - Managing Theme ** GTK Themes Gtk2 themes are managed using the file =~/.gtkrc-2.0= while Gtk3 themes are managed using =~/.config/gtk-3.0/settings.ini=. *** Gui Manager To customize the look of the system using GUI application, run ~lxappearance~. Installation: #+begin_src bash paru -S lxappearance #+end_src *** Icons and themes #+begin_src bash paru -S zukitwo-themes faenza-icon-theme #+end_src #+begin_src bash paru -S arc-gtk-theme #+end_src ** QT Themes Run ~qt5ct~ to manage QT Themes. * =inkscape= - Graphical Editor - https://inkscape.org/ - Tikz #+begin_src bash paru -S inkscape #+end_src * Docker #+begin_src bash paru -S docker docker-compose #+end_src Add current user to =docker= group: #+begin_src bash sudo gpasswd -a thomas docker #+end_src * =wireguard= - VPN #+begin_src bash paru -S wireguard-tools #+end_src * =nordvpn= - VPN https://aur.archlinux.org/packages/nordvpn-bin/ https://wiki.archlinux.org/index.php/NordVPN #+begin_src bash sudo groupadd -r nordvpn sudo gpasswd -a $USER nordvpn #+end_src Installation: #+begin_src bash paru -S nordvpn-bin #+end_src Configuration: #+begin_src bash sudo systemctl enable --now nordvpnd.service #+end_src | Command | Usage | |---------------------------+-------| | =nordvpn login= | | | =nordvpn connect country= | | | =nordvpn disconnect= | | | =nordvpn status= | | | =nordvpn countries= | | * Others ** Useful utils #+begin_src bash paru -S sshfs poppler mpd xwallpaper sof-firmware usbutils xautolock atool unzip xsel man-db npm highlight-pointer-git xorg-xkill #+end_src ** ESRF related #+begin_src bash paru -S zoom #+end_src ** =colorpicker= ([[https://github.com/Jack12816/colorpicker][github]]) Copy hexadecimal value of the color to the clipboard: #+begin_src bash :eval no colorpicker --short --one-shot --preview | xsel -b #+end_src Also colorbrag: https://aur.archlinux.org/packages/colorgrab ** =maim=/=flameshot= - Take Screenshots - https://github.com/naelstrof/maim - https://github.com/lupoDharkael/flameshot #+begin_src bash paru -S maim flameshot #+end_src ** =screenkey= - Show pressed keys #+begin_src bash paru -S screenkey #+end_src ** =croc= - File transfer https://github.com/schollz/croc #+begin_src bash paru -S croc #+end_src ** Find Files #+begin_src bash paru -S fd ripgrep fzf #+end_src ** PDF/Image Utilities - https://github.com/dawbarton/pdf2svg - https://www.pdflabs.com/tools/pdftk-the-pdf-toolkit/ - https://github.com/Airblader/unclutter-xfixes #+begin_src bash paru -S pdf2svg pdftk unclutter pdfarranger imagemagick #+end_src ** Trash =trash-cli= is used to manage the trash. It is integrated with =ranger= and =pcmanFM=. #+begin_src bash paru -S trash-cli #+end_src ** Show information about the machine [[https://github.com/dylanaraps/neofetch][neofetch]] #+begin_src bash paru -S neofetch #+end_src ** Nice other programs - https://github.com/leonwind/cli2cloud - Gnu Make alternative https://github.com/taskctl/taskctl * Printer ** CUPS https://wiki.archlinux.org/index.php/CUPS #+begin_src bash paru -S cups #+end_src Web based administration: http://localhost:631/ =system-config-printer= Starts to cups service: #+begin_src bash :eval no sudo systemctl start cups #+end_src Check the queue #+begin_src bash lpq lpq -a # on all queues #+end_src Clear the queue #+begin_src bash lprm # remove last entry only lprm - # remove all entries #+end_src Print a file #+begin_src bash lpr -P printer_name filename.pdf #+end_src List available printers #+begin_src bash lpstat -a #+end_src Stats about the printer #+begin_src bash lpstat -p printer_name #+end_src ** Network Lexmark #+begin_src matlab paru -S sane simple-scan lexmark-network-scan #+end_src * Kernel Management https://wiki.manjaro.org/index.php/Manjaro_Kernels | Command | Usage | |------------------------------------+---------------------------------------| | =mhwd-kernel -li= | Determine which kernel is used | | =sudo mhwd-kernel -i linux419= | Install new kernel | | =sudo mhwd-kernel -i linux419 rmc= | Install new kernel and remove old one | * Format disks https://gparted.org/ =sudo gparted= to format disks Using command line: - https://www.digitalocean.com/community/tutorials/how-to-partition-and-format-storage-devices-in-linux * Theme #+begin_src bash paru -S arc-gtk-theme paru -S xcursor-breeze #+end_src * Useful commands ** Readline https://wiki.archlinux.org/index.php/Keyboard_shortcuts | Keyboard | Shortcut Description | |----------+----------------------| | Ctrl+l | Clear the screen | *** Cursor Movement | Keyboard | Shortcut Description | |----------+----------------------------------------| | =Ctrl+b= | Move cursor one character to the left | | =Ctrl+f= | Move cursor one character to the right | | =Alt+b= | Move cursor one word to the left | | =Alt+f= | Move cursor one word to the right | | =Ctrl+a= | Move cursor to start of the line | | =Ctrl+e= | Move cursor to end of the line | *** Copy & Paste | Keyboard | Shortcut Description | |--------------+---------------------------------------------------| | =Ctrl+u= | Cut everything from line start to cursor | | =Ctrl+k= | Cut everything from the cursor to end of the line | | =Alt+d= | Cut the current word after the cursor | | =Ctrl+w= | Cut the current word before the cursor | | =Ctrl+y= | Paste the previous cut text | | =Alt+y= | Paste the second latest cut text | | =Alt+Ctrl+y= | Paste the first argument of the previous command | | =Alt+./= | Paste the last argument of the previous command | *** History | Keyboard | Shortcut Description | |----------+---------------------------------------| | =Ctrl+p= | Move to the previous line | | =Ctrl+n= | Move to the next line | | =Ctrl+s= | Search | | =Ctrl+r= | Reverse search | | =Ctrl+j= | End search | | =Ctrl+g= | Abort search (restores original line) | | =Alt+r= | Restores all changes made to line | *** Completion | Keyboard | Shortcut Description | |----------+---------------------------------| | =Tab= | Auto-complete a name | | =Alt+?= | List all possible completions | | =Alt+*= | Insert all possible completions | ** Others | [[https://github.com/tldr-pages/tldr][tldr]] | Community-driven man pages | | [[https://github.com/chubin/wttr.in][wttr.in]] | weather in terminal | | [[https://github.com/michael-lazar/rtv][rtv]] | Reddit in terminal | | awk | https://linuxhandbook.com/awk-command-tutorial/ | | [[https://github.com/rupa/z][z]] | Jump around | | [[https://github.com/nvbn/thefuck][thefuck]] | Magnificent app which corrects your previous console command | | [[https://github.com/amanusk/s-tui/][s-tui]] | Terminal based CPU stress and monitoring utility | | [[https://github.com/nicolargo/glances][glances]] | A top/htop alternative | | [[https://github.com/asciinema/asciinema][asciinema]] | Reccord you terminal | | [[https://dev.yorhel.nl/ncdu][ncdu]] | See what takes place on the disk | | [[https://github.com/sharkdp/bat][bat]] | cat alternative | | [[https://github.com/dalance/procs][procs]] | ps alternative | | [[https://github.com/chmln/sd][sd]] | sed alternative | | =meteo= | Get the meteo | | =sudo cputhrottle PID %PROC= | Limiter l'accès au proc pour un processus | | =nmap -sP “192.168.1.*"= | Check all ip addresses on local netword | | =du -sh folder= | Return the size of the folder | | =df -h= | Report disk usage | ** Archive and Extract Use =apack= and =aunpack=: | | | |-------------------------------+-----------------------------------| | =aunpack foobar.tar.gz= | extract all files from archive | | =apack myarchive.zip foo bar= | create a zip archive of two files | ** Hardware | =dmesg= | Detected hardware and boot messages | | =lshw= | Display information on hardware | | =lsusb -tv= | Show usb devices | ** Network | =ip addr show= | Show all network interfaces and ip address | | =ethtooo eth0= | Tool to show ethernet status | | =netstat -tulp= | List all active listening ports | * After Install Enable TRIM (SSD only) #+begin_src bash sudo systemctl enable --now fstrim.timer #+end_src Set the fastest mirror for Pacman #+begin_src bash sudo rankmirrors -n 6 /etc/pacman.d/mirrorlist.backup > /etc/pacman.d/mirrorlist #+end_src Enable =SysRq= key by created this file =/etc/sysctl.d/99-sysctl.conf=: #+begin_src conf kernel.sysrq = 1 #+end_src Then, =Alt-prtsc-F= can be used when the system freezes due to lack of memory. It basically kills the process with the most used memory. * Configuration for Laptops ** Power Management Tool: Powertop https://wiki.archlinux.org/index.php/Powertop https://wiki.manjaro.org/index.php?title=Power_Savings =PowerTop= a diagnostic tool used to identify and report issues with power consumption and management. #+begin_src bash paru -S powertop #+end_src =TLP= is used for Power Management. #+begin_src bash paru -S tlp sudo systemctl enable tlp sudo systemctl start tlp sudo systemctl enable tlp-sleep sudo systemctl start tlp-sleep sudo tlp start #+end_src =Thermald= is used to automatically handle CPU frequency scaling according to system load. #+begin_src bash paru -S thermald sudo systemctl enable thermald sudo systemctl start thermald #+end_src ** Lid open/close https://wiki.archlinux.org/index.php/Power_management Should automatic show lock screen =/etc/systemd/logind.conf= * Some notes - Systemd To improve the startup time. #+begin_src bash sudo systemctl disable apparmor sudo systemctl disable snapd sudo systemctl disable systemd-backlight@backlight\:intel_backlight.service #+end_src To see next timers #+begin_src bash systemctl --user list-timers #+end_src * Resources ** Dotfiles - https://github.com/LukeSmithxyz/voidrice - https://github.com/wincent/wincent - https://github.com/korolr/dotfiles - https://github.com/Shougo/shougo-s-github - https://github.com/addy-dclxvi/almighty-dotfiles ** Linux Softwares - [[https://github.com/k4m4/terminals-are-sexy][terminalare.sexy]] - [[https://www.reddit.com/r/vim/comments/3tluqr/my_list_of_applications_with_vi_keybindings/][the big list of vim like software]] - https://github.com/jlevy/the-art-of-command-line - https://github.com/herrbischoff/awesome-command-line-apps - https://github.com/luongvo209/Awesome-Linux-Software - https://wiki.archlinux.org/index.php/List_of_applications - https://ambrevar.xyz/power-apps/ - https://enchiridion.red/2019/1/18/desktop-apps/ * List of all the install programs ** Mutt | =neomutt= | Teaching an Old Dog New Tricks | | =msmtp= | SMTP client that can be used as an SMTP plugin for Mutt | | =isync= | Synchronize a maildir with an IMAP server | | =vdirsyncer= | Synchronize calendars and contacts | | =abook= | Address book with mutt support | | =urlview= | URL extractor/launcher | | =w3m= | Pager/text based browser | | =lynx= | Text mode web browser | | =lbdb= | Little brother's database for the mutt mail reader | | =mu= | Tool for searching e-mail messages stored in the maildir-format | | =ripmime= | Extract attachments out of MIME encoded email packages | | =shared= | mime-info - Database of common MIME types | ** Micro controllers | =avrdude= | Atmel AVR MCU programmer | | =bootloadhid= | USB boot loader for AVR microcontrollers | | =dfu= | programmer - Device firmware update based USB programmer for Atmel chips | | =platformio= | Ecosystem for IoT development (Arduino and ARM mbed compatible) | | =micropython= | Python implementation for microcontrollers and constrained systems | | =arduino= | mk - Makefile for Arduino sketches | ** File Management | =grep= | GNU grep, egrep and fgrep | | =pdfgrep= | Search PDFs for strings matching a regular expression | | =the_platinum_searcher= | Multi-platform code-search similar to ack and ag | | =the_silver_searcher= | Code-search similar to ack | | =fdupes= | Identify or delete duplicate files | | =findutils= | Collection of GNU find, xargs, and locate | | =ranger= | File browser | | =vifm= | Ncurses based file manager with vi like keybindings | | =tree= | Display directories as trees (with optional color/HTML output) | | =p7zip= | 7-Zip (high compression file archiver) implementation | | =unrar= | Extract, view, and test RAR archives | | =atool= =zip= | script for managing file archives of various types | ** File Downloader | =wget= | Internet file retriever | | =htop= | Improved top (interactive process viewer) | | =httpie= | User-friendly cURL replacement (command-line HTTP client) | | =curl= | Get a file from an HTTP, HTTPS or FTP server | ** Utils | =binutils= | GNU Binary Utilities | | =coreutils= | GNU File, Shell, and Text utilities | | =gnome= | doc-utils - Documentation utilities for the GNOME project | | =moreutils= | Collection of tools that nobody wrote when UNIX was young | | =usbimager= | https://gitlab.com/bztsrc/usbimager | ** A trier | =asciinema= | Terminal session recorder | | =automake= | tool for automatically generating Makefile | | =cmake= | Cross-platform make | | =cputhrottle= | Limit the CPU usage of a process | | =ctags= | Reimplementation of ctags | | =gdb= | GNU debugger | | =ghostscript= | Interpreter for PostScript and PDF | | =go= | Open source programming language to build simple/reliable/efficient software | | =hugo= | Configurable static site generator | | =markdown= | Text-to-HTML conversion tool | | =pandoc= | Swiss-army knife of markup format conversion | | =uni= | Query the Unicode database from the commandline |