Added cool retro term from gerczei overlay

This commit is contained in:
Austen Adler 2016-09-19 11:43:10 -04:00
parent 8058db696c
commit a26f72de35
No known key found for this signature in database
GPG Key ID: 7ECEE590CCDFE3F1
7 changed files with 388 additions and 0 deletions

View File

@ -0,0 +1,8 @@
AUX metadata.xml 937 SHA256 ca9f825247c220b2b722746a1eec0be41869364b0456a1ed4f585a76f17c0640 SHA512 ad3da059222fbbc46e83ad26de4c2f0b8bfdac04cd030ddfd4ee25a6a5237ab9acc1d59dab00ee1b69acc28ee694a783c75ef746cd0e8bba0eb6d5b2c2c038d2 WHIRLPOOL 31b30faeacf972c9f5ffd4763a17267d20871ffdcad368e04564b15f84b50e572e9f9c4ecdeb5d7ac60109a48de8a1febfe7ae0a865063ee4b6555d11afc4f03
AUX size_and_position.patch 3414 SHA256 6292b91a1c9d7a320d9a8d97d1c892bdcba9c4433dde41bdbed010d8c3054081 SHA512 a16b044ba7974ace30c77c71f07eecb6e8e4249ccae288970a0b3839317ef2c6337566e4be87418696dd4201e82585335fec6088339fdd9971d5dfe51ab744a5 WHIRLPOOL 830c8584c4639bdd5cda92bf2cc5c8b2f1e4a77bd97ad366c470ec8cdea553a1f51cbb3c12927492e5a882ac758c5cc2fcc853c7a6408286bd4b4c07c318e5b4
DIST cool-retro-term-1.0.0.tar.gz 7809236 SHA256 db799084680545b6961e1b3d1bb7ff0cb8105e82279fe734c2c07c32525350d9 SHA512 c69c596491aeabf872543ee589ef806aa07d480cd830cf9687a14fa1f4887e0f0a8b3c96b358d1ad1bdc677f688a61f15fbcf6fc2d969e62dfa65141c5ec0ab1 WHIRLPOOL c0989bb31293a8c4f59001fc50f06db81a32893c33db62ea0ef081cfe93e3a3476d56fd07f17bdecd6575b17699f79f1e28c49ec1c7ea8b96ab44a884d648b09
DIST qmltermwidget-0.1.0.tar.gz 196864 SHA256 127f529a96cf1c96ff201c79458cff67f497b1820b04b0b30cb473423ccb30f9 SHA512 d628b02deb9cce1bb1c1365b045d18a4d1afa641abb928979dba79c7aa58cd940d4974052a5dd6dd2f68d938451b28f3d2e15ab54430e4432c0b174bb4ee62d0 WHIRLPOOL cf8c9b55e096430f319747901f53964cdc0d0265953232f00ee13d5c7c47b4960373d03955b3ce4bcfc3eb262ea14baa3ac752a505345fc7a8a8c4e1754b2969
EBUILD cool-retro-term-1.0.0-r1.ebuild 2092 SHA256 f98a21803ac1930f3e5fb1150677854265aa439048dbbfcf72df31c5909667e9 SHA512 745ca3961a1c0e686dfa9d82b5b9631daa24a569fc84875323936a8213ac914b60d865d669221c333d64b589e63e883120b43c9f015654dcd61fb2ab924e2555 WHIRLPOOL 00f648a7d384be39b4e452c65c3d363540dd60d2879f48c8036df0ab66e6ea02167c3da325c06932b4bee1cc3e087a74af31dedca9841f59cc9b342a92b1b437
EBUILD cool-retro-term-1.0.0.ebuild 1879 SHA256 b0ca5c59f16c85f95b42f6f506959c2296f0e5f37faa9b0507b8f5464675ae93 SHA512 a64d53b19c1166f82dd0d9411fb91675f591aea8c5c5218bfd73fdf012e98d28a35e94aba663c92a0739152623a2f213ac09e394c2133dee8527f21ef96e062c WHIRLPOOL 4e13e146de67b1b00d1b4b05d4794b01d415d73760ed1320fc26314c0b4838324b0967a5e8fe67dd9844d34b51e43f678d65ca22073fed486b62f63d9db52256
EBUILD cool-retro-term-9999-r1.ebuild 1742 SHA256 a665519f2ddc318fef957205d87ee2d4b15fbcc3a024b69194f0ab167fa89aed SHA512 03da9477d448751243a518d4372c2f8d0af56bd402203ca974864514580416e51b85ae23dcbb19297a8594f0435b69539e22cf5f4a4463d3917db15691035a56 WHIRLPOOL 69ac22eaefa966722a8048721f30f8bdafc531d2f40f04f93e55507eb3a635bc3944e50a3967de099446224c73b5bd27d26b142031ea5a69b870c540d1f99cc1
EBUILD cool-retro-term-9999.ebuild 1705 SHA256 834078f4d912affadf95b5892581aaa175dbe24d62042ff47198e59774b261fd SHA512 0ae3caa8f11ddabeb237ea3f919db62114559cd1e517357572e8a03d8482099b56e5b4580127b843f740fb0c2de471053f15b699a0d74107984b28ceed4464af WHIRLPOOL 30a579360512fcef4c22e9a753f50ab2e474ac1da7029dd60772ede95faf0ec4494d10a4c59a492b7e30a000f4fffd563542022c6888a624fb4cd5dd8c27ca46

