first version of the installer

This commit is contained in:
Bert van der Weerd 2021-02-06 13:45:32 +01:00
parent a783187ed4
commit 54bd5916c8
6 changed files with 113 additions and 13 deletions

2
.gitignore vendored
View file

@ -4,3 +4,5 @@ megabar.patch
remove_addons.patch remove_addons.patch
unity-menubar.patch unity-menubar.patch
mozconfig mozconfig
Makefile
librewolf

View file

@ -154,7 +154,7 @@ installer_win() {
# there is just too much garbage in this installer function to # there is just too much garbage in this installer function to
# have it all here.. # have it all here..
. ../installer_win . ../installer_win.sh
cd .. cd ..
} }
@ -194,6 +194,10 @@ fi
if (( done_something == 0 )); then if (( done_something == 0 )); then
echo "Usage: $0 fetch | prepare | build | package | installer_win" fetch
prepare
build
package
installer_win
exit exit
fi fi

View file

@ -1,11 +0,0 @@
# apply the LibreWolf settings
cp -rv ../settings/* obj-x86_64-pc-mingw32/dist/librewolf
# recreate the zip file..
cd obj-x86_64-pc-mingw32/dist
rm -f librewolf-$pkgver.en-US.win64.txt librewolf-$pkgver.en-US.win64.zip
zip -r9 librewolf-$pkgver.en-US.win64.zip librewolf
/c/mozilla-source/Git/usr/bin/sha256sum.exe librewolf-$pkgver.en-US.win64.zip > librewolf-$pkgver.en-US.win64.zip.sha256sum
rm -f ../../../librewolf-$pkgver.en-US.win64.zip*
cp librewolf-$pkgver.en-US.win64.zip* ../../..
cd ../..

24
installer_win.sh Normal file
View file

@ -0,0 +1,24 @@
# apply the LibreWolf settings
cp -rv ../settings/* obj-x86_64-pc-mingw32/dist/librewolf
# recreate the zip file..
cd obj-x86_64-pc-mingw32/dist
# clean garbage files
rm -rf librewolf/uninstall librewolf/maintenanceservice* librewolf/pingsender.exe
# be sure to remove the previous zip file..
rm -f librewolf-$pkgver.en-US.win64.txt librewolf-$pkgver.en-US.win64.zip
zip -r9 librewolf-$pkgver.en-US.win64.zip librewolf
/c/mozilla-source/Git/usr/bin/sha256sum.exe librewolf-$pkgver.en-US.win64.zip > librewolf-$pkgver.en-US.win64.zip.sha256sum
# copy the resulting zip file
rm -vf ../../../librewolf-$pkgver.en-US.win64.zip*
cp -v librewolf-$pkgver.en-US.win64.zip* ../../..
cd ../..
# now to try to make the installer
pushd ..
rm -vrf librewolf
unzip librewolf-$pkgver.en-US.win64.zip
cp -v missing_branding_files/firefox.ico librewolf/librewolf.ico
makensis-3.01.exe librewolf.nsi
popd

81
librewolf.nsi Normal file
View file

@ -0,0 +1,81 @@
#
# Change these values to fit your application...
#
!define APPNAME "LibreWolf" # Full app name, like: Gtk+ 2.0 Hello World
!define PROGNAME "librewolf" # executable name, like: gtk2hello
!define PROG_VERSION "85.0" # the program version, like: 0.3.0
!define ICON_NAME "librewolf.ico" # filename of icon to use for this app, this file should be in src/
!define COMPANYNAME "LibreWolf" # Your name, or company (or just the program name)
!define ESTIMATED_SIZE 190000 # Estimated size (in KB) of installed program for use in "add or remove programs" / 190 MB
#
# The actual installer/uninstaller, you should not need to change much here below
#
Name "${PROGNAME}"
OutFile "${PROGNAME}-${PROG_VERSION}.en-US.win64-setup.exe"
InstallDir $PROGRAMFILES64\${APPNAME}
RequestExecutionLevel admin
Page directory
Page instfiles
function .onInit
setShellVarContext all
functionEnd
Section "${PROGNAME}"
# Copy files
SetOutPath $INSTDIR
File /r librewolf\*.*
# Start Menu
createDirectory "$SMPROGRAMS\${COMPANYNAME}"
createShortCut "$SMPROGRAMS\${COMPANYNAME}\${APPNAME}.lnk" "$INSTDIR\${PROGNAME}.exe" "" "$INSTDIR\${ICON_NAME}"
# Uninstaller
writeUninstaller "$INSTDIR\uninstall.exe"
# Registry information for add/remove programs
WriteRegStr HKLM "Software\Microsoft\Windows\CurrentVersion\Uninstall\${COMPANYNAME} ${APPNAME}" "DisplayName" "${APPNAME}"
WriteRegStr HKLM "Software\Microsoft\Windows\CurrentVersion\Uninstall\${COMPANYNAME} ${APPNAME}" "UninstallString" "$\"$INSTDIR\uninstall.exe$\""
WriteRegStr HKLM "Software\Microsoft\Windows\CurrentVersion\Uninstall\${COMPANYNAME} ${APPNAME}" "QuietUninstallString" "$\"$INSTDIR\uninstall.exe$\" /S"
WriteRegStr HKLM "Software\Microsoft\Windows\CurrentVersion\Uninstall\${COMPANYNAME} ${APPNAME}" "InstallLocation" "$\"$INSTDIR$\""
WriteRegStr HKLM "Software\Microsoft\Windows\CurrentVersion\Uninstall\${COMPANYNAME} ${APPNAME}" "DisplayIcon" "$\"$INSTDIR\${ICON_NAME}$\""
WriteRegStr HKLM "Software\Microsoft\Windows\CurrentVersion\Uninstall\${COMPANYNAME} ${APPNAME}" "Publisher" "${COMPANYNAME}"
WriteRegStr HKLM "Software\Microsoft\Windows\CurrentVersion\Uninstall\${COMPANYNAME} ${APPNAME}" "DisplayVersion" "${PROG_VERSION}"
# There is no option for modifying or repairing the install
WriteRegDWORD HKLM "Software\Microsoft\Windows\CurrentVersion\Uninstall\${COMPANYNAME} ${APPNAME}" "NoModify" 1
WriteRegDWORD HKLM "Software\Microsoft\Windows\CurrentVersion\Uninstall\${COMPANYNAME} ${APPNAME}" "NoRepair" 1
# Set the INSTALLSIZE constant (!defined at the top of this script) so Add/Remove Programs can accurately report the size
WriteRegDWORD HKLM "Software\Microsoft\Windows\CurrentVersion\Uninstall\${COMPANYNAME} ${APPNAME}" "EstimatedSize" ${ESTIMATED_SIZE}
SectionEnd
# Before uninstall, ask for confirmation
function un.onInit
SetShellVarContext all
#Verify the uninstaller - last chance to back out
MessageBox MB_OKCANCEL "Permanantly remove ${APPNAME}?" IDOK next
Abort
next:
functionEnd
# Uninstaller
section "uninstall"
# Remove Start Menu launcher
delete "$SMPROGRAMS\${COMPANYNAME}\${APPNAME}.lnk"
# Try to remove the Start Menu folder - this will only happen if it is empty
rmDir "$SMPROGRAMS\${COMPANYNAME}"
# Remove files
rmDir /r $INSTDIR
# Remove uninstaller information from the registry
DeleteRegKey HKLM "Software\Microsoft\Windows\CurrentVersion\Uninstall\${COMPANYNAME} ${APPNAME}"
sectionEnd

Binary file not shown.

After

Width:  |  Height:  |  Size: 31 KiB