diff --git a/.github/workflows/lictool.yaml b/.github/workflows/lictool.yaml index 6f09545..0b64f8d 100644 --- a/.github/workflows/lictool.yaml +++ b/.github/workflows/lictool.yaml @@ -1,3 +1,4 @@ + on: pull_request: push: @@ -7,15 +8,35 @@ jobs: lictool: runs-on: ubuntu-latest steps: - - uses: actions/checkout@v3 + - name: Checkout + uses: actions/checkout@v3 + if: ${{ github.event_name != 'pull_request' }} - - uses: actions/setup-python@v4 + - name: Checkout pull request + uses: actions/checkout@v3 + if: ${{ github.event_name == 'pull_request' }} + with: + repository: ${{ github.event.pull_request.head.repo.full_name }} + ref: ${{ github.event.pull_request.head.ref }} + + - name: Set up Python 3 + uses: actions/setup-python@v4 with: python-version: 3.x - - uses: pre-commit/action@v3.0.1 - with: - extra_args: license-tools + - name: Set git author to @actions + uses: fregante/setup-git-user@v2 - - uses: pre-commit-ci/lite-action@v1.0.2 - if: always() + - name: Install lictool + run: pip install git+https://github.com/emzeat/mz-lictools@v2.7.0 + + - name: Run lictool + run: lictool + + - name: Commit and push + uses: EndBug/add-and-commit@v9 + with: + default_author: github_actions + message: "[ci] update license header" + push: true + fetch: false diff --git a/README.md b/README.md index 7896dcb..bde82e7 100644 --- a/README.md +++ b/README.md @@ -300,7 +300,7 @@ Install the required dependencies. ``` - Gentoo Linux: ```bash - sudo emerge --ask=n sys-libs/dialog net-misc/freerdp:3 net-misc/iproute2 x11-libs/libnotify net-analyzer/netcat + sudo emerge --ask=n dev-util/dialog net-misc/freerdp:3 sys-apps/iproute2 x11-libs/libnotify net-analyzer/openbsd-netcat ``` > [!NOTE] diff --git a/oem/RDPApps.reg b/oem/RDPApps.reg index 9d3f423..f9e4b79 100644 --- a/oem/RDPApps.reg +++ b/oem/RDPApps.reg @@ -1,13 +1,20 @@ Windows Registry Editor Version 5.00 + ; Disable RemoteApp allowlist so all applications can be used in Remote Desktop sessions [HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Terminal Server\TSAppAllowList] "fDisabledAllowList"=dword:00000001 + ; Allow unlisted programs to be run in Remote Desktop sessions [HKEY_LOCAL_MACHINE\SOFTWARE\Policies\Microsoft\Windows NT\Terminal Services] "fAllowUnlistedRemotePrograms"=dword:00000001 + ; Disable automatic administrator logon at startup [HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Winlogon] "AutoAdminLogon"="0" + ; Always use the server's keyboard layout [HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Keyboard Layout] "IgnoreRemoteKeyboardLayout"=dword:00000001 + + ; Disable "Do you want your PC to be discoverable" prompt after each host system reboot + [HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Network\NewNetworkWindowOff] diff --git a/oem/install.bat b/oem/install.bat index be23717..87e0c67 100644 --- a/oem/install.bat +++ b/oem/install.bat @@ -5,3 +5,54 @@ REM REM SPDX-License-Identifier: AGPL-3.0-or-later REG IMPORT C:\OEM\RDPApps.reg + +:: Create Powershell network profile cleanup script +( +echo # Get the current network profile name +echo $currentProfile = ^(Get-NetConnectionProfile^).Name +echo. +echo # Get all profiles from the registry +echo $profilesKey = "HKLM:\SOFTWARE\Microsoft\Windows NT\CurrentVersion\NetworkList\Profiles" +echo $profiles = Get-ChildItem -Path $profilesKey +echo. +echo foreach ^($profile in $profiles^) { +echo $profilePath = "$profilesKey\$($profile.PSChildName)" +echo $profileName = ^(Get-ItemProperty -Path $profilePath^).ProfileName +echo. +echo # Remove profiles that don't match the current one +echo if ^($profileName -ne $currentProfile^) { +echo Remove-Item -Path $profilePath -Recurse +echo Write-Host "Deleted profile: $profileName" +echo } +echo } +echo. +echo # Change the current profile name to "WinApps" +echo $profiles = Get-ChildItem -Path $profilesKey +echo foreach ^($profile in $profiles^) { +echo $profilePath = "$profilesKey\$($profile.PSChildName)" +echo $profileName = ^(Get-ItemProperty -Path $profilePath^).ProfileName +echo. +echo if ^($profileName -eq $currentProfile^) { +echo # Update the profile name +echo Set-ItemProperty -Path $profilePath -Name "ProfileName" -Value "WinApps" +echo Write-Host "Renamed profile to: WinApps" +echo } +echo } +) > %windir%\NetProfileCleanup.ps1 + +:: Create network profile cleanup scheduled task +set "taskname=NetworkProfileCleanup" +set "command=powershell.exe -ExecutionPolicy Bypass -File "%windir%\NetProfileCleanup.ps1^"" + +schtasks /query /tn "%taskname%" >nul 2>&1 +if %ERRORLEVEL% equ 0 ( + echo Task "%taskname%" already exists, deleting it first... + schtasks /delete /tn "%taskname%" /f +) + +schtasks /create /tn "%taskname%" /tr "%command%" /sc onstart /ru "SYSTEM" /rl HIGHEST /f +if %ERRORLEVEL% equ 0 ( + echo Scheduled task "%taskname%" created successfully. +) else ( + echo Failed to create scheduled task. +)