Skip to content
Commits on Source (97)
((c-mode . ((c-file-style . "GNU")
(indent-tabs-mode . nil)
(c-basic-offset . 2)
(tab-width . 8)
(show-trailing-whitespace . t)))
(c++-mode . ((c-file-style . "GNU")
(indent-tabs-mode . nil)
(c-basic-offset . 2)
(tab-width . 8)
(show-trailing-whitespace . t)))
(vala-mode . ((c-file-style . "GNU")
(indent-tabs-mode . nil)
(c-basic-offset . 2)
(tab-width . 2)
(show-trailing-whitespace . t))))
This diff is collapsed.
This diff is collapsed.
GNOME Terminal doesn't use ChangeLog anymore. Instead, we use SVN checkin comments
to autogenerate a ChangeLog file at "make dist" time. Use "make ChangeLog" in the
toplevel directory to manually create a ChangeLog. Or use
http://svn.gnome.org/viewvc/gnome-terminal/?view=queryform
to look up the version history.
When committing a patch to svn, use a checkin comment that describes the changes
made. If the checkin is related to a bug, reference the bug number. Example:
When removing a toolbar, make its items available again in the toolbar
editor. (Bug #131182)
Checkin comments MUST use the UTF-8 encoding.
Do NOT commit to this module without permission from a maintainer.
See the MAINTAINERS file for who they are.
This diff is collapsed.
Do NOT commit to this module without permission from a maintainer;
see the MAINTAINERS file for who they are.
===============================================================================
Discussion about gnome-terminal should happen on desktop-devel-list@gnome.org,
gnome-list@gnome.org, or usability@gnome.org, depending on what sort of
discussion it is. Reporting a bug on http://bugzilla.gnome.org is equally fine.
Remember that the terminal emulation is provided by the VTE widget, maintained
as the 'vte' module on the GNOME SVN. The gnome-terminal product in bugzilla
only covers the menubar, toolbar, and command line options, essentially. VTE,
in turn, is responsible for the actual terminal display.
SUBDIRS = data man src po help
NULL =
ACLOCAL_AMFLAGS = -I m4 ${ACLOCAL_FLAGS}
DISTCHECK_CONFIGURE_FLAGS = \
--enable-debug \
--disable-scrollkeeper \
--disable-schemas-install \
--disable-silent-rules \
--disable-search-provider
--without-nautilus-extension \
$(NULL)
desktopdir = $(datadir)/applications
desktop_in_files = org.gnome.Terminal.desktop.in.in
nodist_desktop_DATA = $(desktop_in_files:.desktop.in.in=.desktop)
$(nodist_desktop_DATA): $(desktop_in_files:.desktop.in.in=.desktop.in)
$(AM_V_GEN)$(MSGFMT) --desktop --template $< -d $(top_srcdir)/po -o $@
DESKTOP_FILE_VALIDATE_FLAGS =
desktop-file-validate: $(nodist_desktop_DATA)
for f in $^; do \
$(DESKTOP_FILE_VALIDATE) $(DESKTOP_FILE_VALIDATE_FLAGS) $$f; \
done
appdata_in_files = \
org.gnome.Terminal.appdata.xml.in \
org.gnome.Terminal.Nautilus.metainfo.xml.in \
$(NULL)
appdatadir = $(datadir)/metainfo
nodist_appdata_DATA = \
org.gnome.Terminal.appdata.xml \
$(NULL)
if WITH_NAUTILUS_EXTENSION
nodist_appdata_DATA += org.gnome.Terminal.Nautilus.metainfo.xml
endif
$(nodist_appdata_DATA): $(appdata_in_files)
$(AM_V_GEN) $(MSGFMT) --xml --template $< -d $(top_srcdir)/po -o $@
check-local: desktop-file-validate
EXTRA_DIST = \
COPYING \
COPYING.GFDL \
$(appdata_in_files) \
ChangeLog.pre-2-23 \
ChangeLog.README \
HACKING \
$(NULL)
CLEANFILES = \
$(nodist_appdata_DATA) \
$(nodist_desktop_DATA) \
$(NULL)
MAINTAINERCLEANFILES = \
$(srcdir)/INSTALL \
$(srcdir)/aclocal.m4 \
$(srcdir)/autoscan.log \
$(srcdir)/compile \
$(srcdir)/config.guess \
$(srcdir)/config.h.in \
$(srcdir)/config.sub \
$(srcdir)/configure.scan \
$(srcdir)/depcomp \
$(srcdir)/install-sh \
$(srcdir)/ltmain.sh \
$(srcdir)/missing \
$(srcdir)/mkinstalldirs \
`find "$(srcdir)" -type f -name Makefile.in -print` \
$(NULL)
# Build ChangeLog from GIT history
ChangeLog:
$(AM_V_GEN) if test -e $(top_srcdir)/.git; then \
GIT_DIR="$(top_srcdir)/.git" git log --stat > $@; \
fi
dist: ChangeLog
.PHONY: ChangeLog
-include $(top_srcdir)/git.mk
This diff is collapsed.
# Copyright © 2019 Christian Persch
#
# This programme is free software; you can redistribute it and/or modify it
# under the terms of the GNU General Public License as published by
# the Free Software Foundation; either version 3 of the License, or (at your
# option) any later version.
#
# This programme is distributed in the hope that it will be useful, but
# WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
# See the GNU General Public License for more details.
#
# You should have received a copy of the GNU General Public License
# along with this programme. If not, see <https://www.gnu.org/licenses/>.
srcdir=@srcdir@
builddir=@builddir@
#
NTHREADS = 1
NJOBS = -j$(NTHREADS)
NINJA = ninja $(NJOBS)
MESON = meson
#
all:
$(NINJA)
check:
MESON_TESTTHREADS=$(NTHREADS) $(NINJA) test
clean:
$(NINJA) clean
coverage:
$(NINJA) coverage
install:
$(NINJA) install
uninstall:
$(NINJA) uninstall
dist:
$(MESON) dist --no-tests
distcheck:
$(MESON) dist
This diff is collapsed.
GNOME TErminal
==============
Source & Releases
-----------------
To get the source code, use
```
$ git clone https://gitlab.gnome.org/GNOME/gnome-terminal
```
To get the source for a release version, use the corresponding git tag, or
download a tarball at
https://gitlab.gnome.org/GNOME/gnome-terminal/-/archive/TAG/gnome-terminal-TAG.tar.bz2
replacing `TAG` with the desired tag's name (e.g. `3.40.0`). Older releases are also
available at https://download.gnome.org/sources/gnome-terminal .
Building from source
--------------------
You will most likely need to also build `vte` from source; see https://gitlab.gnome.org/GNOME/vte/-/blob/master/README.md .
Start by installing the build dependencies, and a C++ compiler.
For fedora and related distributions, use
```
sudo dnf build-dep vte291 gnome-terminal
sudo dnf install g++
```
while for debian and related distributions, use
```
sudo apt-get build-dep libvte-2.91-0 gnome-terminal
sudo apt-get install g++
```
First build `vte` according to its own instructions. Then:
```
$ # Get the source code
$ git clone https://gitlab.gnome.org/GNOME/gnome-terminal
$
$ # Change to the toplevel directory
$ cd gnome-terminal
$
$ # Run the configure script (choose an appropriate path instead of "/some/where"!)
$ # Don't forget to make sure that pkg-config can find your self-build vte!
$ # e.g. by doing:
$ # export PKG_CONFIG_PATH=/some/where/lib64/pkg-config:$PKG_CONFIG_PATH
$ #
$ # If you compiled gnome-shell into the same prefix, you can omit disabling
$ # the search provider.
$ #
$ meson _build --prefix=/some/where -Dsearch_provider=false
$
$ # Build
$ ninja -C _build
$
$ # Install
$ ninja -C _build install
```
* By default, GNOME Terminal will install under `/usr/local`, which is not usually
the right choice. You can customize the prefix directory by `--prefix` option, e.g.
if you want to install GNOME-TERMINAL under `~/foobar`, you should run
`meson _build --prefix=$HOME/foobar`. If you already run the configure script before,
you should also pass `--reconfigure` option to it.
* You may need to execute `ninja -C _build install` as root
(i.e. `sudo ninja -C _build install`) if installing to system directories. Use a
user-writable directory as `--prefix` instead to avoid that.
* You may need to set the gsettings schema path so that gnome-terminal can find
its schemas. E.g. use
```
$ export GSETTINGS_SCHEMA_DIR=/some/where/share/glib-2.0/schemas
```
and if you skipped the `ninja install` step, you need to create the
gsettings schema cache yourself.
* Since GNOME Terminal uses a D-Bus activated server, you cannot simply run
the self-built gnome-terminal directly. Instead, you need to start the new `gnome-terminal-server` directly using
```
$ ./_build/src/gnome-terminal-server --app-id test.Terminal &
```
and then you have 10s time to open a window in that server using
```
$ ./_build/src/gnome-terminal --app-id test.Terminal
```
Also see https://wiki.gnome.org/Apps/Terminal/Debugging for more information.
Debugging
---------
After installing GNOME-TERMINAL with `-Ddebugg=true` flag, you can use `GNOME-TERMINAL_DEBUG` variable to control
GNOME-TERMINAL to print out the debug information
```
# You should change gnome-terminal-[2.91] to the version you build
$ GNOME-TERMINAL_DEBUG=selection ./_build/src/app/gnome-terminal-2.91
# Or, you can mixup with multiple logging level
$ GNOME-TERMINAL_DEBUG=selection,draw,cell ./_build/src/app/gnome-terminal-2.91
$ Or, you can use `all` to print out all logging message
$ GNOME-TERMINAL_DEBUG=all ./_build/src/app/gnome-terminal-2.91
```
For logging level information, please refer to enum [Gnome-TerminalDebugFlags](src/debug.h).
Contributing
------------
Bugs should be filed here: https://gitlab.gnome.org/GNOME/gnome-terminal/issues/
Please note that this is a bug tracker to be used for developers of GNOME Terminal,
and contributors of code, documentation, and translations to GNOME Terminal,
and *not a support forum*.
If you are an end user, always file bugs in your distribution's bug tracker, or use their
support forums.
If you want to provide a patch, please attach them to an issue in GNOME
GitLab, in the format output by the `git format-patch` command.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
/* config.h.in. Generated from configure.ac by autoheader. */
/* Define to 1 to enable special debug support */
#undef ENABLE_DEBUG
/* Define to 1 if translation of program messages to the user's native
language is requested. */
#undef ENABLE_NLS
/* Define to enable gnome-shell search provider */
#undef ENABLE_SEARCH_PROVIDER
/* Define the max allowed gtk version */
#undef GDK_VERSION_MAX_ALLOWED
/* Define the min required gtk version */
#undef GDK_VERSION_MIN_REQUIRED
/* Gettext package */
#undef GETTEXT_PACKAGE
/* Define the max allowed glib version */
#undef GLIB_VERSION_MAX_ALLOWED
/* Define the min required glib version */
#undef GLIB_VERSION_MIN_REQUIRED
/* Define to 1 if you have the Mac OS X function CFLocaleCopyCurrent in the
CoreFoundation framework. */
#undef HAVE_CFLOCALECOPYCURRENT
/* Define to 1 if you have the Mac OS X function CFPreferencesCopyAppValue in
the CoreFoundation framework. */
#undef HAVE_CFPREFERENCESCOPYAPPVALUE
/* Define if the GNU dcgettext() function is already present or preinstalled.
*/
#undef HAVE_DCGETTEXT
/* Define to 1 if you have the <dlfcn.h> header file. */
#undef HAVE_DLFCN_H
/* Define if the GNU gettext() function is already present or preinstalled. */
#undef HAVE_GETTEXT
/* Define if you have the iconv() function and it works. */
#undef HAVE_ICONV
/* Define to 1 if you have the <inttypes.h> header file. */
#undef HAVE_INTTYPES_H
/* Define to 1 if you have the <memory.h> header file. */
#undef HAVE_MEMORY_H
/* Define if you have POSIX threads libraries and header files. */
#undef HAVE_PTHREAD
/* Have PTHREAD_PRIO_INHERIT. */
#undef HAVE_PTHREAD_PRIO_INHERIT
/* Define to 1 if you have the <stdint.h> header file. */
#undef HAVE_STDINT_H
/* Define to 1 if you have the <stdlib.h> header file. */
#undef HAVE_STDLIB_H
/* Define to 1 if you have the <strings.h> header file. */
#undef HAVE_STRINGS_H
/* Define to 1 if you have the <string.h> header file. */
#undef HAVE_STRING_H
/* Define to 1 if you have the <sys/stat.h> header file. */
#undef HAVE_SYS_STAT_H
/* Define to 1 if you have the <sys/types.h> header file. */
#undef HAVE_SYS_TYPES_H
/* Define to 1 if you have the <unistd.h> header file. */
#undef HAVE_UNISTD_H
/* Define to the sub-directory where libtool stores uninstalled libraries. */
#undef LT_OBJDIR
/* Name of package */
#undef PACKAGE
/* Define to the address where bug reports for this package should be sent. */
#undef PACKAGE_BUGREPORT
/* Define to the full name of this package. */
#undef PACKAGE_NAME
/* Define to the full name and version of this package. */
#undef PACKAGE_STRING
/* Define to the one symbol short name of this package. */
#undef PACKAGE_TARNAME
/* Define to the home page for this package. */
#undef PACKAGE_URL
/* Define to the version of this package. */
#undef PACKAGE_VERSION
/* Define to necessary symbol if this constant uses a non-standard name on
your system. */
#undef PTHREAD_CREATE_JOINABLE
/* Define to 1 if you have the ANSI C header files. */
#undef STDC_HEADERS
/* Enable extensions on AIX 3, Interix. */
#ifndef _ALL_SOURCE
# undef _ALL_SOURCE
#endif
/* Enable GNU extensions on systems that have them. */
#ifndef _GNU_SOURCE
# undef _GNU_SOURCE
#endif
/* Enable threading extensions on Solaris. */
#ifndef _POSIX_PTHREAD_SEMANTICS
# undef _POSIX_PTHREAD_SEMANTICS
#endif
/* Enable extensions on HP NonStop. */
#ifndef _TANDEM_SOURCE
# undef _TANDEM_SOURCE
#endif
/* Enable general extensions on Solaris. */
#ifndef __EXTENSIONS__
# undef __EXTENSIONS__
#endif
/* Version number of package */
#undef VERSION
/* Define to 1 if on MINIX. */
#undef _MINIX
/* Define to 2 if the system does not provide POSIX.1 features except with
this defined. */
#undef _POSIX_1_SOURCE
/* Define to 1 if you need to in order for `stat' and other things to work. */
#undef _POSIX_SOURCE
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.