Merge branch 'electron-builder' into development
|
@ -7,3 +7,5 @@ subscriptions\.db
|
|||
*.db
|
||||
|
||||
electron-packager/win32-x64/FreeTube-win32-x64/
|
||||
|
||||
dist/
|
||||
|
|
|
@ -1 +0,0 @@
|
|||
|
Before Width: | Height: | Size: 361 KiB After Width: | Height: | Size: 361 KiB |
|
@ -92,4 +92,4 @@
|
|||
"Beta": "Beta",
|
||||
"This software is FOSS and released under the GNU Public License v3+.": "This software is FOSS and released under the GNU Public License v3+.",
|
||||
"Found a bug? Want to suggest a feature? Want to help out? Check out our GitHub page. Pull requests are welcome.": "Found a bug? Want to suggest a feature? Want to help out? Check out our GitHub page. Pull requests are welcome."
|
||||
};
|
||||
}
|
|
@ -92,4 +92,4 @@
|
|||
"Beta": "Beta",
|
||||
"This software is FOSS and released under the GNU Public License v3+.": "Deze software is FOSS en gepubliceerd onder de GNU Public License v3+.",
|
||||
"Found a bug? Want to suggest a feature? Want to help out? Check out our GitHub page. Pull requests are welcome.": "Een bug gevonden? Graag iets toegevoegd zien? Wilt u helpen bij de ontwikkeling? Check de GitHub pagina. Pull requests zijn welkom."
|
||||
};
|
||||
}
|
16
package.json
|
@ -2,10 +2,10 @@
|
|||
"name": "FreeTube",
|
||||
"productName": "FreeTube",
|
||||
"version": "0.2.1",
|
||||
"description": "An Open Source YouTube app for privacy.",
|
||||
"description": "An Open Source YouTube app focused on privacy.",
|
||||
"main": "src/js/init.js",
|
||||
"scripts": {
|
||||
"start": "electron-forge start",
|
||||
"start": "electron .",
|
||||
"package": "electron-forge package",
|
||||
"make": "electron-forge make",
|
||||
"publish": "electron-forge publish",
|
||||
|
@ -39,6 +39,18 @@
|
|||
"snap",
|
||||
"electron-forge-maker-appimage"
|
||||
]
|
||||
}
|
||||
],
|
||||
"mac": {
|
||||
"category": "public.app-category.video",
|
||||
"icon": "src/icons/iconColor.icns"
|
||||
},
|
||||
"linux": {
|
||||
"protocols": {
|
||||
"name": "FreeTube",
|
||||
"schemes": [
|
||||
"freetube"
|
||||
]
|
||||
},
|
||||
"protocols": [
|
||||
{
|
||||
|
|
3729
src/icons/icon.icns
Before Width: | Height: | Size: 39 KiB |
|
@ -1,83 +0,0 @@
|
|||
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
|
||||
<!-- Created with Inkscape (http://www.inkscape.org/) -->
|
||||
|
||||
<svg
|
||||
xmlns:dc="http://purl.org/dc/elements/1.1/"
|
||||
xmlns:cc="http://creativecommons.org/ns#"
|
||||
xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
|
||||
xmlns:svg="http://www.w3.org/2000/svg"
|
||||
xmlns="http://www.w3.org/2000/svg"
|
||||
xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
|
||||
xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
|
||||
width="222mm"
|
||||
height="222mm"
|
||||
viewBox="0 0 222 222"
|
||||
version="1.1"
|
||||
id="svg8"
|
||||
inkscape:version="0.92.2 (5c3e80d, 2017-08-06)"
|
||||
sodipodi:docname="icon.svg">
|
||||
<defs
|
||||
id="defs2" />
|
||||
<sodipodi:namedview
|
||||
id="base"
|
||||
pagecolor="#ffffff"
|
||||
bordercolor="#666666"
|
||||
borderopacity="1.0"
|
||||
inkscape:pageopacity="0.0"
|
||||
inkscape:pageshadow="2"
|
||||
inkscape:zoom="0.35"
|
||||
inkscape:cx="-100"
|
||||
inkscape:cy="445.71429"
|
||||
inkscape:document-units="mm"
|
||||
inkscape:current-layer="layer1"
|
||||
showgrid="false"
|
||||
showguides="true"
|
||||
inkscape:guide-bbox="true"
|
||||
inkscape:pagecheckerboard="false"
|
||||
inkscape:window-width="1720"
|
||||
inkscape:window-height="1336"
|
||||
inkscape:window-x="0"
|
||||
inkscape:window-y="27"
|
||||
inkscape:window-maximized="0" />
|
||||
<metadata
|
||||
id="metadata5">
|
||||
<rdf:RDF>
|
||||
<cc:Work
|
||||
rdf:about="">
|
||||
<dc:format>image/svg+xml</dc:format>
|
||||
<dc:type
|
||||
rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
|
||||
<dc:title></dc:title>
|
||||
</cc:Work>
|
||||
</rdf:RDF>
|
||||
</metadata>
|
||||
<g
|
||||
inkscape:label="Layer 1"
|
||||
inkscape:groupmode="layer"
|
||||
id="layer1"
|
||||
transform="translate(0,-75)">
|
||||
<circle
|
||||
id="path3711"
|
||||
cx="110.74702"
|
||||
cy="186.25298"
|
||||
r="102.43154"
|
||||
style="fill:#eeeeee;fill-opacity:1;stroke:#f44336;stroke-width:15.02900028;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1;stroke-linecap:round;stroke-linejoin:bevel" />
|
||||
<path
|
||||
sodipodi:type="star"
|
||||
style="fill:#f44336;fill-opacity:1;stroke-width:0.26458332"
|
||||
id="path4520"
|
||||
sodipodi:sides="3"
|
||||
sodipodi:cx="108.25239"
|
||||
sodipodi:cy="186.70654"
|
||||
sodipodi:r1="65.785233"
|
||||
sodipodi:r2="32.892616"
|
||||
sodipodi:arg1="0"
|
||||
sodipodi:arg2="1.0471976"
|
||||
inkscape:flatsided="false"
|
||||
inkscape:rounded="0"
|
||||
inkscape:randomized="0"
|
||||
d="m 174.03762,186.70654 -49.33893,28.48585 -49.338918,28.48584 0,-56.97169 0,-56.97168 49.338928,28.48584 z"
|
||||
inkscape:transform-center-x="-16.446307"
|
||||
inkscape:transform-center-y="-1.0179227e-06" />
|
||||
</g>
|
||||
</svg>
|
Before Width: | Height: | Size: 2.6 KiB |
After Width: | Height: | Size: 4.7 KiB |
After Width: | Height: | Size: 252 KiB |
After Width: | Height: | Size: 5.9 KiB |
After Width: | Height: | Size: 4.9 KiB |
After Width: | Height: | Size: 10 KiB |
Before Width: | Height: | Size: 12 KiB After Width: | Height: | Size: 12 KiB |
After Width: | Height: | Size: 11 KiB |
After Width: | Height: | Size: 6.5 KiB |
After Width: | Height: | Size: 14 KiB |
After Width: | Height: | Size: 1.7 KiB |
|
@ -41,11 +41,14 @@
|
|||
<i onclick='hideToast()' class="closeToast fas fa-times"></i>
|
||||
</div>
|
||||
<div class="topNav">
|
||||
<span class="logo"><i onclick='toggleSideNavigation()' class="menuButton fas fa-bars"></i> FreeTube <i class="far fa-play-circle"></i></span>
|
||||
<i onclick='toggleSideNavigation()' class="menuButton fas fa-bars"></i>
|
||||
<div class="searchBar">
|
||||
<input id='search' class="search" type="text" placeholder="Search / Go to URL">
|
||||
<i onclick='parseSearchText()' class="fas fa-search searchButton" style='margin-right: -10px; cursor: pointer'></i>
|
||||
</div>
|
||||
<img src='icons/iconBlack.png' id='menuIcon'/>
|
||||
|
||||
<img src='icons/textBlack.png' id='menuText'/>
|
||||
</div>
|
||||
<div id='sideNavDisabled'></div>
|
||||
<div id="sideNav">
|
||||
|
@ -54,7 +57,6 @@
|
|||
<li onclick='loadSubscriptions()'><i class="fas fa-rss"></i> Subscriptions</li>
|
||||
<li onclick='showMostPopular()'><i class="fas fa-users"></i> Most Popular</li>
|
||||
<li onclick='showSavedVideos()'><i class="fas fa-star"></i> Saved</li>
|
||||
<li onclick='showSavedVideos()'><i class="fas fa-list-ul"></i> Playlists</li>
|
||||
<li onclick='showHistory()'><i class="fas fa-history"></i> History</li>
|
||||
</ul>
|
||||
<hr />
|
||||
|
|
|
@ -25,7 +25,7 @@ const path = require('path');
|
|||
const url = require('url');
|
||||
let win;
|
||||
|
||||
protocol.registerStandardSchemes(['freetube'])
|
||||
protocol.registerStandardSchemes(['freetube']);
|
||||
|
||||
app.setAsDefaultProtocolClient('freetube');
|
||||
|
||||
|
@ -35,15 +35,11 @@ const isSecondInstance = app.makeSingleInstance((commandLine, workingDirectory)
|
|||
if (win.isMinimized()) win.restore()
|
||||
win.focus()
|
||||
|
||||
win.webContents.send( 'ping', commandLine)
|
||||
win.webContents.send('ping', commandLine)
|
||||
}
|
||||
})
|
||||
});
|
||||
|
||||
if (isSecondInstance) {
|
||||
app.quit()
|
||||
}
|
||||
|
||||
if(require('electron-squirrel-startup')) app.quit();
|
||||
if(require('electron-squirrel-startup') || isSecondInstance) app.quit();
|
||||
|
||||
/**
|
||||
* Initialize the Electron application
|
||||
|
|
|
@ -51,11 +51,11 @@ function addSavedVideo(videoId){
|
|||
/**
|
||||
* Removes a video from the user's saved video database.
|
||||
*
|
||||
* @param {string} {videoId} - The video ID of the video that will be removed.
|
||||
* @param {string} videoId - The video ID of the video that will be removed.
|
||||
*
|
||||
* @return {Void}
|
||||
*/
|
||||
function removeSavedVideo(videoId: string){
|
||||
function removeSavedVideo(videoId, string){
|
||||
savedVidsDb.remove({
|
||||
videoId: videoId
|
||||
}, {}, (err, numRemoved) => {
|
||||
|
|
|
@ -48,19 +48,34 @@ a {
|
|||
|
||||
.menuButton {
|
||||
cursor: pointer;
|
||||
}
|
||||
|
||||
.logo {
|
||||
font-weight: bold;
|
||||
font-size: 20px;
|
||||
margin-left: 20px;
|
||||
position: relative;
|
||||
top: 3px;
|
||||
}
|
||||
|
||||
#menuIcon {
|
||||
width: 25px;
|
||||
position: relative;
|
||||
top: 15px;
|
||||
right: 120px;
|
||||
float: right;
|
||||
}
|
||||
|
||||
#menuText {
|
||||
width: 100px;
|
||||
position: relative;
|
||||
top: 5px;
|
||||
left: 5px;
|
||||
float: right;
|
||||
}
|
||||
|
||||
.searchBar {
|
||||
position: absolute;
|
||||
right: 0px;
|
||||
right: 135px;
|
||||
top: 0;
|
||||
width: 60%;
|
||||
width: 50%;
|
||||
}
|
||||
|
||||
.searchBar input {
|
||||
|
|
|
@ -1,5 +1,6 @@
|
|||
<div class='center'>
|
||||
<h1>FreeTube {{versionNumber}} Beta</h1>
|
||||
<img src='icons/logoColor.png' width='500px;'/>
|
||||
<h1>{{versionNumber}} Beta</h1>
|
||||
<h2>This software is FOSS and released under the <a href='https://www.gnu.org/licenses/quick-guide-gplv3.html'>GNU Public License v3+</a>.</h2>
|
||||
Found a bug? Want to suggest a feature? Want to help out? Check out our <a href='https://github.com/FreeTubeApp/FreeTube'>GitHub</a> page. Pull requests are welcome.
|
||||
</div>
|
||||
|
|
|
@ -0,0 +1,102 @@
|
|||
Arguments:
|
||||
/usr/bin/node /usr/local/bin/yarn add electron-builder --dev
|
||||
|
||||
PATH:
|
||||
/usr/local/cuda-6.5/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games:/snap/bin:/usr/lib/jvm/java-8-oracle/bin:/usr/lib/jvm/java-8-oracle/db/bin:/usr/lib/jvm/java-8-oracle/jre/bin
|
||||
|
||||
Yarn version:
|
||||
1.6.0
|
||||
|
||||
Node version:
|
||||
6.11.4
|
||||
|
||||
Platform:
|
||||
linux x64
|
||||
|
||||
Trace:
|
||||
Error: EACCES: permission denied, mkdir '/var/www/html/FreeTube/node_modules/electron-forge/node_modules/fs-extra'
|
||||
at Error (native)
|
||||
|
||||
npm manifest:
|
||||
{
|
||||
"name": "FreeTube",
|
||||
"productName": "FreeTube",
|
||||
"version": "0.2.1",
|
||||
"description": "An Open Source YouTube app for privacy.",
|
||||
"main": "src/js/init.js",
|
||||
"scripts": {
|
||||
"start": "electron-forge start",
|
||||
"package": "electron-forge package",
|
||||
"make": "electron-forge make",
|
||||
"publish": "electron-forge publish",
|
||||
"make:darwin": "electron-forge make --platform=darwin",
|
||||
"make:linux": "electron-forge make --platform=linux",
|
||||
"make:win32": "electron-forge make --platform=win32"
|
||||
},
|
||||
"keywords": [],
|
||||
"author": {
|
||||
"name": "PrestonN",
|
||||
"email": "FreeTubeApp@protonmail.com",
|
||||
"url": "https://github.com/FreeTubeApp/FreeTube"
|
||||
},
|
||||
"license": "GPL-3.0",
|
||||
"config": {
|
||||
"forge": {
|
||||
"make_targets": {
|
||||
"win32": [
|
||||
"squirrel"
|
||||
],
|
||||
"darwin": [
|
||||
"zip"
|
||||
],
|
||||
"linux": [
|
||||
"deb",
|
||||
"rpm"
|
||||
]
|
||||
},
|
||||
"protocols": [{
|
||||
"name": "freetube",
|
||||
"role": "Viewer",
|
||||
"schemes": ["freetube"]
|
||||
}],
|
||||
"electronPackagerConfig": {
|
||||
"packageManager": "yarn",
|
||||
"icon": "./src/icons/icon.icns"
|
||||
},
|
||||
"electronWinstallerConfig": {
|
||||
"name": "freetube",
|
||||
"iconUrl": "https://raw.githubusercontent.com/FreeTubeApp/FreeTubeApp.github.io/master/images/icon.ico",
|
||||
"setupIcon": "./src/icons/icon.ico"
|
||||
},
|
||||
"electronInstallerDebian": {
|
||||
"icon": "src/icons/icon.svg"
|
||||
},
|
||||
"repository": {
|
||||
"type": "git",
|
||||
"url": "https://github.com/FreeTubeApp/FreeTube"
|
||||
}
|
||||
}
|
||||
},
|
||||
"devDependencies": {
|
||||
"electron-forge": "^5.2.2",
|
||||
"electron-prebuilt-compile": "1.8.2",
|
||||
"electron-winstaller": "^2.6.4"
|
||||
},
|
||||
"dependencies": {
|
||||
"autolinker": "^1.6.2",
|
||||
"dateformat": "^3.0.3",
|
||||
"electron-compile": "^6.4.2",
|
||||
"electron-squirrel-startup": "^1.0.0",
|
||||
"jquery": "^3.3.1",
|
||||
"mustache": "^2.3.0",
|
||||
"nedb": "^1.8.0",
|
||||
"opml-to-json": "0.0.3",
|
||||
"ytdl-core": "^0.20.4"
|
||||
}
|
||||
}
|
||||
|
||||
yarn manifest:
|
||||
No manifest
|
||||
|
||||
Lockfile:
|
||||
No lockfile
|