213 Commits

Author SHA1 Message Date
lw-everestlinux
84ec22f0bd 10/13/22 2022-10-13 09:31:43 -04:00
lw-everestlinux
b97f0337de (FINALLY) add positional arguments 2022-10-10 21:59:36 -04:00
lw-everestlinux
27ec12f373 Add hooks.sh for legacy usrpkgs 2022-10-07 11:40:00 -04:00
lw-everestlinux
6dbb63378e Glacier v3.0.0-rc.1 2022-10-06 20:16:48 -04:00
lw-everestlinux
2be842a411 Temporarily rolled back integrity checking 2022-09-06 13:57:54 -04:00
lw-everestlinux
5688b4753d v2.3.0 - package integrity checking 2022-09-06 13:54:31 -04:00
lw-everestlinux
b5c28dd802 v2.3.0 - Package integrity checking 2022-09-06 12:44:28 -04:00
lw-everestlinux
0807a13286 v2.3.0 - Package integrity checking 2022-09-06 12:34:32 -04:00
lw-everestlinux
22e368c5fa Glacier v2.2.3 - Improved help message output 2022-08-26 18:50:39 -04:00
lw-everestlinux
3c4919cf0c Glacier v2.2.3 - Made the help message look nice and pretty 2022-08-26 18:45:25 -04:00
lw-everestlinux
ebe5e3930e Add tarball for ELIF installation (actually fixed this time unlike last time) 2022-08-26 18:30:08 -04:00
9c529d1ab2 Add 'REPORTING.md' 2022-08-17 16:19:07 -04:00
lw-everestlinux
3b3d5ab369 Add tarball for ELIF installation (fixed version) 2022-08-17 16:03:18 -04:00
8c1f892e2c Add tarball for ELIF script 2022-08-17 15:50:09 -04:00
e117737527 Update 'install/INSTALL-GLACIER.sh' 2022-08-08 22:17:53 -04:00
69a5f0444a Update 'README.md' 2022-08-08 22:09:41 -04:00
lw-everestlinux
fd6e494314 Glacier v2.2.2 - minor bug fixes 2022-07-26 14:03:14 -04:00
4d65c0fb9e Update 'scripts/glacier' 2022-07-23 16:55:18 -04:00
57505be3a2 Update 'scripts/glacier' 2022-07-23 16:52:21 -04:00
0f94ed93b6 Update 'scripts/glacier' 2022-07-23 16:46:54 -04:00
eeac5ed390 Update 'scripts/glacier' 2022-07-23 16:46:28 -04:00
lw-everestlinux
b5faa209f2 v2.2.1 - Added new option: --showDebugInfo 2022-07-23 16:44:30 -04:00
1682faa871 Update 'scripts/glacier' 2022-07-23 13:00:43 -04:00
aa0c1ff1ac Update 'scripts/glacier' 2022-07-23 12:57:54 -04:00
863d361e98 Update 'README.md' 2022-07-14 14:42:49 -04:00
a09bbcaa6b Glacier v2.2 - Customizable download backend 2022-07-14 14:40:08 -04:00
1e2e514b49 Update 'install/INSTALL-GLACIER.sh' 2022-06-24 18:00:09 -04:00
d5122b918b Update 'README.md' 2022-06-21 18:15:51 -04:00
cfd90804fe Update 'README.md' 2022-06-21 18:15:28 -04:00
8749f46706 Update 'scripts/glacier.conf' 2022-06-21 18:14:13 -04:00
everest
5beabdbca4 Update README.md 2022-06-16 14:56:04 +00:00
everest
faf8fe7ec8 Update glacier 2022-06-16 14:52:38 +00:00
everest
efada985df Update glacier 2022-06-16 14:51:15 +00:00
everest
73daf1bfbb Update README.md 2022-06-13 17:24:11 +00:00
everest
d751e25f59 Update glacier 2022-06-10 14:07:03 +00:00
everest
343a7c1285 Update glacier 2022-06-10 14:06:21 +00:00
everest
a80d75b5ef Update glacier 2022-06-10 14:03:44 +00:00
everest
f123f98fd6 Update README.md 2022-06-10 13:00:53 +00:00
everest
0b645bd629 Update glacier 2022-06-10 12:58:44 +00:00
everest
17cdc140bb Update glacier.conf 2022-06-10 12:55:32 +00:00
everest
fdc4014672 Update README.md 2022-06-10 12:54:40 +00:00
everest
749b77dcd8 Update glacier 2022-06-09 14:05:35 +00:00
everest
b4749dc30b Update glacier 2022-06-08 16:37:32 +00:00
everest
975ad4fcd2 Update glacier 2022-06-08 16:36:52 +00:00
everest
de61a35eef Update glacier 2022-06-08 12:57:46 +00:00
everest
7caa78f3dd Update glacier 2022-06-08 12:54:50 +00:00
everest
089fe7d668 Update README.md 2022-06-08 12:54:36 +00:00
everest
2b062b9a3d Update glacier 2022-06-08 12:54:10 +00:00
everest
b6aa112bd1 Update glacier 2022-06-08 12:01:20 +00:00
everest
5fe0e37d68 Update glacier 2022-06-08 11:56:31 +00:00
everest
e7ae67d256 Update glacier 2022-06-07 14:43:25 +00:00
everest
34327f5d08 Update README.md 2022-06-06 17:13:26 +00:00
everest
014a8c82a9 Update hooks.sh 2022-06-06 14:59:08 +00:00
everest
983f98d1a0 Update glacier 2022-06-03 12:57:22 +00:00
everest
752ff88e76 Update glacier 2022-06-02 14:44:50 +00:00
everest
b53666a47d Update glacier 2022-06-01 15:34:41 +00:00
everest
49475014da Update glacier 2022-06-01 15:32:04 +00:00
everest
2df34b663d Update README.md 2022-06-01 14:03:43 +00:00
everest
16657923ad Update README.md 2022-05-31 17:54:00 +00:00
everest
5336379812 Add files via upload 2022-05-31 13:20:51 +00:00
everest
683626ed85 Delete hooks.sh 2022-05-31 13:20:35 +00:00
everest
88d836f4ec Delete glacier.conf 2022-05-31 13:20:29 +00:00
everest
b8dbfec436 Delete README.md 2022-05-31 13:20:22 +00:00
everest
91bd0a6806 Delete LICENSE 2022-05-31 13:20:14 +00:00
everest
8ef2dd8bf7 Delete scripts directory 2022-05-31 13:20:03 +00:00
everest
8118597e51 Delete install directory 2022-05-31 13:19:54 +00:00
everest
0c8862f7b0 Update README.md 2022-05-31 13:13:56 +00:00
everest
40ee42ce9b Update README.md 2022-05-27 18:20:06 +00:00
everest
b2e8ec0b9e Update glacier-help.sh 2022-05-27 18:18:40 +00:00
everest
de0f023009 Update README.md 2022-05-27 18:18:03 +00:00
everest
1af0eeccb1 Update glacier-remove.sh 2022-05-27 18:11:14 +00:00
everest
c14ef72f62 Update glacier-update.sh 2022-05-27 18:10:27 +00:00
everest
797f942301 Update glacier-remove.sh 2022-05-27 18:10:12 +00:00
everest
f5b99b1efe Update glacier-cache-clear.sh 2022-05-27 18:09:40 +00:00
everest
f9fe4831e5 Update glacier-cache-install.sh 2022-05-27 18:09:12 +00:00
everest
58ad767e30 Update glacier-cache.sh 2022-05-27 18:08:54 +00:00
everest
d38cf63cd1 Update glacier-install.sh 2022-05-27 18:07:04 +00:00
everest
f6742f5a3e Update INSTALL-GLACIER.sh 2022-05-27 18:06:39 +00:00
everest
33d1d962b7 Create hooks.sh 2022-05-27 18:05:41 +00:00
everest
7e505404a6 Update README.md 2022-05-17 18:07:26 +00:00
everest
12cfa49d20 Update README.md 2022-05-17 14:14:28 +00:00
everest
110c8fcd21 Update README.md 2022-05-10 12:23:59 +00:00
everest
f3778f7ea4 Update glacier-help.sh 2022-05-10 12:22:01 +00:00
everest
9e9f705fa3 Update glacier-cache.sh 2022-05-06 14:02:35 +00:00
everest
ed024fdab0 Update glacier-update.sh 2022-05-06 14:02:09 +00:00
everest
e0ce15a616 Update glacier-remove.sh 2022-05-06 14:01:47 +00:00
everest
bcf274a714 Update glacier-install.sh 2022-05-06 14:01:25 +00:00
everest
a82e25c980 Update glacier-help.sh 2022-05-06 11:51:19 +00:00
everest
2f21ad528f Update glacier-help.sh 2022-05-05 14:23:09 +00:00
everest
47f2dddd46 Update WGET-INSTALL.sh 2022-05-05 14:11:26 +00:00
everest
94154b0bf2 Delete multirepo-test 2022-05-04 14:50:52 +00:00
everest
09b3305b1b Update README.md 2022-05-03 21:25:48 +00:00
everest
0628947fcc Update glacier-cache-clear.sh 2022-05-03 21:25:04 +00:00
everest
637b4b50d1 Update glacier-cache.sh 2022-05-03 21:24:20 +00:00
everest
7deb3bbb60 Update glacier-update.sh 2022-05-03 21:23:53 +00:00
everest
114757443d Update glacier-remove.sh 2022-05-03 21:23:35 +00:00
everest
a4627aa1ed Update glacier-install.sh 2022-05-03 20:46:49 +00:00
everest
9c8c686bf3 Add files via upload 2022-05-03 20:41:48 +00:00
everest
c67ea416d3 Update glacier.conf 2022-05-03 20:41:17 +00:00
everest
167bfce674 Update glacier.conf 2022-05-03 17:30:23 +00:00
everest
1188467cd0 Update glacier-cache.sh 2022-05-03 16:54:09 +00:00
everest
6048a99fb2 Update glacier-update.sh 2022-05-03 15:40:50 +00:00
everest
bdf412eab6 Update glacier-remove.sh 2022-05-03 15:39:18 +00:00
everest
0e616b6771 Update glacier-install.sh 2022-05-03 15:37:28 +00:00
everest
12bb41baae Update README.md 2022-05-03 15:33:27 +00:00
everest
37b2d829e3 Update glacier-help.sh 2022-05-02 16:53:21 +00:00
everest
dd017d57d1 Update glacier-help.sh 2022-05-02 16:51:51 +00:00
everest
c83c6a6cbc Update glacier-cache-clear.sh 2022-05-02 16:43:14 +00:00
everest
81b2247840 Update glacier-cache-install.sh 2022-05-02 16:42:39 +00:00
everest
3eaa78fc18 Update glacier-cache.sh 2022-05-02 16:42:08 +00:00
everest
9739ea56af Update glacier-query.sh 2022-05-02 16:41:49 +00:00
everest
b134177b9e Update glacier-remove.sh 2022-05-02 16:41:34 +00:00
everest
4085450712 Update glacier-update.sh 2022-05-02 16:41:19 +00:00
everest
b555f13f71 Update glacier-install.sh 2022-05-02 16:40:57 +00:00
everest
af551c95ee Update README.md 2022-04-29 14:33:56 +00:00
everest
41191edda5 Update glacier-install.sh 2022-04-26 13:57:10 +00:00
everest
489f11e718 Update INSTALL-GLACIER.sh 2022-04-20 19:47:13 +00:00
everest
3101ad6d6e Update README.md 2022-04-20 19:44:53 +00:00
everest
f65684c0fd Update glacier-query.sh 2022-04-20 19:44:06 +00:00
everest
143aa68687 Update glacier.conf 2022-04-20 19:41:19 +00:00
everest
1b446e7096 Update glacier-cache-clear.sh 2022-04-20 19:40:25 +00:00
everest
6b3ee3f6e5 Update glacier-cache-install.sh 2022-04-20 19:39:04 +00:00
everest
b1ba7830a7 Update glacier-cache.sh 2022-04-20 19:36:05 +00:00
everest
d64f208f1a Update glacier-update.sh 2022-04-20 19:31:16 +00:00
everest
61e3c1b9a3 Update glacier-update.sh 2022-04-20 19:30:40 +00:00
everest
4f92bbebcc Update glacier-remove.sh 2022-04-20 19:22:39 +00:00
everest
b70d0070d0 Update glacier-install.sh 2022-04-20 19:13:05 +00:00
everest
40c11082bf Update README.md 2022-04-20 19:11:47 +00:00
everest
3d5c4e0cf3 Update glacier-install.sh 2022-04-20 19:10:13 +00:00
everest
6f2576170e Update glacier-install.sh 2022-04-20 19:05:26 +00:00
everest
65662a51e7 Update glacier-install.sh 2022-04-20 19:03:59 +00:00
everest
37cccd709b Update glacier-install.sh 2022-04-20 19:00:52 +00:00
everest
6c0a7ded21 Update glacier-install.sh 2022-04-20 19:00:36 +00:00
everest
1ff803c044 Update glacier-install.sh 2022-04-19 17:44:36 -04:00
everest
18cd53cbce Update glacier-install.sh 2022-04-19 21:20:32 +00:00
everest
480e8fe243 Update README.md 2022-04-13 14:34:02 +00:00
everest
7384bb3126 Update glacier-cache.sh 2022-04-12 20:46:59 +00:00
everest
4a6010ac0e Update glacier-update.sh 2022-04-12 20:46:13 +00:00
everest
6b2e9c9167 Update glacier-remove.sh 2022-04-12 20:43:51 +00:00
everest
a9c50a2c69 Update glacier-install.sh 2022-04-12 20:41:35 +00:00
everest
c122f5c616 Update glacier-install.sh 2022-04-12 20:39:37 +00:00
everest
d3b7c2585a Update INSTALL-GLACIER.sh 2022-04-12 20:31:56 +00:00
everest
a720c23349 Update INSTALL-GLACIER.sh 2022-04-12 16:44:06 +00:00
everest-linux
11ac289950 0.7rc 2022-04-12 16:42:14 +00:00
everest-linux
e55679d379 0.7rc 2022-04-12 16:38:01 +00:00
everest
ecae5c90ad Create WGET-INSTALL.sh 2022-04-08 16:51:33 +00:00
everest
3fc83bc766 Update glacier-update.sh 2022-04-08 16:02:42 +00:00
everest
bac21d1925 Update glacier-remove.sh 2022-04-08 15:58:23 +00:00
everest
0b2d3e0e2f Update glacier-remove.sh 2022-04-05 15:08:08 +00:00
everest
cdfba90742 Update glacier-cache-install.sh 2022-04-05 15:06:40 +00:00
everest
de9dbf0918 Update glacier-query.sh 2022-04-05 15:05:07 +00:00
everest
66c7e0beb8 Update glacier-update.sh 2022-04-05 15:03:30 +00:00
everest
c2355528c4 Update glacier-install.sh 2022-04-05 15:02:18 +00:00
everest
ce6904a236 Update README.md 2022-04-05 15:00:49 +00:00
everest
241e1f543e Update UNINSTALL-GLACIER.sh 2022-04-05 13:49:32 +00:00
everest
dbfa201253 Update INSTALL-GLACIER.sh 2022-04-05 13:47:19 +00:00
everest
a8c1675e14 Update README.md 2022-03-31 13:10:53 +00:00
everest
d545cef36d Update README.md 2022-03-30 12:45:08 +00:00
everest
fea857a8e5 Update README.md 2022-03-30 12:34:29 +00:00
everest
afeddfdeda Update glacier-cache-clear.sh 2022-03-29 16:19:26 +00:00
everest
f27646242a Update glacier-cache-install.sh 2022-03-29 11:48:00 +00:00
everest
f8ef09df29 Update glacier-cache.sh 2022-03-28 21:25:24 +00:00
everest
1c498e9553 Update INSTALL-GLACIER.sh 2022-03-28 21:21:53 +00:00
everest
ea3ea66f2d Update glacier-help.sh 2022-03-28 21:18:44 +00:00
everest
dfc44a179a Update README.md 2022-03-28 21:12:37 +00:00
everest
b40e3e55cf Create glacier-cache-clear.sh 2022-03-28 21:11:21 +00:00
everest
0d6b9fcbc0 Create glacier-cache-install.sh 2022-03-28 21:09:56 +00:00
everest
85c3169139 Update glacier-update.sh 2022-03-28 21:04:33 +00:00
everest
5597383b6c Update glacier-install.sh 2022-03-28 21:03:37 +00:00
everest
1b7f0699e3 Create glacier-cache.sh 2022-03-28 21:03:16 +00:00
everest
3643b20cc1 Update UNINSTALL-GLACIER.sh 2022-03-28 20:53:09 +00:00
everest
5b451429ff Update INSTALL-GLACIER.sh 2022-03-28 20:50:37 +00:00
everest
99d6b8a9e4 Update README.md 2022-03-28 15:40:00 +00:00
everest
3dc076e7cd Update README.md 2022-03-28 15:39:34 +00:00
everest
89c8a66edf Update README.md 2022-03-28 15:28:14 +00:00
everest
5c3c31b70d Update glacier-remove.sh 2022-03-28 15:22:02 +00:00
everest
59cbc4c4b4 Update glacier-update.sh 2022-03-28 15:18:37 +00:00
everest
999da41b24 Update glacier-install.sh 2022-03-24 13:47:51 +00:00
everest
d13c54df8d Update glacier-install.sh 2022-03-24 13:46:14 +00:00
everest
3532e3c0cd Update glacier-install.sh 2022-03-24 13:41:39 +00:00
everest
4c742b675d Update glacier-install.sh 2022-03-24 13:40:21 +00:00
everest
2f0161baac Update INSTALL-GLACIER.sh 2022-03-24 13:38:32 +00:00
everest
8d61a9b07e Update glacier-install.sh 2022-03-24 13:37:45 +00:00
everest
ecfefffd87 Update README.md 2022-03-23 18:14:31 +00:00
everest
2c0dde990b Update README.md 2022-03-17 13:17:20 +00:00
everest
3668844cb6 Update README.md 2022-03-16 23:32:33 +00:00
everest
002ad51ee8 Update glacier-install.sh 2022-03-16 23:22:21 +00:00
everest
1f76be2199 Update glacier-install.sh 2022-03-16 23:20:22 +00:00
everest
544f1e00f1 Update glacier-install.sh 2022-03-16 23:18:09 +00:00
everest
aab61f1bde Update glacier-install.sh 2022-03-16 23:15:22 +00:00
everest
65dc8a31ef Update README.md 2022-03-11 15:15:53 -05:00
everest
0b3d502f37 Update README.md 2022-03-11 15:15:27 -05:00
everest
3d753bcec3 Update README.md 2022-03-10 17:36:20 +00:00
everest
1ffb79e849 Update glacier-query.sh 2022-03-10 17:29:47 +00:00
everest
d7bb7320a0 Update glacier-update.sh 2022-03-10 17:29:06 +00:00
everest
a9f125a2ab Update glacier-remove.sh 2022-03-10 17:27:51 +00:00
everest
8a21e53041 Update glacier-install.sh 2022-03-10 17:23:12 +00:00
everest
2d466f47cb Update glacier-install.sh 2022-03-10 17:19:01 +00:00
everest
0311d859c9 Update UNINSTALL-GLACIER.sh 2022-03-10 17:09:10 +00:00
everest
554bf6724f Update UNINSTALL-GLACIER.sh 2022-03-10 16:54:52 +00:00
everest
e3162699c0 Update UNINSTALL-GLACIER.sh 2022-03-09 22:42:58 +00:00
everest
5ab3b73ec0 Update UPDATE-GLACIER.sh 2022-03-09 22:42:35 +00:00
everest
25ae7889bb Update INSTALL-GLACIER.sh 2022-03-09 22:41:54 +00:00
everest
f76856aa1d Create UNINSTALL-GLACIER.sh 2022-03-09 22:40:37 +00:00
everest
f18c602dab Create UPDATE-GLACIER.sh 2022-03-09 22:39:53 +00:00
everest
a3cc13e0ef release 0.1rc 2022-03-09 22:01:26 +00:00
everest
41b095a399 Delete glacier-install.sh 2022-03-09 22:00:09 +00:00
everest
f49c641245 Add files via upload 2022-03-09 13:54:58 +00:00
everest
0c8967c637 Delete glacier-install.sh 2022-03-09 13:54:46 +00:00
everest
cc1e89bf51 Add files via upload 2022-03-09 13:52:14 +00:00
everest
98406ad3b5 Delete glacier-install.sh 2022-03-09 13:49:49 +00:00
everest
f23b755981 Add files via upload 2022-03-09 01:32:41 +00:00
everest
cc916a54ed Delete glacier-install.sh 2022-03-09 01:32:28 +00:00
13 changed files with 532 additions and 19 deletions

