Simple tool for updating software
This repository has been archived on 2022-08-05. You can view files and clone it, but cannot push or open issues or pull requests.
Go to file
JFronny 2fe4fa4592 Implement queue management UI and app upload for eto 2021-02-14 16:29:09 +01:00
.idea Split UpToolLib into v1 (basically an interface over XElements with rudementary parsing) and v2 (more object-oriented, less hacky API, will allow easier migration to a more suited information backend) and start work on a new eto-based UI (not functional currently) 2021-02-08 19:00:52 +01:00
Installer Split UpToolLib into v1 (basically an interface over XElements with rudementary parsing) and v2 (more object-oriented, less hacky API, will allow easier migration to a more suited information backend) and start work on a new eto-based UI (not functional currently) 2021-02-08 19:00:52 +01:00
InstallerCLI Split UpToolLib into v1 (basically an interface over XElements with rudementary parsing) and v2 (more object-oriented, less hacky API, will allow easier migration to a more suited information backend) and start work on a new eto-based UI (not functional currently) 2021-02-08 19:00:52 +01:00
UpTool build tool Upgrade System.Commandline 2021-02-03 22:47:53 +01:00
UpTool2 Implement app controls and filters in UpToolEto 2021-02-13 14:36:12 +01:00
UpToolCLI Implement app controls and filters in UpToolEto 2021-02-13 14:36:12 +01:00
UpToolEto Implement queue management UI and app upload for eto 2021-02-14 16:29:09 +01:00
UpToolLib Implement app controls and filters in UpToolEto 2021-02-13 14:36:12 +01:00
.gitignore Add package build tools 2020-03-08 09:05:19 +01:00
.gitlab-ci.yml Path 2021-02-04 14:41:34 +00:00
CLI.md Bugfix, better CLI 2020-05-16 18:04:24 +02:00
LICENSE Add LICENSE 2020-06-27 16:22:04 +00:00
README.md Update README.md, UpToolLib/Tool/XmlTool.cs, UpTool2/Program.cs files 2020-06-21 06:05:35 +00:00
UpTool2.ico Some misc changes 2020-03-24 14:01:52 +01:00
UpTool2.sln Split UpToolLib into v1 (basically an interface over XElements with rudementary parsing) and v2 (more object-oriented, less hacky API, will allow easier migration to a more suited information backend) and start work on a new eto-based UI (not functional currently) 2021-02-08 19:00:52 +01:00
UpTool2.sln.DotSettings Add package build tools 2020-03-08 09:05:19 +01:00
UpTool2.xcf Some misc changes 2020-03-24 14:01:52 +01:00
renovate.json Update renovate.json 2020-06-23 12:13:46 +00:00

README.md

UpTool2

Downloading software from online repos since 2019
GitLab pipeline Discord Default Repo

How to automate UpTool2 deployments

You will want the assembly version to automatically increment. To achieve this you have to add this:
<Deterministic>false</Deterministic>
to your csproj in the main PropertyGroup and change your AssemblyVersion to 1.0.* or something like this
Now you can add this
if exist "$(SolutionDir)Data\pkgtool.exe" ($(SolutionDir)Data\pkgtool.exe build --noLogo --binDir .) else if exist "%appdata%\UpTool2\Apps\0e35d154-d0d3-45e0-b080-62f521263a44\app\pkgtool.exe" ("%appdata%\UpTool2\Apps\0e35d154-d0d3-45e0-b080-62f521263a44\app\pkgtool.exe" build --noLogo --binDir .) else echo Cound not find Package build tools, skipping
as a PostBuild event to automatically run pkgtool. Customize this if you need to.
For GitHub actions I wrote this.
If you copy it, make sure to replace the descriptions and ID under the Generate XML step
You can also add something like this to your Readme: UpTool2
(Look at the source for the MD Code)

Folder layout

  • %APPDATA%\UpTool2
    • Apps
      • __APPGUID
        • info.xml Local copy of some app information, like this but missing ID, File, Hash, Platform and Icon
        • package.zip The package that was downloaded on install
        • app The app install path
          • __APPFILES Copy of the app files from above, may contain user-configs
    • info.xml File used by UpTool2 for saving info
      • Version The installed version. Not used anymore
      • Repos The list of package repos
        • __REPO A repository
          • Name The display name of the repository
          • Link The source of the repo xml
      • Local Repo A preprocessed copy of the online repos
        • __APP A normal app with the icon processed as Base64
    • Install The folder containing the actual tool
      • __ZIP CONTENTS The app files
      • tmp A temporary folder used during updates
        • __FILES FOR UPDATE The downloaded update files

Repo layout

  • repo The main repo tag
    • __APPLINK Links to external app XMLs
    • __REPOLINK Links to external repos
    • __APP Apps

App layout

  • app
    • Name Name of the application
    • Description Description that gets displayed on the right panel
    • Version Version for update checking, might get removed
    • ID The Guid used for identification
    • File A link to the package file
    • Hash The files SHA256 Hash
    • Icon The apps icon, (optional)
    • MainFile Main binary, used for starting, (optional)
    • Platform The platform this works on (optional, defaults to current)

Package layout

  • Install.bat The script for installing the app
  • Remove.bat The script for removing the app
  • Data The folder containing binaries
    • __APPFILES The binaries