The legendary update script rewritten in C# https://gitea.hopeless-cloud.xyz/AustrianToast/update
Go to file
ProfessionalUwU eb2b1edf29 Seperated Zip steps into seperate functions && Added file comparison && Now using /tmp for file operations && Experimental color output && Added extra file and directory logic
Seperated Pacman Database into it's own function so that when the function is called two times it doesn't actually do it.
Added a way to compare two files by reading every byte and then checking if it's the same or not.
For convenience sake the /tmp directory will be used for all temporary file operations like compressing.
Color output is going great. Looks pretty nice.
Before doing anything file related all functions check if the necessary directory exists.
2023-01-14 04:03:43 +01:00
.gitignore Shell command test 2022-12-02 21:21:45 +01:00
LICENSE Add README.md && LICENSE 2022-12-02 21:54:55 +01:00
Program.cs Seperated Zip steps into seperate functions && Added file comparison && Now using /tmp for file operations && Experimental color output && Added extra file and directory logic 2023-01-14 04:03:43 +01:00
README.md Seperated Zip steps into seperate functions && Added file comparison && Now using /tmp for file operations && Experimental color output && Added extra file and directory logic 2023-01-14 04:03:43 +01:00
Update.cs Seperated Zip steps into seperate functions && Added file comparison && Now using /tmp for file operations && Experimental color output && Added extra file and directory logic 2023-01-14 04:03:43 +01:00
update.csproj Added compression && changed directory structure 2023-01-13 14:28:52 +01:00

update-c#

A rewrite of the legendary update script in C#

This time with file handling entirely in C# while keeping all scripting parts in bash.

Authors

Run Locally

Clone the project

  git clone http://192.168.0.69:3000/ProfessionalUwU/update-csharp.git

Go to the project directory

  cd update-csharp

Install dependencies

  pacman -S dotnet-runtime dotnet-sdk

Build project

  dotnet build update.csproj 

Publish project

  dotnet publish --configuration Release --arch x64 --use-current-runtime --self-contained 

Go to the publish folder

  cd update-csharp/bin/Release/net7.0/linux-x64/publish

Run executable

  ./update

Roadmap/ToDo

  • Figure out how to do options/arguments
  • Backup all necessary files
  • Hopefully shrink size of the executable
  • Potentially speed up file handling
  • Color output according to state (success = green, failure = red, info = yellow)
  • Option to change backup location (instead of home)
  • Keep backups for a configurable amount of days

Sites I used to help make this project

Contributing

Contributions are always welcome!