mirror of
https://github.com/ChrisTitusTech/linutil.git
synced 2024-11-05 21:28:48 +00:00
Merge branch 'main' of ssh://github.com/christitustech/linutil
This commit is contained in:
commit
3bccaefeec
22
.github/workflows/github-pages.yml
vendored
Normal file
22
.github/workflows/github-pages.yml
vendored
Normal file
|
@ -0,0 +1,22 @@
|
||||||
|
name: GitHub Pages Deploy
|
||||||
|
on:
|
||||||
|
release:
|
||||||
|
types: [published, prereleased]
|
||||||
|
workflow_dispatch:
|
||||||
|
permissions:
|
||||||
|
contents: write
|
||||||
|
jobs:
|
||||||
|
deploy:
|
||||||
|
runs-on: ubuntu-latest
|
||||||
|
steps:
|
||||||
|
- uses: actions/checkout@v4
|
||||||
|
- uses: actions/setup-python@v4
|
||||||
|
with:
|
||||||
|
python-version: 3.x
|
||||||
|
- uses: actions/cache@v4
|
||||||
|
with:
|
||||||
|
key: ${{ github.ref }}
|
||||||
|
path: .cache
|
||||||
|
- run: pip install mkdocs-material
|
||||||
|
- run: pip install pillow cairosvg
|
||||||
|
- run: mkdocs gh-deploy --force
|
1
docs/KnownIssues.md
Normal file
1
docs/KnownIssues.md
Normal file
|
@ -0,0 +1 @@
|
||||||
|
# Known Issues
|
BIN
docs/assets/favicon.png
Normal file
BIN
docs/assets/favicon.png
Normal file
Binary file not shown.
After Width: | Height: | Size: 9.6 KiB |
BIN
docs/assets/mainpage.png
Normal file
BIN
docs/assets/mainpage.png
Normal file
Binary file not shown.
After Width: | Height: | Size: 15 KiB |
2
docs/contribute.md
Normal file
2
docs/contribute.md
Normal file
|
@ -0,0 +1,2 @@
|
||||||
|
# How to Contribute?
|
||||||
|
|
4
docs/faq.md
Normal file
4
docs/faq.md
Normal file
|
@ -0,0 +1,4 @@
|
||||||
|
# FAQ's
|
||||||
|
|
||||||
|
## How do I uninstall LinUtil?
|
||||||
|
* You do not have to uninstall LinUtil. As it is a script you run from your terminal it only loads into your RAM. This means as soon as you close LinUtil it will be deleted off your system.
|
16
docs/index.md
Normal file
16
docs/index.md
Normal file
|
@ -0,0 +1,16 @@
|
||||||
|
# Welcome to the LinUtil Documentation!
|
||||||
|
|
||||||
|
[![Version](https://img.shields.io/github/v/release/ChrisTitusTech/linutil?color=%230567ff&label=Latest%20Release&style=for-the-badge)](https://github.com/ChrisTitusTech/linutil/releases/latest)
|
||||||
|
![GitHub Downloads (specific asset, all releases)](https://img.shields.io/github/downloads/ChrisTitusTech/linutil/start.sh?label=Total%20Downloads&style=for-the-badge)
|
||||||
|
|
||||||
|
## Running latest release of LinUtil
|
||||||
|
|
||||||
|
* You will first need to start a Terminal on your linux machine.
|
||||||
|
* Now you will need to run following command:
|
||||||
|
```
|
||||||
|
curl -fsSL https://christitus.com/linux | sh
|
||||||
|
```
|
||||||
|
|
||||||
|
!!! info
|
||||||
|
|
||||||
|
LinUtil is updated weekly as of the time of writing. Consequently, features and functionalities may evolve, and the documentation may not always reflect the most current images or information.
|
3
docs/updates.md
Normal file
3
docs/updates.md
Normal file
|
@ -0,0 +1,3 @@
|
||||||
|
# Update Log
|
||||||
|
|
||||||
|
#
|
9
docs/userguide.md
Normal file
9
docs/userguide.md
Normal file
|
@ -0,0 +1,9 @@
|
||||||
|
# Walkthrough
|
||||||
|
|
||||||
|
## How to run LinUtil?
|
||||||
|
Run the following command in a terminal on your Linux System:
|
||||||
|
```
|
||||||
|
curl -fsSL https://christitus.com/linux | sh
|
||||||
|
```
|
||||||
|
Once you have run that command you will see the following GUI show on your screen:
|
||||||
|
![Main Page](assets/mainpage.png)
|
66
mkdocs.yml
Normal file
66
mkdocs.yml
Normal file
|
@ -0,0 +1,66 @@
|
||||||
|
site_name: Chris Titus LinUtil Official Documentation
|
||||||
|
repo_url: https://github.com/ChrisTitusTech/linutil
|
||||||
|
|
||||||
|
nav:
|
||||||
|
- Introduction: 'index.md'
|
||||||
|
- User Guide: 'userguide.md'
|
||||||
|
- Contribute: 'contribute.md'
|
||||||
|
- Updates: 'updates.md'
|
||||||
|
- Known Issues: 'KnownIssues.md'
|
||||||
|
- FAQ: 'faq.md'
|
||||||
|
|
||||||
|
theme:
|
||||||
|
name: material
|
||||||
|
custom_dir: 'overrides'
|
||||||
|
features:
|
||||||
|
- navigation.tabs
|
||||||
|
- navigation.sections
|
||||||
|
- toc.integrate
|
||||||
|
- navigation.top
|
||||||
|
- search.suggest
|
||||||
|
- search.highlight
|
||||||
|
- content.tabs.link
|
||||||
|
- content.code.annotation
|
||||||
|
- content.code.copy
|
||||||
|
language: en
|
||||||
|
logo: assets/favicon.png
|
||||||
|
favicon: assets/favicon.png
|
||||||
|
palette:
|
||||||
|
- media: "(prefers-color-scheme: light)"
|
||||||
|
scheme: default
|
||||||
|
toggle:
|
||||||
|
icon: material/toggle-switch-off-outline
|
||||||
|
name: Switch to dark mode
|
||||||
|
primary: black
|
||||||
|
accent: purple
|
||||||
|
- media: "(prefers-color-scheme: dark)"
|
||||||
|
scheme: slate
|
||||||
|
toggle:
|
||||||
|
icon: material/toggle-switch
|
||||||
|
name: Switch to light mode
|
||||||
|
primary: teal
|
||||||
|
accent: lime
|
||||||
|
markdown_extensions:
|
||||||
|
- admonition
|
||||||
|
- pymdownx.details
|
||||||
|
- pymdownx.superfences
|
||||||
|
- pymdownx.superfences:
|
||||||
|
custom_fences:
|
||||||
|
- name: mermaid
|
||||||
|
class: mermaid
|
||||||
|
format: !!python/name:pymdownx.superfences.fence_code_format
|
||||||
|
- abbr
|
||||||
|
- attr_list
|
||||||
|
- pymdownx.snippets
|
||||||
|
- md_in_html
|
||||||
|
- pymdownx.superfences
|
||||||
|
- pymdownx.tabbed:
|
||||||
|
alternate_style: true
|
||||||
|
- pymdownx.highlight:
|
||||||
|
anchor_linenums: true
|
||||||
|
line_spans: __span
|
||||||
|
pygments_lang_class: true
|
||||||
|
- pymdownx.inlinehilite
|
||||||
|
- def_list
|
||||||
|
- pymdownx.tasklist:
|
||||||
|
custom_checkbox: true
|
12
overrides/main.html
Normal file
12
overrides/main.html
Normal file
|
@ -0,0 +1,12 @@
|
||||||
|
{% extends "base.html" %}
|
||||||
|
|
||||||
|
{% block header %}
|
||||||
|
{{ super() }}
|
||||||
|
<div style="color: red; text-align: center; padding: 10px; font-size: 20px;">
|
||||||
|
<strong>Announcement:</strong> This documentation is still in progress.
|
||||||
|
</div>
|
||||||
|
{% endblock %}
|
||||||
|
|
||||||
|
{% block footer %}
|
||||||
|
{# Empty block to override the footer #}
|
||||||
|
{% endblock %}
|
|
@ -78,7 +78,8 @@ checkDistro() {
|
||||||
|
|
||||||
checkEnv() {
|
checkEnv() {
|
||||||
checkCommandRequirements 'curl groups sudo'
|
checkCommandRequirements 'curl groups sudo'
|
||||||
checkPackageManager 'apt-get dnf pacman zypper'
|
checkPackageManager 'apt-get nala dnf pacman zypper yum xbps-install nix-env'
|
||||||
|
checkCurrentDirectoryWritable
|
||||||
checkSuperUser
|
checkSuperUser
|
||||||
checkDistro
|
checkDistro
|
||||||
}
|
}
|
||||||
|
|
|
@ -1,12 +1,5 @@
|
||||||
#!/bin/sh -e
|
#!/bin/sh -e
|
||||||
|
|
||||||
checkEnv() {
|
|
||||||
checkCommandRequirements 'curl groups sudo'
|
|
||||||
checkPackageManager 'apt-get dnf pacman zypper'
|
|
||||||
checkSuperUser
|
|
||||||
checkDistro
|
|
||||||
}
|
|
||||||
|
|
||||||
setupAlacritty() {
|
setupAlacritty() {
|
||||||
echo "Install Alacritty if not already installed..."
|
echo "Install Alacritty if not already installed..."
|
||||||
if ! command_exists alacritty; then
|
if ! command_exists alacritty; then
|
||||||
|
|
|
@ -1,12 +1,5 @@
|
||||||
#!/bin/sh -e
|
#!/bin/sh -e
|
||||||
|
|
||||||
checkEnv() {
|
|
||||||
checkCommandRequirements 'curl groups sudo'
|
|
||||||
checkPackageManager 'apt-get dnf pacman zypper'
|
|
||||||
checkSuperUser
|
|
||||||
checkDistro
|
|
||||||
}
|
|
||||||
|
|
||||||
setupKitty() {
|
setupKitty() {
|
||||||
echo "Install Kitty if not already installed..."
|
echo "Install Kitty if not already installed..."
|
||||||
if ! command_exists kitty; then
|
if ! command_exists kitty; then
|
||||||
|
|
|
@ -1,12 +1,5 @@
|
||||||
#!/bin/sh -e
|
#!/bin/sh -e
|
||||||
|
|
||||||
checkEnv() {
|
|
||||||
checkCommandRequirements 'curl groups sudo'
|
|
||||||
checkPackageManager 'apt-get dnf pacman zypper'
|
|
||||||
checkSuperUser
|
|
||||||
checkDistro
|
|
||||||
}
|
|
||||||
|
|
||||||
setupRofi() {
|
setupRofi() {
|
||||||
echo "Install Rofi if not already installed..."
|
echo "Install Rofi if not already installed..."
|
||||||
if ! command_exists rofi; then
|
if ! command_exists rofi; then
|
||||||
|
|
|
@ -22,13 +22,6 @@ fi
|
||||||
|
|
||||||
cd "$LINUXTOOLBOXDIR/linutil" || exit
|
cd "$LINUXTOOLBOXDIR/linutil" || exit
|
||||||
|
|
||||||
checkEnv() {
|
|
||||||
checkCommandRequirements 'curl groups sudo'
|
|
||||||
checkPackageHandler 'apt yum dnf pacman zypper'
|
|
||||||
checkCurrentDirectoryWritable
|
|
||||||
checkSuperUser
|
|
||||||
}
|
|
||||||
|
|
||||||
installDepend() {
|
installDepend() {
|
||||||
## Check for dependencies.
|
## Check for dependencies.
|
||||||
DEPENDENCIES='tar tree multitail tldr trash-cli unzip cmake make jq'
|
DEPENDENCIES='tar tree multitail tldr trash-cli unzip cmake make jq'
|
||||||
|
|
|
@ -1,12 +1,5 @@
|
||||||
#!/bin/sh -e
|
#!/bin/sh -e
|
||||||
|
|
||||||
checkEnv() {
|
|
||||||
checkCommandRequirements 'curl groups sudo'
|
|
||||||
checkPackageManager 'apt-get yum dnf pacman zypper'
|
|
||||||
checkCurrentDirectoryWritable
|
|
||||||
checkSuperUser
|
|
||||||
}
|
|
||||||
|
|
||||||
installDepend() {
|
installDepend() {
|
||||||
## Check for dependencies.
|
## Check for dependencies.
|
||||||
echo -e "${YELLOW}Installing dependencies...${RC}"
|
echo -e "${YELLOW}Installing dependencies...${RC}"
|
||||||
|
@ -71,7 +64,22 @@ install_additional_dependencies() {
|
||||||
|
|
||||||
echo "Lutris Installation complete."
|
echo "Lutris Installation complete."
|
||||||
echo "Installing steam..."
|
echo "Installing steam..."
|
||||||
|
|
||||||
|
#Install steam on Debian
|
||||||
|
if (lsb_release -i | grep -qi Debian); then
|
||||||
|
#Enable i386 repos
|
||||||
|
sudo dpkg --add-architecture i386
|
||||||
|
# Install software-properties-common to be able to add repos
|
||||||
|
sudo apt-get install -y software-properties-common
|
||||||
|
# Add repos necessary for installing steam
|
||||||
|
sudo apt-add-repository contrib -y
|
||||||
|
sudo apt-add-repository non-free -y
|
||||||
|
#Install steam
|
||||||
|
sudo apt-get install steam-installer -y
|
||||||
|
else
|
||||||
|
#Install steam on Ubuntu
|
||||||
sudo apt-get install -y steam
|
sudo apt-get install -y steam
|
||||||
|
fi
|
||||||
;;
|
;;
|
||||||
*zypper)
|
*zypper)
|
||||||
|
|
||||||
|
|
|
@ -4,15 +4,15 @@
|
||||||
LINUXTOOLBOXDIR="$HOME/linuxtoolbox"
|
LINUXTOOLBOXDIR="$HOME/linuxtoolbox"
|
||||||
|
|
||||||
if [ ! -d "$LINUXTOOLBOXDIR" ]; then
|
if [ ! -d "$LINUXTOOLBOXDIR" ]; then
|
||||||
echo -e "${YELLOW}Creating linuxtoolbox directory: $LINUXTOOLBOXDIR${RC}"
|
printf "${YELLOW}Creating linuxtoolbox directory: %s${RC}\n" "$LINUXTOOLBOXDIR"
|
||||||
mkdir -p "$LINUXTOOLBOXDIR"
|
mkdir -p "$LINUXTOOLBOXDIR"
|
||||||
echo -e "${GREEN}linuxtoolbox directory created: $LINUXTOOLBOXDIR${RC}"
|
printf "${GREEN}linuxtoolbox directory created: %s${RC}\n" "$LINUXTOOLBOXDIR"
|
||||||
fi
|
fi
|
||||||
|
|
||||||
cd "$LINUXTOOLBOXDIR" || exit
|
cd "$LINUXTOOLBOXDIR" || exit
|
||||||
|
|
||||||
install_theme_tools() {
|
install_theme_tools() {
|
||||||
echo -e "${YELLOW}Installing theme tools (qt6ct and kvantum)...${RC}"
|
printf "${YELLOW}Installing theme tools (qt6ct and kvantum)...${RC}\n"
|
||||||
case $PACKAGER in
|
case $PACKAGER in
|
||||||
apt-get)
|
apt-get)
|
||||||
sudo apt-get update
|
sudo apt-get update
|
||||||
|
@ -31,14 +31,14 @@ install_theme_tools() {
|
||||||
sudo pacman --noconfirm -S qt6ct kvantum
|
sudo pacman --noconfirm -S qt6ct kvantum
|
||||||
;;
|
;;
|
||||||
*)
|
*)
|
||||||
echo -e "${RED}Unsupported package manager. Please install qt6ct and kvantum manually.${RC}"
|
printf "${RED}Unsupported package manager. Please install qt6ct and kvantum manually.${RC}\n"
|
||||||
exit 1
|
exit 1
|
||||||
;;
|
;;
|
||||||
esac
|
esac
|
||||||
}
|
}
|
||||||
|
|
||||||
configure_qt6ct() {
|
configure_qt6ct() {
|
||||||
echo -e "${YELLOW}Configuring qt6ct...${RC}"
|
printf "${YELLOW}Configuring qt6ct...${RC}\n"
|
||||||
mkdir -p "$HOME/.config/qt6ct"
|
mkdir -p "$HOME/.config/qt6ct"
|
||||||
cat <<EOF > "$HOME/.config/qt6ct/qt6ct.conf"
|
cat <<EOF > "$HOME/.config/qt6ct/qt6ct.conf"
|
||||||
[Appearance]
|
[Appearance]
|
||||||
|
@ -46,17 +46,26 @@ style=kvantum
|
||||||
color_scheme=default
|
color_scheme=default
|
||||||
icon_theme=breeze
|
icon_theme=breeze
|
||||||
EOF
|
EOF
|
||||||
echo -e "${GREEN}qt6ct configured successfully.${RC}"
|
printf "${GREEN}qt6ct configured successfully.${RC}\n"
|
||||||
|
|
||||||
|
# Add QT_QPA_PLATFORMTHEME to /etc/environment
|
||||||
|
if ! grep -q "QT_QPA_PLATFORMTHEME=qt6ct" /etc/environment; then
|
||||||
|
printf "${YELLOW}Adding QT_QPA_PLATFORMTHEME to /etc/environment...${RC}\n"
|
||||||
|
echo "QT_QPA_PLATFORMTHEME=qt6ct" | sudo tee -a /etc/environment > /dev/null
|
||||||
|
printf "${GREEN}QT_QPA_PLATFORMTHEME added to /etc/environment.${RC}\n"
|
||||||
|
else
|
||||||
|
printf "${GREEN}QT_QPA_PLATFORMTHEME already set in /etc/environment.${RC}\n"
|
||||||
|
fi
|
||||||
}
|
}
|
||||||
|
|
||||||
configure_kvantum() {
|
configure_kvantum() {
|
||||||
echo -e "${YELLOW}Configuring Kvantum...${RC}"
|
printf "${YELLOW}Configuring Kvantum...${RC}\n"
|
||||||
mkdir -p "$HOME/.config/Kvantum"
|
mkdir -p "$HOME/.config/Kvantum"
|
||||||
cat <<EOF > "$HOME/.config/Kvantum/kvantum.kvconfig"
|
cat <<EOF > "$HOME/.config/Kvantum/kvantum.kvconfig"
|
||||||
[General]
|
[General]
|
||||||
theme=Breeze
|
theme=Breeze
|
||||||
EOF
|
EOF
|
||||||
echo -e "${GREEN}Kvantum configured successfully.${RC}"
|
printf "${GREEN}Kvantum configured successfully.${RC}\n"
|
||||||
}
|
}
|
||||||
|
|
||||||
checkEnv
|
checkEnv
|
||||||
|
|
|
@ -1,12 +1,5 @@
|
||||||
#!/bin/sh -e
|
#!/bin/sh -e
|
||||||
|
|
||||||
checkEnv() {
|
|
||||||
checkCommandRequirements 'curl groups sudo'
|
|
||||||
checkPackageManager 'apt-get nala dnf pacman zypper yum xbps-install'
|
|
||||||
checkSuperUser
|
|
||||||
checkDistro
|
|
||||||
}
|
|
||||||
|
|
||||||
fastUpdate() {
|
fastUpdate() {
|
||||||
case ${PACKAGER} in
|
case ${PACKAGER} in
|
||||||
pacman)
|
pacman)
|
||||||
|
|
Loading…
Reference in New Issue
Block a user