View File

@ -0,0 +1,72 @@
# Copyright 1999-2014 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
# $Header: $
EAPI="5"
inherit qmake-utils eutils
SLOT="0"
QT5_MODULE="qtbase"
DESCRIPTION="A good-looking terminal emulator which mimics the old cathode ray tube display."
HOMEPAGE="https://github.com/Swordfish90/"
SRC_URI="
${HOMEPAGE}/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz
${HOMEPAGE}/qmltermwidget/archive/v0.1.0.tar.gz -> qmltermwidget-0.1.0.tar.gz
"
RESTRICT="primaryuri"
LICENSE="GPL-2"
KEYWORDS="~x86 ~amd64"
IUSE="remember"
DEPEND="
>=dev-qt/qtcore-5.3.1
>=dev-qt/qtquickcontrols-5.3.1[widgets]
>=dev-qt/qtdeclarative-5.3.1[localstorage]
>=dev-qt/qtgraphicaleffects-5.3.1
"
src_prepare() {
einfo "Satisfying build-time dependency on QMLTermWidget by linking it into the source tree..."
rmdir ${WORKDIR}/${P}/qmltermwidget || die "Error deleting empty widget dir from source tree"
ln -s ${WORKDIR}/qmltermwidget-0.1.0 ${WORKDIR}/${P}/qmltermwidget || die "Error linking widget into source tree"
use remember && {
einfo "Applying 3rd party patch from GH PR #303"
epatch ${FILESDIR}/size_and_position.patch || die "could not apply patch"
}
}
src_configure() {
einfo "Preparing targets..."
eqmake5 || die "Failed to configure"
}
src_compile() {
einfo "Commencing compilation..."
emake || die "Failed to compile"
}
src_install() {
into /usr/
dobin ${S}/${PN} || die "Failed to install application binary"
insinto /usr/lib/qt5/qml/
doins -r ${S}/qmltermwidget/QMLTermWidget || die "Failed to install QML imports"
for size in 32 64 128 256; do
doicon --size ${size} ${S}/app/icons/${size}x${size}/${PN}.png
done
domenu ${S}/cool-retro-term.desktop
dodoc ${S}/README.md || die "Failed to install README"
}
pkg_postinst() {
eqawarn "Please report any code-related issues upstream!"
elog "This package lacks a man page for now. Please invoke \"${PN} -h\" if You need help!"
elog "Additional information can be obtained via \"bzcat /usr/share/doc/${PN}-${PV}/README.md.bz2\""
elog "Icons are located under \"/usr/share/icons/${PN}/\"."
}

View File