View File

@@ -1,6 +1,3 @@
# Glacier
Glacier is the package manager developed for Everest Linux. It automatically fetches a tarball, unzips it, and compiles it.
# glacier3
For Glacier to work properly, it needs the following directories to be made:
`/usr/local/lib/glacier/packages`
Glacier3 is a testing ground for the upcoming Glacier rewrite

6
TODO Normal file
View File

@@ -0,0 +1,6 @@
### TODO LIST ###
#- fix messages not printing (ASAP)
#- fix archives not downloading
# /usr/bin/gscripts: line 37: /nano.tar.gz: No such file or directory
#- Colors not printing

View File

@@ -1,14 +0,0 @@
#!/bin/sh
# glacier-install
# Script used to fetch installation scripts and run them
echo "[ ? ] Enter package name:" && read input
echo "[ i ] Downloading source tarball for $input..."
wget https://github.com/everest-linux/glacier-pkgs/raw/main/pkgs/$input.tar.gz
echo "[ i ] Unpacking $input.tar.gz..."
tar -xvf $input.tar.gz
cd $input
chmod +x INSTALL.sh
./INSTALL.sh
rm $input.tar.gz
echo "Done."

24
install/install.sh Executable file
View File

@@ -0,0 +1,24 @@
#!/bin/sh
if [[ $(/usr/bin/id -u) -ne 0 ]]; then
printf " [ * ] Installation Script must be run as root.\n"
exit 0
fi
# Create directories
mkdir /etc/glacier
mkdir /etc/glacier/pkginfo
mkdir /var/log/glacier
mkdir /var/cache/glacier
# Install Scripts
cd ../src
chmod +x *
cp glacier /usr/bin/glacier
cp glacier.conf /etc/glacier.conf
cp glacier_release /etc/glacier/glacier_release
cp gscripts /usr/bin/gscripts
cp messages /etc/glacier/messages
cp hooks /etc/glacier/hooks
printf "done\n"

