Skip to content

Instantly share code, notes, and snippets.

@abhaypatil2000
Last active May 7, 2023 00:07
Show Gist options
  • Save abhaypatil2000/c08ae3e0ad382cf998c4b11cbc15ef01 to your computer and use it in GitHub Desktop.
Save abhaypatil2000/c08ae3e0ad382cf998c4b11cbc15ef01 to your computer and use it in GitHub Desktop.
Start from scratch Linux
1. alises (add with gedit and change gedit theme to Solarized Dark`
alias uc='sudo apt autoremove && sudo apt autoclean && sudo apt clean'
alias uf='watch -n.1 "cat /sys/devices/system/cpu/cpu*/cpufreq/scaling_cur_freq"'
alias us='sudo intel-undervolt apply'
alias uu='sudo apt update && sudo apt upgrade'
alias uuu='sudo apt-get update -y > ~/.terminal_update.txt && sudo apt-get upgrade -y >> ~/.terminal_update.txt && sudo apt-get autoremove -y >> ~/.terminal_update.txt && sudo apt-get autoclean -y >> ~/.terminal_update.txt && sudo apt-get clean -y >> ~/.terminal_update.txt && notify-send "Task Complete" && exit'
# important package installations
sudo apt install make
sudo apt install cmake
sudo apt install git
sudo apt install curl
sudo apt install ffmpeg
sudo apt install python3-pip # for pip3
sudo apt install python-tk # tkinter
gdb for arch
sudo pacman -S man-db man-pages # for manual entries
sudo pacman -S ntfs-3g # to access ntfs files
sudo pacman -S intel-ucode
sudo pacman -S cronie
sudo pacman -S make automake autoconf make cmake pkg-config patch
sudo pacman -S python-nautilus
systemctl start bluetooth.service
systemctl enable bluetooth.service # for arch
systemctl enable cronie.service # to start cron jobs
systemctl start cronie.service
2. Install neofetch
3. Sign into firefox
Change enhanced tracking protection to custom
Change cookies option to `cookies from unvisited websites`
Change tracking content to `in all windows`
Just below that change "do not track" to "always"
home page and new window -> Firefox Homoe (Default) and disable all checkboxes below
4. Dark Mode (toggle from top right corner)
5. Night Light (from 6 to 6, slider above the left starting on W of Warm) (3800 in dconf) search for night light in dconf editor.
6. Shortcuts
In the keyboard section, change the `alternate characters key` to right windows, so as to free right alt key
Decrease text size `super + -`
Increase Text size `super + +`
Home Folder `super + e`
Hide all normal windos `super + d`
Move to workspace on the left `super + PgUp` // arch, gnome 40
Move to workspace on the right `super + PgDn` // arch, gnome 40
(OR) Move to workspace above `super + PgUp`
(OR) Move to workspace below `super + PgDn`
Switch applications `super + tab`
Switch windows `alt + tab`
Switch windows of an application `super + ``
Screen Record `super + r`
Take a screenshot `ctrl + menu`
Take a screenshot interactively `print`
Take a screenshot of a window `alt + menu`
Volume down `alt +``
Volume up `alt + escape`
Lock Screen `super + l`
Log out `ctlr + alt del`
Show notifications list `super + z`
Show the run command prompt `alt + f2`
Close Window `alt + f4`
Hide Window `super + m`
Toggle fulscreen `super + f11`
Toggle maximization state `super + up`
View split on left `ctrl + alt + left`
View split on right `ctrl + alt + right`
Custom:
System Monitor : gnome-system-monitor : `ctrl + shift + esc`
Firefox : firefox : `super + f`
Spotify : spotify : `super + s`
OBS : obs : `super + x`
Sleep : systemctl suspend : `ctrl + alt + space`
VS Code : code : `super + c`
--- not required ---toggle DND : script at ~/Desktop/Coding/scripting/scripts/all/DND.sh : `super + alt + z`
Tilix quake : env GDK_BACKEND=x11 tilix --quake : `alt + space`
Dconf:
To change the shortcut to control the screen brightness, open dconf editor and then search for brightness-up and open screen brightness and replace its value with `['<Alt><Super>Escape']` and to lower use `['<Alt><Super>grave']`. Save and exit
Unbind the f1 button to help -> `gsettings set org.gnome.settings-daemon.plugins.media-keys help '[]'`
7. Increase font size once
8.0.1 install `gnome-browser-connector` extension. Guide: https://wiki.gnome.org/Projects/GnomeShellIntegration/Installation
8.0.2 remove extension from /usr/share/gnome-shell/extensions and ~/.local/share/gnome-shell/extension
8. List of extensions to install:
[email protected]
[email protected]
[email protected]
[email protected] -> interval = 128 in extension settings
[email protected] // change the shell in tweaks to yaru dark or adwaita dark
[email protected]
[email protected]
[email protected]
[email protected]
--- not required [email protected]
--- deprecated --- [email protected]
--- deprecated --- [email protected]
9. --- not required ---Install P sensors
10. ---merged in 8
11. ---deprecated ---X server change gpu to intel only
12. --- not required ---From software center remove seahorse and logs
13. Install vs code
14. --- not required (already included in nautilus) ---Install gnome-sushi
15. Reinstall snapd `sudo apt autoremove --purge snapd` && `sudo apt install snapd` && `sudo apt install gnome-software` # ubuntu only
16. Install BitWarden from community repo
17. Boot process faster and remove the splash screen
Edit `/etc/default/grub`
GRUB_DEFAULT=saved
GRUB_SAVEDEFAULT=true
GRUB_TIMEOUT=0
GRUB_DISTRIBUTOR="Arch"
GRUB_CMDLINE_LINUX_DEFAULT="loglevel=7 net.ifnames=0 mem_sleep_default=deep resume=UUID=feb35694-73e8-4195-8693-4d0cfba83a1c" # here the UUID is of the swap partition
`sudo grub-mkconfig -o /boot/grub/grub.cfg` / `sudo update-grub`
--- not required ---`sudo systemctl disable snapd.service`
--- not required ---`sudo systemctl disable NetworkManager-wait-online.service`
17.1 Edit `/etc/default/grub` necessary to update other boot files on the drive
--- optional --- `GRUB_DISABLE_OS_PROBER=false`
18. Click to minimise on the taskbar `gsettings set org.gnome.shell.extensions.dash-to-dock click-action 'minimize'` // deprecated // search in dconf manually
19. Enable hot corners and battery percentage. Hot corner enabled by default, battery percentage in settings.
19.1 Show the maximise and minimise button on top bar. Tweaks -> Window Titlebars
20.0 Install `git` with `sudo apt install git` and then configure the credential manager `libsecret`.
Set the `git config --global user.name abhaypatil2000` and `git config --global user.email [email protected]`
libsecret:
`sudo pacman -S libsecret` or `sudo apt-get install libsecret-1-0 libsecret-1-dev`
`cd /usr/share/git/credential/libsecret` # for ubuntu:`cd /usr/share/doc/git/contrib/credential/libsecret`
`sudo make`
`git config --global credential.helper cd /usr/share/git/credential/libsecret/git-credential-libsecret`
Now you have to enter the accesstoken and username only once and then good to go
access token : github -> settings -> developer settings -> personal access tokens, generate a new one
20.1. --- not required --- After installing`git` download undervolt from https://miloserdov.org/?p=1932, refer this answer https://askubuntu.com/a/1260064/1067851.
later edit the /etc/init.d/intel-undervolt-loop file (cpu and cpu cache: -129 mv, gpu: -75 mv) and add the following content between shebang line and start of script
### BEGIN INIT INFO
# Provides: intel-undervolt-loop
# Required-Start: $all
# Required-Stop:
# Default-Start: 2 3 4 5
# Default-Stop:
# Short-Description: your description here
### END INIT INFO
then `sudo systemctl start intel-undervolt.service`
`sudo systemctl enable intel-undervolt-loop.service`
`sudo systemctl start intel-undervolt-loop.service`
`sudo systemctl enable intel-undervolt-loop.service`
21. --- not required --- Install tlp with `sudo apt install tlp` and then `systemctl enable tlp` to automatically run it.
22. Install Gparted `sudo apt install gparted`
23. --- not required --- Set the play, pause, stop buttons in keyboard shortcuts in settings in keyboard shortcuts5
24. Install vlc with `sudo pacman -S vlc` or `sudo apt install vlc`. Remove recents -> https://superuser.com/a/745969/1161479
25. Install gstreamer libraries `sudo pacman -S gst-libav` or `sudo apt-get install -y gstreamer1.0-gtk3 gstreamer1.0-pulseaudio gstreamer1.0-libav`
26. Install sublime text `wget -qO - https://download.sublimetext.com/sublimehq-pub.gpg | sudo apt-key add -` then `sudo apt-get install apt-transport-https
` then `echo "deb https://download.sublimetext.com/ apt/stable/" | sudo tee /etc/apt/sources.list.d/sublime-text.list
` then `sudo apt-get update && sudo apt-get install sublime-text`
27. Install Libre offce suite `sudo add-apt-repository ppa:libreoffice/ppa` then `sudo apt update` and then `sudo apt install libreoffice-gnome libreoffice`
28. Nautilus image resizer `sudo apt install imagemagick nautilus-image-converter`
29. Install dconf-editor `sudo apt install dconf-editor`
30. Change the timer for screen recorder https://askubuntu.com/questions/919807/how-to-change-screencast-duration-in-gnome3-screen-recorder
31. Install Spotify # check website for installation. Arch has AUR repo
32. Install OBS screen recorder and change the default path to videos/OBS/ // check website for installation
33. --- optional --- Install font-manager `sudo apt install font-manager` and add necessary font from this article https://www.pcworld.com/article/2863497/how-to-install-microsoft-fonts-in-linux-office-suites.html
# After installing the fonts move all the files from ~/.fonts/ to ~/.local/share/fonts
# For arch add the [1] content to ~/.config/fontconfig/fonts.conf
# can also install the required fonts from AUR packages
# Install asian fonts using `sudo pacman -S adobe-source-han-sans-otc-fonts`, and then force refresh using `fc-cache -f -v`
# Some fonts are also uploaded on google drive
34. Install Telegram `sudo apt install telegram-desktop`
35. Disk usage analyzer `sudo apt install baobab`.
36. Install gnome-clocks `sudo apt install gnome-clocks`
37. Adjust time on windows and linux `timedatectl set-local-rtc 1 --adjust-system-clock`
38. install vnstat to keep track of internet usage and enable it `systemctl enable vnstat`
39. --- not required --- Install protonvpn-cli
40. Install gnome-weather, gnome-clocks, gnome-boxes
41. Install gvim and remove vim `sudo pacman -S gvim` if vim already installed, then prompt to remove vim shown. For ubuntu apt: vim, vim-gtk3
42. Install gitkraken # arch: aur, else check website
43. Install gimp `sudo pacman -S gimp`, ubuntu check website
44. Install MS-Edge, Chrome # Arch: aur, else check website
Install the following websites as apps.
1. Sketch.io
2. WhatsApp
45. Install krita `sudo pacman -S krita`, # ubuntu: check website
46. Install MyClock.py as ACLOCK
install tkinter using `sudo pacman -S tk`
create a MyClock.desktop entry
[Desktop Entry]
Version=1.0
Exec=/home/abhay/bin/MyClock.py
Icon=/home/abhay/Pictures/Wallpapers/MyClock.png
Name=ACLOCK
Type=Application
Now move this to /usr/share/applications
47. Install zsh https://medium.com/@ivanaugustobd/your-terminal-can-be-much-much-more-productive-5256424658e8
48. Add /home/abhay/bin/ to path `export PATH=$PATH:/home/abhay/bin` at the end of ~/.zshrc
49. To setup timeshift backup, see this video `https://www.youtube.com/watch?v=uhqVpBWmboM`
50. Install safe eyes `https://github.com/slgobinath/SafeEyes`
51. hard link ~/Desktop/Codeforces/init and over to ~/Desktop/Coding/scripting/scripts/all/init and over
52. Modify grub theme: download tela and vimix themes from gnome looks. Use Vimix config and tela icons. Run ./install script and everything will be done automatically
53. Config grub :
GRUB_DEFAULT=saved
GRUB_SAVEDEFAULT=true
GRUB_TIMEOUT=-1
GRUB_DISTRIBUTOR="Arch"
GRUB_CMDLINE_LINUX_DEFAULT="loglevel=7 net.ifnames=0 mem_sleep_default=deep"
GRUB_CMDLINE_LINUX=""
GRUB_DISABLE_OS_PROBER=false
54. If nautilus is sorting files alphabetically (capital first then smaller later), then add `export LC_COLLATE=en_US.UTF-8` in `/etc/profile` file
55. Add to fstab the drive you want to automount at ~/mounts/arch or ~/mounts/ubuntu and remove these filders from timeshift
56. Install qbittorret and make ~/Downloads/Torrents and exclude this folder from timeshift backups
57. If battery drains fast in sleep mode then check with `cat /sys/power/mem_sleep`, make sure it is deep. If not then do `echo 'deep' > /sys/power/mem_sleep` in sudo su mode. If this doesn't persist then add `mem_sleep_default=deep` to GRUB_CMDLINE_LINUX_DEFAULT in /etc/default/grub
58. For a reminder for over charge, add to cronjob using `EDITOR=vim crontab -e` and add `* * * * * /home/abhay/Desktop/Coding/scripting/scripts/all/battery_notif_cron`. Refer `https://unix.stackexchange.com/questions/60778/how-can-i-get-an-alert-when-my-battery-is-about-to-die-in-linux-mint/185400` for any errors.
59. To enable hibernation see this `https://gist.github.com/klingtnet/c972b8182e4e2818d6d551b0cbeac44b`
60. Install sof-bin
61. Remove unnecessary apps
62. Install gThumb, discord, postman, `jre-openjdk`, DBeaver.
[1]
/*
<?xml version='1.0'?>
<!DOCTYPE fontconfig SYSTEM 'fonts.dtd'>
<fontconfig>
<match target="font">
<edit mode="assign" name="rgba">
<const>rgb</const>
</edit>
</match>
<match target="font">
<edit mode="assign" name="hinting">
<bool>false</bool>
</edit>
</match>
<match target="font">
<edit mode="assign" name="hintstyle">
<const>hintslight</const>
</edit>
</match>
<match target="font">
<edit mode="assign" name="antialias">
<bool>true</bool>
</edit>
</match>
<match target="font">
<edit mode="assign" name="lcdfilter">
<const>lcddefault</const>
</edit>
</match>
<dir>~/.fonts</dir>
</fontconfig>
*/
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment