mirror of
https://github.com/netsurf-browser/netsurf
synced 2024-12-22 04:02:34 +03:00
fdbb413403
Several relocatable modules are distributed with the RISC OS version. The !Run file checks for their presence and version number. However, if the check fails, the user is referred to dead links. This fixes this to requested an update to the !System folder from the NS archive, using the Configure app. Closes: 2441
110 lines
5.1 KiB
Plaintext
110 lines
5.1 KiB
Plaintext
| Run file for NetSurf.
|
|
|
|
|
| This file ensures that the system resources required by NetSurf are
|
|
| present. Additionally, it forces setting of system variables related
|
|
| to NetSurf.
|
|
|
|
| Set system variables and application sprites
|
|
Set NetSurf$ForceVars 1
|
|
/<Obey$Dir>.!Boot
|
|
UnSet NetSurf$ForceVars
|
|
|
|
| Configure logging. Set 1 to enable, or 0 to suppress.
|
|
Set NetSurf$Logging 1
|
|
|
|
| Detect if NetSurf is already running and, if so, force the
|
|
| current instance to open a new window. Then stop this script.
|
|
Set Alias$NetSurfRunning UnSet Alias$NetSurfRunning|mUnSet NetSurf$Running|mObey
|
|
Set NetSurf$Running 0
|
|
WimpSlot -min 64k -max 64k
|
|
/<NetSurf$Dir>.KickNS
|
|
| If not running, then unset system variables and continue
|
|
If "<NetSurf$Running>" = "0" Then Set Alias$NetSurfRunning UnSet Alias$NetSurfRunning|mUnSet NetSurf$Running
|
|
| Invoke our alias to clean up
|
|
NetSurfRunning
|
|
|
|
| Resource Locations
|
|
| The following are read-only locations
|
|
SetMacro NetSurf$Path Choices:WWW.NetSurf.,<NetSurf$Dir>.
|
|
| The following are write-only locations
|
|
SetMacro NetSurf$ChoicesSave <Choices$Write>.WWW.NetSurf.Choices
|
|
|
|
| We need RISC OS 3
|
|
RMEnsure UtilityModule 3.00 Error NetSurf needs RISC OS 3 or later
|
|
|
|
| Ensure Nested WIMP is installed
|
|
| http://acorn.riscos.com/ (in the universal boot archive)
|
|
RMEnsure WindowManager 3.80 Error NetSurf requires the Nested Window Manager. This can be obtained by downloading the Universal Boot sequence from http://acorn.riscos.com/
|
|
|
|
| Check for various key resources - can't do much if they don't exist
|
|
If "<System$Path>" = "" Then Set System$Path_Message System resources not found.
|
|
If "<Wimp$ScrapDir>" = "" Then Error Scrap resource not found.
|
|
If "<InetDBase$Path>" = "" Then Error Internet resources can not be found
|
|
If "<Unicode$Path>" = "" Then Error NetSurf requires the !Unicode resource. This can be found, along with the Iconv module, at http://www.netsurf-browser.org/projects/iconv/
|
|
If "<Inet$MimeMappings>" = "" Then Set Inet$MimeMappings InetDBase:MimeMap
|
|
|
|
| Define this alias for clarity
|
|
| Syntax: NetSurfRMLoad <Path to module>
|
|
Set Alias$NetSurfRMLoad IfThere %%*0 Then RMLoad %%*0
|
|
|
|
| Ensure a 32bit SharedCLibrary is installed
|
|
| (5.17 == first 32bit SCL, 5.43 == C99 features)
|
|
RMEnsure SharedCLibrary 5.17 NetSurfRMLoad System:Modules.CLib
|
|
RMEnsure SharedCLibrary 5.43 Error NetSurf requires SharedCLibrary 5.43 or later. This can be downloaded from https://www.riscosopen.org/content/downloads/common
|
|
|
|
| Ensure CallASWI is installed
|
|
RMEnsure UtilityModule 3.70 RMEnsure CallASWI 0.02 NetSurfRMLoad System:Modules.CallASWI
|
|
RMEnsure UtilityModule 3.70 RMEnsure CallASWI 0.02 Error NetSurf requires the CallASWI module. This can be downloaded from https://www.riscosopen.org/content/downloads/common
|
|
|
|
| Ensure DrawFile module is installed
|
|
| Should be installed in !System.310.Modules
|
|
RMEnsure DrawFile 1.30 NetSurfRMLoad System:Modules.DrawFile
|
|
RMEnsure DrawFile 1.30 Error NetSurf requires the DrawFile module. This can be downloaded from https://www.riscosopen.org/content/downloads/common
|
|
|
|
| Ensure SharedUnixLibrary is installed
|
|
RMEnsure SharedUnixLibrary 1.07 NetSurfRMLoad System:Modules.SharedULib
|
|
RMEnsure SharedUnixLibrary 1.07 Error NetSurf requires SharedUnixLibrary 1.07 or later. Please use the RISC OS Configure app to update the computer's !System directory from the NetSurf archive.
|
|
|
|
| Load AcornURI if it isn't already
|
|
Unset NetSurf$Start_URI_Handler
|
|
RMEnsure AcornURI 0.12 Set NetSurf$Start_URI_Handler 1
|
|
RMEnsure AcornURI 0.12 NetSurfRMLoad System:Modules.Network.URI
|
|
RMEnsure AcornURI 0.12 Error NetSurf requires AcornURI 0.12 or later. Please use the RISC OS Configure app to update the computer's !System directory from the NetSurf archive.
|
|
RMEnsure AcornURI 0.12 Unset NetSurf$Start_URI_Handler
|
|
|
|
| Check for mime map module
|
|
RMEnsure MimeMap 0.10 NetSurfRMLoad System:Modules.Network.MimeMap
|
|
RMEnsure MimeMap 0.10 Error NetSurf requires MimeMap 0.10 or later
|
|
|
|
| Ensure Tinct is loaded
|
|
RMEnsure Tinct 0.13 NetSurfRMLoad System:Modules.Tinct
|
|
RMEnsure Tinct 0.13 Error NetSurf requires Tinct 0.13 or later. Please use the RISC OS Configure app to update the computer's !System directory from the NetSurf archive.
|
|
|
|
| Ensure Iconv
|
|
RMEnsure Iconv 0.12 NetSurfRMLoad System:Modules.Iconv
|
|
RMEnsure Iconv 0.12 Error NetSurf requires Iconv 0.12 or later. Please use the RISC OS Configure app to update the computer's !System directory from the NetSurf archive.
|
|
|
|
| Ensure CryptRandom
|
|
RMEnsure CryptRandom 0.13 NetSurfRMLoad System:Modules.CryptRand
|
|
RMEnsure CryptRandom 0.13 Error NetSurf requires CryptRandom 0.13 or later. Please use the RISC OS Configure app to update the computer's !System directory from the NetSurf archive.
|
|
|
|
| Disable SpecialFX, if present
|
|
Set NetSurf$SpecialFX 1
|
|
RMEnsure SpecialFX 1.00 Set NetSurf$SpecialFX 0
|
|
If <NetSurf$SpecialFX> Then SpecialFX ~B~G~L NetSurf
|
|
Unset NetSurf$SpecialFX
|
|
|
|
| No longer need this alias
|
|
Unset Alias$NetSurfRMLoad
|
|
|
|
| Now attempt to create Scrap directories
|
|
CDir <Wimp$ScrapDir>.WWW
|
|
CDir <Wimp$ScrapDir>.WWW.NetSurf
|
|
|
|
| Install NetSurf-specific fonts
|
|
| NB: trailing dot is required
|
|
FontInstall NetSurf:Resources.Fonts.
|
|
|
|
WIMPSLOT
|
|
Run <NetSurf$Dir>.!RunImage %*0 2><Wimp$ScrapDir>.WWW.NetSurf.Log
|