9
src/INSTALL_LOCATIONS Normal file
View File

@@ -0,0 +1,9 @@
=== Executables ===
/usr/bin/glacier
/usr/bin/gscripts
=== Settings/Other files ===
/etc/glacier/glacier_release
/etc/glacier/hooks
/etc/glacier.conf
/etc/make.conf

289
src/glacier Executable file
View File

@@ -0,0 +1,289 @@
#!/bin/sh
# Glacier - A simple package management system written in POSIX sh
# Copyright (C) 2022 Everest Linux Development Group
#
# This program is free software: you can redistribute it and/or modify
# it under the terms of the GNU 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 General Public License for more details.
#
# You should have received a copy of the GNU General Public License
# along with this program. If not, see <https://www.gnu.org/licenses/>.
# Preloading
/usr/bin/gscripts preload
source $(pwd)/messages # this is here for the sole purpose of testing
source /etc/glacier/messages
input = ${2}
# Main Script
while [[ $# -gt 0 ]]; do
case $1 in
-h|--help)
printf "$blue [ * ] Glacier - Manage packages on the system [ * ] $reset\n"
printf "$blue=== Information ====================================================================================$reset\n"
printf "$ glacier {-h --help} show this message and exit\n"
printf "$ glacier {--version} display the current Glacier version and exit\n"
printf "$blue=== Package Operations =============================================================================$reset\n"
printf "# glacier {install -f} install a package to the system\n"
printf "# glacier {update -u} update an installed package\n"
printf "# glacier {remove -x} remove an installed package\n"
printf "$ glacier {query -q} query the information of an installed package\n"
printf "# glacier {cache -c} cache a package from the repositories\n"
printf "# glacier {cache-install -ci} install a cached package\n"
printf "# glacier {cache-clear -cc} clear the package cache\n"
printf "$blue=== Debugging ======================================================================================$reset\n"
printf "$ glacier {--showDebugInfo} show debugging info\n"
printf "$blue=== Licensing ======================================================================================$reset\n"
printf "This program is freely distributable under the terms of the\n"
printf "GNU General Public License version 3 or later.\n"
printf "You should have recieved a copy of the GNU General Public License\n"
printf "along with this program. If not, see <https://www.gnu.org/licenses/>.\n"
printf "$blue======================================================================================================\n"
exit 0
;;
--version)
printf "$blue Glacier v$GLACIER_RELEASE $reset\n"
exit 0
;;
install|-f)
# Require script to be run as root
if [[ $(/usr/bin/id -u) -ne 0 ]]; then
echo $GLACIER_ERROR_NO_ROOT
exit 1
fi
echo $GLACIER_STATUS_INSTALLING
/usr/bin/gscripts download
if [ "$?" != "0" ]; then
echo $GLACIER_ERROR_DOES_NOT_EXIST
exit 1
fi
echo $GLACIER_STATUS_INTEGRITY_CHECK
mkdir $2 && mv $2.tar.gz $2 && cd $2
/usr/bin/gscripts integrity-check
if [ "$?" != "0" ]; then
exit 1
fi
echo $GLACIER_STATUS_UNPACKING
tar -xvf $2.tar.gz
if [ "$?" != "0" ]; then
echo $GLACIER_ERROR_CANNOT_UNPACK
exit 1
fi
chmod +x INSTALL.sh
chmod +x $2.ts.sh
echo $GLACIER_STATUS_EXECUTING
./INSTALL.sh
if [ "$?" != "0" ]; then
echo $GLACIER_ERROR_INSTRUCTIONS_CANNOT_EXECUTE
exit 1
fi
./$2.ts.sh
/usr/bin/gscripts post-install
echo $GLACIER_SUCCESS
exit 0
;;
update|-u)
# Require script to be run as root
if [[ $(/usr/bin/id -u) -ne 0 ]]; then
echo $GLACIER_ERROR_NO_ROOT
exit 1
fi
echo $GLACIER_STATUS_UPDATING
/usr/bin/gscripts download
if [ "$?" != "0" ]; then
echo $GLACIER_ERROR_DOES_NOT_EXIST
exit 1
fi
echo $GLACIER_STATUS_INTEGRITY_CHECK
mkdir $2 && mv $2.tar.gz $2 && cd $2
/usr/bin/gscripts integrity-check
if [ "$?" != "0" ]; then
exit 1
fi
echo $GLACIER_STATUS_UNPACKING
tar -xvf $2.tar.gz
if [ "$?" != "0" ]; then
echo $GLACIER_ERROR_CANNOT_UNPACK
exit 1
fi
chmod +x UPDATE.sh
chmod +x $2.ts.sh
echo $GLACIER_STATUS_EXECUTING
./UPDATE.sh
if [ "$?" != "0" ]; then
echo $GLACIER_ERROR_INSTRUCTIONS_CANNOT_EXECUTE
exit 1
fi
./$2.ts.sh
/usr/bin/gscripts post-install
echo $GLACIER_SUCCESS
exit 0
;;
remove|-x)
# Require script to be run as root
if [[ $(/usr/bin/id -u) -ne 0 ]]; then
echo $GLACIER_ERROR_NO_ROOT
exit 1
fi
echo $GLACIER_STATUS_REMOVING
/usr/bin/gscripts download
if [ "$?" != "0" ]; then
echo $GLACIER_ERROR_DOES_NOT_EXIST
exit 1
fi
echo $GLACIER_STATUS_INTEGRITY_CHECK
mkdir $2 && mv $2.tar.gz $2 && cd $2
/usr/bin/gscripts integrity-check
if [ "$?" != "0" ]; then
exit 1
fi
echo $GLACIER_STATUS_UNPACKING
tar -xvf $2.tar.gz
if [ "$?" != "0" ]; then
echo $GLACIER_ERROR_CANNOT_UNPACK
exit 1
fi
chmod +x REMOVE.sh
chmod +x $2.ts.sh
echo $GLACIER_STATUS_EXECUTING
./REMOVE.sh
if [ "$?" != "0" ]; then
echo $GLACIER_ERROR_INSTRUCTIONS_CANNOT_EXECUTE
exit 1
fi
./$2.ts.sh
/usr/bin/gscripts post-install
echo $GLACIER_SUCCESS
exit 0
;;
query|-q)
cat /etc/glacier/pkginfo/$2-pkginfo.json
cat /var/log/glacier/$2.timestamp
if [ "$?" != "0" ]; then
echo $GLACIER_ERROR_NOT_INSTALLED
exit 1
fi
exit 0
;;
cache|-c)
if [[ $(/usr/bin/id -u) -ne 0 ]]; then
echo $GLACIER_ERROR_NO_ROOT
exit 1
fi
echo $GLACIER_STATUS_CACHING
/usr/bin/gscripts download
if [ "$?" != "0" ]; then
echo $GLACIER_ERROR_DOES_NOT_EXIST
exit 1
fi
echo $GLACIER_STATUS_INTEGRITY_CHECK
mv $2.tar.gz /var/cache/glacier && cd /var/cache/glacier
/usr/bin/gscripts integrity-check
if [ "$?" != "0" ]; then
exit 1
fi
echo $GLACIER_SUCCESS
exit 0
;;
cache-install|-ci)
if [[ $(usr/bin/id -u) -ne 0 ]]; then
echo $GLACIER_ERROR_NO_ROOT
exit 1
fi
echo $GLACIER_STATUS_INSTALLING
cd /var/cache/glacier && cp $2.tar.gz /tmp && cd /tmp
if [ "$?" != "0" ]; then
echo $GLACIER_ERROR_NOT_IN_CACHE
exit 1
fi
echo $GLACIER_STATUS_UNPACKING
mkdir $2 && mv $2.tar.gz $2 && cd $2
tar -xvf $2.tar.gz
if [ "$?" != "0" ]; then
echo $GLACIER_ERROR_CANNOT_UNPACK
exit 1
fi
echo $GLACIER_STATUS_EXECUTING
chmod +x INSTALL.sh
chmod +x $2.ts.sh
./INSTALL.sh
if [ "$!" != "0" ]; then
echo $GLACIER_ERROR_INSTRUCTIONS_CANNOT_EXECUTE
exit 1
fi
./$2.ts.sh
/usr/bin/gscripts post-install
echo $GLACIER_SUCCESS
exit 0
;;
cache-clear|-cc)
if [[ $(/usr/bin/id -u) -ne 0 ]]; then
echo $GLACIER_ERROR_NO_ROOT
exit 1
fi
echo $GLACIER_STATUS_CLEARING
cd /var/cache/glacier && rm -rf *
echo $GLACIER_SUCCESS
exit 0
;;
--showDebugInfo)
printf "$blue Glacier v$GLACIER_RELEASE $reset\n"
printf ">> Checking for a viable download backend...\n"
whereis wget
whereis curl
whereis aria2c
printf ">> Checking which download backend is in use...\n"
echo $GLACIER_DOWNLOAD_BACKEND
printf ">> Checking if all Glacier directories and files are present...\n"
ls /etc | grep glacier
ls /etc/glacier
whereis make.conf
printf ">> If any files are missing, especially make.conf, Glacier will behave abnormally.\n"
printf ">> Checking if unicode symbols and colors display properly...\n"
printf "(NOTE): If you use a custom colorscheme, colors may vary.\n"
printf " For instance, the Dracula colorscheme turns blue into purple.\n"
printf "$check\n"
printf "$error\n"
printf "$warning\n"
printf "$question\n"
printf "$red Red.$reset\n"
printf "$green Green.$reset\n"
printf "$yellow Yellow.$reset\n"
printf "$blue Blue.$reset\n"
printf ">> Checking repositories...\n"
echo $GREPO1
echo $GREPO2
echo $GREPO3
echo $GREPO4
echo $GREPO5
echo $GREPO6
echo $GREPO7
echo $GREPO8
printf ">> Debug information has been gathered.\n"
printf ">> Run 'glacier --showDebugInfo > glacier.debug' to save this information to a file.\n"
exit 0
;;
-*|--*)
echo $GLACIER_ERROR_NO_SUCH_OPTION
exit 1
;;
*)
echo $GLACIER_ERROR_NO_SUCH_OPTION
exit 1
;;
esac
done
echo $GLACIER_ERROR_NO_SUCH_OPTION
exit 1