@ -0,0 +1,64 @@
# Copyright 1999-2014 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
# $Header: $
EAPI="5"
inherit qmake-utils eutils
SLOT="0"
QT5_MODULE="qtbase"
DESCRIPTION="A good-looking terminal emulator which mimics the old cathode ray tube display."
HOMEPAGE="https://github.com/Swordfish90/"
SRC_URI="
${HOMEPAGE}/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz
${HOMEPAGE}/qmltermwidget/archive/v0.1.0.tar.gz -> qmltermwidget-0.1.0.tar.gz
"
RESTRICT="primaryuri"
LICENSE="GPL-2"
KEYWORDS="~x86 ~amd64"
DEPEND="
>=dev-qt/qtcore-5.3.1
>=dev-qt/qtquickcontrols-5.3.1[widgets]
>=dev-qt/qtdeclarative-5.3.1[localstorage]
>=dev-qt/qtgraphicaleffects-5.3.1
"
src_prepare() {
einfo "Satisfying build-time dependency on QMLTermWidget by linking it into the source tree..."
rmdir ${WORKDIR}/${P}/qmltermwidget || die "Error deleting empty widget dir from source tree"
ln -s ${WORKDIR}/qmltermwidget-0.1.0 ${WORKDIR}/${P}/qmltermwidget || die "Error linking widget into source tree"
}
src_configure() {
einfo "Preparing targets..."
eqmake5 || die "Failed to configure"
}
src_compile() {
einfo "Commencing compilation..."
emake || die "Failed to compile"
}
src_install() {
into /usr/
dobin ${S}/${PN} || die "Failed to install application binary"
insinto /usr/lib/qt5/qml/
doins -r ${S}/qmltermwidget/QMLTermWidget || die "Failed to install QML imports"
insinto /usr/share/icons/${PN}/
doins ${S}/app/icons/* || die "Failed to install icons"
dodoc ${S}/README.md || die "Failed to install README"
}
pkg_postinst() {
eqawarn "Please report any code-related issues upstream!"
elog "This package lacks a man page for now. Please invoke \"${PN} -h\" if You need help!"
elog "Additional information can be obtained via \"bzcat /usr/share/doc/${PN}-${PV}/README.md.bz2\""
elog "Icons are located under \"/usr/share/icons/${PN}/\"."
}

View File

@ -0,0 +1,64 @@
# Copyright 1999-2014 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
# $Header: $
EAPI="5"
inherit git-r3 qmake-utils eutils
SLOT="0"
QT5_MODULE="qtbase"
DESCRIPTION="A good-looking terminal emulator which mimics the old cathode ray tube display."
HOMEPAGE="https://github.com/Swordfish90/cool-retro-term"
EGIT_REPO_URI="${HOMEPAGE}.git"
EGIT_CHECKOUT_DIR="${S}/src/"
LICENSE="GPL-2"
KEYWORDS=""
DEPEND="
>=dev-qt/qtcore-5.3.1
>=dev-qt/qtquickcontrols-5.3.1[widgets]
>=dev-qt/qtdeclarative-5.3.1[localstorage]
>=dev-qt/qtgraphicaleffects-5.3.1
"
src_unpack() {
git-r3_fetch || die "Failed to fetch"
git-r3_checkout || die "Failed to check out"
}
src_configure() {
cd "${EGIT_CHECKOUT_DIR}"
einfo "Preparing targets..."
eqmake5 || die "Failed to configure"
}
src_compile() {
cd "${EGIT_CHECKOUT_DIR}"
einfo "Commencing compilation..."
emake || die "Failed to compile"
}
src_install() {
into /usr/
dobin ${EGIT_CHECKOUT_DIR}/${PN} || die "Failed to install application binary"
insinto /usr/lib/qt5/qml/
doins -r ${EGIT_CHECKOUT_DIR}/qmltermwidget/QMLTermWidget || die "Failed to install QML imports"
for size in 32 64 128 256; do
doicon --size ${size} ${EGIT_CHECKOUT_DIR}/app/icons/${size}x${size}/${PN}.png
done
domenu ${EGIT_CHECKOUT_DIR}/cool-retro-term.desktop
dodoc ${EGIT_CHECKOUT_DIR}/README.md || die "Failed to install README"
}
pkg_postinst() {
eqawarn "Please report any code-related issues upstream!"
elog "This package lacks a man page for now. Please invoke \"${PN} -h\" if You need help!"
elog "Additional information can be obtained via \"bzcat /usr/share/doc/${PN}-${PV}/README.md.bz2\""
elog "Icons are located under \"/usr/share/icons/${PN}/\"."
}

View File

@ -0,0 +1,63 @@
# Copyright 1999-2014 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
# $Header: $
EAPI="5"
inherit git-r3 qmake-utils eutils
SLOT="0"
QT5_MODULE="qtbase"
DESCRIPTION="A good-looking terminal emulator which mimics the old cathode ray tube display."
HOMEPAGE="https://github.com/Swordfish90/cool-retro-term"
EGIT_REPO_URI="${HOMEPAGE}.git"
EGIT_CHECKOUT_DIR="${S}/src/"
LICENSE="GPL-2"
KEYWORDS="~x86 ~amd64"
DEPEND="
>=dev-qt/qtcore-5.3.1
>=dev-qt/qtquickcontrols-5.3.1[widgets]
>=dev-qt/qtdeclarative-5.3.1[localstorage]
>=dev-qt/qtgraphicaleffects-5.3.1
"
src_unpack() {
einfo "Tracking master HEAD - no release has been made yet."
git-r3_fetch || die "Failed to fetch"
git-r3_checkout || die "Failed to check out"
}
src_configure() {
cd "${EGIT_CHECKOUT_DIR}"
einfo "Preparing targets..."
eqmake5 || die "Failed to configure"
}
src_compile() {
cd "${EGIT_CHECKOUT_DIR}"
einfo "Commencing compilation..."
emake || die "Failed to compile"
}
src_install() {
into /usr/
dobin ${S}/src/${PN} || die "Failed to install application binary"
insinto /usr/lib/qt5/qml/
doins -r ${S}/src/qmltermwidget/QMLTermWidget || die "Failed to install QML imports"
insinto /usr/share/icons/${PN}/
doins ${S}/src/app/icons/* || die "Failed to install icons"
dodoc ${S}/src/README.md || die "Failed to install README"
}
pkg_postinst() {
eqawarn "Please report any code-related issues upstream!"
elog "This package lacks a man page for now. Please invoke \"${PN} -h\" if You need help!"
elog "Additional information can be obtained via \"bzcat /usr/share/doc/${PN}-${PV}/README.md.bz2\""
elog "Icons are located under \"/usr/share/icons/${PN}/\"."
}

View File

@ -0,0 +1,17 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<longdescription lang="en">Cool-retro-term is a terminal emulator which mimics the look and feel of old cathode ray tube screens. It has been designed to be eye-candy, customizable, and reasonably lightweight. It uses the konsole engine which is powerful and mature. This terminal emulator requires Qt 5.2 or higher to run.
</longdescription>
<maintainer status="inactive">
<email>tamas@gerczei.eu</email>
<name>Tamás Gérczei</name>
<description>This lame ebuild is provided as-is and exists only to extend availability to Gentoo.</description>
</maintainer>
<upstream>
<name>Filippo Scognamiglio</name>
<email>flscogna@gmail.com</email>
<description>Swordfish90@GitHub</description>
</upstream>
<bugs-to>https://github.com/Swordfish90/cool-retro-term/issues</bugs-to>
</pkgmetadata>

View File

@ -0,0 +1,100 @@
diff --git a/app/main.cpp b/app/main.cpp
index b06c43b..0cf128f 100644
--- a/app/main.cpp
+++ b/app/main.cpp
@@ -81,7 +81,12 @@ int main(int argc, char *argv[])
importPathList.prepend(QCoreApplication::applicationDirPath() + "/../../../qmltermwidget");
engine.setImportPathList(importPathList);
- engine.load(QUrl("qrc:/main.qml"));
+ engine.load(QUrl(QStringLiteral ("qrc:/main.qml")));
+
+ if (engine.rootObjects().isEmpty()) {
+ qDebug() << "Cannot load QML interface";
+ return EXIT_FAILURE;
+ }
// Quit the application when the engine closes.
QObject::connect((QObject*) &engine, SIGNAL(quit()), (QObject*) &app, SLOT(quit()));
diff --git a/app/qml/ApplicationSettings.qml b/app/qml/ApplicationSettings.qml
index 2c645f6..d0f8beb 100644
--- a/app/qml/ApplicationSettings.qml
+++ b/app/qml/ApplicationSettings.qml
@@ -33,6 +33,11 @@ QtObject{
// GENERAL SETTINGS ///////////////////////////////////////////////////////
+ property int x: 100
+ property int y: 100
+ property int width: 1024
+ property int height: 768
+
property bool fullscreen: false
property bool showMenubar: true
@@ -211,6 +216,10 @@ QtObject{
function composeSettingsString(){
var settings = {
fps: fps,
+ x: x,
+ y: y,
+ width: width,
+ height: height,
windowScaling: windowScaling,
showTerminalSize: showTerminalSize,
fontScaling: fontScaling,
@@ -291,6 +300,11 @@ QtObject{
fps = settings.fps !== undefined ? settings.fps: fps
windowScaling = settings.windowScaling !== undefined ? settings.windowScaling : windowScaling
+ x = settings.x !== undefined ? settings.x : x
+ y = settings.y !== undefined ? settings.y : y
+ width = settings.width !== undefined ? settings.width : width
+ height = settings.height !== undefined ? settings.height : height
+
fontNames = settings.fontNames !== undefined ? settings.fontNames : fontNames
fontScaling = settings.fontScaling !== undefined ? settings.fontScaling : fontScaling
diff --git a/app/qml/main.qml b/app/qml/main.qml
index 7a201a1..ed0801c 100644
--- a/app/qml/main.qml
+++ b/app/qml/main.qml
@@ -28,10 +28,29 @@ ApplicationWindow{
width: 1024
height: 768
+
+ // Save window properties automatically
+ onXChanged: appSettings.x = x
+ onYChanged: appSettings.y = y
+ onWidthChanged: appSettings.width = width
+ onHeightChanged: appSettings.height = height
+
+ // Load saved window geometry and show the window
+ Component.onCompleted: {
+ appSettings.handleFontChanged();
+
+ x = appSettings.x
+ y = appSettings.y
+ width = appSettings.width
+ height = appSettings.height
+
+ visible = true
+ }
+
minimumWidth: 320
minimumHeight: 240
- visible: true
+ visible: false
property bool fullscreen: appSettings.fullscreen
onFullscreenChanged: visibility = (fullscreen ? Window.FullScreen : Window.Windowed)
@@ -140,7 +159,6 @@ ApplicationWindow{
terminalSize: terminalContainer.terminalSize
}
}
- Component.onCompleted: appSettings.handleFontChanged();
onClosing: {
// OSX Since we are currently supporting only one window
// quit the application when it is closed.