This commit is contained in:
Brian Zalewski 2023-06-23 04:39:22 +00:00
parent f2ec50f6ca
commit c18780846e
14 changed files with 210 additions and 5 deletions

30
.github/workflows/chatgpt-review.yml vendored Normal file
View file

@ -0,0 +1,30 @@
name: Code Review
permissions:
contents: read
pull-requests: write
on:
pull_request:
pull_request_review_comment:
types: [created]
concurrency:
group:
${{ github.repository }}-${{ github.event.number || github.head_ref ||
github.sha }}-${{ github.workflow }}-${{ github.event_name ==
'pull_request_review_comment' && 'pr_comment' || 'pr' }}
cancel-in-progress: ${{ github.event_name != 'pull_request_review_comment' }}
jobs:
review:
runs-on: ubuntu-latest
steps:
- uses: fluxninja/openai-pr-reviewer@latest
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
OPENAI_API_KEY: ${{ secrets.OPENAI_API_KEY }}
with:
debug: false
review_simple_changes: false
review_comment_lgtm: false

View file

@ -14,6 +14,7 @@
* https://github.com/linuxserver/docker-webtop
* https://github.com/chocolatey/boxstarter
* https://github.com/changkun/occamy
* https://cliffy.io/docs@v0.25.7
## System

View file

@ -26,6 +26,7 @@ The following items are things we would like to include into the Install Doctor
* Monitor https://moonrepo.dev/moon as possible mono-repo manager
* Determine whether or not https://webinstall.dev/vim-gui/ will add value to the VIM experience
* Wait for packages to be available for GitHub Actions https://github.com/actions/runner
* Find best Figma plugins here: https://www.figma.com/community/popular
## Review
@ -63,6 +64,10 @@ The following items are Docker containers that we may want to include as default
* https://easypanel.io/ - App deployments
* https://www.activepieces.com/docs/install/docker
* https://github.com/activepieces/activepieces - SaaS Automations
* https://github.com/diced/zipline - ShareX / File uploads
* https://github.com/anse-app/anse - ChatGPT interface
* https://github.com/wireapp/wire-webapp - Internal Slack
* https://github.com/jhaals/yopass - OTS web app
### Kubernetes
@ -86,9 +91,6 @@ The projects below are software systems that might be incorporated to handle bar
The following items have been reviewed but need to be revisited due to complexity or other reasons.
* https://github.com/microsoft/azuredatastudio
* https://github.com/Nutlope/roomGPT
* https://github.com/Zettlr/Zettlr
* https://github.com/AmruthPillai/Reactive-Resume
* https://github.com/kubeflow/kubeflow
* https://github.com/leon-ai/leon
@ -102,6 +104,5 @@ The following items have been reviewed but need to be revisited due to complexit
* builder.io
* https://github.com/hocus-dev/hocus
* https://github.com/Kanaries/Rath
* https://github.com/reworkd/AgentGPT
* cvat.io
* https://github.com/illacloud/illa-builder

View file

@ -458,6 +458,7 @@ softwareGroups:
- usql
Database-Desktop: &Database-Desktop
- beekeeper-studio
- mongodb-compass
- sqlectron
Development-Tools-Desktop: &Development-Tools-Desktop
- catlight
@ -511,12 +512,14 @@ softwareGroups:
- firefox
- flow-launcher
- fonts
- gnome
- iina
- kvantum
- lapce
- malwarebytes
- portmaster
- rofi
- sddm
- tabby
- vlc
- vscode
@ -543,6 +546,7 @@ softwareGroups:
- git-bug
- git-extras
- git-filter-repo
- git-jump
- git-lfs
- git-open
- git-secret
@ -644,6 +648,7 @@ softwareGroups:
- exiftool
- ffmpeg
- imagemagick
- korkut
- pandoc
- sharp
- spotdl
@ -983,6 +988,7 @@ softwareGroups:
- feathers
- firebase
- flutter
- generator-ngx-rocket
- gfi
- gulp
- hey
@ -1011,6 +1017,7 @@ softwareGroups:
- npm-check # Similar to npm-check-updates
- npm-check-updates
- oclif
- osx-sign
- package-size
- page-fetch
- pageres

View file

@ -53,6 +53,10 @@ if command -v rclone > /dev/null; then
logg info 'Ensuring /var/cache/rclone exists'
sudo mkdir -p /var/cache/rclone
sudo chmod 700 /var/cache/rclone
# Add user / group with script in ~/.local/bin/add-user, if it is available
if command -v add-user > /dev/null; then
sudo add-user rclone
fi
sudo chown -Rf rclone:rclone /var/cache/rclone
logg info 'Ensuring /var/log/rclone exists'

View file

