Other than SRFI packages are now made to setup exe
This commit is contained in:
		
						commit
						8d794602bc
					
				|  | @ -0,0 +1,6 @@ | ||||||
|  | *.swp | ||||||
|  | repo.scm | ||||||
|  | urls.txt | ||||||
|  | snow | ||||||
|  | setup_snow.exe | ||||||
|  | setup_srfi*.exe | ||||||
|  | @ -0,0 +1,4 @@ | ||||||
|  | FROM alpine:latest | ||||||
|  | RUN apk add wine | ||||||
|  | COPY ./executables/nsis-3.10-setup.exe /setup.exe | ||||||
|  | RUN wine setup.exe /S | ||||||
|  | @ -0,0 +1,24 @@ | ||||||
|  | pipeline { | ||||||
|  | 
 | ||||||
|  |     agent { | ||||||
|  |         dockerfile { | ||||||
|  |             filename 'Dockerfile.jenkins' | ||||||
|  |             dir '.' | ||||||
|  |             args '--privileged -v /var/run/docker.sock:/var/run/docker.sock' | ||||||
|  |         } | ||||||
|  |     } | ||||||
|  | 
 | ||||||
|  |     options { | ||||||
|  |         buildDiscarder(logRotator(numToKeepStr: '10', artifactNumToKeepStr: '10')) | ||||||
|  |     } | ||||||
|  | 
 | ||||||
|  |     stages { | ||||||
|  |         stage("Build") { | ||||||
|  |             steps { | ||||||
|  |                 sh 'make' | ||||||
|  |                 archiveArtifacts artifacts: 'setup_*.exe' | ||||||
|  |             } | ||||||
|  |         } | ||||||
|  |     } | ||||||
|  | } | ||||||
|  | 
 | ||||||
|  | @ -0,0 +1,15 @@ | ||||||
|  | build: snow | ||||||
|  | 	wine ${HOME}/.wine/drive_c/Program\ Files\ \(x86\)/NSIS/makensis.exe install.nsi | ||||||
|  | 
 | ||||||
|  | repo.scm: | ||||||
|  | 	wget https://snow-fort.org/s/repo.scm | ||||||
|  | 
 | ||||||
|  | urls.txt: repo.scm | ||||||
|  | 	gosh -r7 get-archive-urls.scm > urls.txt | ||||||
|  | 
 | ||||||
|  | snow: urls.txt | ||||||
|  | 	sh download.sh | ||||||
|  | 
 | ||||||
|  | clean: | ||||||
|  | 	rm -rf repo.scm | ||||||
|  | 	rm -rf snow | ||||||
|  | @ -0,0 +1,10 @@ | ||||||
|  | 
 | ||||||
|  | ## Note about SRFIs | ||||||
|  | 
 | ||||||
|  | SRFI packages are not inluded in the setup executable as | ||||||
|  | there might be more than one implementation. | ||||||
|  | 
 | ||||||
|  | 
 | ||||||
|  | ## Installation | ||||||
|  | 
 | ||||||
|  | Download the latest setup executable from Jenkins. | ||||||
|  | @ -0,0 +1,13 @@ | ||||||
|  | #!/bin/sh | ||||||
|  | 
 | ||||||
|  | set -eu | ||||||
|  | 
 | ||||||
|  | TMPDIR=/tmp/r7rs-windows-installer-archives | ||||||
|  | mkdir -p ${TMPDIR} | ||||||
|  | mkdir -p snow | ||||||
|  | 
 | ||||||
|  | while read url | ||||||
|  | do | ||||||
|  |     wget -O ${TMPDIR}/archive.tgz ${url} | ||||||
|  |     tar -Pxf ${TMPDIR}/archive.tgz --strip-components=1 -C ./snow | ||||||
|  | done <urls.txt | ||||||
										
											Binary file not shown.
										
									
								
							|  | @ -0,0 +1,29 @@ | ||||||
|  | (import (scheme base) | ||||||
|  |         (scheme read) | ||||||
|  |         (scheme write) | ||||||
|  |         (scheme file) | ||||||
|  |         (scheme process-context)) | ||||||
|  | 
 | ||||||
|  | (define repository (with-input-from-file "repo.scm" (lambda () (read)))) | ||||||
|  | (define baseurl "https://snow-fort.org") | ||||||
|  | 
 | ||||||
|  | (define packager-is-srfi? | ||||||
|  |   (lambda (package) | ||||||
|  |     (let ((is-srfi? #f)) | ||||||
|  |       (for-each | ||||||
|  |         (lambda (item) | ||||||
|  |           (when (and (equal? (car item) 'library) | ||||||
|  |                      (equal? (car (cadr (assoc 'name item))) 'srfi)) | ||||||
|  |             (set! is-srfi? #t))) | ||||||
|  |         (cdr package)) | ||||||
|  |       is-srfi?))) | ||||||
|  | 
 | ||||||
|  | (for-each | ||||||
|  |   (lambda (item) | ||||||
|  |     (when (and (equal? (car item) 'package) | ||||||
|  |                (not (packager-is-srfi? item))) | ||||||
|  |       (display baseurl) | ||||||
|  |       (display (cadr (assoc 'url item))) | ||||||
|  |       (newline))) | ||||||
|  |   (cdr repository)) | ||||||
|  | 
 | ||||||
|  | @ -0,0 +1,10 @@ | ||||||
|  | OutFile "setup_snow.exe" | ||||||
|  | InstallDir "$PROGRAMFILES64" | ||||||
|  | 
 | ||||||
|  | Section | ||||||
|  |     SetOutPath "$INSTDIR" | ||||||
|  |     RMDir "$INSTDIR" | ||||||
|  |     File /r "snow" | ||||||
|  |     Push "$INSTDIR" | ||||||
|  | SectionEnd | ||||||
|  | 
 | ||||||
		Loading…
	
		Reference in New Issue