63
src/glacier.conf Executable file
View File

@@ -0,0 +1,63 @@
#
# /etc/glacier.conf
# The settings stored in this file will be loaded when Glacier is called
# For more information on each of these options, see https://git.everest
#
# Repositories Glacier will use
#[world]
export GREPO1="https://git.everestlinux.org/EverestLinux/glacier-pkgs/raw/branch/main/world" # System Software
#[galaxy]
export GREPO2="https://git.everestlinux.org/EverestLinux/glacier-pkgs/raw/branch/main/galaxy" # GPL Only Software
#[universe]
export GREPO3="https://git.everestlinux.org/EverestLinux/glacier-pkgs/raw/branch/main/universe" # All Open Source Software
#[multiverse]
#export GREPO4=https://git.everestlinux.org/EverestLinux/glacier-pkgs/raw/branch/main/multiverse # Proprietary Software
#[world-testing]
#export GREPO5=https://git.everestlinux.org/EverestLinux/glacier-pkgs/raw/branch/main/world-testing
#[galaxy-testing]
#export GREPO6=https://git.everestlinux.org/EverestLinux/glacier-pkgs/raw/branch/main/galaxy-testing
#[universe-testing]
#export GREPO7=https://git.everestlinux.org/EverestLinux/glacier-pkgs/raw/branch/main/universe-testing
#[multiverse-testing]
#export GREPO8=https://git.everestlinux.org/EverestLinux/glacier-pkgs/raw/branch/main/multiverse-testing
# Checksum locations
export WORLD_SUM="https://git.everestlinux.org/EverestLinux/glacier-pkgs/src/branch/main/world"
export GALAXY_SUM="https://git.everestlinux.org/EverestLinux/glacier-pkgs/src/branch/main/galaxy"
export UNIEVRSE_SUM="https://git.everestlinux.org/EverestLinux/glacier-pkgs/src/branch/main/universe"
export MULTIVERSE_SUM="https://git.everestlinux.org/EverestLinux/glacier-pkgs/src/branch/main/multiverse"
export WORLD_TESTING_SUM="https://git.everestlinux.org/EverestLinux/glacier-pkgs/src/branch/main/world-testing"
export GALAXY_TESTING_SUM="https://git.everestlinux.org/EverestLinux/glacier-pkgs/src/branch/main/galaxy-testing"
export UNIVERSE_TESTING_SUM="https://git.everestlinux.org/EverestLinux/glacier-pkgs/src/branch/main/universe-testing"
export MULTIVERSE_TESTING_SUM="https://git.everestlinux.org/EverestLinux/glacier-pkgs/src/branch/main/multiverse-testing"
# Define colors and unicode symbols to be used
export red="\033[1;31m"
export green="\033[1;32m"
export yellow="\033[1;33m"
export blue="\033[1;34m"
export reset="\033[m"
export check="\xE2\x9C\x93"
export error="\xE2\x9C\x95"
export warning="\x21"
export question="\x3F"
# Which backend Glacier will use to download files
# Selecting more than one backend will cause breakage
export GLACIER_DOWNLOAD_BACKEND="wget --quiet --show-progress"
#export GLACIER_DOWNLOAD_BACKEND="curl --output $input.tar.gz"
#export GLACIER_DOWNLOAD_BACKEND="aria2c"
#
# end /etc/glacier.conf
#

