diff --git a/.github/workflows/freebsd.yml b/.github/workflows/freebsd.yml index c8eaa49..0dab457 100644 --- a/.github/workflows/freebsd.yml +++ b/.github/workflows/freebsd.yml @@ -1,61 +1,61 @@ -# This file is a part of the UMSKT Project -# -# Copyleft (C) 2019-2023 UMSKT Contributors (et.al.) -# -# This program is free software: you can redistribute it and/or modify -# it under the terms of the GNU Affero General Public License as published by -# the Free Software Foundation, either version 3 of the License, or -# (at your option) any later version. -# -# This program is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU Affero General Public License for more details. -# -# You should have received a copy of the GNU Affero General Public License -# along with this program. If not, see . -# -# @FileCreated by techguy16 on 07/23/2023 -# @Maintainer techguy16 - -name: C/C++ CI (FreeBSD) - -on: - push: - branches: [ "master" ] - pull_request: - branches: [ "master" ] - -jobs: - build: - runs-on: macos-12 - name: build-x86_64 - steps: - - uses: actions/checkout@v3 - - - name: Build & Test in FreeBSD - id: test - uses: vmactions/freebsd-vm@v0 - with: - envs: 'MYTOKEN MYTOKEN2' - usesh: true - prepare: | - pkg install -y cmake openssl git bash - - run: | - mkdir build - cd build - cmake .. - make - ./umskt # Execute the test here - - - name: Move files to correct directory - run: | - mkdir -p build/actions_upload - mv build/umskt build/actions_upload/umskt - - - name: Upload build artifact - uses: actions/upload-artifact@v3.1.2 - with: - name: UMSKT-FreeBSD - path: build/actions_upload +# This file is a part of the UMSKT Project + # + # Copyleft (C) 2019-2023 UMSKT Contributors (et.al.) + # + # This program is free software: you can redistribute it and/or modify + # it under the terms of the GNU Affero General Public License as published by + # the Free Software Foundation, either version 3 of the License, or + # (at your option) any later version. + # + # This program is distributed in the hope that it will be useful, + # but WITHOUT ANY WARRANTY; without even the implied warranty of + # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + # GNU Affero General Public License for more details. + # + # You should have received a copy of the GNU Affero General Public License + # along with this program. If not, see . + # + # @FileCreated by techguy16 on 07/23/2023 + # @Maintainer techguy16 + + name: C/C++ CI (FreeBSD) + + on: + push: + branches: [ "master" ] + pull_request: + branches: [ "master" ] + + jobs: + build: + runs-on: macos-latest + name: build-x86_64 + steps: + - uses: actions/checkout@v3 + + - name: Build & Test in FreeBSD + id: test + uses: vmactions/freebsd-vm@v0 + with: + envs: 'MYTOKEN MYTOKEN2' + usesh: true + prepare: | + pkg install -y cmake openssl git bash + + run: | + mkdir build + cd build + cmake .. + make + ./umskt # Execute the test here + + - name: Move files to correct directory + run: | + mkdir -p build/actions_upload + mv build/umskt build/actions_upload/umskt + + - name: Upload build artifact + uses: actions/upload-artifact@v3.1.2 + with: + name: UMSKT-FreeBSD + path: build/actions_upload diff --git a/.github/workflows/macos.yml b/.github/workflows/macos.yml index ea3ae00..0623445 100644 --- a/.github/workflows/macos.yml +++ b/.github/workflows/macos.yml @@ -53,11 +53,6 @@ jobs: cd build/actions_upload ./umskt - - name: Zip artifact - run: | - cd build/actions_upload - zip -r UMSKT-macOS-${{ matrix.arch }}-static.zip umskt - - name: Upload build artifact uses: actions/upload-artifact@v3.1.2 with: diff --git a/.github/workflows/windows.yml b/.github/workflows/windows.yml index 27a3d67..237485a 100644 --- a/.github/workflows/windows.yml +++ b/.github/workflows/windows.yml @@ -30,10 +30,27 @@ jobs: build-32bit: runs-on: windows-latest steps: - - name: Install v141_xp - uses: thepwrtank18/install-vs-components@v1.0.0 - with: - components: Microsoft.VisualStudio.Component.WinXP + # https://github.com/actions/runner-images/issues/6067#issuecomment-1213069040 + - name: Install Windows XP Support for Visual Studio + run: | + Set-Location "C:\Program Files (x86)\Microsoft Visual Studio\Installer\" + $InstallPath = "C:\Program Files\Microsoft Visual Studio\2022\Enterprise" + $componentsToAdd = @( + "Microsoft.VisualStudio.Component.WinXP" + ) + [string]$workloadArgs = $componentsToAdd | ForEach-Object {" --add " + $_} + $Arguments = ('/c', "vs_installer.exe", 'modify', '--installPath', "`"$InstallPath`"",$workloadArgs, '--quiet', '--norestart', '--nocache') + $process = Start-Process -FilePath cmd.exe -ArgumentList $Arguments -Wait -PassThru -WindowStyle Hidden + if ($process.ExitCode -eq 0) + { + Write-Host "components have been successfully added" + Get-ChildItem C:\ProgramData\Microsoft\VisualStudio\Packages\Microsoft.Windows.XPSupport.* + } + else + { + Write-Host "components were not installed" + exit 1 + } - name: Download And Install 32-bit OpenSSL 3.1.2 run: | @@ -57,14 +74,13 @@ jobs: - name: Configure UMSKT uses: threeal/cmake-action@v1.2.0 with: - working-directory: build generator: "Visual Studio 17 2022" options: CMAKE_SYSTEM_VERSION="5.1.2600" args: -A "Win32" -T v141_xp - name: Build UMSKT working-directory: build - run: msbuild ALL_BUILD.vcxproj /P:Configuration=Release /P:XPDeprecationWarning=false + run: msbuild ALL_BUILD.vcxproj /P:Configuration=Release - name: Upload build artifact uses: actions/upload-artifact@v3.1.2 @@ -75,11 +91,27 @@ jobs: build-64bit: runs-on: windows-latest steps: - - name: Install v141_xp - uses: thepwrtank18/install-vs-components@v1.0.0 - with: - components: Microsoft.VisualStudio.Component.WinXP - + - name: Install Windows XP Support for Visual Studio + run: | + Set-Location "C:\Program Files (x86)\Microsoft Visual Studio\Installer\" + $InstallPath = "C:\Program Files\Microsoft Visual Studio\2022\Enterprise" + $componentsToAdd = @( + "Microsoft.VisualStudio.Component.WinXP" + ) + [string]$workloadArgs = $componentsToAdd | ForEach-Object {" --add " + $_} + $Arguments = ('/c', "vs_installer.exe", 'modify', '--installPath', "`"$InstallPath`"",$workloadArgs, '--quiet', '--norestart', '--nocache') + $process = Start-Process -FilePath cmd.exe -ArgumentList $Arguments -Wait -PassThru -WindowStyle Hidden + if ($process.ExitCode -eq 0) + { + Write-Host "components have been successfully added" + Get-ChildItem C:\ProgramData\Microsoft\VisualStudio\Packages\Microsoft.Windows.XPSupport.* + } + else + { + Write-Host "components were not installed" + exit 1 + } + - name: Download And Install 64-bit OpenSSL 3.1.2 run: | $installDir = "$Env:ProgramFiles\OpenSSL" @@ -103,11 +135,11 @@ jobs: uses: threeal/cmake-action@v1.2.0 with: generator: "Visual Studio 17 2022" - args: -A "x64" -T v141_xp + args: -A "x64" -T "v141_xp" - name: Build UMSKT working-directory: build - run: msbuild ALL_BUILD.vcxproj /P:Configuration=Release /P:XPDeprecationWarning=false + run: msbuild ALL_BUILD.vcxproj /P:Configuration=Release - name: Upload build artifact uses: actions/upload-artifact@v3.1.2 diff --git a/README.md b/README.md index 61217f5..e2f2702 100644 --- a/README.md +++ b/README.md @@ -6,17 +6,24 @@ [![libera.chat - #mspid](https://img.shields.io/badge/libera.chat-%23mspid-brightgreen)](https://web.libera.chat/gamja/?nick=Guest?#mspid) **Build status** -[![C/C++ CI (Linux)](https://github.com/UMSKT/UMSKT/actions/workflows/linux.yml/badge.svg)](../../actions/workflows/linux.yml) + [![C/C++ CI (Windows)](https://github.com/UMSKT/UMSKT/actions/workflows/windows.yml/badge.svg)](../../actions/workflows/windows.yml) + [![C/C++ CI (macOS)](https://github.com/UMSKT/UMSKT/actions/workflows/macos.yml/badge.svg)](../../actions/workflows/macos.yml) -[![C/C++ CI (DOS DJGPP)](https://github.com/UMSKT/UMSKT/actions/workflows/dos-djgpp.yml/badge.svg)](../../actions/workflows/freebsd.yml) + +[![C/C++ CI (Linux)](https://github.com/UMSKT/UMSKT/actions/workflows/linux.yml/badge.svg)](../../actions/workflows/linux.yml) + [![C/C++ CI (FreeBSD)](https://github.com/UMSKT/UMSKT/actions/workflows/freebsd.yml/badge.svg)](../../actions/workflows/dos-djgpp.yml) -Plan of Action / ToDo List +[![C/C++ CI (DOS DJGPP)](https://github.com/UMSKT/UMSKT/actions/workflows/dos-djgpp.yml/badge.svg)](../../actions/workflows/freebsd.yml) + +------ + +### Plan of Action / ToDo List In light of the recent exponential interest in this project I've decided to put updates of this project here: - Please see ticket #8 for more information +[Please see ticket #8 for more information](https://github.com/UMSKT/UMSKT/issues/8) ------ @@ -34,21 +41,22 @@ In light of the recent exponential interest in this project I've decided to put * It all comes down to four simple steps: +------ ### **Usage** #### 1. Download the latest version of UMSKT * *(GitHub account required)* - * Download the latest experimental version using the Actions tab ([Windows](../../actions/workflows/windows.yml?query=branch%3Amaster), [Linux](../../actions/workflows/linux.yml?query=branch%3Amaster), [macOS](../../actions/workflows/macos.yml?query=branch%3Amaster), [FreeBSD](../../actions/workflows/freebsd.yml?query=branch%3Amaster), [DOS DJGPP](../../actions/workflows/.yml?qudos-djgppery=branch%3Amaster)) + * Download the latest experimental version using the Actions tab ([Windows](../../actions/workflows/windows.yml?query=branch%3Amaster+is%3Asuccess), [Linux](../../actions/workflows/linux.yml?query=branch%3Amaster+is%3Asuccess), [macOS](../../actions/workflows/macos.yml?query=branch%3Amaster+is%3Asuccess), [FreeBSD](../../actions/workflows/freebsd.yml?query=branch%3Amaster+is%3Asuccess), [DOS DJGPP](../../actions/workflows/dos-djgpp.yml?query=branch%3Amaster+is%3Asuccess)) * ~~*(GitHub account \*not\* required)*~~ * ~~Download the latest release for your operating system and architecture from [the releases page](../../releases)~~ * No official releases right now, use the other method to get the latest version. -* **Note:** Before continuing, please ensure you have the `umskt` executable extracted. +* **Note:** Before continuing, please ensure you have the `umskt` executable extracted and on UNIX-like systems, have execution permissions (`chmod +x umskt`). -#### 2. Run `umskt` to generate a key, or add `--help` to see more options. +#### 2. Run `umskt` to generate a key, or add `--help` or `-h` to see more options. #### 3. *(Activation step for `Retail` and `OEM` only)* * After installation, you will be prompted to activate Windows. @@ -74,6 +82,7 @@ The list of people who have helped to bring the XP generation to where it is now * TheTank20 * InvoxiPlayGames * brakmic +* techguy16 (the list will be updated to add more collaborators) @@ -81,20 +90,26 @@ The list of people who have helped to bring the XP generation to where it is now ### **Development Requirements:** -* `CMake, make, gcc` (`build-essential`) +* `build-essential` + * `cmake` + * `make` + * `gcc` + * `g++` * `git` #### Build Steps: -1. `git clone` -2. `cd build/ && cmake ../ && make` +1. `git clone https://github.com/UMSKT/UMSKT` +2. `cd UMSKT/build` +3. `cmake ..` +4. `make` ----- ### **Known Ports** -| Language | Author | Repo URL | -|----------|-----------|-------------------------------------------------------| -| Rust | Alex Page | [anpage/umskt-rs](https://github.com/anpage/umskt-rs) | -| Python | techguy16 | [techguy16/umsktpy](https://github.com/techguy16/umsktpy) | +| Language | Author | Repo URL | +|----------|-----------|-----------------------------------------------------------| +| Rust | Alex Page | [anpage/umskt-rs](https://github.com/anpage/umskt-rs) | +| Python | techguy16 | [techguy16/umsktpy](https://github.com/techguy16/umsktpy) | diff --git a/keys.json b/keys.json index 6c174f7..09f13d1 100644 --- a/keys.json +++ b/keys.json @@ -45,6 +45,9 @@ "Office XP Applications": { "BINK": ["20", "21"] }, + "Works Suite 2003 and 2004": { + "BINK": ["20", "21"] + }, "Office XP": { "BINK": ["22", "23"] }, @@ -117,6 +120,9 @@ "Office 2003 Small Business": { "BINK": ["70", "71"] }, + "Office 2003 Student and Teacher": { + "BINK": ["70", "71"] + }, "Office 2003 Professional": { "BINK": ["72", "73"] }, @@ -1568,4 +1574,4 @@ "iid_key": "1513142771" } } -} \ No newline at end of file +}