Skip to content

Commit

Permalink
Merge branch 'main' into alpine
Browse files Browse the repository at this point in the history
  • Loading branch information
jeevithakannan2 authored Oct 31, 2024
2 parents 8b75899 + ad678b2 commit 7bdbbdd
Show file tree
Hide file tree
Showing 33 changed files with 634 additions and 355 deletions.
19 changes: 13 additions & 6 deletions .github/SECURITY.md
Original file line number Diff line number Diff line change
Expand Up @@ -2,13 +2,20 @@

## Supported Versions

It is recommended that you run the stable version as this is more tested and used by most. The dev branch is bleed-edge commits that are not well tested and aren't meant to be used in production environments
It is recommended that you use the stable branch as it's tested and used by most. The dev branch may contain bleeding-edge commits that are not well tested and are not meant to be used in production environments.<br>
Version tags lower than the [latest stable release](https://github.com/ChrisTitusTech/linutil/releases/latest) are **not** supported.

| Version | Supported |
| ------- | ------------------ |
| latest | :white_check_mark: |
| dev | :x: |
| Branch | Supported |
| ------- | ---------------------- |
| Stable | :white_check_mark: YES |
| Dev | :x: NO |

| Version | Supported |
| -------------------------------------------------- | ---------------------- |
| [![LATEST](https://img.shields.io/github/v/release/ChrisTitusTech/linutil?color=%230567ff&label=Latest&style=for-the-badge)](https://github.com/ChrisTitusTech/linutil/releases/latest) | :white_check_mark: YES |
| Below LATEST | :x: NO |
| Above LATEST | :x: NO |

## Reporting a Vulnerability

I'd recommend making an Issue for reporting a bug. If you would like privately submit the bug you can email me at [email protected]
If you have any reason to believe there are security vulnerabilities in Linutil, fill out the [report form](https://github.com/christitustech/linutil/security/advisories/new) or e-mail [[email protected]](mailto:[email protected]).
32 changes: 22 additions & 10 deletions .github/release.yml
Original file line number Diff line number Diff line change
@@ -1,23 +1,35 @@
changelog:
categories:
- title: '🚀 Features'
label: 'enhancement'
labels:
- 'enhancement'
- title: '🐛 Bug Fixes'
label: 'bug'
labels:
- 'bug'
- title: '⚙️ Refactoring'
label: 'refactor'
labels:
- 'refactor'
- title: '🧩 UI/UX'
label: 'UI/UX'
labels:
- 'UI/UX'
- title: '📚 Documentation'
label: 'documentation'
labels:
- 'documentation'
- title: '🔒 Security'
label: 'security'
labels:
- 'security'
- title: '🧰 GitHub Actions'
label: 'github_actions'
labels:
- 'github_actions'
- title: '🦀 Rust'
label: 'rust'
labels:
- 'rust'
- title: '📃 Scripting'
label: 'script'
labels:
- 'script'
- title: 'Other Changes'
labels:
- "*"
exclude:
labels:
- 'skip-changelog'
- 'skip-changelog'
2 changes: 1 addition & 1 deletion .github/workflows/rust.yml
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,7 @@ on:
branches: ["main"]
paths:
- '**/*.rs'
- 'Cargo.toml'
- '**/Cargo.toml'
- 'Cargo.lock'

env:
Expand Down
63 changes: 21 additions & 42 deletions .github/workflows/shellcheck.yml
Original file line number Diff line number Diff line change
@@ -1,55 +1,34 @@
name: ShellCheck
name: Script Checks

on:
pull_request:
paths:
- 'core/tabs/**/*.sh'
- '**/*.sh'
workflow_dispatch:

jobs:
shellcheck:
name: Shellcheck
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- run: git fetch origin ${{ github.base_ref }}
- name: Checkout sources
uses: actions/checkout@v4

- name: Download, setup, and run ShellCheck
shell: bash {0}
run : |
SC_URL="https://github.com/koalaman/shellcheck/releases/download/v0.10.0/shellcheck-v0.10.0.linux.x86_64.tar.xz"
curl -fsSL "$SC_URL" | tar -Jx
chmod +x "./shellcheck-v0.10.0/shellcheck"
- name: Run ShellCheck
uses: reviewdog/action-shellcheck@v1
with:
reviewdog_flags: '-fail-level=any'

error=0
files_to_check=$(git diff --name-only origin/${{ github.base_ref }} HEAD core/tabs)
for file in $files_to_check; do
if [[ "$file" == *.sh ]] && [[ -f "$file" ]]; then
sc_output=$(./shellcheck-v0.10.0/shellcheck -fgcc -Serror "$file")
iter_safe_parsed_errors=$(echo -e "$sc_output" | sed -n 's/\(.\+\)\:\([0-9]\+\)\:\([0-9]\+\)\: \(.*\)/::error file=\1,line=\2,col=\3::\4/p' | sed 's/ /:space:/g')
for error in $iter_safe_parsed_errors; do
echo "$error" | sed 's/:space:/ /g'
error=1
done
tabs_detected=$(grep -nP '^\t+\S+' "$file")
# fast fail on the action runner would fail immediately if there weren't any tabs found
# this check makes sure that we don't continue if there's something really weird going on
if [ "$?" = "2" ]; then
echo "::error file=$file::There was a critical error while grepping $file, aborting"
exit 1
fi
iter_safe_parsed_tabs_detected=$(echo "$tabs_detected" | sed -n 's,\([0-9]\+\).*,::error file='"$file"'\,line=\1::Found tab indentations,p' | sed 's/ /:space:/g')
for error in $iter_safe_parsed_tabs_detected; do
echo "$error" | sed 's/:space:/ /g'
error=1
done
fi
done
exit $error
shfmt:
name: Shell Fomatting
runs-on: ubuntu-latest
needs: shellcheck
steps:
- name: Checkout sources
uses: actions/checkout@v4

- name: Run shfmt
uses: reviewdog/action-shfmt@v1
with:
shfmt_flags: '-i 4 -ci'
reviewdog_flags: '-fail-level=any'
25 changes: 25 additions & 0 deletions core/tabs/applications-setup/browsers/waterfox.sh
Original file line number Diff line number Diff line change
@@ -0,0 +1,25 @@
#!/bin/sh -e

. ../../common-script.sh

installWaterfox() {
if ! command_exists waterfox; then
printf "%b\n" "${YELLOW}Installing waterfox...${RC}"
case "$PACKAGER" in
pacman)
"$AUR_HELPER" -S --needed --noconfirm waterfox-bin
;;
*)
. ../setup-flatpak.sh
flatpak install -y flathub net.waterfox.waterfox
;;
esac
else
printf "%b\n" "${GREEN}Waterfox is already installed.${RC}"
fi
}

checkEnv
checkEscalationTool
checkAURHelper
installWaterfox
26 changes: 13 additions & 13 deletions core/tabs/applications-setup/mybash-setup.sh
Original file line number Diff line number Diff line change
Expand Up @@ -5,19 +5,19 @@
gitpath="$HOME/.local/share/mybash"

installDepend() {
if ! command_exists bash bash-completion tar bat tree unzip fontconfig git; then
printf "%b\n" "${YELLOW}Installing Bash...${RC}"
case "$PACKAGER" in
pacman)
"$ESCALATION_TOOL" "$PACKAGER" -S --needed --noconfirm bash bash-completion tar bat tree unzip fontconfig git
;;
apk)
"$ESCALATION_TOOL" "$PACKAGER" add bash bash-completion tar bat tree unzip fontconfig git
;;
*)
"$ESCALATION_TOOL" "$PACKAGER" install -y bash bash-completion tar bat tree unzip fontconfig git
;;
esac
if [ ! -f "/usr/share/bash-completion/bash_completion" ] || ! command_exists bash tar bat tree unzip fc-list git; then
printf "%b\n" "${YELLOW}Installing Bash...${RC}"
case "$PACKAGER" in
pacman)
"$ESCALATION_TOOL" "$PACKAGER" -S --needed --noconfirm bash bash-completion tar bat tree unzip fontconfig git
;;
apk)
"$ESCALATION_TOOL" "$PACKAGER" add bash bash-completion tar bat tree unzip fontconfig git
;;
*)
"$ESCALATION_TOOL" "$PACKAGER" install -y bash bash-completion tar bat tree unzip fontconfig git
;;
esac
fi
}