3
src/glacier_release Executable file
View File

@@ -0,0 +1,3 @@
#!/bin/sh
export GLACIER_RELEASE="3.0.0 "

58
src/gscripts Executable file
View File

@@ -0,0 +1,58 @@
#!/bin/sh
# gscripts - Scripts for Glacier operations
source /etc/glacier.conf
while [[ $# -gt 0 ]]; do
case $1 in
help)
printf "gscripts - backend for many Glacier functionalities since v3\n"
printf "gscripts {help} show this message\n"
printf "gscripts {integrity-check} verify package integrity\n"
printf "gscripts {download} download a package\n"
printf "gscripts {post-install} run post installation cleanup hooks\n"
printf "\n"
printf "this program can be distributed under the terms of the GNU General\n"
printf "Public License version 3 or higher\n"
exit 0
;;
preload)
/etc/glacier/hooks
if [ "$?" != "0" ]; then
exit 1
fi
exit 0
;;
integrity-check)
$GLACIER_DOWNLOAD_BACKEND $WORLD_SUM/$input.checksum || $GLACIER_DOWNLOAD_BACKEND $GALAXY_SUM/$input.checksum || $GLACIER_DOWNLOAD_BACKEND $UNIVERSE_SUM/$input.checksum || $GLACIER_DOWNLOAD_BACKEND $MULTIVERSE_SUM/$input.checksum || $GLACIER_DOWNLOAD_BACKEND $WORLD_TESTING_SUM/$input.checksum || $GLACIER_DOWNLOAD_BACKEND $GALAXY_TESTING_SUM/$input.checksum || $GLACIER_DOWNLOAD_BACKEND $UNIVERSE_TESTING_SUM/$input.checksum || $GLACIER_DOWNLOAD_BACKEND $MULTIVERSE_TESTING_SUM/$input.checksum
exit 0
LOCAL_SUM=$(sha256sum $input.tar.gz)
if [ $input.checksum = $LOCAL_SUM ]; then
printf "$green [ $check ]$reset Integrity check passed.\n"
rm $input.checksum
exit 0
else
printf "$red [ $error ]$reset Integrity check failed.\n"
rm $input.checksum
exit 1
fi
;;
download)
$GLACIER_DOWNLOAD_BACKEND $GREPO1/$input.tar.gz || $GLACIER_DOWNLOAD_BACKEND $GREPO2/$input.tar.gz || $GLACIER_DOWNLOAD_BACKEND $GREPO3/$input.tar.gz || $GLACIER_DOWNLOAD_BACKEND $GREPO4/$input.tar.gz || $GLACIER_DOWNLOAD_BACKEND $GREPO5/$input.tar.gz || $GLACIER_DOWNLOAD_BACKEND $GREPO6/$input.tar.gz || $GLACIER_DOWNLOAD_BACKEND $GREPO7/$input.tar.gz || $GLACIER_DOWNLOAD_BACKEND $GREPO8/$input.tar.gz
exit 0
;;
post-install)
mv -vf -- $input-pkginfo.json /etc/glacier/pkginfo || printf "error in subprocess /usr/bin/gscripts: could not stat $input-pkginfo.json\n" && exit 1
cd ..
rm -rf $input || printf "error in subprocess /usr/bin/gscripts: could not remove package source\n" && exit 1
;;
-*|--*)
printf "gscripts - no valid option was passed, see 'help' for details\n"
exit 1
;;
esac
done
printf "gscripts - no option was passed, see 'help' for details\n"

