From 45d36e7b96260a2fadcb913ab3928b2cf63d36de Mon Sep 17 00:00:00 2001
From: SegoCode <35817798+SegoCode@users.noreply.github.com>
Date: Sun, 4 Aug 2024 15:47:13 +0200
Subject: [PATCH 01/14] Update downloadcenter with scoop installer
---
code/launcher.ps1 | 7 ++-
code/modules/downloadcenter.bat | 84 ++++++++++++++++++++-----------
code/modules/utils/chibiScoop.ps1 | 4 +-
3 files changed, 63 insertions(+), 32 deletions(-)
diff --git a/code/launcher.ps1 b/code/launcher.ps1
index f5ee7b4..818d0d1 100644
--- a/code/launcher.ps1
+++ b/code/launcher.ps1
@@ -6,8 +6,11 @@ param (
if ([string]::IsNullOrWhiteSpace($batchFilePath) -eq $false -and $batchFilePath.Length -gt 0) {
# Now, safely check if the file exists
if (Test-Path -Path $batchFilePath) {
- # If the file exists, run it as administrator
- Start-Process $batchFilePath -Verb RunAs
+ if ($batchFilePath -notmatch "downloadcenter") {
+ Start-Process $batchFilePath -Verb RunAs
+ } else {
+ Start-Process $batchFilePath
+ }
}
} else {
# This workflow will be triggered to obtain deblobat over the internet with a command
diff --git a/code/modules/downloadcenter.bat b/code/modules/downloadcenter.bat
index ca56f3b..c580115 100644
--- a/code/modules/downloadcenter.bat
+++ b/code/modules/downloadcenter.bat
@@ -14,9 +14,11 @@ echo.
echo This tool utilizes Scoop repositories to fetch the latest
echo versions of software. It won't install the software,
echo instead, it creates an installation folder on your
-echo desktop where the downloads are saved. You can then
-echo decide how to proceed with the installers. If you want
+echo desktop where the downloads are saved. If you want
echo you can install scoop by typing "scoop" as input.
+echo If scoop are [1;32mEnabled[m it will install the software
+echo using scoop.
+
echo.
ping -n 2 8.8.8.8 > nul
if not %errorlevel% == 1 (
@@ -28,27 +30,29 @@ if not %errorlevel% == 1 (
where scoop >nul 2>nul
if %errorlevel% == 0 (
echo Scoop installation = [[1;32m Enabled [m]
+ set "scoopInstalled=true"
) else (
echo Scoop installation = [[1;31m Disabled [m]
+ set "scoopInstalled=false"
)
echo.
cd %~dp0
-echo [1] Mozilla Firefox = [[1;32m Download [m]
-echo [2] VLC Media Player = [[1;32m Download [m]
-echo [3] 7-Zip = [[1;32m Download [m]
-echo [4] qBittorrent Enhanced = [[1;32m Download [m]
-echo [5] Steam = [[1;32m Download [m]
-echo [6] Discord = [[1;32m Download [m]
-echo [7] File Converter = [[1;32m Download [m]
-echo [8] Telegram = [[1;32m Download [m]
-echo [9] Spotify = [[1;32m Download [m]
-echo [10] SimpleWall = [[1;32m Download [m]
-echo [11] Ungoogled Chromium = [[1;32m Download [m]
-echo [12] Brave Browser = [[1;32m Download [m]
-echo [13] qView = [[1;32m Download [m]
-echo [14] Sublime Text = [[1;32m Download [m]
-echo [15] Flameshot = [[1;32m Download [m]
+echo [1] Librewolf = [[1;32m Launch [m]
+echo [2] VLC Media Player = [[1;32m Launch [m]
+echo [3] 7-Zip = [[1;32m Launch [m]
+echo [4] qBittorrent Enhanced = [[1;32m Launch [m]
+echo [5] Steam = [[1;32m Launch [m]
+echo [6] Discord = [[1;32m Launch [m]
+echo [7] File Converter = [[1;32m Launch [m]
+echo [8] Telegram = [[1;32m Launch [m]
+echo [9] Spotify = [[1;32m Launch [m]
+echo [10] SimpleWall = [[1;32m Launch [m]
+echo [11] Ungoogled Chromium = [[1;32m Launch [m]
+echo [12] Brave Browser = [[1;32m Launch [m]
+echo [13] qView = [[1;32m Launch [m]
+echo [14] Sublime Text = [[1;32m Launch [m]
+echo [15] Flameshot = [[1;32m Launch [m]
echo.
echo [0] Return to menu
@@ -59,20 +63,39 @@ set /P N=Select your task and press Enter ^>
setlocal
cls
-powershell "Set-ExecutionPolicy Unrestricted -force 2>&1 | Out-Null" > nul 2>&1
-
if %N%==1 (
- powershell -File ".\utils\chibiScoop.ps1" -SoftwareName "firefox"
+ if "%scoopInstalled%"=="true" (
+ start powershell -NoExit -Command "scoop install extras/librewolf"
+ pause
+ ) else (
+ powershell -File ".\utils\chibiScoop.ps1" -SoftwareName "librewolf"
+ )
)
+
if %N%==2 (
- powershell -File ".\utils\chibiScoop.ps1" -SoftwareName "vlc"
+ if "%scoopInstalled%"=="true" (
+ start powershell -NoExit -Command "scoop install extras/vlc"
+ ) else (
+ powershell -File ".\utils\chibiScoop.ps1" -SoftwareName "vlc"
+ )
)
+
if %N%==3 (
- powershell -File ".\utils\chibiScoop.ps1" -SoftwareName "7zip"
+ if "%scoopInstalled%"=="true" (
+ start powershell -NoExit -Command "scoop install main/7zip"
+ ) else (
+ powershell -File ".\utils\chibiScoop.ps1" -SoftwareName "7zip"
+ )
)
+
if %N%==4 (
- powershell -File ".\utils\chibiScoop.ps1" -SoftwareName "qbittorrent-enhanced"
+ if "%scoopInstalled%"=="true" (
+ start powershell -NoExit -Command "scoop install extras/qbittorrent-enhanced"
+ ) else (
+ powershell -File ".\utils\chibiScoop.ps1" -SoftwareName "qbittorrent-enhanced"
+ )
)
+
if %N%==5 (
powershell -File ".\utils\chibiScoop.ps1" -SoftwareName "steam"
)
@@ -107,11 +130,16 @@ if %N%==15 (
powershell -File ".\utils\chibiScoop.ps1" -SoftwareName "flameshot"
)
-if /i "%N%"=="scoop" (
- reg add "HKLM\SYSTEM\CurrentControlSet\Control\FileSystem" /v "LongPathsEnabled" /t REG_DWORD /d 1 /f > nul 2>&1
- powershell -Command "Invoke-RestMethod -Uri https://get.scoop.sh | Invoke-Expression"
- pause
-)
+::if /i "%N%"=="scoop" (
+:: :: Non RunAs version
+:: :: powershell "Set-ExecutionPolicy Unrestricted -force 2>&1 | Out-Null" > nul 2>&1
+:: :: reg add "HKLM\SYSTEM\CurrentControlSet\Control\FileSystem" /v "LongPathsEnabled" /t REG_DWORD /d 1 /f > nul 2>&1
+::
+:: powershell -Command "Start-Process powershell -ArgumentList '\"Set-ExecutionPolicy Unrestricted -force 2>&1 | Out-Null\"' -Verb RunAs"
+:: powershell -Command "Start-Process reg -ArgumentList '\"add HKLM\\SYSTEM\\CurrentControlSet\\Control\\FileSystem /v LongPathsEnabled /t REG_DWORD /d 1 /f\"' -Verb RunAs"
+:: powershell -Command "Invoke-RestMethod -Uri https://get.scoop.sh | Invoke-Expression"
+:: pause
+::)
if %N%==0 (goto EOF)
endlocal
diff --git a/code/modules/utils/chibiScoop.ps1 b/code/modules/utils/chibiScoop.ps1
index a2d8972..5fc7353 100644
--- a/code/modules/utils/chibiScoop.ps1
+++ b/code/modules/utils/chibiScoop.ps1
@@ -4,7 +4,7 @@ param(
# Dictionary mapping software names to metadata URLs
$urlDictionary = @{
- "firefox" = "https://raw.githubusercontent.com/ScoopInstaller/Extras/master/bucket/firefox.json"
+ "librewolf" = "https://raw.githubusercontent.com/ScoopInstaller/Extras/master/bucket/librewolf.json"
"vlc" = "https://raw.githubusercontent.com/ScoopInstaller/Extras/master/bucket/vlc.json"
"7zip" = "https://raw.githubusercontent.com/ScoopInstaller/Main/master/bucket/7zip.json"
"qbittorrent-enhanced"= "https://raw.githubusercontent.com/ScoopInstaller/Extras/master/bucket/qbittorrent-enhanced.json"
@@ -59,4 +59,4 @@ $destinationPath = Join-Path $destinationFolder $fileName
# Download the file using curl.exe
curl.exe -L $downloadUrl -o $destinationPath
-Write-Host "Download completed: $destinationPath"
\ No newline at end of file
+Write-Host "Download completed: $destinationPath"
From 517671be624f5d44e36ceb8fa2b4166b60c6c50d Mon Sep 17 00:00:00 2001
From: SegoCode <35817798+SegoCode@users.noreply.github.com>
Date: Sun, 4 Aug 2024 15:58:43 +0200
Subject: [PATCH 02/14] Add AppCaptureEnabled
---
code/modules/qolconfig.bat | 16 ++++++++++++++++
1 file changed, 16 insertions(+)
diff --git a/code/modules/qolconfig.bat b/code/modules/qolconfig.bat
index d55f28f..70eb81c 100644
--- a/code/modules/qolconfig.bat
+++ b/code/modules/qolconfig.bat
@@ -159,6 +159,14 @@ if not %errorlevel% == 1 (
)
+reg query "HKCU\SOFTWARE\Microsoft\Windows\CurrentVersion\GameDVR" /v AppCaptureEnabled > nul 2>&1 && (
+ reg query "HKCU\SOFTWARE\Microsoft\Windows\CurrentVersion\GameDVR" /v AppCaptureEnabled | find "0x0" > nul 2>&1
+)
+if not %errorlevel% == 1 (
+ echo [17] Gaming overlay popup = [[1;32m Disabled [m]
+) else (
+ echo [17] Gaming overlay popup = [[1;31m Enabled [m]
+)
echo.
@@ -398,6 +406,14 @@ if %N%==16 (
)
)
+if %N%==17 (
+ reg query "HKCU\SOFTWARE\Microsoft\Windows\CurrentVersion\GameDVR" /v AppCaptureEnabled | find "0x0" > nul 2>&1
+ if not !ERRORLEVEL! == 1 (
+ reg add "HKCU\SOFTWARE\Microsoft\Windows\CurrentVersion\GameDVR" /v AppCaptureEnabled /t REG_DWORD /d 1 /f > nul 2>&1
+ ) else (
+ reg add "HKCU\SOFTWARE\Microsoft\Windows\CurrentVersion\GameDVR" /v AppCaptureEnabled /t REG_DWORD /d 0 /f > nul 2>&1
+ )
+)
endlocal
From 368639f6730ff238551e6b0223b240581ffb871d Mon Sep 17 00:00:00 2001
From: SegoCode <35817798+SegoCode@users.noreply.github.com>
Date: Sun, 4 Aug 2024 17:20:21 +0200
Subject: [PATCH 03/14] Update README.md
---
README.md | 53 +----------------------------------------------------
1 file changed, 1 insertion(+), 52 deletions(-)
diff --git a/README.md b/README.md
index 3538961..8c7e61a 100644
--- a/README.md
+++ b/README.md
@@ -35,58 +35,7 @@ git clone https://github.com/SegoCode/DebloBat
cd DebloBat\code
Deblo.bat
```
-Or [donwload a zip](https://github.com/SegoCode/DebloBat/archive/refs/heads/main.zip) and click on deblo.bat file.
-
-
-
- Why can't software installation be left unattended? Is there any way to install my software in an unattended way?
-
- ##
- At first, the download manager had all the links to official programs handy, and I went through the documentation for each one to customize all installations silently. However, it was challenging to maintain. The "deblobat philosophy" aims to be as non-intrusive as possible, so using a package manager seemed intrusive to the system. Therefore, I simply download those binaries to make access easier for the user.
-
-Still, if you want to unattended that process, I recommend "scoop." In its new version, it's quite decent. Here's a text block example that you can simply copy and paste using the button into your PowerShell terminal to install the software:
-```shell
-# Enable long paths in Windows registry for Scoop
-Start-Process powershell -ArgumentList "-Command Set-ItemProperty -Path 'HKLM:\SYSTEM\CurrentControlSet\Control\FileSystem' -Name 'LongPathsEnabled' -Value 1" -Verb RunAs -Wait
-
-# Install Scoop
-Set-ExecutionPolicy -ExecutionPolicy RemoteSigned -Scope CurrentUser
-Invoke-RestMethod -Uri https://get.scoop.sh | Invoke-Expression
-
-# Install essential Scoop packages
-scoop install refreshenv
-
-scoop install 7zip
-refreshenv
-
-scoop install git
-refreshenv
-
-scoop install innounp
-refreshenv
-
-scoop install wixtoolset
-refreshenv
-
-scoop bucket add extras
-scoop bucket add java
-refreshenv
-
-# You can add or remove programs below this section as needed
-scoop install java/temurin-jdk
-scoop install main/nodejs-lts
-scoop install main/go
-scoop install extras/filezilla
-scoop install extras/vlc
-scoop install extras/qview
-scoop install extras/qbittorrent-enhanced
-scoop install extras/telegram
-scoop install extras/discord
-scoop install extras/sublime-text
-scoop install extras/flameshot
-scoop install extras/simplewall
-scoop install extras/firefox
-```
+Or [donwload a zip](https://github.com/SegoCode/DebloBat/archive/refs/heads/main.zip) and double click on deblo.bat file, just that.
From e2d92c64830e152765a115c45b18f8828ab3f58c Mon Sep 17 00:00:00 2001
From: SegoCode <35817798+SegoCode@users.noreply.github.com>
Date: Sun, 4 Aug 2024 17:26:40 +0200
Subject: [PATCH 04/14] Update README.md
---
README.md | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/README.md b/README.md
index 8c7e61a..888a481 100644
--- a/README.md
+++ b/README.md
@@ -15,7 +15,7 @@ Yes, I know... Here is another ugly meme script to debloat Windows, this no long
## Features
-- Real and secure, easy readable code, offline Windows Activation (KMS38)
+- Real and secure and easy readable code for offline Windows Activation.
- Readable, well organized script, avoids a single, unreadable monolithic script.
- Windows service configuration.
- Privacy and QoL Group Policy tweaks.
@@ -25,7 +25,7 @@ Yes, I know... Here is another ugly meme script to debloat Windows, this no long
## Quick Start & Information
-Lauch option 1:
+Lauch option 1 (Recommended):
```shell
irm https://raw.githubusercontent.com/SegoCode/DebloBat/main/code/launcher.ps1 | iex
```
From a3ab736c240ba5d59c57c9f8e9ceb2fade08fca9 Mon Sep 17 00:00:00 2001
From: SegoCode <35817798+SegoCode@users.noreply.github.com>
Date: Mon, 5 Aug 2024 16:52:29 +0200
Subject: [PATCH 05/14] New download center with scoop
---
code/launcher.ps1 | 2 +-
code/modules/downloadcenter.bat | 152 ++++++++++++++++++++----------
code/modules/logs/.gitkeep | 0
code/modules/utils/RefreshEnv.cmd | 130 +++++++++++++++++++++++++
code/modules/utils/chibiScoop.ps1 | 3 +-
5 files changed, 233 insertions(+), 54 deletions(-)
create mode 100644 code/modules/logs/.gitkeep
create mode 100644 code/modules/utils/RefreshEnv.cmd
diff --git a/code/launcher.ps1 b/code/launcher.ps1
index 818d0d1..0ba5fd7 100644
--- a/code/launcher.ps1
+++ b/code/launcher.ps1
@@ -9,7 +9,7 @@ if ([string]::IsNullOrWhiteSpace($batchFilePath) -eq $false -and $batchFilePath.
if ($batchFilePath -notmatch "downloadcenter") {
Start-Process $batchFilePath -Verb RunAs
} else {
- Start-Process $batchFilePath
+ Start-Process -FilePath "conhost.exe" -ArgumentList "cmd /c `"$batchFilePath`""
}
}
} else {
diff --git a/code/modules/downloadcenter.bat b/code/modules/downloadcenter.bat
index c580115..55372ff 100644
--- a/code/modules/downloadcenter.bat
+++ b/code/modules/downloadcenter.bat
@@ -12,12 +12,15 @@ echo Always latest version and official links
echo -----------------------------------------------
echo.
echo This tool utilizes Scoop repositories to fetch the latest
-echo versions of software. It won't install the software,
-echo instead, it creates an installation folder on your
-echo desktop where the downloads are saved. If you want
-echo you can install scoop by typing "scoop" as input.
-echo If scoop are [1;32mEnabled[m it will install the software
-echo using scoop.
+echo versions of software.
+echo.
+echo If scoop are [1;32menabled[m it will install the software
+echo using scoop. You can install scoop by typing "[1;30mscoop[m"
+echo as input. If are [1;31mdisabled[m, it creates an installation
+echo folder on your desktop with the software files. For more
+echo info type "[1;30mhelp[m"
+
+call utils\RefreshEnv.cmd > nul 2>&1
echo.
ping -n 2 8.8.8.8 > nul
@@ -38,21 +41,18 @@ if %errorlevel% == 0 (
echo.
cd %~dp0
+
echo [1] Librewolf = [[1;32m Launch [m]
echo [2] VLC Media Player = [[1;32m Launch [m]
-echo [3] 7-Zip = [[1;32m Launch [m]
+echo [3] qview = [[1;32m Launch [m]
echo [4] qBittorrent Enhanced = [[1;32m Launch [m]
-echo [5] Steam = [[1;32m Launch [m]
-echo [6] Discord = [[1;32m Launch [m]
-echo [7] File Converter = [[1;32m Launch [m]
-echo [8] Telegram = [[1;32m Launch [m]
-echo [9] Spotify = [[1;32m Launch [m]
-echo [10] SimpleWall = [[1;32m Launch [m]
-echo [11] Ungoogled Chromium = [[1;32m Launch [m]
-echo [12] Brave Browser = [[1;32m Launch [m]
-echo [13] qView = [[1;32m Launch [m]
-echo [14] Sublime Text = [[1;32m Launch [m]
-echo [15] Flameshot = [[1;32m Launch [m]
+echo [5] telegram = [[1;32m Launch [m]
+echo [6] sublime-text = [[1;32m Launch [m]
+echo [7] simplewall = [[1;32m Launch [m]
+echo [8] flameshot = [[1;32m Launch [m]
+echo [9] Brave = [[1;32m Launch [m]
+echo [10] java = [[1;32m Launch [m]
+echo [11] Steam (Non-scoop) = [[1;32m Launch [m]
echo.
echo [0] Return to menu
@@ -65,8 +65,7 @@ cls
if %N%==1 (
if "%scoopInstalled%"=="true" (
- start powershell -NoExit -Command "scoop install extras/librewolf"
- pause
+ powershell -Command "scoop install extras/librewolf"
) else (
powershell -File ".\utils\chibiScoop.ps1" -SoftwareName "librewolf"
)
@@ -74,7 +73,7 @@ if %N%==1 (
if %N%==2 (
if "%scoopInstalled%"=="true" (
- start powershell -NoExit -Command "scoop install extras/vlc"
+ powershell -Command "scoop install extras/vlc"
) else (
powershell -File ".\utils\chibiScoop.ps1" -SoftwareName "vlc"
)
@@ -82,66 +81,115 @@ if %N%==2 (
if %N%==3 (
if "%scoopInstalled%"=="true" (
- start powershell -NoExit -Command "scoop install main/7zip"
+ powershell -Command "scoop install extras/qview"
) else (
- powershell -File ".\utils\chibiScoop.ps1" -SoftwareName "7zip"
+ powershell -File ".\utils\chibiScoop.ps1" -SoftwareName "qview"
)
)
if %N%==4 (
if "%scoopInstalled%"=="true" (
- start powershell -NoExit -Command "scoop install extras/qbittorrent-enhanced"
+ powershell -Command "scoop install extras/qbittorrent-enhanced"
) else (
powershell -File ".\utils\chibiScoop.ps1" -SoftwareName "qbittorrent-enhanced"
)
)
if %N%==5 (
- powershell -File ".\utils\chibiScoop.ps1" -SoftwareName "steam"
+ if "%scoopInstalled%"=="true" (
+ powershell -Command "scoop install extras/telegram"
+ ) else (
+ powershell -File ".\utils\chibiScoop.ps1" -SoftwareName "telegram"
+ )
)
+
if %N%==6 (
- powershell -File ".\utils\chibiScoop.ps1" -SoftwareName "discord"
+ if "%scoopInstalled%"=="true" (
+ powershell -Command "scoop install extras/sublime-text"
+ ) else (
+ powershell -File ".\utils\chibiScoop.ps1" -SoftwareName "sublime-text"
+ )
)
+
+
if %N%==7 (
- powershell -File ".\utils\chibiScoop.ps1" -SoftwareName "file-converter"
+ if "%scoopInstalled%"=="true" (
+ powershell -Command "scoop install extras/simplewall"
+ ) else (
+ powershell -File ".\utils\chibiScoop.ps1" -SoftwareName "simplewall"
+ )
)
+
+
if %N%==8 (
- powershell -File ".\utils\chibiScoop.ps1" -SoftwareName "telegram"
+ if "%scoopInstalled%"=="true" (
+ powershell -Command "scoop install extras/flameshot"
+ ) else (
+ powershell -File ".\utils\chibiScoop.ps1" -SoftwareName "flameshot"
+ )
)
+
if %N%==9 (
- powershell -File ".\utils\chibiScoop.ps1" -SoftwareName "spotify"
+ if "%scoopInstalled%"=="true" (
+ powershell -Command "scoop install extras/brave"
+ ) else (
+ powershell -File ".\utils\chibiScoop.ps1" -SoftwareName "brave"
+ )
)
+
if %N%==10 (
- powershell -File ".\utils\chibiScoop.ps1" -SoftwareName "simplewall"
+ if "%scoopInstalled%"=="true" (
+ powershell -Command "scoop install java/temurin-jdk"
+ ) else (
+ powershell -File ".\utils\chibiScoop.ps1" -SoftwareName "java"
+ )
)
+
if %N%==11 (
- powershell -File ".\utils\chibiScoop.ps1" -SoftwareName "ungoogled-chromium"
-)
-if %N%==12 (
- powershell -File ".\utils\chibiScoop.ps1" -SoftwareName "brave"
-)
-if %N%==13 (
- powershell -File ".\utils\chibiScoop.ps1" -SoftwareName "qview"
-)
-if %N%==14 (
- powershell -File ".\utils\chibiScoop.ps1" -SoftwareName "sublime-text"
+ powershell -File ".\utils\chibiScoop.ps1" -SoftwareName "steam"
)
-if %N%==15 (
- powershell -File ".\utils\chibiScoop.ps1" -SoftwareName "flameshot"
+
+
+if /i "%N%"=="scoop" (
+ powershell -Command "Invoke-RestMethod -Uri https://get.scoop.sh | Invoke-Expression"
+ call utils\RefreshEnv.cmd
+ echo.
+
+ powershell -Command "scoop install main/7zip"
+ call utils\RefreshEnv.cmd
+ echo.
+
+ powershell -Command "scoop install main/git"
+ call utils\RefreshEnv.cmd
+ echo.
+
+ powershell -Command "scoop install main/innounp"
+ call utils\RefreshEnv.cmd
+ echo.
+
+ powershell -Command "scoop install main/wixtoolset"
+ call utils\RefreshEnv.cmd
+ echo.
+
+ powershell -Command "scoop bucket add extras"
+ call utils\RefreshEnv.cmd
+ echo.
+
+ powershell -Command "scoop bucket add java"
+ call utils\RefreshEnv.cmd
+ echo.
+
+ echo Scoop and the software required for its operation installed, check the log before proceeding.
+ pause
)
-::if /i "%N%"=="scoop" (
-:: :: Non RunAs version
-:: :: powershell "Set-ExecutionPolicy Unrestricted -force 2>&1 | Out-Null" > nul 2>&1
-:: :: reg add "HKLM\SYSTEM\CurrentControlSet\Control\FileSystem" /v "LongPathsEnabled" /t REG_DWORD /d 1 /f > nul 2>&1
-::
-:: powershell -Command "Start-Process powershell -ArgumentList '\"Set-ExecutionPolicy Unrestricted -force 2>&1 | Out-Null\"' -Verb RunAs"
-:: powershell -Command "Start-Process reg -ArgumentList '\"add HKLM\\SYSTEM\\CurrentControlSet\\Control\\FileSystem /v LongPathsEnabled /t REG_DWORD /d 1 /f\"' -Verb RunAs"
-:: powershell -Command "Invoke-RestMethod -Uri https://get.scoop.sh | Invoke-Expression"
-:: pause
-::)
+if /i "%N%"=="help" (
+ start https://scoop.sh/
+)
if %N%==0 (goto EOF)
+echo.
+pause
endlocal
goto DOWNLOADCENTER
:EOF
diff --git a/code/modules/logs/.gitkeep b/code/modules/logs/.gitkeep
new file mode 100644
index 0000000..e69de29
diff --git a/code/modules/utils/RefreshEnv.cmd b/code/modules/utils/RefreshEnv.cmd
new file mode 100644
index 0000000..e1b0e4a
--- /dev/null
+++ b/code/modules/utils/RefreshEnv.cmd
@@ -0,0 +1,130 @@
+:: Code generously provided by @beatcracker: https://github.com/beatcracker/detect-batch-subshell
+@echo off
+
+setlocal EnableDelayedExpansion
+
+:: Dequote path to command processor and this script path
+set ScriptPath=%~0
+set CmdPath=%COMSPEC:"=%
+
+:: Get command processor filename and filename with extension
+for %%c in (!CmdPath!) do (
+ set CmdExeName=%%~nxc
+ set CmdName=%%~nc
+)
+
+:: Get this process' PID
+:: Adapted from: http://www.dostips.com/forum/viewtopic.php?p=22675#p22675
+set "uid="
+for /l %%i in (1 1 128) do (
+ set /a "bit=!random!&1"
+ set "uid=!uid!!bit!"
+)
+
+for /f "tokens=2 delims==" %%i in (
+ 'wmic Process WHERE "Name='!CmdExeName!' AND CommandLine LIKE '%%!uid!%%'" GET ParentProcessID /value'
+) do (
+ rem Get commandline of parent
+ for /f "tokens=1,2,*" %%j in (
+ 'wmic Process WHERE "Handle='%%i'" GET CommandLine /value'
+ ) do (
+
+ rem Strip extra CR's from wmic output
+ rem http://www.dostips.com/forum/viewtopic.php?t=4266
+ for /f "delims=" %%x in ("%%l") do (
+ rem Dequote path to batch file, if any (3rd argument)
+ set ParentScriptPath=%%x
+ set ParentScriptPath=!ParentScriptPath:"=!
+ )
+
+ rem Get parent process path
+ for /f "tokens=2 delims==" %%y in ("%%j") do (
+ rem Dequote parent path
+ set ParentPath=%%y
+ set ParentPath=!ParentPath:"=!
+
+ rem Handle different invocations: C:\Windows\system32\cmd.exe , cmd.exe , cmd
+ for %%p in (!CmdPath! !CmdExeName! !CmdName!) do (
+ if !ParentPath!==%%p set IsCmdParent=1
+ )
+
+ rem Check if we're running in cmd.exe with /c switch and this script path as argument
+ if !IsCmdParent!==1 if %%k==/c if "!ParentScriptPath!"=="%ScriptPath%" set IsExternal=1
+ )
+ )
+)
+
+if !IsExternal!==1 (
+ echo %~nx0 does not work when run from this process. If you're in PowerShell, please 'Import-Module $env:ChocolateyInstall\helpers\chocolateyProfile.psm1' and try again.
+ exit 1
+)
+
+endlocal
+:: End code from @beatcracker
+@echo off
+::
+:: RefreshEnv.cmd
+::
+:: Batch file to read environment variables from registry and
+:: set session variables to these values.
+::
+:: With this batch file, there should be no need to reload command
+:: environment every time you want environment changes to propagate
+
+::echo "RefreshEnv.cmd only works from cmd.exe, please install the Chocolatey Profile to take advantage of refreshenv from PowerShell"
+echo | set /p dummy="Refreshing environment variables from registry for cmd.exe. Please wait..."
+
+goto main
+
+:: Set one environment variable from registry key
+:SetFromReg
+ "%WinDir%\System32\Reg" QUERY "%~1" /v "%~2" > "%TEMP%\_envset.tmp" 2>NUL
+ for /f "usebackq skip=2 tokens=2,*" %%A IN ("%TEMP%\_envset.tmp") do (
+ echo/set "%~3=%%B"
+ )
+ goto :EOF
+
+:: Get a list of environment variables from registry
+:GetRegEnv
+ "%WinDir%\System32\Reg" QUERY "%~1" > "%TEMP%\_envget.tmp"
+ for /f "usebackq skip=2" %%A IN ("%TEMP%\_envget.tmp") do (
+ if /I not "%%~A"=="Path" (
+ call :SetFromReg "%~1" "%%~A" "%%~A"
+ )
+ )
+ goto :EOF
+
+:main
+ echo/@echo off >"%TEMP%\_env.cmd"
+
+ :: Slowly generating final file
+ call :GetRegEnv "HKLM\System\CurrentControlSet\Control\Session Manager\Environment" >> "%TEMP%\_env.cmd"
+ call :GetRegEnv "HKCU\Environment">>"%TEMP%\_env.cmd" >> "%TEMP%\_env.cmd"
+
+ :: Special handling for PATH - mix both User and System
+ call :SetFromReg "HKLM\System\CurrentControlSet\Control\Session Manager\Environment" Path Path_HKLM >> "%TEMP%\_env.cmd"
+ call :SetFromReg "HKCU\Environment" Path Path_HKCU >> "%TEMP%\_env.cmd"
+
+ :: Caution: do not insert space-chars before >> redirection sign
+ echo/set "Path=%%Path_HKLM%%;%%Path_HKCU%%" >> "%TEMP%\_env.cmd"
+
+ :: Cleanup
+ del /f /q "%TEMP%\_envset.tmp" 2>nul
+ del /f /q "%TEMP%\_envget.tmp" 2>nul
+
+ :: capture user / architecture
+ SET "OriginalUserName=%USERNAME%"
+ SET "OriginalArchitecture=%PROCESSOR_ARCHITECTURE%"
+
+ :: Set these variables
+ call "%TEMP%\_env.cmd"
+
+ :: Cleanup
+ del /f /q "%TEMP%\_env.cmd" 2>nul
+
+ :: reset user / architecture
+ SET "USERNAME=%OriginalUserName%"
+ SET "PROCESSOR_ARCHITECTURE=%OriginalArchitecture%"
+
+ echo | set /p dummy="Finished."
+ echo .
diff --git a/code/modules/utils/chibiScoop.ps1 b/code/modules/utils/chibiScoop.ps1
index 5fc7353..1f7ef82 100644
--- a/code/modules/utils/chibiScoop.ps1
+++ b/code/modules/utils/chibiScoop.ps1
@@ -15,10 +15,11 @@ $urlDictionary = @{
"spotify" = "https://raw.githubusercontent.com/ScoopInstaller/Extras/master/bucket/spotify.json"
"simplewall" = "https://raw.githubusercontent.com/ScoopInstaller/Extras/master/bucket/simplewall.json"
"ungoogled-chromium" = "https://raw.githubusercontent.com/ScoopInstaller/Extras/master/bucket/ungoogled-chromium.json"
- "brave" = "https://github.com/ScoopInstaller/Extras/blob/master/bucket/brave.json"
+ "brave" = "https://raw.githubusercontent.com/ScoopInstaller/Extras/master/bucket/brave.json"
"qview" = "https://raw.githubusercontent.com/ScoopInstaller/Extras/master/bucket/qview.json"
"sublime" = "https://raw.githubusercontent.com/ScoopInstaller/Extras/master/bucket/sublime-text.json"
"flameshot" = "https://raw.githubusercontent.com/ScoopInstaller/Extras/master/bucket/flameshot.json"
+ "java" = "https://raw.githubusercontent.com/ScoopInstaller/Java/master/bucket/temurin-jdk.json"
}
# Check if the software name provided is valid in the dictionary
From 5e6f89d808dd1e6816753e72aa15b32078f2813e Mon Sep 17 00:00:00 2001
From: SegoCode <35817798+SegoCode@users.noreply.github.com>
Date: Mon, 12 Aug 2024 14:52:09 +0200
Subject: [PATCH 06/14] Update downloadcenter.bat
---
code/modules/downloadcenter.bat | 130 ++++++++++++++++++++++++++++----
1 file changed, 116 insertions(+), 14 deletions(-)
diff --git a/code/modules/downloadcenter.bat b/code/modules/downloadcenter.bat
index 55372ff..5d956fb 100644
--- a/code/modules/downloadcenter.bat
+++ b/code/modules/downloadcenter.bat
@@ -15,10 +15,10 @@ echo This tool utilizes Scoop repositories to fetch the latest
echo versions of software.
echo.
echo If scoop are [1;32menabled[m it will install the software
-echo using scoop. You can install scoop by typing "[1;30mscoop[m"
+echo using scoop. You can install scoop by typing "[1;35mscoop[m"
echo as input. If are [1;31mdisabled[m, it creates an installation
echo folder on your desktop with the software files. For more
-echo info type "[1;30mhelp[m"
+echo info type "[1;35mhelp[m"
call utils\RefreshEnv.cmd > nul 2>&1
@@ -42,17 +42,120 @@ if %errorlevel% == 0 (
echo.
cd %~dp0
-echo [1] Librewolf = [[1;32m Launch [m]
-echo [2] VLC Media Player = [[1;32m Launch [m]
-echo [3] qview = [[1;32m Launch [m]
-echo [4] qBittorrent Enhanced = [[1;32m Launch [m]
-echo [5] telegram = [[1;32m Launch [m]
-echo [6] sublime-text = [[1;32m Launch [m]
-echo [7] simplewall = [[1;32m Launch [m]
-echo [8] flameshot = [[1;32m Launch [m]
-echo [9] Brave = [[1;32m Launch [m]
-echo [10] java = [[1;32m Launch [m]
-echo [11] Steam (Non-scoop) = [[1;32m Launch [m]
+powershell -Command "scoop which librewolf" >nul 2>&1
+if %ERRORLEVEL% == 0 (
+ echo [1] Librewolf = [[1;42m Installed [m]
+) else (
+ if "%scoopInstalled%"=="true" (
+ echo [1] Librewolf = [[1;32m Install with scoop [m]
+ ) else (
+ echo [1] Librewolf = [[1;32m Download in desktop [m]
+ )
+)
+
+powershell -Command "scoop which vlc" >nul 2>&1
+if %ERRORLEVEL% == 0 (
+ echo [2] VLC Media Player = [[1;42m Installed [m]
+) else (
+ if "%scoopInstalled%"=="true" (
+ echo [2] VLC Media Player = [[1;32m Install with scoop [m]
+ ) else (
+ echo [2] VLC Media Player = [[1;32m Download in desktop [m]
+ )
+)
+
+powershell -Command "scoop which qview" >nul 2>&1
+if %ERRORLEVEL% == 0 (
+ echo [3] qview = [[1;42m Installed [m]
+) else (
+ if "%scoopInstalled%"=="true" (
+ echo [3] qview = [[1;32m Install with scoop [m]
+ ) else (
+ echo [3] qview = [[1;32m Download in desktop [m]
+ )
+)
+
+
+powershell -Command "scoop which qbittorrent" >nul 2>&1
+if %ERRORLEVEL% == 0 (
+ echo [4] qBittorrent Enhanced = [[1;42m Installed [m]
+) else (
+ if "%scoopInstalled%"=="true" (
+ echo [4] qBittorrent Enhanced = [[1;32m Install with scoop [m]
+ ) else (
+ echo [4] qBittorrent Enhanced = [[1;32m Download in desktop [m]
+ )
+)
+
+powershell -Command "scoop which telegram" >nul 2>&1
+if %ERRORLEVEL% == 0 (
+ echo [5] telegram = [[1;42m Installed [m]
+) else (
+ if "%scoopInstalled%"=="true" (
+ echo [5] telegram = [[1;32m Install with scoop [m]
+ ) else (
+ echo [5] telegram = [[1;32m Download in desktop [m]
+ )
+)
+
+powershell -Command "scoop which subl" >nul 2>&1
+if %ERRORLEVEL% == 0 (
+ echo [6] sublime-text = [[1;42m Installed [m]
+) else (
+ if "%scoopInstalled%"=="true" (
+ echo [6] sublime-text = [[1;32m Install with scoop [m]
+ ) else (
+ echo [6] sublime-text = [[1;32m Download in desktop [m]
+ )
+)
+
+
+powershell -Command "scoop which simplewall" >nul 2>&1
+if %ERRORLEVEL% == 0 (
+ echo [7] simplewall = [[1;42m Installed [m]
+) else (
+ if "%scoopInstalled%"=="true" (
+ echo [7] simplewall = [[1;32m Install with scoop [m]
+ ) else (
+ echo [7] simplewall = [[1;32m Download in desktop [m]
+ )
+)
+
+powershell -Command "scoop which flameshot" >nul 2>&1
+if %ERRORLEVEL% == 0 (
+ echo [8] flameshot = [[1;42m Installed [m]
+) else (
+ if "%scoopInstalled%"=="true" (
+ echo [8] flameshot = [[1;32m Install with scoop [m]
+ ) else (
+ echo [8] flameshot = [[1;32m Download in desktop [m]
+ )
+)
+
+
+powershell -Command "scoop which brave" >nul 2>&1
+if %ERRORLEVEL% == 0 (
+ echo [9] Brave = [[1;42m Installed [m]
+) else (
+ if "%scoopInstalled%"=="true" (
+ echo [9] Brave = [[1;32m Install with scoop [m]
+ ) else (
+ echo [9] Brave = [[1;32m Download in desktop [m]
+ )
+)
+
+powershell -Command "scoop which java" >nul 2>&1
+if %ERRORLEVEL% == 0 (
+ echo [10] java = [[1;42m Installed [m]
+) else (
+ if "%scoopInstalled%"=="true" (
+ echo [10] java = [[1;32m Install with scoop [m]
+ ) else (
+ echo [10] java = [[1;32m Download in desktop [m]
+ )
+)
+
+echo [11] Steam = [[1;32m Download in desktop [m]
echo.
echo [0] Return to menu
@@ -180,7 +283,6 @@ if /i "%N%"=="scoop" (
echo.
echo Scoop and the software required for its operation installed, check the log before proceeding.
- pause
)
if /i "%N%"=="help" (
From be0188f0f0fe66ee6a738ad8df6a6fdda9631b49 Mon Sep 17 00:00:00 2001
From: SegoCode <35817798+SegoCode@users.noreply.github.com>
Date: Mon, 12 Aug 2024 14:52:12 +0200
Subject: [PATCH 07/14] Delete appsmanager.ps1
---
code/modules/appsmanager.ps1 | 104 -----------------------------------
1 file changed, 104 deletions(-)
delete mode 100644 code/modules/appsmanager.ps1
diff --git a/code/modules/appsmanager.ps1 b/code/modules/appsmanager.ps1
deleted file mode 100644
index 13084fe..0000000
--- a/code/modules/appsmanager.ps1
+++ /dev/null
@@ -1,104 +0,0 @@
-Add-Type -AssemblyName PresentationFramework
-Add-Type -AssemblyName System.Windows.Forms
-
-# Define the GUI XML in a multi-line string
-$xaml = @"
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-"@
-
-# Load the XAML from the string
-$reader = New-Object System.Xml.XmlNodeReader ([xml]$xaml)
-$window = [Windows.Markup.XamlReader]::Load($reader)
-
-# Reference GUI elements
-$appListBox = $window.FindName("AppListBox")
-$toggleButton = $window.FindName("ToggleSelectButton")
-$uninstallButton = $window.FindName("UninstallButton")
-$restoreButton = $window.FindName("RestoreButton")
-$progressBar = $window.FindName("ProgressBar")
-
-# Function for the toggle button
-$toggleButton.Add_Click({
- $allChecked = $true
- foreach ($item in $appListBox.Items) {
- if (-not $item.IsSelected) {
- $allChecked = $false
- break
- }
- }
- $newValue = -not $allChecked
- foreach ($item in $appListBox.Items) {
- $item.IsSelected = $newValue
- }
- $appListBox.Items.Refresh()
-})
-
-# Function for the uninstall button
-$uninstallButton.Add_Click({
- $selectedItems = $appListBox.Items | Where-Object { $_.IsSelected -eq $true -and $_.PackageFullName -notmatch "Microsoft.WindowsStore" }
- $totalItems = $selectedItems.Count
- $progressCounter = 0
- foreach ($item in $selectedItems) {
- Remove-AppxPackage -Package $item.PackageFullName -AllUsers -Confirm:$false
- $progressCounter++
- $progressBar.Value = ($progressCounter / $totalItems) * 100
- }
- Update-AppList
-})
-
-# Function for the restore button
-$restoreButton.Add_Click({
- Get-AppxPackage -AllUsers | Foreach {
- Add-AppxPackage -DisableDevelopmentMode -Register "$($_.InstallLocation)\AppXManifest.xml"
- }
- Update-AppList
-})
-
-# Function to update the application list
-function Update-AppList {
- $packages = Get-AppxPackage -AllUsers -PackageTypeFilter Bundle |
- Where-Object { $_.NonRemovable -eq $False } |
- Select-Object Name, PackageFullName, @{Name="IsSelected"; Expression={ $false }}
- $appListBox.ItemsSource = $packages
- $appListBox.Items.Refresh()
-}
-
-# Initialize the application list
-Update-AppList
-
-# Display the window
-$window.ShowDialog()
From eb7250a50757689f66bad306af0c58778bafdf31 Mon Sep 17 00:00:00 2001
From: SegoCode <35817798+SegoCode@users.noreply.github.com>
Date: Mon, 12 Aug 2024 15:17:01 +0200
Subject: [PATCH 08/14] Update localgroup.bat
---
code/modules/localgroup.bat | 14 ++++++++++++--
1 file changed, 12 insertions(+), 2 deletions(-)
diff --git a/code/modules/localgroup.bat b/code/modules/localgroup.bat
index 85458f4..f9ddf9f 100644
--- a/code/modules/localgroup.bat
+++ b/code/modules/localgroup.bat
@@ -175,7 +175,15 @@ if not %errorlevel% == 1 (
)
-echo [24] Apply all = [[1;31m * [m]
+reg query "HKEY_LOCAL_MACHINE\Software\Policies\Microsoft\Windows\WindowsAI" /v DisableAIDataAnalysis > nul 2>&1
+if not %errorlevel% == 1 (
+ echo [24] WindowsAI Data Collection = [[1;32m Disabled [m]
+) else (
+ echo [24] WindowsAI Data Collection = [[1;31m Enabled [m]
+)
+
+
+echo [25] Apply all = [[1;31m * [m]
echo.
echo [0] Exit
@@ -206,8 +214,9 @@ if %N%==20 (set path="HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersi
if %N%==21 (set path="HKEY_LOCAL_MACHINE\SOFTWARE\Policies\Microsoft\Windows\TabletPC" && set key=PreventHandwritingDataSharing && set value=1)
if %N%==22 (set path="HKEY_LOCAL_MACHINE\SOFTWARE\Policies\Microsoft\Windows\System" && set key=PublishUserActivities && set value=0)
if %N%==23 (set path="HKEY_LOCAL_MACHINE\Software\Microsoft\Windows\CurrentVersion\Policies\TextInput" && set key=AllowLinguisticDataCollection && set value=0)
+if %N%==24 (set path="HKEY_LOCAL_MACHINE\Software\Policies\Microsoft\Windows\WindowsAI" && set key=DisableAIDataAnalysis && set value=1)
-if %N%==24 (set loopcount=23 && goto APPLYALLLOCALGROUP)
+if %N%==25 (set loopcount=24 && goto APPLYALLLOCALGROUP)
if %N%==0 (goto INIT)
reg query %path% /v %key% > nul 2>&1
@@ -243,6 +252,7 @@ if %loopcount%==20 (set path="HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\Curr
if %loopcount%==21 (set path="HKEY_LOCAL_MACHINE\SOFTWARE\Policies\Microsoft\Windows\TabletPC" && set key=PreventHandwritingDataSharing && set value=1)
if %loopcount%==22 (set path="HKEY_LOCAL_MACHINE\SOFTWARE\Policies\Microsoft\Windows\System" && set key=PublishUserActivities && set value=0)
if %loopcount%==23 (set path="HKEY_LOCAL_MACHINE\Software\Microsoft\Windows\CurrentVersion\Policies\TextInput" && set key=AllowLinguisticDataCollection && set value=0)
+if %loopcount%==24 (set path="HKEY_LOCAL_MACHINE\Software\Policies\Microsoft\Windows\WindowsAI" && set key=DisableAIDataAnalysis && set value=1)
reg query %path% /v %key% > nul 2>&1
From e79b586f6918dae5d716600510df38c066ce5864 Mon Sep 17 00:00:00 2001
From: SegoCode <35817798+SegoCode@users.noreply.github.com>
Date: Mon, 12 Aug 2024 15:17:03 +0200
Subject: [PATCH 09/14] Update otherlocalgroup.bat
---
code/modules/otherlocalgroup.bat | 13 +++++++++++--
1 file changed, 11 insertions(+), 2 deletions(-)
diff --git a/code/modules/otherlocalgroup.bat b/code/modules/otherlocalgroup.bat
index 089415a..c3dad0c 100644
--- a/code/modules/otherlocalgroup.bat
+++ b/code/modules/otherlocalgroup.bat
@@ -148,8 +148,15 @@ if not %errorlevel% == 1 (
echo [19] Enables activities feed = [[1;31m Enabled [m]
)
+reg query "HKEY_LOCAL_MACHINE\SOFTWARE\Policies\Microsoft\FindMyDevice" /v AllowFindMyDevice > nul 2>&1
+if not %errorlevel% == 1 (
+ echo [20] Enables find my device = [[1;32m Disabled [m]
+) else (
+ echo [20] Enables find my device = [[1;31m Enabled [m]
+)
+
-echo [20] Apply all = [[1;31m * [m]
+echo [21] Apply all = [[1;31m * [m]
echo.
echo [0] Exit
@@ -176,8 +183,9 @@ if %N%==16 (set path="HKEY_LOCAL_MACHINE\SOFTWARE\Policies\Microsoft\Windows\Exp
if %N%==17 (set path="HKEY_LOCAL_MACHINE\SOFTWARE\Policies\Microsoft\Windows\WindowsUpdate\AU" && set key=NoAutoUpdate && set value=1)
if %N%==18 (set path="HKEY_LOCAL_MACHINE\SOFTWARE\Policies\Microsoft\Windows\WindowsUpdate" && set key=ExcludeWUDriversInQualityUpdate && set value=1)
if %N%==19 (set path="HKEY_LOCAL_MACHINE\SOFTWARE\Policies\Microsoft\Windows\System" && set key=EnableActivityFeed && set value=0)
+if %N%==20 (set path="HKEY_LOCAL_MACHINE\SOFTWARE\Policies\Microsoft\FindMyDevice" && set key=AllowFindMyDevice && set value=0)
-if %N%==20 (set loopcount=19 && goto APPLYALLOTHERLOCALGROUP)
+if %N%==21 (set loopcount=20 && goto APPLYALLOTHERLOCALGROUP)
if %N%==0 (goto EOF)
reg query %path% /v %key% > nul 2>&1
@@ -209,6 +217,7 @@ if %loopcount%==16 (set path="HKEY_LOCAL_MACHINE\SOFTWARE\Policies\Microsoft\Win
if %loopcount%==17 (set path="HKEY_LOCAL_MACHINE\SOFTWARE\Policies\Microsoft\Windows\WindowsUpdate\AU" && set key=NoAutoUpdate && set value=1)
if %loopcount%==18 (set path="HKEY_LOCAL_MACHINE\SOFTWARE\Policies\Microsoft\Windows\WindowsUpdate" && set key=ExcludeWUDriversInQualityUpdate && set value=1)
if %loopcount%==19 (set path="HKEY_LOCAL_MACHINE\SOFTWARE\Policies\Microsoft\Windows\System" && set key=EnableActivityFeed && set value=0)
+if %loopcount%==20 (set path="HKEY_LOCAL_MACHINE\SOFTWARE\Policies\Microsoft\FindMyDevice" && set key=AllowFindMyDevice && set value=0)
reg query %path% /v %key% > nul 2>&1
From 0e64d3bf6a0870f3b0e130362ccf141f22141e2b Mon Sep 17 00:00:00 2001
From: SegoCode <35817798+SegoCode@users.noreply.github.com>
Date: Mon, 12 Aug 2024 15:17:04 +0200
Subject: [PATCH 10/14] Create TakeOwnership.reg
---
code/modules/utils/TakeOwnership.reg | Bin 0 -> 4148 bytes
1 file changed, 0 insertions(+), 0 deletions(-)
create mode 100644 code/modules/utils/TakeOwnership.reg
diff --git a/code/modules/utils/TakeOwnership.reg b/code/modules/utils/TakeOwnership.reg
new file mode 100644
index 0000000000000000000000000000000000000000..979d09643605a1107994cffb85b4656e41b298ef
GIT binary patch
literal 4148
zcmeH~eNPiX5XPUsP5cg-Nj%UA5F!L#g`e%4u6o9kJF`PnphGS!K7yEM@NWhW(7)7V|dq
zhnm$K?Y3_D{)DyX>^1pahc4Cu-zT(~m1X){b(p0d)9EGabsaNnLuV+4FsJ*BPg$wc
z6OUos=h>O3<#dA!SV;kC86GWt;`A&SDHyqgdn##7FSyq`?Q2CFs^}GMmA=pYw`i|b
z(+s_fWI_5GYq35s+d@+&t7*aH?&!V8{#o2ir{Kk)1ss!eZz2*dYe~_!d$=oZ68W1%
z=wg7yo5iB8HpRBNRga#7!+R$#m(PGkRN@eJr
zM=^gi35{D>hm1AfBHbZ^@^7cRGzUT*&UIupUiog3vJBVEYr=TVAZ-bxk{0L>w5VsS
zmc1N7iZWqe~`AvAE@=O`mg}?%{7|?3jlnWbXCzud4T&W1mC19wCNqk+bGu
zD}0$Z?{G52s;ydn+h+U~#1Nk$A`-Zp@5Y|zIM9o=cU&?Lqt*%GY+H;%6;-T{ViP}}glkH8^quaYEcy+?es)6YwNcTHp@?WTDWonGo
zA*+@4MxAVZGfp4JR^|Sl8h2BzaGfa2h*A5OP^@^vZ}QPA+)d6t5ij;h)?dr|c^)38
x4ZfGr!i#wp3l8WOsdYxH(pSBWhu_7cdGO^^*Lfr7b?L|N-w4_5{eQD>^A#74m$U!?
literal 0
HcmV?d00001
From ca16ce77db40c8d44c7b9002362ef9fbc27badc8 Mon Sep 17 00:00:00 2001
From: SegoCode <35817798+SegoCode@users.noreply.github.com>
Date: Tue, 13 Aug 2024 11:01:01 +0200
Subject: [PATCH 11/14] set new project structure
---
.github/CODE_OF_CONDUCT.md | 3 +
.github/FUNDING.yml | 11 ++
.github/ISSUE_TEMPLATE/bug_report.yml | 11 +-
.github/ISSUE_TEMPLATE/config.yml | 2 +-
.github/ISSUE_TEMPLATE/feature_request.yml | 4 +-
.github/SECURITY.md | 5 +-
.github/workflows/generate-tag.yml | 94 +++++++++++++++
.github/workflows/gitleaks.yml | 15 +++
.github/workflows/greetings.yml | 5 +-
.github/workflows/initializer.yml | 71 +++++++++++
.../workflows/sync-from-develop-to-main.yml | 52 ++++++++
.gitignore | 105 +++++++++++++++-
LICENSE | 112 +++++++++---------
docs/.gitkeep | 1 +
14 files changed, 416 insertions(+), 75 deletions(-)
create mode 100644 .github/CODE_OF_CONDUCT.md
create mode 100644 .github/FUNDING.yml
create mode 100644 .github/workflows/generate-tag.yml
create mode 100644 .github/workflows/gitleaks.yml
create mode 100644 .github/workflows/initializer.yml
create mode 100644 .github/workflows/sync-from-develop-to-main.yml
create mode 100644 docs/.gitkeep
diff --git a/.github/CODE_OF_CONDUCT.md b/.github/CODE_OF_CONDUCT.md
new file mode 100644
index 0000000..e6bf153
--- /dev/null
+++ b/.github/CODE_OF_CONDUCT.md
@@ -0,0 +1,3 @@
+This project adheres to **No Code of Conduct**. We are all adults. We accept anyone's contributions. Nothing else matters.
+
+For more information please visit the [No Code of Conduct](https://github.com/domgetter/NCoC) homepage.
diff --git a/.github/FUNDING.yml b/.github/FUNDING.yml
new file mode 100644
index 0000000..5c41eff
--- /dev/null
+++ b/.github/FUNDING.yml
@@ -0,0 +1,11 @@
+github: [{username}]
+community_bridge: # Replace with a single Community Bridge project-name e.g., cloud-foundry
+issuehunt: # Replace with a single IssueHunt username
+ko_fi: # Replace with a single ko_fi username
+liberapay: # Replace with a single Liberapay username
+open_collective: # Replace with a single open_collective username
+patreon: # Replace with a single Patreon username
+tidelift: # Replace with a single Tidelift platform-name/package-name e.g., npm/babel
+polar: # Replace with a single polar username
+buy_me_a_coffee: # Replace with a single buy_me_a_coffee username
+custom: # Replace with up to 4 custom sponsorship URLs e.g., ['link1', 'link2']
diff --git a/.github/ISSUE_TEMPLATE/bug_report.yml b/.github/ISSUE_TEMPLATE/bug_report.yml
index 150c46c..e6219c9 100644
--- a/.github/ISSUE_TEMPLATE/bug_report.yml
+++ b/.github/ISSUE_TEMPLATE/bug_report.yml
@@ -42,13 +42,14 @@ body:
- type: dropdown
attributes:
- label: SO version
+ label: OS version
options:
- Windows 11
- Windows 10
- - Windows 8
- - Windows 7
- - Other
+ - Windows Other
+ - Linux Debian
+ - Linux Arch
+ - Linux Other
validations:
required: true
@@ -56,7 +57,7 @@ body:
attributes:
label: Confirmation
options:
- - label: I performed a [search of the issue tracker](https://github.com/segocode/DebloBat/issues) to avoid opening a duplicate issue
+ - label: I performed a [search of the issue tracker](https://github.com/{username}/{reponame}/issues) to avoid opening a duplicate issue
required: true
- label: I understand that not filling out this template correctly may lead to the issue being closed
required: true
diff --git a/.github/ISSUE_TEMPLATE/config.yml b/.github/ISSUE_TEMPLATE/config.yml
index aa0286a..7f83253 100644
--- a/.github/ISSUE_TEMPLATE/config.yml
+++ b/.github/ISSUE_TEMPLATE/config.yml
@@ -1,5 +1,5 @@
blank_issues_enabled: false
contact_links:
- name: Contact the developer
- url: https://segocode.github.io/SegoCode/
+ url: https://{username}.github.io/{username}/
about: To discuss any type of related topic
diff --git a/.github/ISSUE_TEMPLATE/feature_request.yml b/.github/ISSUE_TEMPLATE/feature_request.yml
index acaa9f3..23c5ebc 100644
--- a/.github/ISSUE_TEMPLATE/feature_request.yml
+++ b/.github/ISSUE_TEMPLATE/feature_request.yml
@@ -34,7 +34,7 @@ body:
attributes:
label: Confirmation
options:
- - label: I performed a [search of the feature requests](https://github.com/segocode/DebloBat/issues) to avoid suggesting a duplicate feature
+ - label: I performed a [search of the feature requests](https://github.com/{username}/{reponame}/issues) to avoid suggesting a duplicate feature
required: true
- label: I understand that not filling out this template correctly may lead to the request being closed
- required: true
\ No newline at end of file
+ required: true
diff --git a/.github/SECURITY.md b/.github/SECURITY.md
index 15b1cbb..df34996 100644
--- a/.github/SECURITY.md
+++ b/.github/SECURITY.md
@@ -1,4 +1 @@
-## Security Policy
-
-### Reporting a Vulnerability
-If you discover a vulnerability in this application, that poses a significant threat to the security of the users, we recommend that you do not open a public issue. Instead, please send your report via [email](https://segocode.github.io/SegoCode/). Include as much detailed information as possible to help understand the nature of the vulnerability.
+If you discover a vulnerability in this application, that poses a significant threat to the security of the users, we recommend that you do not open a public issue. Instead, please send your report via [email](https://{username}.github.io/{username}/). Include as much detailed information as possible to help understand the nature of the vulnerability.
diff --git a/.github/workflows/generate-tag.yml b/.github/workflows/generate-tag.yml
new file mode 100644
index 0000000..13573e5
--- /dev/null
+++ b/.github/workflows/generate-tag.yml
@@ -0,0 +1,94 @@
+name: Generate tag
+
+on:
+ pull_request:
+ types: [closed]
+
+jobs:
+ create_tag:
+ if: github.event.pull_request.merged == true && contains(github.event.pull_request.labels.*.name, 'auto-tag')
+ runs-on: ubuntu-latest
+ steps:
+ - name: Checkout repository
+ uses: actions/checkout@v2
+
+ - name: Set up git
+ run: |
+ git config --global user.name "github-actions"
+ git config --global user.email "github-actions@github.com"
+
+ - name: Fetch all tags
+ run: git fetch --tags
+
+ - name: Get latest tag
+ id: get_latest_tag
+ run: |
+ # Get the latest tag
+ latest_tag=$(git describe --tags `git rev-list --tags --max-count=1` 2>/dev/null || echo "")
+ echo "latest_tag=$latest_tag" >> $GITHUB_ENV
+
+ - name: Determine new version
+ id: determine_version
+ run: |
+ latest_tag=${{ env.latest_tag }}
+ if [ -z "$latest_tag" ]; then
+ # Initialize the version to 1.0 if no tags exist
+ new_version="1.0"
+ else
+ # Extract the major and minor version and increment the minor version
+ major_version=$(echo $latest_tag | cut -d. -f1)
+ minor_version=$(echo $latest_tag | cut -d. -f2)
+ new_minor_version=$((minor_version + 1))
+ new_version="$major_version.$new_minor_version"
+
+ # Check if the new version tag already exists
+ while git rev-parse "refs/tags/$new_version" >/dev/null 2>&1; do
+ new_minor_version=$((new_minor_version + 1))
+ new_version="$major_version.$new_minor_version"
+ done
+ fi
+ echo "new_version=$new_version" >> $GITHUB_ENV
+
+ - name: Checkout main branch
+ run: |
+ git checkout main
+
+ - name: Create new tag
+ env:
+ GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
+ run: |
+ new_version=${{ env.new_version }}
+ git tag -a $new_version -m "Automatically generated version $new_version"
+ git push origin $new_version
+
+ create_issue:
+ needs: tag_version
+ runs-on: ubuntu-latest
+ steps:
+ - name: Checkout repository
+ uses: actions/checkout@v2
+
+ - name: Set up git
+ run: |
+ git config --global user.name "github-actions"
+ git config --global user.email "github-actions@github.com"
+
+ - name: Fetch all tags
+ run: git fetch --tags
+
+ - name: Get the latest tag
+ id: get_latest_tag
+ run: |
+ # Get the latest tag
+ latest_tag=$(git describe --tags `git rev-list --tags --max-count=1` 2>/dev/null || echo "")
+ echo "latest_tag=$latest_tag" >> $GITHUB_ENV
+
+ - name: Create issue for new tag
+ env:
+ GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
+ latest_tag: ${{ env.latest_tag }}
+ run: |
+ repository=${{ github.repository }}
+ issue_title="The tag \`${{ env.latest_tag }}\` was created"
+ issue_body=$'The **${{ env.latest_tag }}** tag for the **main branch** has been created. Please consider creating a release of this tag, if a release isn\'t needed, you can close this issue.\n\n[Click here to create a release of **${{ env.latest_tag }}** tag](../releases/new?tag=${{ env.latest_tag }})'
+ gh issue create --title "$issue_title" --body "$issue_body" --label "auto-tag"
diff --git a/.github/workflows/gitleaks.yml b/.github/workflows/gitleaks.yml
new file mode 100644
index 0000000..1efeed8
--- /dev/null
+++ b/.github/workflows/gitleaks.yml
@@ -0,0 +1,15 @@
+name: Gitleaks
+on: [pull_request, push, workflow_dispatch]
+jobs:
+ scan:
+ name: gitleaks
+ runs-on: ubuntu-latest
+ steps:
+ - name: Checkout code
+ uses: actions/checkout@v4
+ with:
+ fetch-depth: 0
+ - name: Run Gitleaks
+ uses: gitleaks/gitleaks-action@v2
+ env:
+ GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
diff --git a/.github/workflows/greetings.yml b/.github/workflows/greetings.yml
index 0c71d41..724954b 100644
--- a/.github/workflows/greetings.yml
+++ b/.github/workflows/greetings.yml
@@ -1,6 +1,6 @@
name: Greetings
-on: [pull_request_target]
+on: [pull_request_target, issues]
jobs:
greeting:
@@ -12,4 +12,5 @@ jobs:
- uses: actions/first-interaction@v1
with:
repo-token: ${{ secrets.GITHUB_TOKEN }}
- pr-message: "🎉 Thank you for your first pull request to the repository! We're grateful for your contribution and will review it ASAP."
+ issue-message: "Thank you for your first issue. To better understand your request or the problem you've encountered, please provide as many details as possible. If the behavior changes or if you have new information about your request, don't hesitate to add it. It will be reviewed ASAP."
+ pr-message: "Thank you for your first pull request to the repository! We're grateful for your contribution and will review it ASAP."
diff --git a/.github/workflows/initializer.yml b/.github/workflows/initializer.yml
new file mode 100644
index 0000000..881756d
--- /dev/null
+++ b/.github/workflows/initializer.yml
@@ -0,0 +1,71 @@
+name: Initialize repository
+
+on:
+ workflow_dispatch:
+
+jobs:
+ initialize_repo:
+ runs-on: ubuntu-latest
+ steps:
+ - name: Checkout repository
+ uses: actions/checkout@v2
+ with:
+ ref: main
+ fetch-depth: 0
+
+ - name: Setup git
+ run: |
+ git config --global user.name "github-actions"
+ git config --global user.email "github-actions@github.com"
+
+ - name: Install GitHub CLI
+ run: |
+ sudo apt-get update
+ sudo apt-get install gh -y
+
+ - name: Extract repository and username
+ id: extract
+ run: |
+ REPO_NAME="${{ github.repository }}"
+ USERNAME=$(echo $REPO_NAME | cut -d'/' -f1)
+ REPO_NAME_ONLY=$(echo $REPO_NAME | cut -d'/' -f2)
+ echo "::set-output name=username::$USERNAME"
+ echo "::set-output name=reponame::$REPO_NAME_ONLY"
+
+ - name: Set branch name
+ id: vars
+ run: echo "::set-output name=branch::initialize-repo-$(date +%Y%m%d%H%M%S)"
+
+ - name: Replace {reponame} and {username} with actual values
+ run: |
+ REPO_NAME_ONLY="${{ steps.extract.outputs.reponame }}"
+ USERNAME="${{ steps.extract.outputs.username }}"
+ REPO_NAME_ESCAPED=$(echo $REPO_NAME_ONLY | sed 's/\//\\\//g')
+ USERNAME_ESCAPED=$(echo $USERNAME | sed 's/\//\\\//g')
+ find . -type f -exec sed -i "s/{reponame}/$REPO_NAME_ESCAPED/g" {} +
+ find . -type f -exec sed -i "s/{username}/$USERNAME_ESCAPED/g" {} +
+
+ - name: Remove initializer workflow
+ run: |
+ rm -f .github/workflows/initializer.yml
+
+ - name: Commit changes
+ run: |
+ BRANCH_NAME="${{ steps.vars.outputs.branch }}"
+ git checkout -b $BRANCH_NAME
+ git add .
+ git commit -m "Initialize repository with repo name $REPO_NAME_ONLY and username $USERNAME"
+ git push origin HEAD:$BRANCH_NAME
+
+ - name: Create pull request
+ env:
+ GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
+ run: |
+ BRANCH_NAME="${{ steps.vars.outputs.branch }}"
+ PR_URL=$(gh pr create --base main --head $BRANCH_NAME --title "Initialize repository" --body "This PR initializes the repository with the actual repository name, with the actual username and removing the initializer workflow.")
+
+ # Extract PR number from URL
+ PR_NUMBER=$(basename $PR_URL)
+
+ # Add any desired labels to the pull request
+ # gh pr edit $PR_NUMBER --add-label "initialization"
diff --git a/.github/workflows/sync-from-develop-to-main.yml b/.github/workflows/sync-from-develop-to-main.yml
new file mode 100644
index 0000000..7baa0b8
--- /dev/null
+++ b/.github/workflows/sync-from-develop-to-main.yml
@@ -0,0 +1,52 @@
+name: Sync from develop to main
+
+on:
+ workflow_dispatch:
+
+jobs:
+ create_pr:
+ runs-on: ubuntu-latest
+ steps:
+ - name: Checkout repository
+ uses: actions/checkout@v2
+
+ - name: Setup git
+ run: |
+ git config --global user.name "github-actions"
+ git config --global user.email "github-actions@github.com"
+
+ - name: Install GitHub CLI
+ run: |
+ sudo apt-get update
+ sudo apt-get install gh -y
+
+ - name: Check and create labels
+ env:
+ GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
+ run: |
+ # Check if the 'auto-sync' label exists
+ AUTO_SYNC_LABEL=$(gh api repos/${{ github.repository }}/labels --jq '.[] | select(.name=="auto-sync")')
+ if [ -z "$AUTO_SYNC_LABEL" ]; then
+ # Create the 'auto-sync' label if it doesn't exist
+ gh api repos/${{ github.repository }}/labels -f name='auto-sync' -f color='C5DEF5'
+ fi
+
+ # Check if the 'auto-tag' label exists
+ AUTO_TAG_LABEL=$(gh api repos/${{ github.repository }}/labels --jq '.[] | select(.name=="auto-tag")')
+ if [ -z "$AUTO_TAG_LABEL" ]; then
+ # Create the 'auto-tag' label if it doesn't exist
+ gh api repos/${{ github.repository }}/labels -f name='auto-tag' -f color='BFDADC'
+ fi
+
+ - name: Create pull request
+ env:
+ GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
+ run: |
+ # Create the pull request
+ PR_URL=$(gh pr create --base main --head develop --title "Sync from develop to main" --body $'This is an automated pull request to sync changes from the develop branch to the main branch. \n >[!WARNING]\n> If this pull request is merged with the \'**auto-tag**\' label, it will create a **new tag**. To prevent this, manually remove the \'**auto-tag**\' label.')
+
+ # Extract PR number from URL
+ PR_NUMBER=$(basename $PR_URL)
+
+ # Add the labels to the pull request
+ gh pr edit $PR_NUMBER --add-label "auto-sync" --add-label "auto-tag"
diff --git a/.gitignore b/.gitignore
index 8d6fa21..5dd78a1 100644
--- a/.gitignore
+++ b/.gitignore
@@ -1,5 +1,5 @@
-# Created by https://www.toptal.com/developers/gitignore/api/intellij+all,visualstudiocode,git,windows,linux
-# Edit at https://www.toptal.com/developers/gitignore?templates=intellij+all,visualstudiocode,git,windows,linux
+# Created by https://www.toptal.com/developers/gitignore/api/git,gpg,ssh,vim,linux,macos,windows,notepadpp,sublimetext,intellij+all,visualstudiocode
+# Edit at https://www.toptal.com/developers/gitignore?templates=git,gpg,ssh,vim,linux,macos,windows,notepadpp,sublimetext,intellij+all,visualstudiocode
### Git ###
# Created by git for backups. To disable backups in Git:
@@ -16,6 +16,10 @@
*_LOCAL_*.txt
*_REMOTE_*.txt
+### GPG ###
+secring.*
+
+
### Intellij+all ###
# Covers JetBrains IDEs: IntelliJ, RubyMine, PhpStorm, AppCode, PyCharm, CLion, Android Studio, WebStorm and Rider
# Reference: https://intellij-support.jetbrains.com/hc/en-us/articles/206544839
@@ -119,6 +123,101 @@ fabric.properties
# .nfs files are created when an open file is removed but is still being accessed
.nfs*
+### macOS ###
+# General
+.DS_Store
+.AppleDouble
+.LSOverride
+
+# Icon must end with two \r
+Icon
+
+
+# Thumbnails
+._*
+
+# Files that might appear in the root of a volume
+.DocumentRevisions-V100
+.fseventsd
+.Spotlight-V100
+.TemporaryItems
+.Trashes
+.VolumeIcon.icns
+.com.apple.timemachine.donotpresent
+
+# Directories potentially created on remote AFP share
+.AppleDB
+.AppleDesktop
+Network Trash Folder
+Temporary Items
+.apdisk
+
+### macOS Patch ###
+# iCloud generated files
+*.icloud
+
+### NotepadPP ###
+# Notepad++ backups #
+*.bak
+
+### SSH ###
+**/.ssh/id_*
+**/.ssh/*_id_*
+**/.ssh/known_hosts
+
+### SublimeText ###
+# Cache files for Sublime Text
+*.tmlanguage.cache
+*.tmPreferences.cache
+*.stTheme.cache
+
+# Workspace files are user-specific
+*.sublime-workspace
+
+# Project files should be checked into the repository, unless a significant
+# proportion of contributors will probably not be using Sublime Text
+# *.sublime-project
+
+# SFTP configuration file
+sftp-config.json
+sftp-config-alt*.json
+
+# Package control specific files
+Package Control.last-run
+Package Control.ca-list
+Package Control.ca-bundle
+Package Control.system-ca-bundle
+Package Control.cache/
+Package Control.ca-certs/
+Package Control.merged-ca-bundle
+Package Control.user-ca-bundle
+oscrypto-ca-bundle.crt
+bh_unicode_properties.cache
+
+# Sublime-github package stores a github token in this file
+# https://packagecontrol.io/packages/sublime-github
+GitHub.sublime-settings
+
+### Vim ###
+# Swap
+[._]*.s[a-v][a-z]
+!*.svg # comment out if you don't need vector files
+[._]*.sw[a-p]
+[._]s[a-rt-v][a-z]
+[._]ss[a-gi-z]
+[._]sw[a-p]
+
+# Session
+Session.vim
+Sessionx.vim
+
+# Temporary
+.netrwhist
+# Auto-generated tag files
+tags
+# Persistent undo
+[._]*.un~
+
### VisualStudioCode ###
.vscode/*
!.vscode/settings.json
@@ -164,4 +263,4 @@ $RECYCLE.BIN/
# Windows shortcuts
*.lnk
-# End of https://www.toptal.com/developers/gitignore/api/intellij+all,visualstudiocode,git,windows,linux
+# End of https://www.toptal.com/developers/gitignore/api/git,gpg,ssh,vim,linux,macos,windows,notepadpp,sublimetext,intellij+all,visualstudiocode
diff --git a/LICENSE b/LICENSE
index 7fa4a60..dde1197 100644
--- a/LICENSE
+++ b/LICENSE
@@ -1,74 +1,70 @@
-Copyright (c) 2020, SegoCode
+Copyright (c) {username}
All rights reserved.
-Section 1 – Definitions.
+Section 1 - Definitions
- 1. NonCommercial refers to any usage, distribution, or adaptation of the licensed
- material that is not primarily intended for or directed towards commercial
- advantage or monetary compensation, unless specific prior explicit and signed
- written permission is granted by the original author, SegoCode.
+1.1 "NonCommercial" pertains to any use, distribution, or modification of the
+ licensed material that does not primarily aim to achieve commercial
+ advantage or generate monetary compensation. This includes, but is not
+ limited to, activities such as distributing the licensed material as part
+ of an application or product that is sold, using the licensed material in
+ advertising, and creating products or services with the licensed material
+ that are subsequently sold.
- 2. Adapted Material refers to any material derived from or based upon the licensed
- material, in which the licensed material is translated, altered, arranged,
- transformed, or otherwise modified. This definition excludes exact copies of
- the material.
+1.2 "Adapted Material" refers to any work derived from or based upon the licensed
+ material. This includes, but is not limited to, translations, alterations,
+ rearrangements, transformations, source code modifications, compiled code
+ alterations, architectural redesigns, or the integration of the licensed
+ material into other software projects.
- 3. ProhibitedPractices include, but are not limited to:
-
- a. Derived or adapted material must clearly acknowledge the original work and the
- original author, SegoCode, in a place in the documentation or other materials
- provided with the distribution. This acknowledgment should include a link to the
- original source code repository.
- b. Distributing the licensed material bundled with unrelated or potentially harmful
- software, such as adware, malware, or spyware, that may compromise the security,
- privacy, or user experience of individuals who access or use the material.
- c. Falsely claiming endorsements or associations with the original author, other
- contributors to the project, or any well-known entity, in an attempt to
- mislead users or enhance the credibility of the derived or adapted material.
+1.3 "NonAdapted Material" refers to exact copies of the licensed material, either
+ in source code or binary form, which are reproduced without any changes,
+ modifications, or transformations.
-Section 2 – License Conditions.
+Section 2 - License Conditions
- 1. Redistributions of the licensed material, either in source code or binary form,
- must retain the above copyright notice, this list of conditions, the following
- disclaimer, and the definitions in Section 1. When redistributing in binary
- form, these elements must be included in the documentation and/or other
- materials provided with the distribution.
+2.1 Distribution and usage in source or binary forms are permitted solely for
+ NonCommercial purposes for both NonAdapted Material and Adapted Material
+ excluding NonAdapted Material cases in 2.4 section.
+
+2.2 Redistributions for any NonAdapted Material or Adapted Material, either
+ in source code or binary form, must include the original copyright notice,
+ this license, the disclaimer, and comply with the requirements specified
+ herein. For binary form redistributions, these documents must be included
+ in any provided documentation or materials or a clearly accessible link
+ to this license ensuring that recipients can easily review the license terms.
- 2. Redistribution and use of the material, in source or binary forms, are allowed
- for NonCommercial purposes only. The creation, reproduction, and sharing of adapted
- material are also permitted for NonCommercial purposes, provided that no
- ProhibitedPractices are involved in any case.
+2.3 For any Adapted Material, whether in source code or binary form, and for any
+ instance of the licensed material utilized in applications accessible over
+ the internet that run on a server, the source code must be made accessible
+ through a public repository, a downloadable archive, or an equivalent
+ method, ensuring that users have the capability to access, review, and
+ download the code, and must clearly credit the original work and author.
- 3. Redistribution of Adapted Material must be available in a publicly accessible
- compressed or archival form, which includes the source code of the Adapted
- Material, all modules it contains, any associated interface definition files,
- scripts used to control compilation and installation of executable code, and
- the appropriate decompression or de-archiving software widely available for
- no charge. Redistribution should be free of charge unless otherwise agreed upon
- with the original author, SegoCode.
+2.4 For any NonAdapted Material that are offered on download sites, marketplaces, or
+ software distribution platforms, are permitted under the condition that any
+ economic benefit derived from such distribution is strictly indirect, including
+ but not limited to advertisements or link redirectors. Direct sales or charges
+ for access to the licensed material are not permitted under this license. Upon
+ the original author distributing the material on the same platform, all alternative
+ downloads and any associated revenue-generating mechanisms must be discontinued
+ immediately. Acceptance of this license constitutes agreement that the copyright
+ holder may request the immediate cessation of such downloads and activities on
+ such platforms, and the distributor must comply with such request without delay.
- 4. If you allow users to interact with the Adapted Material remotely via a computer
- network, you must provide the complete corresponding machine-readable source code for
- the version they are using. This source code must be provided under the same terms and
- conditions outlined in this license, and through a publicly accessible repository, a
- downloadable archive, or other readily accessible means. This requirement applies even
- if you run the Adapted Material on a server and users interact with it remotely through
- a network.
+2.5 Distributing the licensed material alongside unrelated or harmful software, such as adware,
+ malware, or spyware or implying endorsement or association with the original author
+ or recognized entities without permission, is prohibited.
- 5. It is encouraged to acknowledge the original author of the initial
- work of the project, SegoCode, when using the licensed material or related works/services
- in any derivative or adapted work. However, if an agreement is reached with the
- original author, SegoCode, the acknowledgment requirement may be waived or
- adjusted according to the terms of the agreement.
+Section 3 - Updates and Revisions
-Section 3 – Updates and Revisions.
+3.1 The copyright holder retains the right to amend, update, or otherwise modify this
+ license at any time without prior notice. Users should periodically review the
+ license terms to stay informed of any changes.
- 1. SegoCode reserves the right to revise, update, or change this license at any time,
- without any obligation to provide prior notice or notification to users.
-
- 2. Continued use of the licensed material following any changes to the license constitutes
- acceptance of those changes. It is the user's responsibility to regularly review the
- license terms and ensure compliance with its current version.
+3.2 Continued use of the licensed material after such changes signifies acceptance of the
+ revised license terms. It is the user's responsibility to ensure ongoing compliance
+ with the most current version of the license.
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
diff --git a/docs/.gitkeep b/docs/.gitkeep
new file mode 100644
index 0000000..8b13789
--- /dev/null
+++ b/docs/.gitkeep
@@ -0,0 +1 @@
+
From fb80531e1ac254facf3027d39b7ea678836e33ab Mon Sep 17 00:00:00 2001
From: SegoCode <35817798+SegoCode@users.noreply.github.com>
Date: Tue, 13 Aug 2024 11:16:32 +0200
Subject: [PATCH 12/14] Update qolconfig.bat
---
code/modules/qolconfig.bat | 23 +++++++++++++++++++++--
1 file changed, 21 insertions(+), 2 deletions(-)
diff --git a/code/modules/qolconfig.bat b/code/modules/qolconfig.bat
index 70eb81c..ea62bff 100644
--- a/code/modules/qolconfig.bat
+++ b/code/modules/qolconfig.bat
@@ -126,9 +126,9 @@ reg query "HKCU\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\Advanced" /v
reg query "HKCU\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\Advanced" /v LaunchTo | find "0x1" > nul 2>&1
)
if not %errorlevel% == 1 (
- echo [13] File Explorer opens to This PC = [[1;32m Disabled [m]
+ echo [13] File Explorer opens home = [[1;32m Disabled [m]
) else (
- echo [13] File Explorer opens to This PC = [[1;31m Enabled [m]
+ echo [13] File Explorer opens home = [[1;31m Enabled [m]
)
reg query "HKCU\Software\Classes\Local Settings\Software\Microsoft\Windows\Shell\Bags\AllFolders\Shell" /v FolderType > nul 2>&1 && (
@@ -168,6 +168,16 @@ if not %errorlevel% == 1 (
echo [17] Gaming overlay popup = [[1;31m Enabled [m]
)
+reg query "HKEY_LOCAL_MACHINE\System\CurrentControlSet\Control\GraphicsDrivers" /v TdrDelay > nul 2>&1 && (
+ reg query "HKEY_LOCAL_MACHINE\System\CurrentControlSet\Control\GraphicsDrivers" /v TdrDelay | find "0x2" > nul 2>&1
+)
+if not %errorlevel% == 1 (
+ echo [18] TdrDelay default value = [[1;31m Enabled [m]
+) else (
+ echo [18] TdrDelay default value = [[1;32m Disabled [m]
+)
+
+
echo.
echo [0] Return to menu
@@ -415,6 +425,15 @@ if %N%==17 (
)
)
+if %N%==18 (
+ reg query "HKEY_LOCAL_MACHINE\System\CurrentControlSet\Control\GraphicsDrivers" /v TdrDelay | find "0x2" > nul 2>&1
+ if not !ERRORLEVEL! == 0 (
+ reg add "HKEY_LOCAL_MACHINE\System\CurrentControlSet\Control\GraphicsDrivers" /v TdrDelay /t REG_DWORD /d 2 /f > nul 2>&1
+ ) else (
+ reg add "HKEY_LOCAL_MACHINE\System\CurrentControlSet\Control\GraphicsDrivers" /v TdrDelay /t REG_DWORD /d 20 /f > nul 2>&1
+ )
+)
+
endlocal
From 04cc7faea173fde042938fde7e4f231daf879b1a Mon Sep 17 00:00:00 2001
From: SegoCode <35817798+SegoCode@users.noreply.github.com>
Date: Tue, 13 Aug 2024 11:16:34 +0200
Subject: [PATCH 13/14] Update localgroup.bat
---
code/modules/localgroup.bat | 13 +++++++++++--
1 file changed, 11 insertions(+), 2 deletions(-)
diff --git a/code/modules/localgroup.bat b/code/modules/localgroup.bat
index f9ddf9f..9c0c118 100644
--- a/code/modules/localgroup.bat
+++ b/code/modules/localgroup.bat
@@ -182,8 +182,15 @@ if not %errorlevel% == 1 (
echo [24] WindowsAI Data Collection = [[1;31m Enabled [m]
)
+reg query "HKEY_LOCAL_MACHINE\Software\Policies\Microsoft\Windows\System" /v AllowCrossDeviceClipboard > nul 2>&1
+if not %errorlevel% == 1 (
+ echo [25] Cloud Clipboard = [[1;32m Disabled [m]
+) else (
+ echo [25] Cloud Clipboard = [[1;31m Enabled [m]
+)
+
-echo [25] Apply all = [[1;31m * [m]
+echo [26] Apply all = [[1;31m * [m]
echo.
echo [0] Exit
@@ -215,8 +222,9 @@ if %N%==21 (set path="HKEY_LOCAL_MACHINE\SOFTWARE\Policies\Microsoft\Windows\Tab
if %N%==22 (set path="HKEY_LOCAL_MACHINE\SOFTWARE\Policies\Microsoft\Windows\System" && set key=PublishUserActivities && set value=0)
if %N%==23 (set path="HKEY_LOCAL_MACHINE\Software\Microsoft\Windows\CurrentVersion\Policies\TextInput" && set key=AllowLinguisticDataCollection && set value=0)
if %N%==24 (set path="HKEY_LOCAL_MACHINE\Software\Policies\Microsoft\Windows\WindowsAI" && set key=DisableAIDataAnalysis && set value=1)
+if %N%==25 (set path="HKEY_LOCAL_MACHINE\Software\Policies\Microsoft\Windows\WindowsAI" && set key=DisableAIDataAnalysis && set value=0)
-if %N%==25 (set loopcount=24 && goto APPLYALLLOCALGROUP)
+if %N%==26 (set loopcount=25 && goto APPLYALLLOCALGROUP)
if %N%==0 (goto INIT)
reg query %path% /v %key% > nul 2>&1
@@ -253,6 +261,7 @@ if %loopcount%==21 (set path="HKEY_LOCAL_MACHINE\SOFTWARE\Policies\Microsoft\Win
if %loopcount%==22 (set path="HKEY_LOCAL_MACHINE\SOFTWARE\Policies\Microsoft\Windows\System" && set key=PublishUserActivities && set value=0)
if %loopcount%==23 (set path="HKEY_LOCAL_MACHINE\Software\Microsoft\Windows\CurrentVersion\Policies\TextInput" && set key=AllowLinguisticDataCollection && set value=0)
if %loopcount%==24 (set path="HKEY_LOCAL_MACHINE\Software\Policies\Microsoft\Windows\WindowsAI" && set key=DisableAIDataAnalysis && set value=1)
+if %loopcount%==25 (set path="HKEY_LOCAL_MACHINE\Software\Policies\Microsoft\Windows\WindowsAI" && set key=DisableAIDataAnalysis && set value=0)
reg query %path% /v %key% > nul 2>&1
From 7e8de4ca3cff2f2f1e10f639d94ab5d518a8c5bd Mon Sep 17 00:00:00 2001
From: SegoCode <35817798+SegoCode@users.noreply.github.com>
Date: Tue, 13 Aug 2024 11:32:31 +0200
Subject: [PATCH 14/14] Update qolconfig.bat
---
code/modules/qolconfig.bat | 17 +++++++++++++++++
1 file changed, 17 insertions(+)
diff --git a/code/modules/qolconfig.bat b/code/modules/qolconfig.bat
index ea62bff..505a9f9 100644
--- a/code/modules/qolconfig.bat
+++ b/code/modules/qolconfig.bat
@@ -178,6 +178,14 @@ if not %errorlevel% == 1 (
)
+reg query "HKEY_CURRENT_USER\SOFTWARE\Classes\Local Settings\Software\Microsoft\Windows\Shell\Bags\AllFolders\Shell" /v FolderType > nul 2>&1 && (
+ reg query "HKEY_CURRENT_USER\SOFTWARE\Classes\Local Settings\Software\Microsoft\Windows\Shell\Bags\AllFolders\Shell" /v FolderType | find "NotSpecified" > nul 2>&1
+)
+if %errorlevel% == 0 (
+ echo [19] Default FolderType set = [[1;32m Disabled [m]
+) else (
+ echo [19] Default FolderType set = [[1;31m Enabled [m]
+)
echo.
echo [0] Return to menu
@@ -434,6 +442,15 @@ if %N%==18 (
)
)
+if %N%==19 (
+ reg query "HKEY_CURRENT_USER\SOFTWARE\Classes\Local Settings\Software\Microsoft\Windows\Shell\Bags\AllFolders\Shell" /v FolderType | find "NotSpecified" > nul 2>&1
+ if !ERRORLEVEL! == 1 (
+ reg add "HKEY_CURRENT_USER\SOFTWARE\Classes\Local Settings\Software\Microsoft\Windows\Shell\Bags\AllFolders\Shell" /v FolderType /t REG_SZ /d "NotSpecified" /f > nul 2>&1
+ ) else (
+ reg delete "HKEY_CURRENT_USER\SOFTWARE\Classes\Local Settings\Software\Microsoft\Windows\Shell\Bags\AllFolders\Shell" /v FolderType /f > nul 2>&1
+ )
+)
+
endlocal