-
Notifications
You must be signed in to change notification settings - Fork 8
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Merge pull request #76 from Tribler/feature/macos-page
Add macos.html page for additional information
- Loading branch information
Showing
6 changed files
with
373 additions
and
2 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,370 @@ | ||
<!DOCTYPE html> | ||
<html lang="en" data-bs-theme="dark"> | ||
<head> | ||
<meta charset="utf-8"/> | ||
<title>Tribler: Download Torrent Client for MacOS</title> | ||
|
||
<meta name="description" | ||
content="Download the latest version of Tribler, a powerful and censorship resistant peer-to-peer decentralized torrent client for MacOS. Start fast and privacy enhanced file sharing now on your MacOS system."> | ||
<meta name="keywords" content="Tribler, download, torrent client, peer-to-peer, decentralized, file sharing, MacOS"> | ||
|
||
<meta property="og:title" content="Tribler: Download Torrent Client for MacOS"> | ||
<meta property="og:description" | ||
content="Download the latest version of Tribler, a powerful and censorship resistant peer-to-peer decentralized torrent client for MacOS. Start fast and privacy enhanced file sharing now on your MacOS system."> | ||
<meta property="og:image" content="https://tribler.org/img/opengraph.png"> | ||
<meta property="og:url" content="https://www.tribler.org/linux.html"> | ||
|
||
<link href="https://cdn.jsdelivr.net/npm/[email protected]/dist/css/bootstrap.min.css" rel="stylesheet" | ||
integrity="sha384-QWTKZyjpPEjISv5WaRU9OFeRpok6YctnYmDr5pNlyT2bRjXh0JMhjY6hW+ALEwIH" crossorigin="anonymous"> | ||
<link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.5.2/css/all.min.css" | ||
integrity="sha512-SnH5WK+bZxgPHs44uWIX+LLJAJ9/2PkPKZ5QiAj6Ta86w+fsb2TkcmfRyVX3pBnMFcV7oQPJkl9QevSCWr3W6A==" | ||
crossorigin="anonymous" referrerpolicy="no-referrer"/> | ||
<style> | ||
section { | ||
margin: 16px 0 32px 0; | ||
} | ||
li { | ||
margin-bottom: 8px; | ||
} | ||
li.heading { | ||
margin: 16px 0; | ||
} | ||
nav { | ||
padding-top: 16px; | ||
} | ||
a { | ||
text-decoration: none; | ||
} | ||
</style> | ||
|
||
<script type="application/ld+json"> | ||
{ | ||
"@context": "https://schema.org", | ||
"@type": "SoftwareApplication", | ||
"name": "Tribler", | ||
"operatingSystem": "MacOS", | ||
"applicationCategory": "File Sharing", | ||
"description": "Download the latest version of Tribler, a powerful and censorship resistant peer-to-peer decentralized torrent client for Linux. Start fast and privacy enhanced file sharing now on your Linux MacOS.", | ||
"url": "https://www.tribler.org/linux.html" | ||
} | ||
</script> | ||
|
||
<link rel="shortcut icon" href="img/favicon.ico" type="image/x-icon"/> | ||
<link rel="icon" href="img/favicon.ico" type="image/x-icon"/> | ||
<link rel="canonical" href="https://www.tribler.org/linux.html"> | ||
</head> | ||
|
||
<body> | ||
|
||
<div class="container" v-scope v-cloak> | ||
<nav aria-label="breadcrumb"> | ||
<ol class="breadcrumb"> | ||
<li class="breadcrumb-item"><a href="/index.html">Tribler</a></li> | ||
<li class="breadcrumb-item"><a href="/download.html">Downloads</a></li> | ||
<li class="breadcrumb-item active" aria-current="page">MacOS</li> | ||
</ol> | ||
</nav> | ||
|
||
<h1>Download Tribler for MacOS</h1><br/> | ||
|
||
<div class="row"> | ||
<div class="col"> | ||
<p><img src="img/osx.png" width=100px height=100px></p> | ||
</div> | ||
</div> | ||
<br/> | ||
<h2>Latest release</h2> | ||
<div class="row gx-5"> | ||
<div v-if="false">Loading release details...</div> | ||
<div class="col col-md-12 col-lg-6"> | ||
<table class="table" v-show="store.stableRelease" v-cloak> | ||
<caption>Stable Release</caption> | ||
<tbody> | ||
<tr> | ||
<td>Release Version</td> | ||
<td>{{store.stableReleaseDetails.name}}</td> | ||
</tr> | ||
<tr> | ||
<td>Release Date</td> | ||
<td>{{store.stableReleaseDetails.releaseDate}}</td> | ||
</tr> | ||
<tr> | ||
<td>Compatibility</td> | ||
<td>{{store.stableReleaseDetails.compatibility}}</td> | ||
</tr> | ||
<tr> | ||
<td>File Size</td> | ||
<td>{{store.stableReleaseDetails.fileSize}} MB</td> | ||
</tr> | ||
<tr> | ||
<td>Download Link</td> | ||
<td> | ||
<a v-bind:href="store.stableReleaseDetails.downloadLink" class="btn btn-sm btn-warning"> | ||
Download {{store.stableReleaseDetails.filename}} | ||
</a> | ||
{{store.stableReleaseDetails.numDownloads}} downloads | ||
</td> | ||
</tr> | ||
</tbody> | ||
</table> | ||
</div> | ||
<div class="col"> | ||
<table class="table" v-show="store.preRelease"> | ||
<caption>Stable Release</caption> | ||
<tbody> | ||
<tr> | ||
<td>Release Version</td> | ||
<td>{{store.preReleaseDetails?.name}}</td> | ||
</tr> | ||
<tr> | ||
<td>Release Date</td> | ||
<td>{{store.preReleaseDetails.releaseDate}}</td> | ||
</tr> | ||
<tr> | ||
<td>Compatibility</td> | ||
<td>{{store.preReleaseDetails.compatibility}}</td> | ||
</tr> | ||
<tr> | ||
<td>File Size</td> | ||
<td>{{store.preReleaseDetails.fileSize}} MB</td> | ||
</tr> | ||
<tr> | ||
<td>Download Link</td> | ||
<td> | ||
<a v-bind:href="store.preReleaseDetails.downloadLink" class="btn btn-sm btn-warning"> | ||
Download {{store.preReleaseDetails.filename}} | ||
</a> | ||
{{store.preReleaseDetails.numDownloads}} downloads | ||
</td> | ||
</tr> | ||
</tbody> | ||
</table> | ||
</div> | ||
</div> | ||
|
||
<h2>Source Code</h2> | ||
<section> | ||
<a target="_blank" v-bind:href="'https://github.com/Tribler/tribler/tree/'+store.stableReleaseDetails.name"> | ||
<i class="fa-brands fa-github"></i> | ||
https://github.com/Tribler/tribler/tree/{{store.stableReleaseDetails.name}} | ||
</a> | ||
</section> | ||
|
||
|
||
<h3>How to Install</h3> | ||
<section> | ||
<ol> | ||
<li><strong>Download the Installer:</strong> Click the button below to download the latest version of | ||
Tribler for MacOS. | ||
</li> | ||
<li><strong>Open the Installer:</strong> Locate the downloaded file and open it to start the installation | ||
process. | ||
</li> | ||
<li><strong>Follow the Instructions:</strong> Follow the on-screen instructions to complete the | ||
installation. | ||
</li> | ||
<li><strong>Launch Tribler:</strong> Once installed, open Tribler and start exploring a new world of secure, | ||
anonymous file | ||
sharing. | ||
</li> | ||
</ol> | ||
</section> | ||
|
||
<h3><strong>Known Issues</strong></h3> | ||
<section class="faq"> | ||
<h4>Q: "tribler" cannot be opened because the developer cannot be verified.</h4> | ||
<img src="img/macos/tribler-developer-not-verified.png" width="300" alt="MacOS Open Error"/> | ||
|
||
<br/><br/> | ||
<p>If you encounter this error message, follow these steps to open Tribler:</p> | ||
<ol> | ||
<li class="heading"> | ||
<div><strong>Locate the App</strong></div> | ||
<ul> | ||
<li>Open Finder</li> | ||
<li>Go to Applications</li> | ||
</ul> | ||
</li> | ||
<li class="heading"> | ||
<div><strong>Open Tribler</strong></div> | ||
<ul> | ||
<li>Locate Tribler in the Applications folder</li> | ||
<li>Right click on Tribler, and click "Open". This is different from double-clicking the app icon | ||
directly, which will not provide the necessary override option. | ||
</li> | ||
<li> | ||
<img src="img/macos/tribler-application.png" width="300px" alt="MacOS Open Context Menu"/> | ||
</li> | ||
</ul> | ||
</li> | ||
<li class="heading"> | ||
<div><strong>Override the Security Warning</strong></div> | ||
<ul> | ||
<li>After selecting "Open" from the context menu, a new warning message will appear stating that the | ||
app is from an unidentified developer. We do not have a separate Apple Developer ID dedicated | ||
for Tribler yet, so this is | ||
expected. | ||
</li> | ||
<li>Read the warning to ensure you still want to proceed. If you decide to continue, click "Open" in | ||
the warning dialog. This action tells macOS that you trust the app and wish to bypass the | ||
built-in security settings. | ||
</li> | ||
<li> | ||
<img src="img/macos/tribler-developer-not-verified-2.png" width="300px" | ||
alt="MacOS Security Warning"/> | ||
</li> | ||
</ul> | ||
</li> | ||
<li class="heading"> | ||
<div><strong>Launch Tribler</strong></div> | ||
<ul> | ||
<li>The application should now open without any further warnings. You only need to perform these | ||
steps | ||
the first time you open the app. Subsequent launches can be done normally, just by | ||
double-clicking | ||
the app icon. | ||
</li> | ||
<li> | ||
<img src="img/macos/tribler-opened.png" width="600" alt="MacOS Tribler Opened"/> | ||
</li> | ||
</ul> | ||
</li> | ||
</ol> | ||
</section> | ||
</div> | ||
<hr/> | ||
<footer> | ||
<div class="container"> | ||
<div class="row"> | ||
<div class="col"> | ||
<div> | ||
If you face any problems installing or using Tribler, please notify us by creating an issue | ||
<a href="https://github.com/Tribler/tribler/issues/new">here</a>. | ||
We look forward to your continuous support. | ||
</div> | ||
<div> | ||
<a href="https://github.com/Tribler/tribler"> | ||
<i class="fa-brands fa-github fa-2x"></i> | ||
</a> | ||
<a href="https://twitter.com/TriblerTeam"> | ||
<i class="fa-brands fa-twitter fa-2x"></i> | ||
</a> | ||
<a href="https://facebook.com/TriblerTeam"> | ||
<i class="fa-brands fa-facebook fa-2x"></i> | ||
</a> | ||
</div> | ||
<br/> | ||
</div> | ||
</div> | ||
</div> | ||
</footer> | ||
|
||
<script type="module"> | ||
import {createApp, reactive} from 'https://unpkg.com/petite-vue?module' | ||
|
||
const store = reactive({ | ||
ghUser: 'Tribler', | ||
ghRepo: 'tribler', | ||
stableRelease: null, | ||
preRelease: null, | ||
fetchReleaseInfo() { | ||
const releaseUrl = `https://api.github.com/repos/${this.ghUser}/${this.ghRepo}/releases`; | ||
try { | ||
fetch(releaseUrl) | ||
.then(response => response.json()) | ||
.then(data => { | ||
const releases = data; | ||
|
||
let latestStableRelease = null; | ||
let latestPreRelease = null; | ||
|
||
// Find the latest stable release first | ||
for (const release of releases) { | ||
if (!release.prerelease) { | ||
if (!latestStableRelease || new Date(release.published_at) > new Date(latestStableRelease.published_at)) { | ||
latestStableRelease = release; | ||
this.stableRelease = release; | ||
break; // Since releases are usually sorted in descending order by published_at, break after finding the first stable release | ||
} | ||
} | ||
} | ||
|
||
// If a stable release is found, find the latest pre-release published after the stable release | ||
if (latestStableRelease) { | ||
for (const release of releases) { | ||
if (release.prerelease && new Date(release.published_at) > new Date(latestStableRelease.published_at)) { | ||
if (!latestPreRelease || new Date(release.published_at) > new Date(latestPreRelease.published_at)) { | ||
latestPreRelease = release; | ||
this.preRelease = release; | ||
} | ||
} | ||
} | ||
} | ||
|
||
this.updateDistro('.dmg'); | ||
}); | ||
|
||
} catch (error) { | ||
console.error("Error fetching GitHub releases:", error); | ||
} | ||
}, | ||
updateDetailsFromRelease(ghReleaseObject, localReleaseObject, extension){ | ||
if (ghReleaseObject === null) { | ||
return; | ||
} | ||
localReleaseObject.name = ghReleaseObject.name; | ||
for (let asset of ghReleaseObject.assets) { | ||
if (asset.name.includes(extension)) { | ||
localReleaseObject.filename = asset.name; | ||
localReleaseObject.downloadLink = asset.browser_download_url; | ||
localReleaseObject.fileSize = parseFloat(asset.size / (1024 * 1024)).toFixed(2); | ||
localReleaseObject.releaseDate = asset.updated_at; | ||
localReleaseObject.numDownloads = asset.download_count; | ||
} | ||
} | ||
}, | ||
updateDistro(extension) { | ||
this.updateDetailsFromRelease(this.stableRelease, this.stableReleaseDetails, extension); | ||
this.updateDetailsFromRelease(this.stableRelease, this.preReleaseDetails, extension); | ||
}, | ||
stableReleaseDetails: { | ||
name: "Tribler", | ||
compatibility: "MacOS 10.14 and later", | ||
fileSize: "", | ||
downloadLink: "#", | ||
filename: "tribler.dmg", | ||
releaseDate: "", | ||
numDownloads: 0 | ||
}, | ||
preReleaseDetails: { | ||
name: "Tribler Pre-Release", | ||
compatibility: "MacOS 10.14 and later", | ||
fileSize: "", | ||
downloadLink: "#", | ||
filename: "tribler.dmg", | ||
releaseDate: "", | ||
numDownloads: 0 | ||
}, | ||
}) | ||
|
||
store.fetchReleaseInfo(); | ||
|
||
createApp({store}).mount() | ||
</script> | ||
|
||
|
||
<!-- Global site tag (gtag.js) - Google Analytics --> | ||
<script async src="https://www.googletagmanager.com/gtag/js?id=UA-111501715-1"></script> | ||
<script> | ||
window.dataLayer = window.dataLayer || []; | ||
function gtag() { | ||
dataLayer.push(arguments); | ||
} | ||
gtag('js', new Date()); | ||
gtag('config', 'UA-111501715-1'); | ||
</script> | ||
<script src="https://cdn.jsdelivr.net/npm/[email protected]/dist/js/bootstrap.bundle.min.js" | ||
integrity="sha384-YvpcrYf0tY3lHB60NNkmXc5s9fDVZLESaAA55NDzOxhy9GkcIdslK1eN7N6jIeHz" | ||
crossorigin="anonymous"></script> | ||
</body> | ||
</html> |