6
src/hooks Executable file
View File

@@ -0,0 +1,6 @@
#!/bin/sh
# Glacier Preloading Hooks
source /etc/make.conf
source /etc/glacier.conf
source /etc/glacier/glacier_release

8
src/hooks.sh Executable file
View File

@@ -0,0 +1,8 @@
#!/bin/sh
# This file is meant to maintain legacy support.
printf "This package uses the legacy hooks file (/etc/glacier/hooks.sh).\n"
printf ">>> This is not an error. <<< There is no manual intervention needed.\n"
printf "If you are the maintainer of this package, please update your usrbuild.sh, usrupdate.sh, and usrremove.sh accordingly.\n"
source /etc/glacier/hooks && /etc/glacier/hooks

40
src/make.conf Normal file
View File

@@ -0,0 +1,40 @@
#
# make.conf - optimizations and flags for make
#
# Number of parallel makejobs. Change this number to your CPUs cores + threads.
# Example: 6 cores + 6 threads = 12
MAKEFLAGS="-j1"
# Build and compile flags for C and C++ programs.
# Disable these if packages are breaking.
# Using too many optimizations may break packages.
CFLAGS="-02"
CXXFLAGS="${CFLAGS}"
# Flag which treats all warnings as errors.
# Not recommended, as many packages with large codebases will refuse to compile.
#CFLAGS="-Werror"
# Prefix for installed packages. Most packages will follow this.
# Some packages may have their own prefix. For instance, appimages will install to /usr/share/appimages, and be symlinked to /bin.
PREFIX="/usr"
#PREFIX="/usr/local"
# CPU architecture. Most users will use x86_64.
# This setting should manually set itself. If it doesn't, set it manually.
# Note that some packages will not compile for other architectures.
# Example: ARCH="x86_64"
ARCH="${MACHTYPE}"
# Triplet for the target system.
# This should only be used if cross compiling.
# For reference, Everest's triplet is x86_64-linux-musl.
#TARGET="x86_64-linux-musl"
#TARGET="x86_64-pc-linux-gnu"
#TARGET="i386-linux-musl"
#TARGET="i386-pc-linux-gnu"
#
# end make.conf
#

