Nativefier - Allons plus loin avec les web apps
Nous avons vu dans Création de web app comme créer des Web Apps pour les sites.
Nous allons voir ici comment créer des web apps pour Netflix, Disney+ et compagnie, qui seront en flux HD.
Voici les options à rajouter à la commande de création de Web Apps, par exemple pour Netflix :
nativefier -n "Netlix" "https://Netflix.com/" -e "15.3.5" --widevine --enable-es3-apis --icon "./netflix-icon.png"
Il faut en effet rajouter :
--widevine : pour la compatibilité des DRM
-e "15.3.5" : La version electron compatible avec Widevine
--enable-es3-apis : force l'activation de WebGL 2.0
Le script :
J'ai fini par créer un script qui permet d'automatiser toutes ces actions avec le choix de rajouter des options supplémentaires ou non en fonction de la Web Apps à créer.
Une liste d'option qui peuvent être rajoutés à la commande, certaines seront rajoutés au script pour compléter les options disponibles.
====== App Creation Options ======
-p, --platform the operating system platform to build for
[chaîne de caractères] [choix : "darwin", "linux", "mac", "mas", "osx", "win32", "windows"] [défaut : current operating system]
--portable make the app store its user data in the app folder; WARNING: see
https://github.com/nativefier/nativefier/blob/master/API.md#portable for security risks
[booléen] [défaut : false]
--upgrade upgrade an app built by an older version of Nativefier
You must pass the full path to the existing app executable (app will be overwritten with upgraded version
by default)
====== App Window Options ======
--always-on-top enable always on top window [booléen] [défaut : false]
--background-color set the app background color, for better integration while the app is loading. Example value:
'#2e2c29' [chaîne de caractères]
--bookmarks-menu create a bookmarks menu (via JSON file); See
https://github.com/nativefier/nativefier/blob/master/API.md#bookmarks-menu [chaîne de caractères]
--full-screen always start the app full screen [booléen] [défaut : false]
--height set window default height in pixels [nombre] [défaut : 800]
-m, --show-menu-bar set menu bar visible [booléen] [défaut : false]
--max-width set window maximum width in pixels [nombre] [défaut : unlimited]
--max-height set window maximum height in pixels [nombre] [défaut : unlimited]
--maximize always start the app maximized [booléen] [défaut : false]
--min-height set window minimum height in pixels [nombre] [défaut : 0]
--min-width set window minimum width in pixels [nombre] [défaut : 0]
opened
--single-instance allow only a single instance of the app [booléen] [défaut : false]
--tray allow app to stay in system tray. If 'start-in-tray' is set as argument, don't show main window on
first start [choix : "true", "false", "start-in-tray"] [défaut : "false"]
--width app window default width in pixels [nombre] [défaut : 1280]
====== Internal Browser Options ======
--file-download-options a JSON string defining file download options; see https://github.com/sindresorhus/electron-dl
--lang set the language or locale to render the web site as (e.g., "fr", "en-US", "es", etc.)
[chaîne de caractères] [défaut : os language at runtime of the app]
-u, --user-agent set the app's user agent string; may also use 'edge', 'firefox', or 'safari' to have one
auto-generated [chaîne de caractères]
====== Internal Browser Cache Options ======
--clear-cache prevent the app from preserving cache between launches [booléen] [défaut : false]
--disk-cache-size set the maximum disk space (in bytes) to be used by the disk cache [nombre] [défaut : chromium default]
====== URL Handling Options ======
--block-external-urls forbid navigation to URLs not considered "internal" (see '--internal-urls'). Instead of opening in
an external browser, attempts to navigate to external URLs will be blocked [booléen] [défaut : false]
--internal-urls regex of URLs to consider "internal"; by default matches based on domain (see
'--strict-internal-urls'); all other URLs will be opened in an external browser
[chaîne de caractères] [défaut : URLs sharing the same base domain]
====== Auth Options ======
--basic-auth-password basic http(s) auth password [chaîne de caractères]
--basic-auth-username basic http(s) auth username [chaîne de caractères]
====== Graphics Options ======
--disable-gpu disable hardware acceleration [booléen] [défaut : false]
--enable-es3-apis force activation of WebGL 2.0 [booléen] [défaut : false]
--ignore-gpu-blacklist force WebGL apps to work on unsupported GPUs [booléen] [défaut : false]
====== (In)Security Options ======
--ignore-certificate ignore certificate-related errors [booléen] [défaut : false]
--insecure enable loading of insecure content [booléen] [défaut : false]
====== Platform-Specific Options ======
--app-copyright (macOS, windows only) set a human-readable copyright line for the app; maps to `LegalCopyright`
metadata property on Windows, and `NSHumanReadableCopyright` on macOS [chaîne de caractères]
--app-version (macOS, windows only) set the version of the app; maps to the `ProductVersion` metadata property
on Windows, and `CFBundleShortVersionString` on macOS [chaîne de caractères]
--bounce (macOS only) make the dock icon bounce when the counter increases [booléen] [défaut : false]
--build-version (macOS, windows only) set the build version of the app; maps to `FileVersion` metadata property
on Windows, and `CFBundleVersion` on macOS [chaîne de caractères]
====== Debug Options ======
--crash-reporter remote server URL to send crash reports [chaîne de caractères]
--verbose enable verbose/debug/troubleshooting logs [booléen] [défaut : false]
--quiet suppress all logging [booléen] [défaut : false]
Other Options
--version Affiche le numéro de version [booléen]
--help Affiche l'aide [booléen]
Je mettrai à jour cet article pour des compléments d'information ou autres.
Source :
Dépôt github