This repository has been archived by the owner on Mar 4, 2022. It is now read-only.
-
Notifications
You must be signed in to change notification settings - Fork 0
/
README
141 lines (121 loc) · 7.25 KB
/
README
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
NOTE: On February 27th, 2022 the naming scheme for Proton-GE was changed enough
that this script is no longer compatible with both the old and the new naming schemes. I currently
do not have the time or motivation to do the substantial overhaul of this script that would be necessary
to bring it up to date. This project has long since served its purpose of being a learning resource for me
to learn Bash scripting and it was a lot of fun while it lasted. I started a new career which does not involve computing
roughly 6 months ago (8/31/21) and since then I no longer use Steam or Proton-GE for entertainment or otherwise.
Because the future of this project is unknown I will be archiving it after this last commit.
Please do not expect this script to be updated any time soon, if at all.
Please do not depend on this script for anything important.
Thank you and good luck!
ge-install-manager is a helper script with the
primary purpose of making managing your installations of
Proton-ge-custom (https://github.com/GloriousEggroll/proton-ge-custom) a breeze.
Basic installation:
Download ge-install-manager and run ./ge-install-manager -L to list releases available to install.
Run ge-install-manager -i <version> to install (eg. 5.9-GE-ST-8).
Quick installation:
Ensure the current working path is where you want ge-install-manager installed and then run:
CURL=curl; bash -c "$(eval $CURL -sL 'https://raw.githubusercontent.com/toazd/ge-install-manager/master/ge-install-manager' -o ge-install-manager; chmod +x ge-install-manager; ./ge-install-manager)"
NOTE: After installing Steam, you will need to run it at least once before
this script will detect that it is installed.
NOTE: Ubuntu users - you may need to install curl (sudo apt install curl -y).
NOTE: The script will check for all required commands and then notify you
if any are not found.
Distributions tested so far: Arch, Artix, Fedora Workstation, Gentoo, Manjaro, Manjaro XFCE, MX Linux,
Linux Mint, Linux Mint Debian Edition, Pop OS, Ubuntu
Shells tested so far: GNU Bash v5.0.18, v5.0.17, Zsh v5.8
Just in case you were wondering why someone would go to such great lengths to create such
a project it is because this project serves as a learning resource while practicing
Bash scripting.
Help:
Required: Bash 3.2+, curl, sed, tar, gzip, stat, wc, touch, file
Optional: date, du, pgrep, sort, cmp, envsubst, trash
-h - Show this help
-H - Show usage notes, formats, and examples
-l - List installed versions and saved packages
Saved package sizes are also checked (backports)
-L - List all releases available to install
-n <version> - Show release notes for <version>
Combined with -N, -n will be ignored
-N - Show release notes for all versions
-S - Report file count and disk usage of install path
-s <version> - Report file count and disk usage of <version>
-U - Check for and install the latest release
-u - Check for the latest release and report installed status
Combined with -U, -u will be ignored
-i <version> - Download and install <version>
-R <version> - Remove installed <version>
-r <version> - Remove saved package <version> (proton-ge tarball)
-V - Verify each installation using its saved package
Combined with -v, -V will be ignored
-v <version> - Verify <version> using its saved package
-d <version> - Download and save the package for <version>
-D - Remove cache and config files created by this script
To also remove all proton-ge-custom installations, use -XD.
-x - Remove all saved packages (proton-ge tarballs)
-X - Remove the entire install path
NOTE: Saved packages are currently stored in the installation path
-f - Force install, upgrade, or remove
Combined with -U and/or -i, remove saved package and download a new copy
-A - Automated mode (skip/disable certain prompts)
Skips prompting to edit a newly created config file
Skips prompt for creating a symlink to the script
-z - Enable verbose output mode (to stderr)
Format: (calling line)[function trace]: message
Usage:
Default config path: ${XDG_CONFIG_HOME:-"$HOME"/.config}/ge-install-manager
- Acceptable formats for <version> (case-insensitive):
5.9-GE-3-ST, Proton-5.9-GE-3-ST, Proton-5.9-GE-3-ST.tar.gz
- Most parameters can be combined with other unique parameters.
> NOTE: arguments must directly follow parameters that require arguments
Example (both produce the same result):
./ge-install-manager -Hh
./ge-install-manager -h -H
Result: Show help and then show usage
Example (both produce the same result):
./ge-install-manager -lSui 5.9-GE-3-ST
./ge-install-manager -lS -i 5.9-GE-3-ST -u
Result: Check for the latest version and install it,
install version 5.9-GE-3-ST, list installed versions, then
report file and disk usage for the install path
Example: (assume the latest version is 5.9-GE-3-ST)
./ge-install-manager -z -u -i Proton-5.11-GE-1-MF -Xf
Result: enable verbose mode, remove the installation path,
update to the latest version 5.9-GE-3-ST, and then install version 5.11-GE-1-MF.
Example (both produce the same result):
./ge-install-manager -s 5.6-GE-3-ST -S
./ge-install-manager -Ss 5.6-GE-3-ST
Result: report disk usage and file count for the install path,
and then report disk usage and file count for version 5.6-GE-3-ST
- The order of parameters is not significant except:
> If during invocation multiple identical parameters are supplied.
Example:
./ge-install-manager -s 5.11-GE-1-MF -s 5.9-GE-3-ST
Result: Only the right-most parameter and argument will be processed (-s 5.9-GE-3-ST).
- Order of operations if multiple unique parameters are supplied:
> NOTE: -h and/or -H, and -fzZ/-fzT will exit irrespective of other parameters
Show help,
Show usage,
Check for latest release,
Show all releases available,
Show release notes for all versions,
Show release notes for a version,
Remove install path,
Remove saved packages (if remove install path is not active),
Uninstall script (remove g_script_cache_path g_script_config_path),
Remove installed version (if remove install path is not active),
Remove saved package (if remove install path is not active),
Download,
Update,
Install,
List installed,
Report install path disk usage,
Report specific version disk usage
Verify
Version history:
v0.6.3 of ge-install-manager.sh is the initial upload (prior versions not tracked by any VCS)
v0.6.3 to v0.6.7 are in commit history for ge-install-manager.sh
(starting with commit aefa2a4ad2bf29de84e213f286db8337791218b5)
Commit history for ge-install-manager.sh:
(git log --all --full-history ge-install-manager.sh)