24
src/messages Executable file
View File

@@ -0,0 +1,24 @@
#!/bin/sh
# Glacier messages storage
source /etc/glacier.conf
# Errors
export GLACIER_ERROR_NO_ROOT=$(printf "$red [ $error ]$reset Please run Glacier as root.\n")
export GLACIER_ERROR_DOES_NOT_EXIST=$(printf "$red [ $error ]$reset Package $input either does not exist, or is in a repository that is not enabled.\n")
export GLACIER_ERROR_CANNOT_UNPACK=$(printf "$red [ $error ]$reset Package archive cannot be unpacked.\n")
export GLACIER_ERROR_INSTRUCTIONS_CANNOT_EXECUTE=$(printf "$red [ $error ]$reset Instructions were either unable to execute, or encountered an error while executing.\n")
export GLACIER_ERROR_NO_SUCH_OPTION=$(printf "$red [ $error ]$reset Unknown option, see 'glacier -h' for usage.\n")
# Status
export GLACIER_STATUS_INSTALLING=$(printf "$blue [ i ]$reset Installing $input...\n")
export GLACIER_STATUS_UPDATING=$(printf "$blue [ i ]$reset Updating $input...\n")
export GLACIER_STATUS_REMOVING=$(printf "$blue [ i ]$reset Removing $input...\n")
export GLACIER_STATUS_CACHING=$(printf "$blue [ i ]$reset Caching $input...\n")
export GLACIER_STATUS_UNPACKING=$(printf "$blue [ i ]$reset Unpacking $input.tar.gz...\n")
export GLACIER_STATUS_INTEGRITY_CHECK=$(printf "$blue [ i ]$reset Verifying integrity of package...\n")
export GLACIER_STATUS_EXECUTING=$(printf "$blue [ i ]$reset Executing instructions...\n")
export GLACIER_WHICH_PKG=$(printf "$blue [ $question ]$reset Enter package name: ")
# Success
export GLACIER_SUCCESS=$(printf "$green [ $check ]$reset Operation finished successfully.\n")