var platforms = ["win", "unix"]; var platform_override = null; function detect_platform() { "use strict"; if (platform_override !== null) { return "unknown"; } var os = "unknown"; if (navigator.platform == "Linux x86_64") {os = "unix";} if (navigator.platform == "Linux i686") {os = "unix";} if (navigator.platform == "Linux i686 on x86_64") {os = "unix";} if (navigator.platform == "Linux aarch64") {os = "unix";} if (navigator.platform == "Linux armv6l") {os = "unix";} if (navigator.platform == "Linux armv7l") {os = "unix";} if (navigator.platform == "Linux armv8l") {os = "unix";} if (navigator.platform == "Linux ppc64") {os = "unix";} if (navigator.platform == "Linux mips") {os = "unix";} if (navigator.platform == "Linux mips64") {os = "unix";} if (navigator.platform == "Mac") {os = "unix";} if (navigator.platform == "Win32") {os = "win";} if (navigator.platform == "Win64" || navigator.userAgent.indexOf("WOW64") != -1 || navigator.userAgent.indexOf("Win64") != -1) {os = "win";} if (navigator.platform == "FreeBSD x86_64") {os = "unix";} if (navigator.platform == "FreeBSD amd64") {os = "unix";} // if (navigator.platform == "NetBSD x86_64") {os = "unix";} // if (navigator.platform == "NetBSD amd64") {os = "unix";} // I wish I knew by now, but I don't. Try harder. if (os == "unknown") { if (navigator.appVersion.indexOf("Win")!=-1) {os = "win";} if (navigator.appVersion.indexOf("Mac")!=-1) {os = "unix";} if (navigator.appVersion.indexOf("FreeBSD")!=-1) {os = "unix";} } // Firefox Quantum likes to hide platform and appVersion but oscpu works if (navigator.oscpu) { if (navigator.oscpu.indexOf("Win32")!=-1) {os = "win";} if (navigator.oscpu.indexOf("Win64")!=-1) {os = "win";} if (navigator.oscpu.indexOf("Mac")!=-1) {os = "unix";} if (navigator.oscpu.indexOf("Linux")!=-1) {os = "unix";} if (navigator.oscpu.indexOf("FreeBSD")!=-1) {os = "unix";} // if (navigator.oscpu.indexOf("NetBSD")!=-1) {os = "unix";} } return os; } function adjust_for_platform() { "use strict"; var platform = detect_platform(); if (platforms.includes(platform)) { platforms.forEach(function (platform_elem) { var platform_div = document.getElementById("ghcup-instructions-" + platform_elem); platform_div.style.display = "none"; if (platform == platform_elem) { platform_div.style.display = "block"; } }); } } function show_all_platforms() { platforms.forEach(function (platform_elem) { var platform_div = document.getElementById("ghcup-instructions-" + platform_elem); platform_div.style.display = "block"; }); var buttons = document.getElementsByClassName("show-all-platforms"); console.log(buttons); Array.from(buttons).forEach(function (button) { button.style.display = "none"; }); } function set_up_default_platform_buttons() { var defaults_buttons = document.getElementsByClassName('show-all-platforms-button'); for (var i = 0; i < defaults_buttons.length; i++) { defaults_buttons[i].onclick = show_all_platforms; } } function copyToClipboardNux() { const text = document.getElementById("ghcup-command-linux").innerText; const el = document.createElement('textarea'); el.value = text; document.body.appendChild(el); el.select(); document.execCommand('copy'); document.body.removeChild(el); const button = document.getElementById("ghcup-linux-button"); button.focus(); } function copyToClipboardWin() { const text = document.getElementById("ghcup-command-windows").innerText; const el = document.createElement('textarea'); el.value = text; document.body.appendChild(el); el.select(); document.execCommand('copy'); document.body.removeChild(el); const button = document.getElementById("ghcup-windows-button"); button.focus(); } (function () { adjust_for_platform(); set_up_default_platform_buttons(); }());