First, install Docker inside your machine. If you're using a Debian-based system, start by adding Docker's official GPG key through apt-get
:
sudo apt-get update
sudo apt-get install ca-certificates curl
sudo install -m 0755 -d /etc/apt/keyrings
First, install Docker inside your machine. If you're using a Debian-based system, start by adding Docker's official GPG key through apt-get
:
sudo apt-get update
sudo apt-get install ca-certificates curl
sudo install -m 0755 -d /etc/apt/keyrings
The sourcekit-lsp
, in its current capabilities, is unable to understand the structures of Xcode projects. Meaning, when using it, you will encounter errors that marks some symbols as unidentified if they reside on a different .swift
file.
To remedy this, we can use the xcode-build-server
tool, which works by providing to sourcekit-lsp
information about the Xcode project we're working on.
Before installing it, make sure to run the following command:
sudo xcode-select -s /Applications/Xcode.app/Contents/Developer
This gist contains an instruction to configure SwiftBar and launchd
to show a network interface indicator on the macOS menu bar. This allows you to tell when an ethernet connection is used over a wireless connection (a feature that is not provided by macOS).
First, put the files attached below in the following locations:
network-interface.sh
in your SwiftBar plugin folder (e.g., ~/.swiftbar_plugins/network-interface.sh
(change the permission octal to 755
).org.jazali.network-listener.plist
in /Library/LaunchAgents/org.jazali.network-listener.plist
(change the permisson octal to 600
).refresh_swiftbar_network_interface.sh
in the directory where you put your scripts; e.g., ~/scripts/refresh_swiftbar_network_interface.sh
(change the permission octal to 755
).Note that you can change the identifier org.jazali
into any unique identifier you desire, such as com.user
. Also, the icons in network-interface.sh
are SF Symbols icons, which should b
This document shows the fixing steps if booting up the machine skips GRUB and directly boots up Windows instead.
After altering some settings in Windows, or just as often, after updating Windows, you may find yourself in the following situation:
ext4
partitions that some Linux systems use) shows that the Linux partitions, including its corresponding EFI partition is still intact.The following steps summarizes what nee
To input non-Latin languages such as Mandarin Chinese and Japanese, one would need to install an Input Method Framework (IMF) and an Input Method Editors (IME). For me, the IMF that works best is Fcitx5
, which is designed to be lightweight. In Arch-based systems, installing it is straightforward:
sudo pacman -S fcitx5
To use a GUI for configuring Fcitx5
, install fcitx5-qt
:
sudo pacman -S fcitx5-qt
/* Change color scheme to match EndeavourOS */ | |
/* Make sure to set the theme as `Photon` in the settings */ | |
@media (prefers-color-scheme: dark) { | |
:root { | |
--tab-border: #2f343f; | |
--tabbar-bg: #2f343f; | |
--tab-surface-regular: #565965; | |
--tab-surface-hover: #496c9a; | |
--tab-surface-active: #5294e2; | |
--tab-surface-active-hover: #75a9e8; |
To change the default terminal, you can modify the order in the /usr/bin/i3-sensible-terminal
file:
- for terminal in "$TERMINAL" x-terminal-emulator mate-terminal gnome-terminal terminator xfce4-terminal urxvt rxvt termit Eterm aterm uxterm xterm roxterm termite lxterminal terminology st qterminal lilyterm tilix terminix konsole kitty guake tilda alacritty hyper wezterm; do
+ for terminal in "$TERMINAL" kitty alacritty x-terminal-emulator mate-terminal gnome-terminal terminator xfce4-terminal urxvt rxvt termit Eterm aterm uxterm xterm roxterm termite lxterminal terminology st qterminal lilyterm tilix terminix konsole kitty guake tilda alacritty hyper wezterm; do
if command -v "$terminal" > /dev/null 2>&1; then
exec "$terminal" "$@"
You might have more than one display manager installed in your machine. To switch from lightdm
(the default DM in EndeavourOS) to, say, sddm
because you want to swap i3wm
with swaywm
, you can use the following commands:
First of all, determine the name of your display manager running the following:
systemctl status display-manager
It will return something like this: