diff --git a/.github/workflows/buildLoadup.yml b/.github/workflows/buildLoadup.yml index 6a4c89dd..54da1136 100644 --- a/.github/workflows/buildLoadup.yml +++ b/.github/workflows/buildLoadup.yml @@ -226,46 +226,12 @@ jobs: export DISPLAY=":0" PATH="$PWD/maiko:$PATH" scripts/loadup-all.sh -apps + scripts/loadup-db.sh - - name: Build loadups release tar + - name: Build release tars run: | - cd .. - mkdir -p medley/${TARBALL_DIR} - tar cfz medley/${TARBALL_DIR}/${MEDLEY_RELEASE_TAG}-loadups.tgz \ - medley/loadups/lisp.sysout \ - medley/loadups/full.sysout \ - medley/loadups/apps.sysout \ - medley/loadups/whereis.hash \ - medley/loadups/*.dribble \ - medley/loadups/fuller.database \ - medley/loadups/exports.all - - - name: Build runtime release tar - run: | - cd .. - mkdir -p medley/${TARBALL_DIR} - tar cfz medley/${TARBALL_DIR}/${MEDLEY_RELEASE_TAG}-runtime.tgz \ - --exclude "*~" --exclude "*#*" \ - --exclude exports.all \ - medley/clos \ - medley/docs/dinfo \ - medley/docs/man-page/medley.1.gz \ - medley/doctools \ - medley/greetfiles \ - medley/rooms \ - medley/medley \ - medley/run-medley \ - medley/scripts \ - medley/fonts/displayfonts \ - medley/fonts/altofonts \ - medley/fonts/adobe \ - medley/fonts/postscriptfonts \ - medley/fonts/ipfonts \ - medley/library \ - medley/lispusers \ - medley/sources \ - medley/internal - + scripts/release-make-tars.sh "${MEDLEY_RELEASE_TAG}" + mv releases/"${MEDLEY_SHORT_RELEASE_TAG}"/*.tgz "${TARBALL_DIR}" # Build the deb files as well as the tgz files - name: Build .deb files for 3 architectures diff --git a/.gitignore b/.gitignore index aeae2bea..223b84a6 100644 --- a/.gitignore +++ b/.gitignore @@ -2,6 +2,10 @@ tmp/* +# releases directory +releases/* + + # all loadup files loadups/exports.all diff --git a/internal/MEDLEY-UTILS b/internal/MEDLEY-UTILS index abf4d00e..2e0ae0e2 100644 --- a/internal/MEDLEY-UTILS +++ b/internal/MEDLEY-UTILS @@ -1,12 +1,13 @@ (DEFINE-FILE-INFO PACKAGE "INTERLISP" READTABLE "XCL" BASE 10) -(FILECREATED "23-May-2023 07:10:58" |{DSK}larry>il>medley>internal>MEDLEY-UTILS.;12| 10354 +(FILECREATED " 3-Aug-2023 18:40:12" |{DSK}frank>il>medley>gmedley>internal>MEDLEY-UTILS.;6| 10695 - :EDIT-BY "lmm" + :EDIT-BY "frank" - :CHANGES-TO (FNS GATHER-INFO) + :CHANGES-TO (FNS MAKE-FULLER-DB MAKE-EXPORTS-ALL MAKE-WHEREIS-HASH) - :PREVIOUS-DATE "22-May-2023 22:57:21" |{DSK}larry>il>medley>internal>MEDLEY-UTILS.;11|) + :PREVIOUS-DATE " 1-Aug-2023 22:43:13" +|{DSK}frank>il>medley>gmedley>internal>MEDLEY-UTILS.;5|) (PRETTYCOMPRINT MEDLEY-UTILSCOMS) @@ -102,18 +103,19 @@ (HELP)))) (MAKE-FULLER-DB - (LAMBDA NIL (* \; "Edited 16-Jul-2022 22:07 by larry") + (LAMBDA (DRIBBLEFILE DBFILE SYSOUTFILE) (* \; "Edited 3-Aug-2023 18:12 by frank") + (* \; "Edited 16-Jul-2022 22:07 by larry") (* \; "Edited 20-Jun-2022 17:23 by larry") (FILESLOAD (SOURCE) FILESETS) - (DRIBBLE (MEDLEYDIR "tmp" "fuller.dribble" T T)) + (DRIBBLE (OR DRIBBLEFILE "fuller.dribble")) (DOFILESLOAD (SUBSET (APPEND OKSOURCES OKLIBRARY OKLISPUSERS OKINTERNAL) 'FINDFILE)) (GATHER-INFO 'ALL) (MASTERSCOPE '(WHO CALLS XYZZY)) - (DUMPDATABASE NIL (MKATOM (MEDLEYDIR "tmp" "fuller.database" T T))) + (DUMPDATABASE NIL (MKATOM (OR DBFILE "fuller.database"))) (DRIBBLE) - (MAKESYS (MEDLEYDIR "tmp" "fuller.sysout" T T) + (MAKESYS (OR SYSOUTFILE "fuller.sysout") "Welcome to Fuller sysout"))) (MEDLEY-FIX-LINKS @@ -146,7 +148,8 @@ (DEFINEQ (MAKE-EXPORTS-ALL - (LAMBDA NIL (* \; "Edited 9-Mar-2021 16:11 by larry") + (LAMBDA (OUTFILE) (* \; "Edited 3-Aug-2023 18:34 by frank") + (* \; "Edited 9-Mar-2021 16:11 by larry") (* "Edited May 3, 2018 by Ron Kaplan--relative to MEDLEYDIR/lispcore/. Don't know why it does the CORE/RENAME") (*  "Edited Aug 17 94 by Sybalsky -- point it to /king/export/lispcore as the truth directory.") @@ -156,24 +159,25 @@  "Edited September 29, 1986 by van Melle") (CNDIR (MEDLEYDIR "sources")) (LOAD 'FILESETS) - (GATHEREXPORTS EXPORTFILES (MEDLEYDIR "tmp" "exports.all" T)))) + (GATHEREXPORTS EXPORTFILES (OR OUTFILE "exports.all")))) (MAKE-WHEREIS-HASH - (LAMBDA NIL (* \; "Edited 12-Mar-2022 12:46 by rmk") + (LAMBDA (DRIBBLEFILE TMPFILE WHEREISFILE) (* \; "Edited 3-Aug-2023 18:37 by frank") + (* \; "Edited 12-Mar-2022 12:46 by rmk") (* \; "Edited 24-Mar-2021 13:26 by larry") (LET ((FILING.ENUMERATION.DEPTH 2) HASHFILE) - (DRIBBLE (MEDLEYDIR "tmp" "whereis.dribble" T)) - (SETQ HASHFILE (XCL::WHERE-IS-NOTICE (MEDLEYDIR "tmp" "whereis.hash-tmp" T) + (DRIBBLE (OR DRIBBLEFILE "whereis.dribble")) + (SETQ HASHFILE (XCL::WHERE-IS-NOTICE (OR TMPFILE "whereis.hash-tmp") :FILES (|for| X |in| MEDLEY-FIX-DIRS |collect| (CONCAT (MEDLEYDIR X) "*.;")) :HASH-FILE-SIZE 60000 :NEW T)) - (RENAMEFILE HASHFILE (MEDLEYDIR "tmp" "whereis.hash" T)) + (RENAMEFILE HASHFILE (OR WHEREISFILE "whereis.hash")) (DRIBBLE)))) ) (DECLARE\: DONTCOPY - (FILEMAP (NIL (624 7499 (GATHER-INFO 634 . 6162) (MAKE-FULLER-DB 6164 . 6854) (MEDLEY-FIX-LINKS 6856 - . 7253) (MEDLEY-FIX-DATES 7255 . 7497)) (8538 10331 (MAKE-EXPORTS-ALL 8548 . 9507) (MAKE-WHEREIS-HASH - 9509 . 10329))))) + (FILEMAP (NIL (679 7642 (GATHER-INFO 689 . 6217) (MAKE-FULLER-DB 6219 . 6997) (MEDLEY-FIX-LINKS 6999 + . 7396) (MEDLEY-FIX-DATES 7398 . 7640)) (8681 10672 (MAKE-EXPORTS-ALL 8691 . 9752) (MAKE-WHEREIS-HASH + 9754 . 10670))))) STOP diff --git a/internal/MEDLEY-UTILS.LCOM b/internal/MEDLEY-UTILS.LCOM index f4ccfed1..b492e029 100644 Binary files a/internal/MEDLEY-UTILS.LCOM and b/internal/MEDLEY-UTILS.LCOM differ diff --git a/sources/LOADUP-APPS b/internal/loadups/LOADUP-APPS similarity index 100% rename from sources/LOADUP-APPS rename to internal/loadups/LOADUP-APPS diff --git a/sources/LOADUP-APPS.LCOM b/internal/loadups/LOADUP-APPS.LCOM similarity index 100% rename from sources/LOADUP-APPS.LCOM rename to internal/loadups/LOADUP-APPS.LCOM diff --git a/sources/LOADUP-FULL b/internal/loadups/LOADUP-FULL similarity index 89% rename from sources/LOADUP-FULL rename to internal/loadups/LOADUP-FULL index 104dbbee..55171e07 100644 --- a/sources/LOADUP-FULL +++ b/internal/loadups/LOADUP-FULL @@ -1,10 +1,10 @@ (DEFINE-FILE-INFO PACKAGE "INTERLISP" READTABLE "INTERLISP" BASE 10) -(FILECREATED "18-Jan-2023 16:23:36" {DSK}frank>il>medley>gmedley>sources>LOADUP-FULL.;2 4636 +(FILECREATED "31-Jul-2023 18:28:53" {DSK}frank>il>medley>gmedley>sources>LOADUP-FULL.;4 4521 :CHANGES-TO (FNS LOADUP-FULL) - :PREVIOUS-DATE "12-Aug-2022 12:30:09" {DSK}frank>il>medley>gmedley>sources>LOADUP-FULL.;1 + :PREVIOUS-DATE "18-Jan-2023 16:23:36" {DSK}frank>il>medley>gmedley>sources>LOADUP-FULL.;3 ) @@ -39,7 +39,7 @@ (PRINTOUT T "FULL fonts loaded" T]) (LOADUP-FULL - [LAMBDA NIL (* ; "Edited 18-Jan-2023 16:22 by FGH") + [LAMBDA (DRIBBLEFILE) (* ; "Edited 18-Jan-2023 16:22 by FGH") (* ; "Edited 12-Aug-2022 11:17 by lmm") (* ; "Edited 14-Jul-2022 12:32 by rmk") (* ; "Edited 12-Jul-2022 21:57 by rmk") @@ -55,9 +55,7 @@ (PROGN (SETQ MEDLEYDIR) (CNDIR (MEDLEYDIR))) (MEDLEY-INIT-VARS) - (SETQ MAKESYSFILENAME (MEDLEYDIR "tmp" "full.sysout" T)) - (SETQ MAKESYSNAME :MEDLEY) - (DRIBBLE (MEDLEYDIR "tmp" "full.dribble" T)) + (DRIBBLE DRIBBLEFILE) (* ;; "BKSYSBUF stops page holding ") @@ -88,5 +86,5 @@ (FIXMETA) (DECLARE%: DONTCOPY - (FILEMAP (NIL (467 4598 (LOADFULLFONTS 477 . 1918) (LOADUP-FULL 1920 . 4348) (FIXMETA 4350 . 4596))))) + (FILEMAP (NIL (467 4483 (LOADFULLFONTS 477 . 1918) (LOADUP-FULL 1920 . 4233) (FIXMETA 4235 . 4481))))) STOP diff --git a/sources/LOADUP-FULL.LCOM b/internal/loadups/LOADUP-FULL.LCOM similarity index 65% rename from sources/LOADUP-FULL.LCOM rename to internal/loadups/LOADUP-FULL.LCOM index 2db7026c..51898200 100644 Binary files a/sources/LOADUP-FULL.LCOM and b/internal/loadups/LOADUP-FULL.LCOM differ diff --git a/sources/LOADUP-LISP b/internal/loadups/LOADUP-LISP similarity index 92% rename from sources/LOADUP-LISP rename to internal/loadups/LOADUP-LISP index a2f54a70..140f17a9 100644 --- a/sources/LOADUP-LISP +++ b/internal/loadups/LOADUP-LISP @@ -1,12 +1,11 @@ (DEFINE-FILE-INFO PACKAGE "INTERLISP" READTABLE "XCL" BASE 10) -(FILECREATED "27-Feb-2023 17:15:53" |{DSK}larry>il>medley>sources>LOADUP-LISP.;2| 5263 - - :EDIT-BY "lmm" +(FILECREATED "31-Jul-2023 18:22:53" |{DSK}frank>il>medley>gmedley>sources>LOADUP-LISP.;2| 5235 :CHANGES-TO (FNS LOADUP-LISP) - :PREVIOUS-DATE "12-Aug-2022 12:29:57" |{DSK}larry>il>medley>sources>LOADUP-LISP.;1|) + :PREVIOUS-DATE "27-Feb-2023 17:15:53" +|{DSK}frank>il>medley>gmedley>sources>LOADUP-LISP.;1|) (PRETTYCOMPRINT LOADUP-LISPCOMS) @@ -19,13 +18,13 @@ (DEFINEQ (LOADUP-LISP - (LAMBDA NIL (* \; "Edited 26-Feb-2023 12:17 by lmm") + (LAMBDA (DRIBBLEFILE) (* \; "Edited 26-Feb-2023 12:17 by lmm") (* \; "Edited 13-Jul-2022 14:09 by rmk") (* \; "Edited 4-Mar-2022 19:13 by larry") (* \; "Edited 29-Apr-2021 22:30 by rmk:") (SETQQ COMPILE.EXT LCOM) (MEDLEY-INIT-VARS) (* \; "should be set earlier") - (DRIBBLE (MEDLEYDIR "tmp" "lisp.dribble" T)) + (DRIBBLE DRIBBLEFILE) (FOR X IN BOOTLOADEDFILES DO (CL:UNLESS (MEMB X SYSFILES) (PRINTOUT T X " bootloaded" T) (SETQ SYSFILES (CONS X SYSFILES)))) @@ -124,5 +123,5 @@ (GLOBALVARS MAKESYSFILENAME MEDLEY-INIT-VARS MEDLEYDIR SYSTEMINITVARS USERRECLST) ) (DECLARE\: DONTCOPY - (FILEMAP (NIL (654 5057 (LOADUP-LISP 664 . 5055))))) + (FILEMAP (NIL (649 5029 (LOADUP-LISP 659 . 5027))))) STOP diff --git a/internal/loadups/LOADUP-LISP.LCOM b/internal/loadups/LOADUP-LISP.LCOM new file mode 100644 index 00000000..46a716e5 Binary files /dev/null and b/internal/loadups/LOADUP-LISP.LCOM differ diff --git a/sources/MAKEINIT b/internal/loadups/MAKEINIT similarity index 95% rename from sources/MAKEINIT rename to internal/loadups/MAKEINIT index 3f939a04..cae408c3 100644 --- a/sources/MAKEINIT +++ b/internal/loadups/MAKEINIT @@ -1,18 +1,13 @@ (DEFINE-FILE-INFO PACKAGE "INTERLISP" READTABLE "INTERLISP" BASE 10) -(FILECREATED "11-Jul-2022 20:00:23"  -{DSK}kaplan>local>medley3.5>working-medley>sources>MAKEINIT.;3 54607 +(FILECREATED " 7-Aug-2023 13:31:49" {DSK}frank>il>medley>gmedley>internal>loadups>MAKEINIT.;4 54490 - :CHANGES-TO (FNS I.FIXUPNUM I.FIXUPSYM) + :CHANGES-TO (FNS MAKEINITGREET) - :PREVIOUS-DATE "19-Jul-2021 23:50:29" -{DSK}kaplan>local>medley3.5>working-medley>sources>MAKEINIT.;2) + :PREVIOUS-DATE " 3-Aug-2023 17:37:51" +{DSK}frank>il>medley>gmedley>internal>loadups>MAKEINIT.;1) -(* ; " -Copyright (c) 1982-1988, 1990-1992, 1998, 2021 by Venue & Xerox Corporation. -") - (PRETTYCOMPRINT MAKEINITCOMS) (RPAQQ MAKEINITCOMS @@ -83,7 +78,8 @@ Copyright (c) 1982-1988, 1990-1992, 1998, 2021 by Venue & Xerox Corporation. (DEFINEQ (MAKEINITGREET - [LAMBDA NIL (* ; "Edited 11-Mar-2021 22:14 by larry") + [LAMBDA (SYSOUTFILE DLINITFILE) (* ; "Edited 3-Aug-2023 17:37 by frank") + (* ; "Edited 11-Mar-2021 22:14 by larry") (* ; "Edited 5-Dec-2017 15:26 by rmk:") (* ;; "") @@ -93,12 +89,13 @@ Copyright (c) 1982-1988, 1990-1992, 1998, 2021 by Venue & Xerox Corporation. (* ;; "") (* Versions are Lisp Microcode Bcpl) (MEDLEY-INIT-VARS) - (DORENAME 'I) - (DORENAME 'R) - (DLFIXINIT (MAKEINIT '(39424 5682 11008) - (MEDLEYDIR "tmp" "init.sysout" T) - NIL DIRECTORIES DISPLAYFONTDIRECTORIES) - (MEDLEYDIR "tmp" "init.dlinit" T]) + (RESETLST + (RESETSAVE OK.TO.MODIFY.FNS T) + (DORENAME 'I) + (DORENAME 'R) + (DLFIXINIT (MAKEINIT '(39424 5682 11008) + SYSOUTFILE NIL DIRECTORIES DISPLAYFONTDIRECTORIES) + DLINITFILE))]) ) (FILESLOAD (SOURCE) @@ -1053,28 +1050,26 @@ DONTCOPY (GLOBALVARS DLPRIMARYMAP DLSECONDARYMAP DLLOCKBITS DLLASTDOMINOPAGE DLIFPAGE DLNEXTPM DLPAGEMAPFP FPTOVP NEWFPFROMOLD VMEMFILE VMEMFILEX) ) -(PUTPROPS MAKEINIT COPYRIGHT ("Venue & Xerox Corporation" 1982 1983 1984 1985 1986 1987 1988 1990 1991 - 1992 1998 2021)) (DECLARE%: DONTCOPY - (FILEMAP (NIL (3971 4718 (MAKEINITGREET 3981 . 4716)) (4901 11286 (LOADMAKEINIT 4911 . 6114) ( -LOADMKIFILES 6116 . 6431) (RELOAD 6433 . 6916) (MAKEINIT 6918 . 10578) (MKI.START 10580 . 11284)) ( -11364 17082 (MKI.PASSFILE 11374 . 14984) (SCRATCHARRAY 14986 . 15635) (DOFORM 15637 . 16314) ( -CONSTFORMP 16316 . 16550) (NOTICECOMS 16552 . 16860) (EVALFORMAKEINIT 16862 . 17080)) (17083 19203 ( -I.ADDTOVAR 17093 . 17187) (I.DECLARE%: 17189 . 17465) (I.DEFINE-FILE-INFO 17467 . 17657) ( -I.FILECREATED 17659 . 18033) (I.PUTPROPS 18035 . 18148) (I.RPAQ 18150 . 18371) (I.RPAQQ 18373 . 18569) - (I.RPAQ? 18571 . 18786) (I.SETTOPVAL 18788 . 19020) (I.NOUNDO 19022 . 19201)) (19839 26055 ( -I.ATOMNUMBER 19849 . 20340) (I.\ATOMCELL 20342 . 22095) (I.FIXUPNUM 22097 . 23022) (I.FIXUPPTR 23024 - . 23505) (I.FIXUPSYM 23507 . 24563) (I.WORDSPERNAMEENTRY 24565 . 25320) (I.SETSTKNTOFFSET 25322 . -26053)) (26087 27595 (MKI.ATOM 26097 . 26293) (MKI.IEEE 26295 . 27593)) (27692 28457 (MKI.DSET 27702 - . 27985) (MKI.ADDTO 27987 . 28172) (MKI.PUTPROP 28174 . 28455)) (28631 29183 (DUMPVP 28641 . 28738) ( -BOUTZEROS 28740 . 28819) (BIN16 28821 . 29002) (BOUT16 29004 . 29181)) (30074 52808 (DLFIXINIT 30084 - . 31059) (DLSORTSYSOUTPAGES 31061 . 36187) (DLNEXTFP 36189 . 36526) (DLLOCKEDPAGEP 36528 . 36742) ( -DLSETLOCKBIT 36744 . 37006) (DLCOPYPAGEMAP 37008 . 40059) (DLCOPYVMPAGE 40061 . 40451) ( -DLADDPAGEMAPENTRIES 40453 . 41268) (ASSIGNFILEPAGE 41270 . 42503) (ASSIGNFILEPAGERANGE 42505 . 42912) -(DLDUMPSYSOUT 42914 . 44666) (DLDUMPFPTOVP 44668 . 45707) (DLDUMPPAGEMAPS 45709 . 46409) ( -DLDUMPVMEMPAGES 46411 . 47067) (DLSETBOOTPTR 47069 . 47299) (DLDUMPARRAY 47301 . 47688) ( -DLMARKASDUMPED 47690 . 48143) (DLDUMPVMEMPAGE 48145 . 48833) (INSTALLDOMINO 48835 . 49482) ( -INSTALLDOMINO.DIRECT 49484 . 50636) (INSTALLNEWDOMINO 50638 . 52806)) (52830 54187 (DLPRINTFPTOVP -52840 . 53129) (PRINTPRIMARYMAP 53131 . 53845) (DLREADPAGEOFWORDS 53847 . 54014) (SETDIF 54016 . 54185 + (FILEMAP (NIL (3862 4722 (MAKEINITGREET 3872 . 4720)) (4905 11290 (LOADMAKEINIT 4915 . 6118) ( +LOADMKIFILES 6120 . 6435) (RELOAD 6437 . 6920) (MAKEINIT 6922 . 10582) (MKI.START 10584 . 11288)) ( +11368 17086 (MKI.PASSFILE 11378 . 14988) (SCRATCHARRAY 14990 . 15639) (DOFORM 15641 . 16318) ( +CONSTFORMP 16320 . 16554) (NOTICECOMS 16556 . 16864) (EVALFORMAKEINIT 16866 . 17084)) (17087 19207 ( +I.ADDTOVAR 17097 . 17191) (I.DECLARE%: 17193 . 17469) (I.DEFINE-FILE-INFO 17471 . 17661) ( +I.FILECREATED 17663 . 18037) (I.PUTPROPS 18039 . 18152) (I.RPAQ 18154 . 18375) (I.RPAQQ 18377 . 18573) + (I.RPAQ? 18575 . 18790) (I.SETTOPVAL 18792 . 19024) (I.NOUNDO 19026 . 19205)) (19843 26059 ( +I.ATOMNUMBER 19853 . 20344) (I.\ATOMCELL 20346 . 22099) (I.FIXUPNUM 22101 . 23026) (I.FIXUPPTR 23028 + . 23509) (I.FIXUPSYM 23511 . 24567) (I.WORDSPERNAMEENTRY 24569 . 25324) (I.SETSTKNTOFFSET 25326 . +26057)) (26091 27599 (MKI.ATOM 26101 . 26297) (MKI.IEEE 26299 . 27597)) (27696 28461 (MKI.DSET 27706 + . 27989) (MKI.ADDTO 27991 . 28176) (MKI.PUTPROP 28178 . 28459)) (28635 29187 (DUMPVP 28645 . 28742) ( +BOUTZEROS 28744 . 28823) (BIN16 28825 . 29006) (BOUT16 29008 . 29185)) (30078 52812 (DLFIXINIT 30088 + . 31063) (DLSORTSYSOUTPAGES 31065 . 36191) (DLNEXTFP 36193 . 36530) (DLLOCKEDPAGEP 36532 . 36746) ( +DLSETLOCKBIT 36748 . 37010) (DLCOPYPAGEMAP 37012 . 40063) (DLCOPYVMPAGE 40065 . 40455) ( +DLADDPAGEMAPENTRIES 40457 . 41272) (ASSIGNFILEPAGE 41274 . 42507) (ASSIGNFILEPAGERANGE 42509 . 42916) +(DLDUMPSYSOUT 42918 . 44670) (DLDUMPFPTOVP 44672 . 45711) (DLDUMPPAGEMAPS 45713 . 46413) ( +DLDUMPVMEMPAGES 46415 . 47071) (DLSETBOOTPTR 47073 . 47303) (DLDUMPARRAY 47305 . 47692) ( +DLMARKASDUMPED 47694 . 48147) (DLDUMPVMEMPAGE 48149 . 48837) (INSTALLDOMINO 48839 . 49486) ( +INSTALLDOMINO.DIRECT 49488 . 50640) (INSTALLNEWDOMINO 50642 . 52810)) (52834 54191 (DLPRINTFPTOVP +52844 . 53133) (PRINTPRIMARYMAP 53135 . 53849) (DLREADPAGEOFWORDS 53851 . 54018) (SETDIF 54020 . 54189 ))))) STOP diff --git a/internal/loadups/MAKEINIT.LCOM b/internal/loadups/MAKEINIT.LCOM new file mode 100644 index 00000000..004bbd16 Binary files /dev/null and b/internal/loadups/MAKEINIT.LCOM differ diff --git a/loadups/README.md b/internal/loadups/README.md similarity index 100% rename from loadups/README.md rename to internal/loadups/README.md diff --git a/loadups/starter.sysout b/internal/loadups/starter.sysout similarity index 100% rename from loadups/starter.sysout rename to internal/loadups/starter.sysout diff --git a/loadups/full.venuesysout b/internal/venuesysouts/full.venuesysout similarity index 100% rename from loadups/full.venuesysout rename to internal/venuesysouts/full.venuesysout diff --git a/loadups/lisp.venuesysout b/internal/venuesysouts/lisp.venuesysout similarity index 100% rename from loadups/lisp.venuesysout rename to internal/venuesysouts/lisp.venuesysout diff --git a/scripts/README.md b/scripts/README.md index d4dd7da1..f62e02bb 100644 --- a/scripts/README.md +++ b/scripts/README.md @@ -7,18 +7,38 @@ Loading from an old 'starter' sysout * loadup-mid-from-init.sh -- phase 2 (creates init.sysout) * loadup-lisp-from-mid.sh -- phase 3 (creates lisp.sysout) * loadup-full-from-lisp.sh -- phase 4 (creates full.sysout) -* loadup-aux.sh -- phase 5,(creates exports.all whereis.hash +* loadup-apps-from-full.sh -- phase 5 (creates app.sysout, with notecards, rooms and clos; optional) +* loadup-aux.sh -- phase 6 (creates exports.all whereis.hash) +* loadup-db-from-full.sh -- phase 7 (makes unreleased 'fuller.sysout' and fuller.database) -* loadup-full.sh -- Phase 1-4 only +All of these scripts read from and write to a directory specified by the env variable LOADUP_WORKDIR. +LOADUP_WORKDIR defaults to /tmp/loadups-$$ (where $$ is the PID of the script). Note that all /tmp files +are cleared after 10 days or upon system reboot. You can replicate the old work directory scheme +where files were never deleted automatically by simply setting LOADUP_WORKDIR to "./tmp" -* loadup-db.sh -- phase 6 (makes unreleased 'fuller.sysout' and fuller.database -* copy-all.sh -- copy loadups from tmp/ to loadups/ and library/ +* loadup-all.sh [-apps] -- Phases 1-4 & 6 (plus Phase 5 with -apps flag) +* loadup-db.sh -- phase 7 only based on full.syout in loadup directory +These two scripts call the 7 scripts above as specified and then (if successful) copy (ln) the results +to the loadups directory using a versioned copy. The files are hardlinked into loadups from the workdir +if workdir and loadups are on the same filesystem, otherwise they are copied. + +* loadup-full.sh -- Phases 1-4 only, no copy into loadups at the end. + +## releases + +* release-medley.sh -- will create Medley release tars and upload as a release on github. + Arguments: -d to make a draft release. \ to use as a tag for this + release on github (defaults to meldey-\-\). + Both are optional. + +* release-make-tars.sh -- will create the Medley release tars and store them in the releases directory. ## possibly handy scripts * lsee -- show lisp file with font-control-characters rendered as linux color changes -* cpv file1 file2 -- copies file1 to file2 (or directory name) adding versions +* cpv file1 file2 -- hardlinks (or copies) file1 to file2 (or directory name) adding versions + choice of hardlink or copy depends on whether the files are on the same filesystem. * restore-versions.sh -- pulls out old versions from git history and links in with medley versioning conventions ## Not useful anymore diff --git a/scripts/copy-all.sh b/scripts/copy-all.sh index 6dfd8eb9..f04a5e7f 100755 --- a/scripts/copy-all.sh +++ b/scripts/copy-all.sh @@ -1,30 +1,31 @@ #!/bin/sh -export MEDLEYDIR=`pwd` - if [ ! -x run-medley ] ; then echo run from MEDLEYDIR exit 1 fi -# was -# cp -p tmp/full.sysout tmp/lisp.sysout tmp/*.dribble tmp/whereis.hash loadups/ -# cp -p tmp/exports.all tmp/RDSYS tmp/RDSYS.LCOM library/ -# just copy the files that are released +. scripts/loadup-setup.sh -./scripts/cpv tmp/init.dribble loadups -./scripts/cpv tmp/lisp.dribble loadups -./scripts/cpv tmp/full.dribble loadups -./scripts/cpv tmp/fuller.dribble loadups -./scripts/cpv tmp/whereis.dribble loadups +echo ">>>>> START ${script_name}" -./scripts/cpv tmp/fuller.database loadups - -./scripts/cpv tmp/full.sysout loadups -./scripts/cpv tmp/lisp.sysout loadups -./scripts/cpv tmp/whereis.hash loadups -./scripts/cpv tmp/exports.all loadups +./scripts/cpv "${LOADUP_WORKDIR}"/full.sysout "${LOADUP_OUTDIR}" | sed -e "s#${MEDLEYDIR}/##g" +./scripts/cpv "${LOADUP_WORKDIR}"/lisp.sysout "${LOADUP_OUTDIR}" | sed -e "s#${MEDLEYDIR}/##g" if [ "${1}" = "-apps" ]; then - ./scripts/cpv tmp/apps.sysout loadups + ./scripts/cpv "${LOADUP_WORKDIR}"/apps.sysout "${LOADUP_OUTDIR}" | sed -e "s#${MEDLEYDIR}/##g" fi +./scripts/cpv "${LOADUP_WORKDIR}"/whereis.hash "${LOADUP_OUTDIR}" | sed -e "s#${MEDLEYDIR}/##g" +./scripts/cpv "${LOADUP_WORKDIR}"/exports.all "${LOADUP_OUTDIR}" | sed -e "s#${MEDLEYDIR}/##g" + +./scripts/cpv "${LOADUP_WORKDIR}"/init.dribble "${LOADUP_OUTDIR}" | sed -e "s#${MEDLEYDIR}/##g" +./scripts/cpv "${LOADUP_WORKDIR}"/lisp.dribble "${LOADUP_OUTDIR}" | sed -e "s#${MEDLEYDIR}/##g" +./scripts/cpv "${LOADUP_WORKDIR}"/full.dribble "${LOADUP_OUTDIR}" | sed -e "s#${MEDLEYDIR}/##g" +./scripts/cpv "${LOADUP_WORKDIR}"/whereis.dribble "${LOADUP_OUTDIR}" | sed -e "s#${MEDLEYDIR}/##g" + +./scripts/cpv "${LOADUP_WORKDIR}"/RDSYS library | sed -e "s#${MEDLEYDIR}/##g" +./scripts/cpv "${LOADUP_WORKDIR}"/RDSYS.LCOM library | sed -e "s#${MEDLEYDIR}/##g" + +echo "<<<<< END ${script_name}" +echo "" +exit 0 diff --git a/scripts/copy-db.sh b/scripts/copy-db.sh new file mode 100755 index 00000000..77a76b92 --- /dev/null +++ b/scripts/copy-db.sh @@ -0,0 +1,17 @@ +#!/bin/sh + +if [ ! -x run-medley ] ; then + echo run from MEDLEYDIR + exit 1 +fi + +. scripts/loadup-setup.sh + +echo ">>>>> START ${script_name}" + +./scripts/cpv "${LOADUP_WORKDIR}"/fuller.database "${LOADUP_OUTDIR}" +./scripts/cpv "${LOADUP_WORKDIR}"/fuller.dribble "${LOADUP_OUTDIR}" + +echo "<<<<< END ${script_name}" +echo "" +exit 0 diff --git a/scripts/cpv b/scripts/cpv index 29fc5604..4d84e663 100755 --- a/scripts/cpv +++ b/scripts/cpv @@ -2,14 +2,19 @@ # cpv file dest # could extend with -r or copying multiple files -# could change from cp to ln + +ln_or_cp () { + f=$(df $(dirname $1) | tail -1 | awk '{ print $1 }') + d=$(df $(dirname $2) | tail -1 | awk '{ print $1 }') + if [ "$f" != "$d" ]; then cmd="cp -p"; else cmd="ln"; fi + echo $cmd +} file="$1" dest="$2" - if [ ! -f "$file" ]; then - echo no such file "$file" + echo "Error: no such file "$file". Exiting." exit 1 fi @@ -18,9 +23,16 @@ if [ -d "$dest" ]; then dest=$dest/`basename $file` fi +# if (the new) $dest is a directory, then just bail +if [ -d "$dest" ]; then + echo "Error: destination file ($dest) is a directory. Exiting." + exit 1 +fi + # if no such file $dest then just copy if [ ! -f "$dest" ]; then - ln $file $dest #WAS cp -p $file $dest + $(ln_or_cp $file $dest) $file $dest + echo "Added $(basename $dest) to $(dirname $dest)" exit 0 fi @@ -41,7 +53,7 @@ if [ $max -eq 0 ]; then # no current versions new=2 else if cmp -q $dest $dest.~$max~ >/dev/null 2>&1 - then # they're different + then # they're different max=`expr $max + 1` # make newer version mv $dest $dest.~$max~ new=`expr $max + 1` @@ -51,11 +63,10 @@ else fi fi -# make new version +# make new version and link it -ln $file $dest.~$new~ # cp -p $file $dest.~$new~ -ln $dest.~$new~ $dest # and link it - - - - +$(ln_or_cp $file $dest.~new~) $file $dest.~$new~ +echo "Added $(basename $dest.~$new~) to $(dirname $dest.~$new~)" +rm -f $dest +ln $dest.~$new~ $dest +echo "Linked $(basename $dest) to $(basename $dest.~$new~) in $(dirname $dest)" diff --git a/scripts/loadup-all.sh b/scripts/loadup-all.sh index c74f3280..5cc8f005 100755 --- a/scripts/loadup-all.sh +++ b/scripts/loadup-all.sh @@ -1,12 +1,12 @@ #!/bin/sh -export MEDLEYDIR=`pwd` - if [ ! -x run-medley ] ; then echo run from MEDLEYDIR exit 1 fi +. scripts/loadup-setup.sh + if [ "$1" = "-apps" ]; then apps="./scripts/loadup-apps-from-full.sh" else @@ -21,7 +21,13 @@ fi ./scripts/loadup-aux.sh && \ ./scripts/copy-all.sh $1 -echo "**** DONE ****" +if [ $? -eq 0 ]; +then + echo "+++++ loadup-all.sh: SUCCESS +++++" +else + echo "----- loadup-all.sh: FAILURE -----" +fi + diff --git a/scripts/loadup-apps-from-full.sh b/scripts/loadup-apps-from-full.sh index e3a48101..86a59d47 100755 --- a/scripts/loadup-apps-from-full.sh +++ b/scripts/loadup-apps-from-full.sh @@ -1,32 +1,14 @@ -#!/bin/bash +#!/bin/sh -#set -x +if [ ! -x run-medley ] ; then + echo must run from MEDLEYDIR ; + exit 1 ; +fi -# function to discover what directory this script is being executed from -where_am_i() { +. scripts/loadup-setup.sh - # call this with ${BASH_SOURCE[0]:-$0} as its (only) parameter +loadup_start - local SCRIPT_PATH="$1"; - - pushd . > '/dev/null'; - - while [ -h "$SCRIPT_PATH" ]; - do - cd "$( dirname -- "$SCRIPT_PATH"; )"; - SCRIPT_PATH="$( readlink -f -- "$SCRIPT_PATH"; )"; - done - - cd "$( dirname -- "$SCRIPT_PATH"; )" > '/dev/null'; - SCRIPT_PATH="$( pwd; )"; - - popd > '/dev/null'; - - echo "${SCRIPT_PATH}" -} - -SCRIPTDIR=$(where_am_i "${BASH_SOURCE[0]:-$0}") -export MEDLEYDIR=$(cd ${SCRIPTDIR} && cd .. && pwd) export ROOMSDIR=${MEDLEYDIR}/rooms export CLOSDIR=${MEDLEYDIR}/clos @@ -41,33 +23,35 @@ if [ ! -e ${NOTECARDSDIR} ]; then fi fi -if [ -z "${SYSOUTDIR}" ]; then - export SYSOUTDIR=${MEDLEYDIR}/tmp -fi +cat >"${cmfile}" <<"EOF" +" -if [ -z "${FULLSYSOUTPATH}" ]; then - FULLSYSOUTPATH=${SYSOUTDIR}/full.sysout - if [ ! -e ${FULLSYSOUTPATH} ]; then - FULLSYSOUTPATH=${MEDLEYDIR}/loadups/full.sysout - fi -fi +(PROGN + (IL:MEDLEY-INIT-VARS 'IL:GREET) + (IL:LOAD (IL:CONCAT (QUOTE {DSK}) (IL:UNIX-GETENV(QUOTE NOTECARDSDIR))(QUOTE |/system/NOTECARDS.LCOM|)) 'IL:SYSLOAD) + (IL:LOAD (IL:CONCAT (QUOTE {DSK}) (IL:UNIX-GETENV(QUOTE ROOMSDIR))(QUOTE /ROOMS)) 'IL:SYSLOAD) + (IL:LOAD (IL:CONCAT (QUOTE {DSK}) (IL:UNIX-GETENV(QUOTE CLOSDIR))(QUOTE /DEFSYS.DFASL)) 'IL:SYSLOAD) + (IL:LOAD (IL:CONCAT (QUOTE {DSK}) (IL:UNIX-GETENV(QUOTE MEDLEYDIR))(QUOTE |lispusers/BUTTONS.LCOM|)) 'IL:SYSLOAD) + (IL:LOAD + (IL:CONCAT (QUOTE {DSK}) (IL:UNIX-GETENV (QUOTE LOADUP_SOURCEDIR)) (QUOTE /LOADUP-APPS.LCOM)) + 'IL:SYSLOAD + ) + (IL:HARDRESET) +) +SHH +(PROGN + (IL:ENDLOADUP) + (CLOS::LOAD-CLOS) + (IL:|Apps.LOADUP|) + (IL:MAKESYS + (IL:CONCAT (QUOTE {DSK})(IL:UNIX-GETENV(QUOTE LOADUP_WORKDIR))(IL:L-CASE (QUOTE /apps.sysout))) + :APPS) +) +(IL:LOGOUT T) -cd ${MEDLEYDIR} +" +EOF -scr="-sc 1024x768 -g 1042x790" - -mkdir -p ${SYSOUTDIR} -touch ${SYSOUTDIR}/loadup.timestamp - -./run-medley $scr -loadup "${MEDLEYDIR}/sources/LOADUP-APPS.CM" "${FULLSYSOUTPATH}" - -if [ ${SYSOUTDIR}/apps.sysout -nt ${SYSOUTDIR}/loadup.timestamp ]; then - echo ---- made ---- - ls -l ${SYSOUTDIR}/apps.* - echo -------------- -else - echo XXXXX FAILURE XXXXX - ls -l ${SYSOUTDIR}/apps.* - exit 1 -fi +./run-medley ${scr} -loadup "${cmfile}" "${LOADUP_WORKDIR}/full.sysout" +loadup_finish "apps.sysout" "apps.*" diff --git a/scripts/loadup-aux.sh b/scripts/loadup-aux.sh index 211accbe..598f6955 100755 --- a/scripts/loadup-aux.sh +++ b/scripts/loadup-aux.sh @@ -1,28 +1,31 @@ #!/bin/sh -export MEDLEYDIR=`pwd` - if [ ! -f run-medley ] ; then echo run from MEDLEYDIR exit 1 fi -mkdir -p tmp -touch tmp/loadup.timestamp +. scripts/loadup-setup.sh -scr="-sc 1024x768 -g 1042x790" +loadup_start -echo '" (IL:MEDLEY-INIT-VARS)(IL:LOAD(QUOTE MEDLEY-UTILS))(IL:MAKE-EXPORTS-ALL)(IL:MAKE-WHEREIS-HASH)(IL:LOGOUT T)"' > tmp/loadup-aux.cm -./run-medley $scr -loadup "$MEDLEYDIR"/tmp/loadup-aux.cm tmp/full.sysout +cat >"${cmfile}" <<"EOF" +" +(PROG + ((WORKDIR (IL:CONCAT (QUOTE {DSK}) (IL:UNIX-GETENV (QUOTE LOADUP_WORKDIR)) (QUOTE /)))) + (IL:MEDLEY-INIT-VARS) + (IL:LOAD(QUOTE MEDLEY-UTILS)) + (IL:MAKE-EXPORTS-ALL (IL:CONCAT WORKDIR (IL:L-CASE (QUOTE exports.all)))) + (IL:MAKE-WHEREIS-HASH + (IL:CONCAT WORKDIR (IL:L-CASE (QUOTE whereis.dribble))) + (IL:CONCAT WORKDIR (IL:L-CASE (QUOTE whereis.hash-tmp))) + (IL:CONCAT WORKDIR (IL:L-CASE (QUOTE whereis.hash))) + ) + (IL:LOGOUT T) +) +" +EOF -if [ tmp/whereis.hash -nt tmp/loadup.timestamp ]; then - - echo ---- made ---- - ls -l tmp/whereis.hash tmp/exports.all - echo -------------- +./run-medley ${scr} -loadup "${cmfile}" "${LOADUP_WORKDIR}"/full.sysout -else - echo XXXXX FAILURE XXXXX - ls -l tmp/whereis.hash tmp/exports.all - exit 1 -fi +loadup_finish "whereis.hash" "whereis.hash" "exports.all" diff --git a/scripts/loadup-db-from-full.sh b/scripts/loadup-db-from-full.sh new file mode 100755 index 00000000..6517fb3e --- /dev/null +++ b/scripts/loadup-db-from-full.sh @@ -0,0 +1,41 @@ +#!/bin/sh + +if [ ! -x run-medley ] ; then + echo run from MEDLEYDIR + exit 1 +fi + +. scripts/loadup-setup.sh + +loadup_start + +SYSOUT="${MEDLEYDIR}/loadups/full.sysout" +if [ ! -f "${SYSOUT}" ]; +then + echo "Error: cannot find ${SYSOUT}. Exiting." + exit 1 +fi + +cat >"${cmfile}" <<"EOF" +" + +(PROG + ((WORKDIR (IL:CONCAT (QUOTE {DSK}) (IL:UNIX-GETENV (QUOTE LOADUP_WORKDIR)) (QUOTE /)))) + (IL:MEDLEY-INIT-VARS) + (IL:FILESLOAD MEDLEY-UTILS) + (SETQ IL:DIRECTORIES (CONS (IL:UNIX-GETENV (QUOTE LOADUP_SOURCEDIR)) IL:DIRECTORIES)) + (IL:MAKE-FULLER-DB + (IL:CONCAT WORKDIR (IL:L-CASE (QUOTE fuller.dribble))) + (IL:CONCAT WORKDIR (IL:L-CASE (QUOTE fuller.database))) + (IL:CONCAT WORKDIR (IL:L-CASE (QUOTE fuller.sysout))) + ) + (IL:LOGOUT T) +) + +" +EOF + +./run-medley ${scr} -loadup "${cmfile}" "${SYSOUT}" + +loadup_finish "fuller.database" "fuller*" + diff --git a/scripts/loadup-db.sh b/scripts/loadup-db.sh index 4b47839d..d0f89f7a 100755 --- a/scripts/loadup-db.sh +++ b/scripts/loadup-db.sh @@ -1,26 +1,22 @@ #!/bin/sh -export MEDLEYDIR=`pwd` - -if [ ! -f run-medley ] ; then +if [ ! -x run-medley ] ; then echo run from MEDLEYDIR exit 1 fi -touch tmp/db.timestamp +. scripts/loadup-setup.sh -scr="-sc 1024x768 -g 1042x790" - -echo '" (IL:MEDLEY-INIT-VARS)(IL:FILESLOAD MEDLEY-UTILS)(IL:MAKE-FULLER-DB)(IL:LOGOUT T)"' > tmp/db.cm -./run-medley $scr -loadup "$MEDLEYDIR"/tmp/db.cm -n -if [ tmp/fuller.database -nt tmp/db.timestamp ]; then - - echo ---- made ---- - ls -l tmp/fuller* - echo -------------- +./scripts/loadup-db-from-full.sh && ./scripts/copy-db.sh +if [ $? -eq 0 ]; +then + echo "+++++ loadup-db.sh: SUCCESS +++++" else - echo XXXXX FAILURE XXXXX - ls -l tmp/fuller* - exit 1 + echo "----- loadup-db.sh: FAILURE -----" fi + + + + + diff --git a/scripts/loadup-full-from-lisp.sh b/scripts/loadup-full-from-lisp.sh index 14277016..638e839b 100755 --- a/scripts/loadup-full-from-lisp.sh +++ b/scripts/loadup-full-from-lisp.sh @@ -1,25 +1,33 @@ #!/bin/sh -export MEDLEYDIR=`pwd` - if [ ! -x run-medley ] ; then echo must run from MEDLEYDIR ; exit 1 ; fi -scr="-sc 1024x768 -g 1042x790" -touch tmp/loadup.timestamp +. scripts/loadup-setup.sh -./run-medley $scr -loadup "$MEDLEYDIR/sources/LOADUP-FULL.CM" "$MEDLEYDIR/tmp/lisp.sysout" +loadup_start -if [ tmp/full.sysout -nt tmp/loadup.timestamp ]; then - - echo ---- made ---- - ls -l tmp/full.* - echo -------------- +cat >"${cmfile}" <<"EOF" +" + +(PROGN + (IL:LOAD (IL:CONCAT (QUOTE {DSK}) (IL:UNIX-GETENV (QUOTE LOADUP_SOURCEDIR))(QUOTE /LOADUP-FULL.LCOM))) + (IL:LOADUP-FULL (IL:CONCAT (QUOTE {DSK}) (IL:UNIX-GETENV(QUOTE LOADUP_WORKDIR))(IL:L-CASE (QUOTE /full.dribble)))) + (IL:HARDRESET) +) +SHH +(PROGN + (IL:ENDLOADUP) + (IL:MAKESYS (IL:CONCAT (QUOTE {DSK})(IL:UNIX-GETENV(QUOTE LOADUP_WORKDIR))(IL:L-CASE (QUOTE /full.sysout))) :FULL)) + (IL:LOGOUT T) +) + +" +EOF + +./run-medley ${scr} -loadup "${cmfile}" "${LOADUP_WORKDIR}/lisp.sysout" + +loadup_finish "full.sysout" "full.*" -else - echo XXXXX FAILURE XXXXX - ls -l tmp/full.* - exit 1 -fi diff --git a/scripts/loadup-full.sh b/scripts/loadup-full.sh index a3a06fe1..a49fdd5a 100755 --- a/scripts/loadup-full.sh +++ b/scripts/loadup-full.sh @@ -1,15 +1,14 @@ #!/bin/sh -export MEDLEYDIR=`pwd` - if [ ! -x run-medley ] ; then echo must run from MEDLEYDIR ; exit 1 ; fi +. ./scripts/loadup-setup.sh - ./scripts/loadup-init.sh && \ - ./scripts/loadup-mid-from-init.sh && \ - ./scripts/loadup-lisp-from-mid.sh && \ - ./scripts/loadup-full-from-lisp.sh +./scripts/loadup-init.sh && \ +./scripts/loadup-mid-from-init.sh && \ +./scripts/loadup-lisp-from-mid.sh && \ +./scripts/loadup-full-from-lisp.sh diff --git a/scripts/loadup-init.sh b/scripts/loadup-init.sh index 9d97dc13..5db49820 100755 --- a/scripts/loadup-init.sh +++ b/scripts/loadup-init.sh @@ -1,26 +1,45 @@ #!/bin/sh -export MEDLEYDIR=`pwd` - if [ ! -f run-medley ] ; then echo run from MEDLEYDIR exit 1 fi -scr="-sc 1024x768 -g 1042x790" +. scripts/loadup-setup.sh -mkdir -p tmp -touch tmp/loadup.timestamp +loadup_start -./run-medley $scr -loadup "$MEDLEYDIR"/sources/LOADUP-INIT.LISP loadups/starter.sysout +cat >"${cmfile}" <<"EOF" +(* "make init files; this file is loaded as a 'greet' file by scripts/loadup-init.sh") -if [ tmp/init.dlinit -nt tmp/loadup.timestamp ]; then - - echo ---- made ---- - ls -l tmp/init.* tmp/RDSYS* tmp/I-NEW* - echo -------------- +(SETQ MEDLEYDIR NIL) +(LOAD (CONCAT (UNIX-GETENV "MEDLEYDIR") "/sources/MEDLEYDIR.LCOM")) +(MEDLEY-INIT-VARS) +(CNDIR (UNIX-GETENV "LOADUP_WORKDIR")) +(DRIBBLE "init.dribble") -else - echo XXXXX FAILURE XXXXX - exit 1 -fi +(UNADVISE) +(ADVISE 'PAGEFULLFN '(RETURN)) +(ADVISE '(ERROR IN \DO-DEFINE-FILE-INFO) '(RETURN)) +(MOVD? 'NILL 'SETTEMPLATE) +(DEFINEQ (RRE (LAMBDA (X Y) Y))) +(MOVD? 'RRE 'READ-READER-ENVIRONMENT) + +(LOAD (CONCAT "{DSK}" (UNIX-GETENV "LOADUP_SOURCEDIR") "/" "MAKEINIT.LCOM")) +(PROG + ((WORKDIR (CONCAT "{DSK}" (UNIX-GETENV "LOADUP_WORKDIR") "/")) + (LOADUP-SOURCE-DIR (CONCAT "{DSK}" (UNIX-GETENV "LOADUP_SOURCEDIR") "/")) + ) + (SETQ DIRECTORIES (CONS LOADUP-SOURCE-DIR DIRECTORIES)) + (RESETLST (RESETSAVE OK.TO.MODIFY.FNS T) + (MAKEINITGREET (CONCAT WORKDIR "init.sysout") (CONCAT WORKDIR "init.dlinit")) + ) +) +(DRIBBLE) +(LOGOUT T) +STOP +EOF + +./run-medley $scr -loadup "${cmfile}" "${LOADUP_SOURCEDIR}"/starter.sysout + +loadup_finish "init.dlinit" "init.*" "RDSYS*" "I-NEW*" diff --git a/scripts/loadup-lisp-from-mid.sh b/scripts/loadup-lisp-from-mid.sh index 1c84b3e4..6888da26 100755 --- a/scripts/loadup-lisp-from-mid.sh +++ b/scripts/loadup-lisp-from-mid.sh @@ -1,25 +1,34 @@ #!/bin/sh -export MEDLEYDIR=`pwd` - if [ ! -f run-medley ] ; then echo run from MEDLEYDIR exit 1 fi -touch tmp/loadup.timestamp +. scripts/loadup-setup.sh -scr="-sc 1024x768 -g 1042x790" +loadup_start +cat >"${cmfile}" <<"EOF" +" -./run-medley $scr -loadup "$MEDLEYDIR/sources/LOADUP-LISP.CM" tmp/init-mid.sysout +(PROGN + (LOAD (CONCAT (QUOTE {DSK}) (UNIX-GETENV (QUOTE MEDLEYDIR)) (QUOTE /sources/MEDLEYDIR.LCOM))) + (MEDLEY-INIT-VARS) + (LOAD (CONCAT (QUOTE {DSK}) (UNIX-GETENV (QUOTE LOADUP_SOURCEDIR)) (QUOTE /LOADUP-LISP.LCOM))) + (LOADUP-LISP (CONCAT (QUOTE {DSK}) (UNIX-GETENV (QUOTE LOADUP_WORKDIR)) (QUOTE /lisp.dribble))) + (HARDRESET) +) +SHH +(PROGN + (IL:ENDLOADUP) + (IL:MAKESYS (IL:CONCAT (QUOTE {DSK}) (IL:UNIX-GETENV(QUOTE LOADUP_WORKDIR)) (IL:L-CASE (QUOTE /lisp.sysout))) :LISP) + (IL:LOGOUT T) +) -if [ tmp/lisp.sysout -nt tmp/loadup.timestamp ]; then - - echo ---- made ---- - ls -l tmp/lisp.* - echo -------------- -else - echo XXXXX FAILURE XXXXX - exit 1 -fi +" +EOF + +./run-medley ${scr} -loadup "${cmfile}" "${LOADUP_WORKDIR}/init-mid.sysout" + +loadup_finish "lisp.sysout" "lisp.*" diff --git a/scripts/loadup-mid-from-init.sh b/scripts/loadup-mid-from-init.sh index 8208bcda..7efc13e4 100755 --- a/scripts/loadup-mid-from-init.sh +++ b/scripts/loadup-mid-from-init.sh @@ -1,26 +1,26 @@ #!/bin/sh -export MEDLEYDIR=`pwd` - if [ ! -x run-medley ] ; then echo run from MEDLEYDIR exit 1 fi -mkdir -p "$MEDLEYDIR/tmp" -touch tmp/loadup.timestamp +. scripts/loadup-setup.sh -scr="-sc 1024x768 -g 1042x790" +loadup_start -./run-medley -prog "ldeinit" -NF -loadup $MEDLEYDIR/sources/XREM.CM $scr -vmem tmp/init-mid.sysout tmp/init.dlinit +cat >"${cmfile}" <<"EOF" +" +(MOVD? (QUOTE NILL) (QUOTE PROMPTPRINT)) +(MOVD? (QUOTE NILL) (QUOTE CURSORP)) +(MOVD? (QUOTE NILL) (QUOTE CHANGEBACKGROUNDBORDER)) +(LOGOUT) +" +EOF +./run-medley -prog "ldeinit" \ + -NF \ + -loadup "${cmfile}" ${scr} -vmem "${LOADUP_WORKDIR}/init-mid.sysout" \ + "${LOADUP_WORKDIR}/init.dlinit" -echo -if [ tmp/loadup.timestamp -nt tmp/init-mid.sysout ]; then - echo XXXXX FAILURE XXXXX - exit 1 -else - echo ---- made ---- - ls -l tmp/init-mid.sysout - echo -------------- -fi +loadup_finish "init-mid.sysout" "init-mid.sysout" diff --git a/scripts/loadup-setup.sh b/scripts/loadup-setup.sh new file mode 100644 index 00000000..28b4cb00 --- /dev/null +++ b/scripts/loadup-setup.sh @@ -0,0 +1,84 @@ + +export MEDLEYDIR=`pwd` + +if [ -z "${LOADUP_WORKDIR}" ]; +then + export LOADUP_WORKDIR=/tmp/loadups-$$ +fi + +if [ -z "${LOADUP_SOURCEDIR}" ]; +then + export LOADUP_SOURCEDIR="${MEDLEYDIR}"/internal/loadups +fi + +if [ -z "${LOADUP_OUTDIR}" ]; +then + export LOADUP_OUTDIR="${MEDLEYDIR}"/loadups +fi + +if [ ! -d "${LOADUP_OUTDIR}" ]; +then + if [ ! -e "${LOADUP_OUTDIR}" ]; + then + mkdir -p "${LOADUP_OUTDIR}" + else + "Error: ${LOADUP_OUTDIR} exists but is not a directory. Exiting." + fi +fi + +if [ ! -d "${LOADUP_WORKDIR}" ]; +then + if [ ! -e "${LOADUP_WORKDIR}" ]; + then + mkdir -p "${LOADUP_WORKDIR}" + else + "Error: ${LOADUP_WORKDIR} exists but is not a directory. Exiting." + fi +fi + + +scr="-sc 1024x768 -g 1042x790" + +touch "${LOADUP_WORKDIR}"/loadup.timestamp + +script_name=$(basename "$0" ".sh") +cmfile="${LOADUP_WORKDIR}/${script_name}.cm" + + +###################################################################### + +loadup_start () { + echo ">>>>> START ${script_name}" +} + +loadup_finish () { + local exit_code + rm -f "${cmfile}" + if [ "${LOADUP_WORKDIR}"/loadup.timestamp -nt "${LOADUP_WORKDIR}/${1}" ]; + then + echo "----- FAILURE -----" + exit_code=1 + else + echo "+++++ SUCCESS +++++" + exit_code=0 + fi + echo "..... files created ....." + shift; + for f in ${*}; + do + for ff in $(ls -1 "${LOADUP_WORKDIR}"/$f); + do + if [ "${ff}" -nt "${LOADUP_WORKDIR}"/loadup.timestamp ]; + then + ls -l ${ff} 2>/dev/null | grep -v "^.*~[0-9]\+~$" + fi + done + done + echo "<<<<< END ${script_name}" + echo "" + exit ${exit_code} +} + +###################################################################### + + diff --git a/scripts/release-make-tars.sh b/scripts/release-make-tars.sh new file mode 100755 index 00000000..64fc055c --- /dev/null +++ b/scripts/release-make-tars.sh @@ -0,0 +1,90 @@ +#!/bin/sh + +######### Functions ######## +check_exists () { + f="$1" + if [ -e "${f}" ] + then + echo "${f}" + else + echo "Warning: $f does not exist. $(basename ${f}) will not be included in release tars" 1>&2 + echo " " + fi +} +######## End Functions ####### + + +if [ ! -x run-medley ] ; then + echo run from MEDLEYDIR + exit 1 +fi +export MEDLEYDIR=`pwd` + +if [ -z "$1" ] ; then + tag=medley-$(date +%y%m%d)-$(date +%s) +else + tag="$1" +fi +short_tag="${tag#medley-}" + +dirname=$(basename "${MEDLEYDIR}") +if [ "${dirname}" = "medley" ] +then + name_xform=" " +else + uname | grep -q -i Linux + if [ $? -eq 0 ] + then + name_xform="--xform s/^${dirname}/medley/" + else + name_xform="-s /^${dirname}/medley/" + fi +fi + +cd .. +release_dir="${dirname}"/releases/"${short_tag}" +mkdir -p "${release_dir}" + +echo making releases/${short_tag}/$tag-loadups.tgz + + +tar -c -z -f "${release_dir}"/$tag-loadups.tgz \ + ${name_xform} \ + "${dirname}"/loadups/lisp.sysout \ + "${dirname}"/loadups/full.sysout \ + $(check_exists "${dirname}/loadups/apps.sysout") \ + "${dirname}"/loadups/*.dribble \ + "${dirname}"/loadups/whereis.hash \ + "${dirname}"/loadups/exports.all \ + $(check_exists "${dirname}/loadups/fuller.database") ; + +echo making releases/${short_tag}/$tag-runtime.tgz + +tar -c -z -f "${release_dir}"/$tag-runtime.tgz \ + --exclude "*~" \ + --exclude "*#*" \ + --exclude exports.all \ + --exclude "venuesysouts" \ + ${name_xform} \ + "${dirname}"/clos \ + "${dirname}"/docs/dinfo \ + "${dirname}"/docs/man-page/medley.1.gz \ + "${dirname}"/doctools \ + "${dirname}"/greetfiles \ + "${dirname}"/rooms \ + "${dirname}"/medley \ + "${dirname}"/run-medley \ + "${dirname}"/scripts \ + "${dirname}"/fonts/displayfonts \ + "${dirname}"/fonts/altofonts \ + "${dirname}"/fonts/adobe \ + "${dirname}"/fonts/postscriptfonts \ + "${dirname}"/fonts/ipfonts \ + "${dirname}"/library \ + "${dirname}"/lispusers \ + "${dirname}"/sources \ + "${dirname}"/internal \ + "${dirname}"/unicode ; + + +echo "Done with release tars" diff --git a/scripts/release-medley.sh b/scripts/release-medley.sh index a4fcf0df..68f5f77f 100755 --- a/scripts/release-medley.sh +++ b/scripts/release-medley.sh @@ -6,48 +6,39 @@ if [ ! -x run-medley ] ; then exit 1 fi -tag=$1 - -if [ -z "$tag" ] ; then - tag=medley-`date +%y%m%d` +if [ -z "$(which gh)" ]; then + echo "Error: this script requires gh (github cli) to be installed. Exiting." + exit 1 fi -cd .. +gh auth status 2>&1 | grep -i -q "Logged in to github.com" +if [ $? -ne 0 ]; then + echo 'Error: this script requires you to be logged into github. Use "gh auth login" to do so. Exiting.' + exit 1 +fi -echo making $tag-loadups.tgz +if [ "$1" = "-d" ]; then + draft="-d" + shift +else + draft="" +fi -tar cfz medley/tmp/$tag-loadups.tgz \ - medley/loadups/lisp.sysout \ - medley/loadups/full.sysout \ - medley/loadups/fuller.database \ - medley/loadups/*.dribble \ - medley/loadups/whereis.hash \ - medley/loadups//exports.all - -echo making $tag-runtime.tgz +if [ -z "$1" ] ; then + tag=medley-$(date +%y%m%d)-$(date +%s) +else + tag="$1" +fi +short_tag="${tag#medley-}" -tar cfz medley/tmp/$tag-runtime.tgz \ - --exclude "*~" --exclude "*#*" \ - medley/docs/dinfo \ - medley/doctools \ - medley/greetfiles \ - medley/rooms \ - medley/run-medley \ - medley/scripts \ - medley/fonts/displayfonts medley/fonts/altofonts \ - medley/fonts/adobe \ - medley/fonts/postscriptfonts \ - medley/library \ - medley/lispusers \ - medley/sources \ - medley/internal - -cd medley +scripts/release-make-tars.sh "${tag}" echo making release -sed s/'$tag'/$tag/g < release-notes.md > tmp/release-notes.md -gh release create $tag -F tmp/release-notes.md -p -t $tag +sed s/'$tag'/$tag/g < release-notes.md > releases/${short_tag}/release-notes.md +gh release create $tag -F releases/${short_tag}/release-notes.md -p -t $tag ${draft} echo uploading -gh release upload $tag tmp/$tag-loadups.tgz tmp/$tag-runtime.tgz --clobber +gh release upload $tag releases/${short_tag}/$tag-loadups.tgz releases/${short_tag}/$tag-runtime.tgz --clobber + +echo "Done with release ${tag}" diff --git a/sources/LOADUP-APPS.CM b/sources/LOADUP-APPS.CM deleted file mode 100644 index d41a71c3..00000000 --- a/sources/LOADUP-APPS.CM +++ /dev/null @@ -1 +0,0 @@ -" (PROGN (IL:MEDLEY-INIT-VARS 'IL:GREET) (IL:LOAD (IL:CONCAT (QUOTE {DSK}) (IL:UNIX-GETENV(QUOTE NOTECARDSDIR))(QUOTE |/system/NOTECARDS.LCOM|)) 'IL:SYSLOAD) (IL:LOAD (IL:CONCAT (QUOTE {DSK}) (IL:UNIX-GETENV(QUOTE ROOMSDIR))(QUOTE /ROOMS)) 'IL:SYSLOAD) (IL:LOAD (IL:CONCAT (QUOTE {DSK}) (IL:UNIX-GETENV(QUOTE CLOSDIR))(QUOTE /DEFSYS.DFASL)) 'IL:SYSLOAD) (IL:LOAD (IL:CONCAT (QUOTE {DSK}) (IL:UNIX-GETENV(QUOTE MEDLEYDIR))(QUOTE |lispusers/BUTTONS.LCOM|)) 'IL:SYSLOAD) (IL:LOAD (IL:CONCAT (QUOTE {DSK}) (IL:UNIX-GETENV(QUOTE MEDLEYDIR))(QUOTE |/sources/LOADUP-APPS.LCOM|)) 'IL:SYSLOAD ) (IL:HARDRESET) ) SHH (PROGN (IL:ENDLOADUP) (CLOS::LOAD-CLOS) (IL:|Apps.LOADUP|) (IL:MAKESYS (IL:CONCAT (QUOTE {DSK})(IL:UNIX-GETENV(QUOTE SYSOUTDIR))(IL:L-CASE (QUOTE /apps.sysout))) :APPS) ) (IL:LOGOUT T) " \ No newline at end of file diff --git a/sources/LOADUP-FULL.CM b/sources/LOADUP-FULL.CM deleted file mode 100644 index 5f13dad3..00000000 --- a/sources/LOADUP-FULL.CM +++ /dev/null @@ -1 +0,0 @@ -" (PROGN(IL:LOAD(IL:CONCAT(QUOTE {DSK})(IL:UNIX-GETENV(QUOTE MEDLEYDIR))(QUOTE /sources/LOADUP-FULL.LCOM)))(IL:LOADUP-FULL)(IL:HARDRESET)) SHH(PROGN(IL:ENDLOADUP)(IL:MAKESYS (IL:CONCAT (QUOTE {DSK})(IL:UNIX-GETENV(QUOTE MEDLEYDIR))(IL:L-CASE (QUOTE /tmp/full.sysout))) :FULL)) (IL:LOGOUT T) " \ No newline at end of file diff --git a/sources/LOADUP-INIT.LISP b/sources/LOADUP-INIT.LISP deleted file mode 100644 index 31cb03b3..00000000 --- a/sources/LOADUP-INIT.LISP +++ /dev/null @@ -1,19 +0,0 @@ -(* "make init files; this file is loaded as a 'greet' file by scripts/loadup-init.sh") - -(LOAD (CONCAT (UNIX-GETENV "MEDLEYDIR") "/sources/MEDLEYDIR.LCOM")) -(CNDIR (MEDLEYDIR "tmp")) -(DRIBBLE "init.dribble") - -(UNADVISE) -(ADVISE 'PAGEFULLFN '(RETURN)) -(ADVISE '(ERROR IN \DO-DEFINE-FILE-INFO) '(RETURN)) -(MOVD? 'NILL 'SETTEMPLATE) -(DEFINEQ (RRE (LAMBDA (X Y) Y))) -(MOVD? 'RRE 'READ-READER-ENVIRONMENT) - -(LOAD (MEDLEYDIR "sources" "MAKEINIT.LCOM")) -(MAKEINITGREET) -(DRIBBLE) -(LOGOUT T) -STOP - diff --git a/sources/LOADUP-LISP.CM b/sources/LOADUP-LISP.CM deleted file mode 100644 index 641c5f83..00000000 --- a/sources/LOADUP-LISP.CM +++ /dev/null @@ -1 +0,0 @@ -" (PROGN(LOAD(CONCAT(QUOTE {DSK})(UNIX-GETENV(QUOTE MEDLEYDIR))(QUOTE /sources/LOADUP-LISP.LCOM)))(LOADUP-LISP)(HARDRESET)) SHH(PROGN(IL:ENDLOADUP)':MEDLEY)(IL:MAKESYS (IL:CONCAT (QUOTE {DSK})(IL:UNIX-GETENV(QUOTE MEDLEYDIR))(IL:L-CASE (QUOTE /tmp/lisp.sysout))))) (IL:LOGOUT T) " \ No newline at end of file diff --git a/sources/LOADUP-LISP.LCOM b/sources/LOADUP-LISP.LCOM deleted file mode 100644 index 8e01adf6..00000000 Binary files a/sources/LOADUP-LISP.LCOM and /dev/null differ diff --git a/sources/MAKEINIT.LCOM b/sources/MAKEINIT.LCOM deleted file mode 100644 index 9342cf53..00000000 Binary files a/sources/MAKEINIT.LCOM and /dev/null differ diff --git a/sources/XREM.CM b/sources/XREM.CM deleted file mode 100644 index 1cd92bd7..00000000 --- a/sources/XREM.CM +++ /dev/null @@ -1,6 +0,0 @@ -" -(MOVD? (QUOTE NILL) (QUOTE PROMPTPRINT)) -(MOVD? (QUOTE NILL) (QUOTE CURSORP)) -(MOVD? (QUOTE NILL) (QUOTE CHANGEBACKGROUNDBORDER)) -(LOGOUT) -"