Merge branch 'master' into tm/lazyvim-extras-modular

This commit is contained in:
Tony Messias
2025-02-05 11:57:54 -03:00
committed by GitHub
22 changed files with 109 additions and 75 deletions

View File

@@ -14,6 +14,6 @@ Omakub is released under the [MIT License](https://opensource.org/licenses/MIT).
## Extras
While omakub is purposed to be an opiniated take, the open source community offers alternative customization, add-ons, extras, that you can use to adjust, replace or enrich your experience.
While omakub is purposed to be an opinionated take, the open source community offers alternative customization, add-ons, extras, that you can use to adjust, replace or enrich your experience.
[⇒ Browse the omakub extensions.](EXTENSIONS.md)
[⇒ Browse the omakub extensions.](EXTENSIONS.md)

Binary file not shown.

After

Width:  |  Height:  |  Size: 48 KiB

View File

@@ -4,6 +4,7 @@ CHOICES=(
"1password Manage your passwords securely across devices"
"Audacity Record and edit audio"
"Brave Chrome-based browser with built-in ad blocking"
"Cursor The AI Code Editor"
"Doom Emacs Emacs framework with curated list of packages"
"Dropbox Sync files across computers with ease"
"OBS Studio Record screencasts with inputs from both display + webcam"

View File

@@ -1,4 +1,4 @@
UNINSTALLER=$(gum file $OMAKUB_PATH/uninstall)
UNINSTALLER=$(gum file $OMAKUB_PATH/uninstall --height 26)
[ -n "$UNINSTALLER" ] && gum confirm "Run uninstaller?" && source $UNINSTALLER && gum spin --spinner globe --title "Uninstall completed!" -- sleep 3
clear
source $OMAKUB_PATH/bin/omakub

View File

@@ -9,7 +9,7 @@ ascii_art='________ __ ___.
'
echo -e "$ascii_art"
echo "=> Omakub is for fresh Ubuntu 24.04 installations only!"
echo "=> Omakub is for fresh Ubuntu 24.04+ installations only!"
echo -e "\nBegin installation (or abort with ctrl+c)..."
sudo apt-get update >/dev/null

View File

@@ -4,7 +4,7 @@ Comment=Application launcher for Linux
GenericName=Launcher
Categories=GNOME;GTK;Utility;
TryExec=/usr/bin/ulauncher
Exec=env GDK_BACKEND=x11 /usr/bin/ulauncher --hide-window --hide-window
Exec=env GDK_BACKEND=wayland /usr/bin/ulauncher --hide-window --hide-window
Icon=ulauncher
Terminal=false
Type=Application

View File

@@ -1,5 +1,5 @@
# File system
alias ls='eza -lh --group-directories-first --icons'
alias ls='eza -lh --group-directories-first --icons=auto'
alias lsa='ls -a'
alias lt='eza --tree --level=2 --long --icons --git'
alias lta='lt -a'

View File

@@ -2,6 +2,6 @@
force_color_prompt=yes
color_prompt=yes
# Simple prompt with path in the window/pane title and carat for typing line
# Simple prompt with path in the window/pane title and caret for typing line
PS1=$'\uf0a9 '
PS1="\[\e]0;\w\a\]$PS1"

View File

@@ -20,3 +20,6 @@ include "%L"
<Multi_key> <m> <p> : "🙏" # pray
<Multi_key> <m> <i> : "😉" # wink
<Multi_key> <m> <o> : "👌" # OK
<Multi_key> <m> <g> : "👋" # greeting
<Multi_key> <m> <a> : "💪" # arm
<Multi_key> <m> <b> : "🤯" # blowing

View File

@@ -16,7 +16,7 @@ if $RUNNING_GNOME; then
source ~/.local/share/omakub/install/terminal/required/app-gum.sh >/dev/null
source ~/.local/share/omakub/install/first-run-choices.sh
echo "Installing terminal and desktop tools.."
echo "Installing terminal and desktop tools..."
else
echo "Only installing terminal tools..."
fi

View File

@@ -12,7 +12,7 @@ fi
if [ "$ID" != "ubuntu" ] || [ $(echo "$VERSION_ID >= 24.04" | bc) != 1 ]; then
echo "$(tput setaf 1)Error: OS requirement not met"
echo "You are currently running: $ID $VERSION_ID"
echo "OS required: ubuntu 24.04 or higher"
echo "OS required: Ubuntu 24.04 or higher"
echo "Installation stopped."
exit 1
fi

View File

@@ -0,0 +1,24 @@
cd /tmp
curl -L --output cursor.appimage https://downloader.cursor.sh/linux/x64
sudo mv cursor.appimage /opt/cursor.appimage
sudo chmod +x /opt/cursor.appimage
sudo apt install -y fuse3
sudo apt install -y libfuse2t64
DESKTOP_FILE="/usr/share/applications/cursor.desktop"
sudo bash -c "cat > $DESKTOP_FILE" <<EOL
[Desktop Entry]
Name=Cursor
Comment=AI-powered code editor
Exec=/opt/cursor.appimage --no-sandbox
Icon=/home/$USER/.local/share/omakub/applications/icons/cursor.png
Type=Application
Categories=Development;IDE;
EOL
if [ -f "$DESKTOP_FILE" ]; then
echo "cursor.desktop created successfully"
else
echo "Failed to create cursor.desktop"
fi

View File

@@ -1,5 +1,5 @@
# Stream music using https://spotify.com
curl -sS https://download.spotify.com/debian/pubkey_6224F9941A8AA6D1.gpg | sudo gpg --dearmor --yes -o /etc/apt/trusted.gpg.d/spotify.gpg
curl -sS https://download.spotify.com/debian/pubkey_C85668DF69375001.gpg | sudo gpg --dearmor --yes -o /etc/apt/trusted.gpg.d/spotify.gpg
echo "deb [signed-by=/etc/apt/trusted.gpg.d/spotify.gpg] http://repository.spotify.com stable non-free" | sudo tee /etc/apt/sources.list.d/spotify.list
sudo apt update -y
sudo apt install -y spotify-client

View File

@@ -68,6 +68,7 @@ gsettings set org.gnome.shell.extensions.tophat show-icons false
gsettings set org.gnome.shell.extensions.tophat show-cpu false
gsettings set org.gnome.shell.extensions.tophat show-disk false
gsettings set org.gnome.shell.extensions.tophat show-mem false
gsettings set org.gnome.shell.extensions.tophat show-fs false
gsettings set org.gnome.shell.extensions.tophat network-usage-unit bits
# Configure AlphabeticalAppGrid

View File

@@ -1,31 +1,32 @@
cd /tmp
wget -O nvim.tar.gz "https://github.com/neovim/neovim/releases/latest/download/nvim-linux64.tar.gz"
wget -O nvim.tar.gz "https://github.com/neovim/neovim/releases/download/stable/nvim-linux-x86_64.tar.gz"
tar -xf nvim.tar.gz
sudo install nvim-linux64/bin/nvim /usr/local/bin/nvim
sudo cp -R nvim-linux64/lib /usr/local/
sudo cp -R nvim-linux64/share /usr/local/
rm -rf nvim-linux64 nvim.tar.gz
sudo install nvim-linux-x86_64/bin/nvim /usr/local/bin/nvim
sudo cp -R nvim-linux-x86_64/lib /usr/local/
sudo cp -R nvim-linux-x86_64/share /usr/local/
rm -rf nvim-linux-x86_64 nvim.tar.gz
cd -
# Install luarocks and tree-sitter-cli to resolve lazyvim :checkheatlh warnings
sudo apt install -y luarocks tree-sitter-cli
# Only attempt to set configuration if Neovim has never been run
if [ ! -d "$HOME/.config/nvim" ]; then
# Use LazyVim
git clone https://github.com/LazyVim/starter ~/.config/nvim
# Use LazyVim
git clone https://github.com/LazyVim/starter ~/.config/nvim
# Remove the .git folder, so you can add it to your own repo later
rm -rf ~/.config/nvim/.git
# Disable update notification popup in starter config
sed -i 's/checker = { enabled = true }/checker = { enabled = true, notify = false }/g' ~/.config/nvim/lua/config/lazy.lua
# Make everything match the terminal transparency
mkdir -p ~/.config/nvim/plugin/after
cp ~/.local/share/omakub/configs/neovim/transparency.lua ~/.config/nvim/plugin/after/
# Default to Tokyo Night theme
cp ~/.local/share/omakub/themes/tokyo-night/neovim.lua ~/.config/nvim/lua/plugins/theme.lua
# Make everything match the terminal transparency
mkdir -p ~/.config/nvim/plugin/after
cp ~/.local/share/omakub/configs/neovim/transparency.lua ~/.config/nvim/plugin/after/
# Default to Tokyo Night theme
cp ~/.local/share/omakub/themes/tokyo-night/neovim.lua ~/.config/nvim/lua/plugins/theme.lua
fi
# Replace desktop launcher with one running inside Alacritty
if [[ -d ~/.local/share/applications ]]; then
sudo rm -rf /usr/share/applications/nvim.desktop
source ~/.local/share/omakub/applications/Neovim.sh
sudo rm -rf /usr/share/applications/nvim.desktop
source ~/.local/share/omakub/applications/Neovim.sh
fi

View File

@@ -1,7 +1,7 @@
# Install mise for managing multiple versions of languages. See https://mise.jdx.dev/
sudo apt update -y && sudo apt install -y gpg sudo wget curl
sudo apt update -y && sudo apt install -y gpg wget curl
sudo install -dm 755 /etc/apt/keyrings
wget -qO - https://mise.jdx.dev/gpg-key.pub | gpg --dearmor | sudo tee /etc/apt/keyrings/mise-archive-keyring.gpg 1>/dev/null
echo "deb [signed-by=/etc/apt/keyrings/mise-archive-keyring.gpg arch=amd64] https://mise.jdx.dev/deb stable main" | sudo tee /etc/apt/sources.list.d/mise.list
echo "deb [signed-by=/etc/apt/keyrings/mise-archive-keyring.gpg arch=$(dpkg --print-architecture)] https://mise.jdx.dev/deb stable main" | sudo tee /etc/apt/sources.list.d/mise.list
sudo apt update
sudo apt install -y mise

View File

@@ -19,45 +19,42 @@ enable_lazyvim_extras() {
}
if [[ -n "$languages" ]]; then
for language in $languages; do
case $language in
Ruby)
mise use --global ruby@3.3
mise x ruby -- gem install rails --no-document
;;
Node.js)
mise use --global node@lts
enable_lazyvim_extras "lazyvim.plugins.extras.lang.typescript"
;;
Go)
mise use --global go@latest
enable_lazyvim_extras "lazyvim.plugins.extras.lang.go"
;;
PHP)
sudo add-apt-repository -y ppa:ondrej/php
sudo apt -y install php8.3 php8.3-{curl,apcu,intl,mbstring,opcache,pgsql,mysql,sqlite3,redis,xml,zip}
php -r "copy('https://getcomposer.org/installer', 'composer-setup.php');"
php composer-setup.php --quiet && sudo mv composer.phar /usr/local/bin/composer
rm composer-setup.php
enable_lazyvim_extras "lazyvim.plugins.extras.lang.php"
;;
Python)
mise use --global python@latest
;;
Elixir)
mise use --global erlang@latest
mise use --global elixir@latest
mise x elixir -- mix local.hex --force
;;
Rust)
bash -c "$(curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs)" -- -y
;;
Java)
mise use --global java@latest
;;
esac
done
for language in $languages; do
case $language in
Ruby)
mise use --global ruby@3.4
mise x ruby -- gem install rails --no-document
;;
Node.js)
mise use --global node@lts
enable_lazyvim_extras "lazyvim.plugins.extras.lang.typescript"
;;
Go)
mise use --global go@latest
enable_lazyvim_extras "lazyvim.plugins.extras.lang.go"
;;
PHP)
sudo add-apt-repository -y ppa:ondrej/php
sudo apt -y install php8.4 php8.4-{curl,apcu,intl,mbstring,opcache,pgsql,mysql,sqlite3,redis,xml,zip}
php -r "copy('https://getcomposer.org/installer', 'composer-setup.php');"
php composer-setup.php --quiet && sudo mv composer.phar /usr/local/bin/composer
rm composer-setup.php
enable_lazyvim_extras "lazyvim.plugins.extras.lang.php"
;;
Python)
mise use --global python@latest
;;
Elixir)
mise use --global erlang@latest
mise use --global elixir@latest
mise x elixir -- mix local.hex --force
;;
Rust)
bash -c "$(curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs)" -- -y
;;
Java)
mise use --global java@latest
;;
esac
done
fi

