diff --git a/tilix/DESCR b/tilix/DESCR new file mode 100644 index 0000000000..65dbb97441 --- /dev/null +++ b/tilix/DESCR @@ -0,0 +1,13 @@ +Tilix is a tiling terminal emulator which uses the VTE GTK+ 3 widget + +* Layout terminals in any fashion by splitting them horizontally or vertically +* Terminals can be re-arranged using drag and drop both within and between + windows +* Terminals can be detached into a new window via drag and drop +* Input can be synchronized between terminals so commands typed in one terminal + are replicated to the others +* The grouping of terminals can be saved and loaded from disk +* Terminals support custom titles +* Color schemes are stored in files and custom color schemes can be created by + simply creating a new file +* Transparent background diff --git a/tilix/Makefile b/tilix/Makefile new file mode 100644 index 0000000000..c119a7c785 --- /dev/null +++ b/tilix/Makefile @@ -0,0 +1,30 @@ +# $NetBSD$ + +GITHUB_PROJECT= tilix +GITHUB_TAG= 1.9.3 +DISTNAME= 1.9.3 +PKGNAME= ${GITHUB_PROJECT}-${DISTNAME} +CATEGORIES= x11 +MASTER_SITES= ${MASTER_SITE_GITHUB:=gnunn1/} +DIST_SUBDIR= ${GITHUB_PROJECT} + +MAINTAINER= dan@alt.md +HOMEPAGE= https://github.com/gnunn1/tilix/ +COMMENT= Tiling terminal emulator +LICENSE= mpl-2.0 + +WRKSRC= ${WRKDIR}/tilix-1.9.3 +USE_PKGLOCALEDIR= yes + +BUILD_DEPENDS+= dub-*:../../wip/dub +BUILD_DEPENDS+= po4a-*:../../textproc/po4a + +USE_TOOLS+= pkg-config + +.include "../../devel/meson/build.mk" +.include "../../wip/ldc/buildlink3.mk" +.include "../../lang/libunwind/buildlink3.mk" +.include "../../x11/libX11/buildlink3.mk" +.include "../../wip/gtk-d/buildlink3.mk" +.include "../../sysutils/desktop-file-utils/desktopdb.mk" +.include "../../mk/bsd.pkg.mk" diff --git a/tilix/PLIST b/tilix/PLIST new file mode 100644 index 0000000000..5116e38d95 --- /dev/null +++ b/tilix/PLIST @@ -0,0 +1,19 @@ +@comment $NetBSD$ +bin/tilix +share/applications/com.gexperts.Tilix.desktop +share/dbus-1/services/com.gexperts.Tilix.service +share/glib-2.0/schemas/com.gexperts.Tilix.gschema.xml +share/icons/hicolor/scalable/apps/com.gexperts.Tilix-symbolic.svg +share/icons/hicolor/scalable/apps/com.gexperts.Tilix.svg +share/metainfo/com.gexperts.Tilix.appdata.xml +share/nautilus-python/extensions/open-tilix.py +share/tilix/resources/tilix.gresource +share/tilix/schemes/base16-twilight-dark.json +share/tilix/schemes/linux.json +share/tilix/schemes/material.json +share/tilix/schemes/monokai.json +share/tilix/schemes/orchis.json +share/tilix/schemes/solarized-dark.json +share/tilix/schemes/solarized-light.json +share/tilix/schemes/tango.json +share/tilix/scripts/tilix_int.sh diff --git a/tilix/distinfo b/tilix/distinfo new file mode 100644 index 0000000000..a3b007c6d9 --- /dev/null +++ b/tilix/distinfo @@ -0,0 +1,9 @@ +$NetBSD$ + +SHA1 (tilix/1.9.3.tar.gz) = 56ebf04441551da01d70a1e99450b77672e025e3 +RMD160 (tilix/1.9.3.tar.gz) = 74e69be5f6c559e77f1ea67f36b3b78dea2f8cd6 +SHA512 (tilix/1.9.3.tar.gz) = 59165d24404c3fb9beb40070005131c6262abe98626c164552c0d90d0d74b3fc1d0532430b56027497674934a7fbfd2fdf4195b01915cb6d03a284f468c7adca +Size (tilix/1.9.3.tar.gz) = 837010 bytes +SHA1 (patch-data_meson.build) = dd31e6d3aa74c1c15ae8f3242e9e4240a0b8a501 +SHA1 (patch-meson.build) = b008cab3189a3cd3e60177adcb8e593e9234131c +SHA1 (patch-source_gx_tilix_terminal_monitor.d) = 2480e141365dd5232a83d5978615b1ea40644850 diff --git a/tilix/patches/patch-data_meson.build b/tilix/patches/patch-data_meson.build new file mode 100644 index 0000000000..e66ef42821 --- /dev/null +++ b/tilix/patches/patch-data_meson.build @@ -0,0 +1,13 @@ +$NetBSD$ + +--- data/meson.build.orig 2019-04-22 14:46:58.000000000 +0000 ++++ data/meson.build +@@ -98,7 +98,7 @@ conf.set('bindir', join_paths(get_option + + configure_file( + input: 'dbus/@0@.service.in'.format(meson.project_name()), +- output: 'dbus/@0@.service'.format(meson.project_name()), ++ output: '@BASENAME@', + configuration: conf, + install_dir: join_paths(get_option('datadir'), 'dbus-1/services') + ) diff --git a/tilix/patches/patch-meson.build b/tilix/patches/patch-meson.build new file mode 100644 index 0000000000..685ea81eb2 --- /dev/null +++ b/tilix/patches/patch-meson.build @@ -0,0 +1,32 @@ +$NetBSD$ + +--- meson.build.orig 2019-04-22 14:46:58.000000000 +0000 ++++ meson.build +@@ -94,13 +94,15 @@ sources_dir = include_directories('sourc + + # Dependencies + # Note relying on dub to fetch and build dependencies before running meson build is temporary due to a bug in Meson 0.48 +-# gtkd_dep = dependency('gtkd-3', version: '>= 3.8.5') +-# vted_dep = dependency('vted-3', version: '>= 3.8.5') ++gtkd_dep = dependency('gtkd-3', version: '>= 3.8.5') ++vted_dep = dependency('vted-3', version: '>= 3.8.5') + +-gtkd_dep = dependency('gtk-d:gtkd', version: '>=3.8.5', method: 'dub') +-vted_dep = dependency('gtk-d:vte', version: '>=3.8.5', method: 'dub') ++#gtkd_dep = dependency('gtk-d:gtkd', version: '>=3.8.5', method: 'dub') ++#vted_dep = dependency('gtk-d:vte', version: '>=3.8.5', method: 'dub') + xlib_dep = dependency('x11') +-libunwind_dep = dependency('libunwind') ++buildlink_inc = include_directories('../.buildlink/lib') ++libunwind_lib = static_library('libunwind.a') ++libunwind_dep = declare_dependency(link_with: libunwind_lib, include_directories: buildlink_inc) + msgfmt = find_program('msgfmt') + + subdir('po') +@@ -130,4 +132,4 @@ executable('tilix', + #) + #test('tilix_test', tilix_test_exe) + +-meson.add_install_script('meson_post_install.py') +\ No newline at end of file ++meson.add_install_script('meson_post_install.py') diff --git a/tilix/patches/patch-source_gx_tilix_terminal_monitor.d b/tilix/patches/patch-source_gx_tilix_terminal_monitor.d new file mode 100644 index 0000000000..48fec3687e --- /dev/null +++ b/tilix/patches/patch-source_gx_tilix_terminal_monitor.d @@ -0,0 +1,22 @@ +$NetBSD$ + +--- source/gx/tilix/terminal/monitor.d.orig 2019-04-22 14:46:58.000000000 +0000 ++++ source/gx/tilix/terminal/monitor.d +@@ -43,7 +43,7 @@ private: + + bool fireEvents() { + synchronized { +- foreach(process; processes.values()) { ++ foreach(process; processes) { + if (process.eventType != MonitorEventType.NONE) { + onChildProcess.emit(process.eventType, process.gpid, process.activePid, process.activeName); + process.eventType = MonitorEventType.NONE; +@@ -138,7 +138,7 @@ void monitorProcesses(int sleep, Tid tid + // all open terminals. We need to get these using shell + // PID and will store them to raise events for each terminal. + auto activeProcesses = getActiveProcessList(); +- foreach(process; processes.values()) { ++ foreach(process; processes) { + auto activeProcess = activeProcesses.get(process.gpid, null); + // No need to raise event for same process. + if (activeProcess !is null && activeProcess.pid != process.activePid) {