diff --git a/README.md b/README.md index 7279717..cd3e083 100644 --- a/README.md +++ b/README.md @@ -1,6 +1,7 @@ # My personal tools +**These tools were made by me for me so a lot of them have some very questionable decisions implemented such as embedding a lot of configuration files** -## cln +## [cln](https://git.site.quack-lab.dev/dave/synclib) **Create symbolic links given a custom set of commands** Mainly created out of frustration of windows ""symbolic"" links @@ -29,7 +30,7 @@ Example: Given its ability to read files for commands it can be used to manage a "standard" set of symbolic links -## fiter +## [fiter](https://git.site.quack-lab.dev/dave/fiter) **Iterate over files and rename them incrementally** Example: Given @@ -69,12 +70,12 @@ For such scenarios use `fiter -f ` This means that it can run on files that already have iterative names because none are being overwriten **It also means that, on failure, files are left as .bak** -## fmoditer +## [fmoditer](https://git.site.quack-lab.dev/dave/fmoditer) **Iterate over files and rename them to their mod time** Works pretty much the same way as *iter* with the exception of *-f* which is not supported by *fmoditer* -## vsclean +## [vsclean](https://git.site.quack-lab.dev/dave/vsclean) **"clean" vscode recent projects by deleting non existing entries and adding new folders** Reads given directories and adds all folders in directories to vscode's recent projects @@ -83,7 +84,7 @@ Doing this manually requires opening every folder one by one It also removes non existent entries from recent projects and recent files -## repo +## [repo](https://git.site.quack-lab.dev/dave/gitea-api) **Creates repositories on gitea and assigns them as "origin" on the git repository in working directory** The configuration of this tool is done through environmental variables: @@ -114,3 +115,37 @@ Usage of repo.exe: Name of the remote to create for the new repository (default "origin") ``` +## [autoruns](https://git.site.quack-lab.dev/dave/autoruns) +**Runs programs specified in *autoruns.json* (at compile time)** + +This tool is meant to replace windows autoruns and is meant to be magnitudes faster than windows autoruns +note: autoruns is specifically embedded as to not have to drag *autoruns.json* across multiple directories +It also supports automatically hiding/closing windows and running only programs that are not already running +See sample *autoruns.json* in repository of the tool +Supported json fields are: +```go +Entry struct { + Name string `json:"name"` + // ^ only used for logging + Path string `json:"path"` + // ^ path to the program being run + Disabled bool `json:"disabled"` + // ^ all entries are enabled by default other than the ones with "disabled": "true" + Procname string `json:"procname"` + // ^ used for detection to determine whether or not the entry has to be run + Procs []string `json:"procs"` + // ^ (optional) used for scanning for additional processes before executing actions, some programs start multiple processes as children of the main process and some start multiple processes independently + ProcsAction string `json:"procsaction"` + // ^ (optional) specifies the action to apply specifically and only to procs + Flags []string `json:"flags"` + // ^ (optional) command line arguments to pass to executable when starting + Workdir string `json:"workdir"` + // ^ (optional) workdir in which to start the program + Action string `json:"action"` + // ^ (optional) what to do with the program on startup (supported are hide/close/click) + ActionParams []string `json:"actionparams"` + // ^ (optional) parameters for actions, currently used only for click, see example in autoruns.json + ActionDelay int `json:"actiondelay"` + // ^ (optional) amount of time (in milliseconds) to wait before running action on program startup +} +``` \ No newline at end of file diff --git a/autoruns.exe b/autoruns.exe new file mode 100644 index 0000000..765405d Binary files /dev/null and b/autoruns.exe differ diff --git a/sync b/sync index 2c147f3..c0b5f48 100644 --- a/sync +++ b/sync @@ -2,4 +2,5 @@ "C:\Users\Administrator\Seafile\Projects-Go\GoProjects\fmoditer\main.exe",fmoditer.exe,t "C:\Users\Administrator\Seafile\Projects-Go\GoProjects\project-scanner\main.exe",vsclean.exe,t "C:\Users\Administrator\Seafile\Projects-Go\GoProjects\synclib\main.exe",cln.exe,t -"C:\Users\Administrator\Seafile\Projects-Go\GoProjects\gitea-api\main.exe",repo.exe,t \ No newline at end of file +"C:\Users\Administrator\Seafile\Projects-Go\GoProjects\gitea-api\main.exe",repo.exe,t +"C:\Users\Administrator\Seafile\Projects-Go\GoProjects\autoruns\main.exe",autoruns.exe,t \ No newline at end of file diff --git a/sync2bin b/sync2bin index 7598796..66ba21d 100644 --- a/sync2bin +++ b/sync2bin @@ -2,4 +2,6 @@ fiter.exe,"C:\Program Files\Git\usr\bin\fiter.exe" fmoditer.exe,"C:\Program Files\Git\usr\bin\fmoditer.exe" vsclean.exe,"C:\Program Files\Git\usr\bin\vsclean.exe" cln.exe,"C:\Program Files\Git\usr\bin\cln.exe" -repo.exe,"C:\Program Files\Git\usr\bin\repo.exe" \ No newline at end of file +repo.exe,"C:\Program Files\Git\usr\bin\repo.exe" +autoruns.exe,"~\AppData\Roaming\Microsoft\Windows\Start Menu\Programs\Startup\Autoruns.exe" +autoruns.exe,"C:\Program Files\Git\usr\bin\Autoruns.exe" \ No newline at end of file