3
migrations/1738744474.sh Normal file
View File

@@ -0,0 +1,3 @@
# Local XCompose must change for included files to be picked up by ibus
sed -i '1i # Touched to update for Omakub defaults [5/2/2025]' ~/.XCompose
ibus restart

View File

@@ -1,2 +1,4 @@
code --install-extension $VSC_EXTENSION >/dev/null
sed -i "s/\"workbench.colorTheme\": \".*\"/\"workbench.colorTheme\": \"$VSC_THEME\"/g" ~/.config/Code/User/settings.json
if command -v code &>/dev/null; then
code --install-extension $VSC_EXTENSION >/dev/null
sed -i "s/\"workbench.colorTheme\": \".*\"/\"workbench.colorTheme\": \"$VSC_THEME\"/g" ~/.config/Code/User/settings.json
fi

2
uninstall/app-cursor.sh Normal file
View File

@@ -0,0 +1,2 @@
sudo rm /opt/cursor.appimage
sudo rm /usr/share/applications/cursor.desktop

View File

@@ -1,4 +1,4 @@
rm -rf ~/.local/zed.app
rm -rf ~/.local/bin/zed
rm .rf ~/.local/share/applications/dev.zed.Zed.desktop
rm -rf ~/.local/share/applications/dev.zed.Zed.desktop
rm -rf ~/.config/zed

View File

@@ -1 +1 @@
1.1.3
1.1.7