Skip to content

Commit c58ea17

Browse files
DAK404wz790
andauthored
Version 2.1.1 (#9)
* Add JetBrains Toolbox (#7) * Create Pkg-JetBrains-Toolbox .sh * Rename Pkg-JetBrains-Toolbox .sh to Pkg-JetBrains-Toolbox.sh * Update Pkg-JetBrains-Toolbox.sh * Rename Pkg-JetBrains-Toolbox.sh to Pkg-JetBrainsToolbox.sh * Update OpenSUSE_Installation.sh * Update OpenSUSE-Setup-Scripts.help * Update CHANGELOG.MD * Update README.md * Version 2.1.1 See Changelog file for the list of changes. * Add Credits file * Update the table to include zsh * New GitHub Pages site (#8) * Create index.html * Create style.css * Create script.js * Update script.js * Update style.css * Update index.html * Delete index.md * Update index.html * Update style.css * Update script.js * Update index.html * Update style.css * Update script.js * Update index.html * Update style.css * Update index.html * Fix a few things. * Finalize version 2.1.1 * Update readme and website Also add credits for @wz790 to readme for the website! * Remove task script. It did not work as expected. More system files needed to be messed around for this to work, therefore, I am not going to make a scriptlet for this. * Finalize changes --------- Co-authored-by: wz790 <[email protected]>
1 parent 7d4cdbc commit c58ea17

File tree

14 files changed

+1543
-29
lines changed

14 files changed

+1543
-29
lines changed

CHANGELOG.MD

Lines changed: 25 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -5,24 +5,43 @@ This is the changelog since version 2.0.0. Each section contains divisions for e
55
# Table of Contents
66
- [Changelog](#changelog)
77
- [Table of Contents](#table-of-contents)
8-
- [2.1.0](#210)
8+
- [2.1.1](#211)
99
- [Additions](#additions)
1010
- [Modifications](#modifications)
11-
- [Deletions](#deletions)
12-
- [2.0.2](#202)
11+
- [2.1.0](#210)
1312
- [Additions](#additions-1)
1413
- [Modifications](#modifications-1)
15-
- [Deletions](#deletions-1)
16-
- [2.0.1](#201)
14+
- [Deletions](#deletions)
15+
- [2.0.2](#202)
1716
- [Additions](#additions-2)
1817
- [Modifications](#modifications-2)
19-
- [2.0.0](#200)
18+
- [Deletions](#deletions-1)
19+
- [2.0.1](#201)
2020
- [Additions](#additions-3)
2121
- [Modifications](#modifications-3)
22+
- [2.0.0](#200)
23+
- [Additions](#additions-4)
24+
- [Modifications](#modifications-4)
2225
- [Deletions](#deletions-2)
2326

2427
---
2528

29+
## 2.1.1
30+
31+
### Additions
32+
33+
+ Added JetBrains Toolbox installation Script. Thanks, [wz790](https://github.com/wz790)!
34+
+ Added an awesome website. Thanks, [wz790](https://github.com/wz790)!
35+
+ Added zsh installation and customization script
36+
+ Made adjustments to guided installer to fit new items
37+
+ Added `CREDITS.MD` file
38+
+ Added a Task script, for login, logout and other tasks
39+
40+
### Modifications
41+
42+
* Updated the documentation
43+
* Updated Missings Fonts with to include `symbols-only-nerd-fonts` package
44+
2645
## 2.1.0
2746

2847
### Additions

CREDITS.MD

Lines changed: 17 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,17 @@
1+
# Credits 🤝
2+
3+
A big thank you to:
4+
5+
+ [wz790](https://github.com/wz790)
6+
• Helped implement the logic for installing JetBrains Toolbox.
7+
• Created an awesome website for this project!
8+
9+
+ [n-shamsi](https://github.com/n-shamsi)
10+
• Developed an alternative repo for Leap users with Nvidia installation support.
11+
12+
+ [PercyPanleo](https://github.com/PercyPanleo)
13+
• Modified the Gigabyte Sleep Fix script (GPP8) to support certain Gigabyte motherboards.
14+
15+
---
16+
17+
## 🙏 **Thanks to everyone who has taken the time to check out, use, and provide feedback on these scripts!**

Documentation/OpenSUSE-Setup-Scripts.help

Lines changed: 9 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -215,7 +215,14 @@ to write code with IntelliSense autocomplete features. It is used mainly by deve
215215

216216
---------------------------------------------------------------
217217

218-
2D.5. Warp Terminal (warp.dev)
218+
2D.5. JetBrains Toolbox
219+
220+
This script will download and install JetBrains Toolbox on the system. JetBrains Toolbox App lets you install JetBrains IDEs
221+
like Rider.
222+
223+
---------------------------------------------------------------
224+
225+
2D.6. Warp Terminal (warp.dev)
219226

220227
Warp Terminal is an application that is AI powered terminal. It is intuitive and can execute workflows easily.
221228

@@ -266,4 +273,4 @@ D) OpenRGB did not work for me!
266273
Answer: The user will need to make additional configurations for non-AMD hardware. A few motherboards will require special
267274
configurations for the OpenRGB application to work. Please check the OpenRGB documentation for the same.
268275

269-
-------------------------------------------------------------------------------------------------------------------------------
276+
-------------------------------------------------------------------------------------------------------------------------------

Miscellaneous/Tasks/README.MD

Lines changed: 19 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,19 @@
1+
# Tasks
2+
3+
These are a set of tasks that can be set to run on every login or logout.
4+
5+
To make sure it is easier to use the tasks, please place it in `$HOME/.tasks` directory.
6+
7+
## Login.sh
8+
9+
This script can be set to run automatically when the user logs in.
10+
11+
To run this script on every login in KDE Plasma, paste this script to `$HOME/.tasks/login.sh`. Next go to the autostart section in KDE settings and finally select this script. If necessary, make this executable (Plasma settings will ask once should the script be made executable).
12+
13+
### Functions
14+
15+
The following are the functionalities of the script:
16+
17+
+ `systemd-analyze`
18+
+ This will save an svg file to `$HOME/.boot/bootgraph` with the current date and time.
19+
+ This will allow the user to check the boot times and the services during boot.

Miscellaneous/Tasks/login.sh

Lines changed: 16 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,16 @@
1+
#!/bin/bash
2+
3+
# Define the output directory
4+
OUTPUT_DIR="$HOME/.boot/bootgraph"
5+
6+
# Create the directory only if it doesn't exist
7+
if [ ! -d "$OUTPUT_DIR" ]; then
8+
mkdir -p "$OUTPUT_DIR"
9+
fi
10+
11+
# Generate the filename with date-time
12+
TIMESTAMP=$(date '+%Y-%m-%d_%H-%M-%S')
13+
FILENAME="boot-$TIMESTAMP.svg"
14+
15+
# Generate the boot graph
16+
systemd-analyze plot > "$OUTPUT_DIR/$FILENAME"

OpenSUSE_Installation.sh

Lines changed: 25 additions & 17 deletions
Original file line numberDiff line numberDiff line change
@@ -16,7 +16,7 @@ fi
1616
#
1717
##########################################
1818

19-
SCRIPT_VERSION="2.1.0"
19+
SCRIPT_VERSION="2.1.1"
2020
INTERNET_CONNECTION=false
2121
SCRIPT_PATH="https://raw.githubusercontent.com/DAK404/OpenSUSE-Setup-Scripts/main"
2222

@@ -139,20 +139,22 @@ display_menu()
139139
echo "13. Tweak Firewall Rules for mDNS"
140140
echo "14. Install and Configure openRGB"
141141
echo "15. Install Monthly Automatic System Updates"
142+
echo "16. Install zsh and Oh-My-Zsh!"
142143
echo
143144
echo "---- PACKAGE INSTALLATION ----"
144145
echo
145-
echo "16. Gaming Packages"
146-
echo "17. Git and GitHub Desktop"
147-
echo "18. Essential System Utilities"
148-
echo "19. Visual Studio Code"
149-
echo "20. Warp Terminal (warp.dev)"
146+
echo "17. Gaming Packages"
147+
echo "18. Git and GitHub Desktop"
148+
echo "19. Essential System Utilities"
149+
echo "20. Visual Studio Code"
150+
echo "21. JetBrains Toolbox"
151+
echo "22. Warp Terminal (warp.dev)"
150152
echo
151153
echo "------- PERSONALIZATION ------"
152154
echo
153-
echo "21. Install Global Theme (Plasma and GTK)"
154-
echo "22. Install Posy's Cursors"
155-
echo "23. Install Breeze Transparent Plasma Style"
155+
echo "23. Install Global Theme (Plasma and GTK)"
156+
echo "24. Install Posy's Cursors"
157+
echo "25. Install Breeze Transparent Plasma Style"
156158
echo
157159
echo "------------------------------"
158160
echo
@@ -221,27 +223,33 @@ handle_input() {
221223
sw_install_tweaks 'SysAutoUpdate'
222224
;;
223225
16)
224-
sw_install_packages 'Gaming'
226+
sw_install_tweaks 'zsh'
225227
;;
226228
17)
227-
sw_install_packages 'GitHubDesktop'
229+
sw_install_packages 'Gaming'
228230
;;
229231
18)
230-
sw_install_packages 'SysUtilities'
232+
sw_install_packages 'GitHubDesktop'
231233
;;
232234
19)
233-
sw_install_packages 'VSCode'
235+
sw_install_packages 'SysUtilities'
234236
;;
235237
20)
236-
sw_install_packages 'WarpTerminal'
238+
sw_install_packages 'VSCode'
237239
;;
238240
21)
239-
sw_install_personalization 'GlobalTheme'
241+
sw_install_packages 'JetBrainsToolbox'
240242
;;
241243
22)
242-
sw_install_personalization 'PosysCursors'
244+
sw_install_packages 'WarpTerminal'
243245
;;
244246
23)
247+
sw_install_personalization 'GlobalTheme'
248+
;;
249+
24)
250+
sw_install_personalization 'PosysCursors'
251+
;;
252+
25)
245253
sw_install_personalization 'BreezeTransparent'
246254
;;
247255
?)
@@ -260,7 +268,7 @@ if [ $# -eq 0 ]; then
260268
# Main loop
261269
while true; do
262270
display_menu
263-
read -p "Enter your choice (1-23): " choice
271+
read -p "Enter your choice (1-25): " choice
264272
handle_input $choice
265273
read -p "Press Enter to continue..."
266274
done

README.md

Lines changed: 8 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
# OpenSUSE Tumbleweed Setup Scripts
22

3-
**Now with improved code in version 2.1.0 and beyond!**
3+
**Now with improved code in version 2.1.1 and beyond!**
44

55
This is a set of scripts that can help in configuring and setting up repositories, codecs, packages and configure applications or systems for daily use.
66

@@ -20,13 +20,17 @@ Please note that the `Testing` branch is always ahead of the `main` branch. Ther
2020

2121
## IMPORTANT
2222

23-
I would like to highlight 2 of the forks that is significant.
23+
The website is made by [wz790](https://github.com/wz790)!
24+
25+
I would like to highlight 2 significant forks.
2426

2527
1. N Shamsi's Fork: [https://github.com/n-shamsi/OpenSUSE-Setup-Scripts](https://github.com/n-shamsi/OpenSUSE-Setup-Scripts) - This is a modified version of the scripts for OpenSUSE Leap versions.
2628
2. Percy Panelo's Fork: [https://github.com/PercyPanleo/OpenSUSE-Setup-Scripts](https://github.com/PercyPanleo/OpenSUSE-Setup-Scripts) - This contains an alternative fix for Gigabyte sleep issues. If the version provided does not work as expected, please use Percy Panelo's version.
2729

2830
A big thank you to you both for contributing to this project!
2931

32+
Please see the [CREDITS](CREDITS.MD) file to check-out all the contributors to the project!
33+
3034
## Quick Run
3135

3236
For normal users, you may run this command:
@@ -60,10 +64,12 @@ The `OpenSUSE-Installation.sh` script may require a few arguments as per your us
6064
| Tweak | mDNSFirewallRules | Adds mDNS to public and external zones in the firewall |
6165
| Tweak | OpenRGB | Installs and sets up openRGB |
6266
| Tweak | SysAutoUpdate | Adds service to update system on 1st day of every month |
67+
| Tweak | zsh | Installs zsh and Oh-My-Zsh packages |
6368
| Pkg | Gaming | Installs Gaming components to the system |
6469
| Pkg | GitHubDesktop | Installs GitHub Desktop and Git |
6570
| Pkg | SysUtilities | Installs Essential System Utilities |
6671
| Pkg | VSCode | Installs Visual Studio Code |
72+
| Pkg | JetBrains Toolbox | Installs JetBrains Toolbox |
6773
| Pkg | WarpTerminal | Installs Warp Terminal (warp.dev) |
6874
| Personalization | BreezeTransparent | Installs Breeze Transparent Plasma Style |
6975
| Personalization | GlobalTheme | Installs Colloid KDE Plasma, GTK and Icon themes |

Scriptlets/Fixes-and-Tweaks/Fix-MissingFonts.sh

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -11,6 +11,6 @@
1111
#
1212
############################################################
1313

14-
zypper in -y google-noto-*
14+
zypper in -y symbols-only-nerd-fonts google-noto-*
1515

1616
echo "[ INFORMATION ] Missing Fonts Installed"
Lines changed: 58 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,58 @@
1+
#!/bin/bash
2+
3+
set -e
4+
5+
# Install prerequisites
6+
echo "Installing required packages..."
7+
zypper install -y zsh git
8+
9+
# Clone Oh My Zsh globally
10+
echo "Cloning Oh My Zsh into /opt/oh-my-zsh..."
11+
if [ ! -d /opt/oh-my-zsh ]; then
12+
git clone https://github.com/ohmyzsh/ohmyzsh.git /opt/oh-my-zsh
13+
else
14+
echo "/opt/oh-my-zsh already exists. Skipping clone."
15+
fi
16+
17+
# Create default .zshrc in /etc/skel
18+
echo "Creating global .zshrc template for new users..."
19+
tee /etc/skel/.zshrc > /dev/null <<'EOF'
20+
export ZSH="/opt/oh-my-zsh"
21+
ZSH_THEME="fino-time"
22+
plugins=(git)
23+
24+
source $ZSH/oh-my-zsh.sh
25+
26+
alias ll='ls -alF'
27+
alias la='ls -A'
28+
alias l='ls -CF'
29+
EOF
30+
31+
# Set Zsh as default shell for new users
32+
ZSH_PATH=$(command -v zsh)
33+
echo "Setting Zsh as the default shell for new users..."
34+
useradd -D -s "$ZSH_PATH"
35+
36+
# Copy to existing users (UID >= 1000)
37+
echo "Configuring existing users..."
38+
for user in $(awk -F: '$3 >= 1000 && $3 < 65534 { print $1 }' /etc/passwd); do
39+
USER_HOME=$(eval echo "~$user")
40+
if [ ! -f "$USER_HOME/.zshrc" ]; then
41+
echo " - Setting up Oh My Zsh for $user"
42+
cp /etc/skel/.zshrc "$USER_HOME/.zshrc"
43+
chown "$user:$user" "$USER_HOME/.zshrc"
44+
chsh -s "$ZSH_PATH" "$user"
45+
else
46+
echo " - $user already has .zshrc — skipping"
47+
fi
48+
done
49+
50+
# Ensure zsh is in /etc/shells
51+
echo "Ensuring $ZSH_PATH is listed in /etc/shells..."
52+
if ! grep -q "$ZSH_PATH" /etc/shells; then
53+
echo "$ZSH_PATH" | tee -a /etc/shells
54+
else
55+
echo " - $ZSH_PATH already present in /etc/shells"
56+
fi
57+
58+
echo "Oh My Zsh system-wide setup complete."
Lines changed: 60 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,60 @@
1+
#!/bin/bash
2+
3+
####################################################################
4+
# JetBrains Toolbox Installation Script for openSUSE
5+
#
6+
# Based on original script by: JanPokorny
7+
# Modified and adapted by: wz790
8+
# Reviewed by: DAK404
9+
#
10+
# ⚠️ ATTENTION!
11+
# This script can be run in a single line from your shell!
12+
# Simply run the following in the Terminal:
13+
#
14+
# bash -c "$(curl -fsSL https://raw.githubusercontent.com/DAK404/OpenSUSE-Setup-Scripts/main/Scriptlets/Package-Installation/Pkg-JetBrainsToolbox.sh)"
15+
#
16+
####################################################################
17+
18+
# Exit immediately if a command exits with a non-zero status
19+
set -e
20+
set -o pipefail
21+
22+
# Define install paths
23+
TMP_DIR="/tmp"
24+
INSTALL_DIR="$HOME/.local/share/JetBrains/Toolbox/bin"
25+
SYMLINK_DIR="$HOME/.local/bin"
26+
27+
echo "### JETBRAINS TOOLBOX INSTALLATION STARTED ###"
28+
29+
echo -e "\e[94mFetching the latest JetBrains Toolbox download URL...\e[39m"
30+
ARCHIVE_URL=$(curl -s 'https://data.services.jetbrains.com/products/releases?code=TBA&latest=true&type=release' \
31+
| grep -Po '"linux":.*?[^\\]",' \
32+
| awk -F ':' '{print $3,":"$4}' \
33+
| sed 's/[", ]//g')
34+
ARCHIVE_FILENAME=$(basename "$ARCHIVE_URL")
35+
36+
echo -e "\e[94mDownloading $ARCHIVE_FILENAME...\e[39m"
37+
rm -f "$TMP_DIR/$ARCHIVE_FILENAME"
38+
wget -q --show-progress -cO "$TMP_DIR/$ARCHIVE_FILENAME" "$ARCHIVE_URL"
39+
40+
echo -e "\e[94mExtracting toolbox to $INSTALL_DIR...\e[39m"
41+
mkdir -p "$INSTALL_DIR"
42+
rm -f "$INSTALL_DIR/jetbrains-toolbox"
43+
tar -xzf "$TMP_DIR/$ARCHIVE_FILENAME" -C "$INSTALL_DIR" --strip-components=1
44+
rm -f "$TMP_DIR/$ARCHIVE_FILENAME"
45+
chmod +x "$INSTALL_DIR/jetbrains-toolbox"
46+
47+
echo -e "\e[94mCreating symlink in $SYMLINK_DIR...\e[39m"
48+
mkdir -p "$SYMLINK_DIR"
49+
rm -f "$SYMLINK_DIR/jetbrains-toolbox"
50+
ln -s "$INSTALL_DIR/jetbrains-toolbox" "$SYMLINK_DIR/jetbrains-toolbox"
51+
52+
# Run the toolbox once unless in a CI environment
53+
if [ -z "$CI" ]; then
54+
echo -e "\e[94mLaunching JetBrains Toolbox for initial setup...\e[39m"
55+
("$INSTALL_DIR/jetbrains-toolbox" &)
56+
echo -e "\n\e[32mDone! JetBrains Toolbox should now be running.\n"
57+
echo -e "\e[32mYou can also run it using 'jetbrains-toolbox' in your terminal.\e[39m\n"
58+
else
59+
echo -e "\n\e[32mDone! CI environment detected — skipping initial run.\e[39m\n"
60+
fi

0 commit comments

Comments
 (0)