@ -2,6 +2,7 @@
"age"
"base-devel"
"ccid"
"gnome"
"hopenpgp-tools"
"libaio"
"libxcursor"
@ -14,6 +15,7 @@
"openssl"
"pcsclite"
"progress"
"sddm"
"secure-delete"
"tk"
"xorg-fonts-type1"

View file

@ -1,6 +1,7 @@
{{- $packages := list
"gcc"
"gcc-c++"
"gnome"
"gnupg2-smime"
"kernel-devel"
"libaio"
@ -13,6 +14,7 @@
"npm"
"pcsc-lite"
"ruby-devel"
"sddm"
"xorg-x11-fonts-Type1"
"xorg-x11-xauth"
"xrandr"

View file

@ -1,6 +1,7 @@
{{- $packages := list
"age/bullseye-backports"
"build-essential"
"gnome"
"gnupg-agent"
"hopenpgp-tools"
"libaio1"
@ -26,6 +27,7 @@
"progress"
"ruby-dev"
"scdaemon"
"sddm"
"secure-delete"
"tk-dev"
"x11-apps"

View file

@ -2,6 +2,7 @@
"age"
"gcc"
"gcc-c++"
"gnome"
"gnupg2-smime"
"kernel-devel"
"libaio"
@ -18,6 +19,7 @@
"pcsc-tools"
"progress"
"ruby-devel"
"sddm"
"xorg-x11-fonts-Type1"
"xorg-x11-xauth"
"xrandr"

View file

@ -1,10 +1,12 @@
{{- $packages := list
"age"
"bash"
"gnome"
"locate"
"nodejs"
"npm"
"progress"
"sddm"
"secure-delete"
-}}
{{- $packages | join " " -}}

View file

@ -1,6 +1,7 @@
{{- $packages := list
"age"
"build-essential"
"gnome"
"gnupg-agent"
"hopenpgp-tools"
"libaio1"
@ -26,6 +27,7 @@
"progress"
"ruby-dev"
"scdaemon"
"sddm"
"secure-delete"
"tk-dev"
"x11-apps"

View file

@ -0,0 +1,95 @@
#!/usr/bin/env bash
# @file ~/.local/bin/add-user
# @brief Add a user and a group with the same name on either Linux or macOS
# @description
# This script is utilized by other scripts to ensure that there is both a user and group
# named by the single argument that this executable accepts. It checks whether or not
# there is already a user / group with the name present on the system before running
# any code. On macOS, it assigns the user an ID that equal to the maximum user ID present
# on the system plus one.
#
# This script was generated with ChatGPT.
# Check if the script is being run as root
if [[ $EUID -ne 0 ]]; then
echo -e "\e[91mThis script must be run as root\e[0m"
exit 1
fi
# Check if the correct number of arguments is provided
if [[ $# -ne 1 ]]; then
echo -e "\e[93mUsage: $0 <group>\e[0m"
exit 1
fi
GROUP=$1
# Check if the operating system is macOS
if [[ "$(uname)" == "Darwin" ]]; then
echo -e "\e[96mCreating group and user ${GROUP} on macOS...\e[0m"
# Check if the group already exists
if ! sudo dscl . read /Groups/"${GROUP}" >/dev/null 2>&1; then
# Create the group
sudo dscl . create /Groups/"${GROUP}"
# Ensure the group has a GID
if [[ "$(sudo dscl . read /Groups/"$group" gid 2>&1)" == *"No such key"* ]]; then
MAX_ID_GROUP=$(dscl . -list /Groups gid | awk '{print $2}' | sort -ug | tail -1)
GROUP_ID=$((MAX_ID_GROUP+1))
sudo dscl . create /Groups/"${GROUP}" gid "$GROUP_ID"
fi
else
echo -e "\e[93mGroup ${GROUP} already exists\e[0m"
fi
# Check if the user already exists
if ! sudo dscl . read /Users/"${GROUP}" >/dev/null 2>&1; then
# Create the user
sudo dscl . create /Users/"${GROUP}"
# Ensure the user has a PrimaryGroupID
if [[ "$(sudo dscl . read /Users/"${GROUP}" PrimaryGroupID 2>&1)" == *"No such key"* ]]; then
sudo dscl . create /Users/"${GROUP}" PrimaryGroupID 20
fi
# Ensure the user has a UniqueID
if [[ "$(sudo dscl . read /Users/"${GROUP}" UniqueID 2>&1)" == *"No such key"* ]]; then
MAX_ID_USER=$(dscl . -list /Users UniqueID | sort -nr -k 2 | head -1 | grep -oE "[0-9]+$")
USER_ID="$((MAX_ID_USER+1))"
sudo dscl . create /Users/"${GROUP}" UniqueID "$USER_ID"
fi
# Add the user to the group
sudo dseditgroup -o edit -t user -a "${GROUP}" "${GROUP}"
# Add the current user to the group
sudo dseditgroup -o edit -t user -a "${USER}" "${GROUP}"
else
echo -e "\e[93mUser ${GROUP} already exists\e[0m"
fi
echo -e "\e[92mGroup and user ${GROUP} created successfully on macOS\e[0m"
exit 0
elif [[ "$(uname)" == "Linux" ]]; then
echo -e "\e[96mCreating group and user ${GROUP} on Linux...\e[0m"
# Check if the group already exists
if ! grep -qE "^${GROUP}:" /etc/group; then
# Create the group
groupadd "${GROUP}"
else
echo -e "\e[93mGroup ${GROUP} already exists\e[0m"
fi
# Check if the user already exists
if ! id -u "${GROUP}" >/dev/null 2>&1; then
# Create the user and assign it to the group
useradd -g "${GROUP}" "${GROUP}"
else
echo -e "\e[93mUser ${GROUP} already exists\e[0m"
fi
echo -e "\e[92mGroup and user ${GROUP} created successfully on Linux\e[0m"
exit 0
fi
# If the operating system is neither macOS nor Linux, display an error message
echo -e "\e[91mUnsupported operating system\e[0m"
exit 1

View file

@ -44,7 +44,9 @@
},
"typings": "dist/main.d.ts",
"dependencies": {
"tslib": "latest"
"nestia": "latest",
"tslib": "latest",
"bin-wrapper": "latest"
},
"peerDependenciesMeta": {
"eslint": {

View file

@ -1975,6 +1975,12 @@ softwarePackages:
pacman: git-delta
pkg: git-delta
scoop: delta
git-jump:
_bin: git-jump
_github: https://github.com/mykolaharmash/git-jump
_name: Git Jump
brew: mykolaharmash/git-jump/git-jump
npm: git-jump
delve:
_bin: dlv
_desc: Delve is a debugger for the Go programming language.
@ -2447,6 +2453,25 @@ softwarePackages:
_home: null
_name: null
ansible: professormanhattan.environment
mongodb-compass:
_bin: mongodb-compass
_github: https://github.com/mongodb-js/compass
_name: MongoDB Compass
_when:cask: '! test -d "/Applications/MongoDB Compass.app"'
cask: mongodb-compass
choco: mongodb-compass
dnf: https://downloads.mongodb.com/compass/mongodb-compass-1.38.0.x86_64.rpm
apt: https://downloads.mongodb.com/compass/mongodb-compass_1.38.0_amd64.deb
osx-sign:
_bin: electron-osx-sign
_github: https://github.com/electron/osx-sign
_name: macOS Code Sign
npm: '@electron/osx-sign'
korkut:
_bin: korkut
_github: https://github.com/oguzhaninan/korkut
_name: Korkut
npm: korkut
eslint:
_bin: eslint
_desc: '[ESLint](https://eslint.org/) allows you to find and fix problems in your JavaScript code'
@ -2456,6 +2481,11 @@ softwarePackages:
_name: ESLint
brew: eslint
npm: eslint
eslint-interactive:
_bin: eslint-interactive
_github: https://github.com/mizdra/eslint-interactive
_name: ESLint Interactive
npm: eslint-interactive
ntl:
_bin: ntl
_desc: null
@ -5749,6 +5779,11 @@ softwarePackages:
cask: ngrok
choco: ngrok
snap: ngrok
generator-ngx-rocket:
_bin: ngx
_github: https://github.com/ngx-rocket/generator-ngx-rocket
_name: Angular
npm: generator-ngx-rocket
ngxtop:
_bin: ngxtop
_desc: Real-time metrics for nginx server
@ -5815,6 +5850,16 @@ softwarePackages:
_home: https://pipedream.com/
_name: Pipedream CLI
brew: pipedreamhq/pd-cli/pipedream
sddm:
_bin: sddm
_github: https://github.com/sddm/sddm
_name: SDDM
_post: sudo systemctl set-default graphical.target
_service: sddm
apt: sddm
dnf: sddm
pacman: sddm
zypper: sddm
notion:
_bin: null
_desc: Notion is the connected workspace where better, faster work happens.
@ -6665,6 +6710,14 @@ softwarePackages:
pacman: procs
scoop: procs
snap: procs
gnome:
_bin: gnome
_github: https://github.com/GNOME/gnome-shell
_name: GNOME
apt: gnome
dnf: gnome
pacman: gnome
zypper: gnome
protonvpn:
_bin: protonvpn
_desc: '[Proton](https://www.proton.org/) is a free and open-source raster graphics editor used for image manipulation and image editing, free-form drawing, transcoding between different image file formats, and more specialized tasks. Proton is released under GPLv3+ license and is available for Linux, macOS, and Microsoft Windows.'