Expand Down
2 changes: 1 addition & 1 deletion core/tabs/applications-setup/office-suites/freeoffice.sh
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
#!/bin/sh -e

. ../common-script.sh
. ../../common-script.sh

installFreeOffice() {
if ! command_exists softmaker-freeoffice-2024 freeoffice softmaker; then
Expand Down
2 changes: 1 addition & 1 deletion core/tabs/applications-setup/office-suites/libreoffice.sh
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
#!/bin/sh -e

. ../common-script.sh
. ../../common-script.sh

installLibreOffice() {
if ! command_exists libreoffice; then
Expand Down
2 changes: 1 addition & 1 deletion core/tabs/applications-setup/office-suites/onlyoffice.sh
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
#!/bin/sh -e

. ../common-script.sh
. ../../common-script.sh

installOnlyOffice() {
if ! command_exists onlyoffice-desktopeditors; then
Expand Down
2 changes: 1 addition & 1 deletion core/tabs/applications-setup/office-suites/wpsoffice.sh
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
#!/bin/sh -e

. ../common-script.sh
. ../../common-script.sh

installWpsOffice() {
if ! command_exists com.wps.Office; then
Expand Down
2 changes: 1 addition & 1 deletion core/tabs/applications-setup/pdf-suites/evince.sh
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
#!/bin/sh -e

. ../common-script.sh
. ../../common-script.sh

installEvince() {
if ! command_exists evince; then
Expand Down
2 changes: 1 addition & 1 deletion core/tabs/applications-setup/pdf-suites/okular.sh
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
#!/bin/sh -e

. ../common-script.sh
. ../../common-script.sh

installOkular() {
if ! command_exists okular; then
Expand Down
2 changes: 1 addition & 1 deletion core/tabs/applications-setup/pdf-suites/pdfstudio.sh
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
#!/bin/sh -e

. ../common-script.sh
. ../../common-script.sh

installPdfstudio() {
if ! command_exists pdfstudio2024; then
Expand Down
2 changes: 1 addition & 1 deletion core/tabs/applications-setup/pdf-suites/pdfstudioviewer.sh
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
#!/bin/sh -e

. ../common-script.sh
. ../../common-script.sh

installPdfstudioviewer() {
if ! command_exists pdfstudioviewer2024; then
Expand Down
Loading

0 comments on commit 7bdbbdd

Please sign in to comment.