This commit is contained in:
Bert van der Weerd 2021-02-07 19:29:41 +01:00 committed by Shreyas Minocha
parent 61a7db5764
commit d96f568e21
No known key found for this signature in database
GPG key ID: 3740FE9FC5772203
4 changed files with 115 additions and 14 deletions

View file

@ -18,8 +18,14 @@ For now, if you want to attempt to build, this build does require you to:
* First build the mozilla-unified as explained in the mozilla docs, using all the ./mach bootstrap stuff * First build the mozilla-unified as explained in the mozilla docs, using all the ./mach bootstrap stuff
* You can delete this mozilla-unified thing to save some space (try ./mach run on it just for fun) * You can delete this mozilla-unified thing to save some space (try ./mach run on it just for fun)
* Then clone the windows repo * Then clone the windows repo:
* cd into it, and build with: **time bash build.sh** ```
git clone --recursive https://gitlab.com/librewolf-community/browser/windows.git
```
* cd into it, and build with:
```
bash build.sh
```
* You can perform each of the build steps individually and the overall script structure follows PKGBULD as used on Archlinux * You can perform each of the build steps individually and the overall script structure follows PKGBULD as used on Archlinux
* This will produce a **librewolf-85.0.en-US.win64.zip** in this windows folder. * This will produce a **librewolf-85.0.en-US.win64.zip** in this windows folder.
@ -32,7 +38,9 @@ build.sh
-------- --------
You can perform all the steps on one go, or perform the build steps individually, to note: You can perform all the steps on one go, or perform the build steps individually, to note:
* build.sh fetch prepare build package installer_win ```
bash build.sh fetch prepare build package installer_win
```
To do: To do:
------ ------
@ -43,8 +51,8 @@ To do:
* problem with old sed. does not recognize -z. using the one from Git might be a work around. * problem with old sed. does not recognize -z. using the one from Git might be a work around.
Branding issue: resource files Branding issue(s): resource files
------------------------------ ---------------------------------
* This section is just some notes. * This section is just some notes.
* Build fail on missing stubinstaller (might be a FF bug as it should just take missing * Build fail on missing stubinstaller (might be a FF bug as it should just take missing

View file

@ -4,7 +4,7 @@
pkgname=librewolf pkgname=librewolf
_pkgname=LibreWolf _pkgname=LibreWolf
pkgver=85.0 pkgver=85.0.1

View file

@ -2,10 +2,10 @@
# Change these values to fit your application... # Change these values to fit your application...
# #
!define APPNAME "LibreWolf" # Full app name, like: Gtk+ 2.0 Hello World !define APPNAME "LibreWolf" # Full app name, like: "Gtk+ 2.0 Hello World"
!define PROGNAME "librewolf" # executable name, like: gtk2hello !define PROGNAME "librewolf" # executable name, like: gtk2hello
!define PROG_VERSION "85.0" # the program version, like: 0.3.0 !define PROG_VERSION "85.0.1" # 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 ICON_NAME "librewolf.ico" # filename of icon to use for this app
!define COMPANYNAME "LibreWolf" # Your name, or company (or just the program name) !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 !define ESTIMATED_SIZE 190000 # Estimated size (in KB) of installed program for use in "add or remove programs" / 190 MB

View file

@ -14,11 +14,104 @@ cd obj-x86_64-pc-mingw32/dist
cp -v librewolf-$pkgver.en-US.win64.zip* ../../.. cp -v librewolf-$pkgver.en-US.win64.zip* ../../..
cd ../.. cd ../..
# now to try to make the installer
# generate the .nsi intaller file.
cat >../installer_win.nsi <<END
#
# 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 "${pkgver}" # the program version, like: 0.3.0
!define ICON_NAME "librewolf.ico" # filename of icon to use for this app
!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
END
# now to try to make the installer.
pushd .. pushd ..
rm -vrf librewolf rm -vrf librewolf
unzip librewolf-$pkgver.en-US.win64.zip unzip librewolf-$pkgver.en-US.win64.zip
cp -v missing_branding_files/firefox.ico librewolf/librewolf.ico cp -v missing_branding_files/firefox.ico librewolf/librewolf.ico
makensis-3.01.exe librewolf.nsi makensis-3.01.exe installer_win.nsi
/c/mozilla-source/Git/usr/bin/sha256sum.exe librewolf-$pkgver.en-US.win64-setup.exe > librewolf-$pkgver.en-US.win64-setup.exe.sha256sum /c/mozilla-source/Git/usr/bin/sha256sum.exe librewolf-$pkgver.en-US.win64-setup.exe > librewolf-$pkgver.en-US.win64-setup.exe.sha256sum
popd popd