GUAKE(1)
โจ NAME โจ
okay so bestie, welcome to the official Guake User Documentation ๐ ๐ซถ
guake โ a drop-down terminal for the GNOME environment [image: computer with guake terminal] [image]
Guake is a dropdown terminal made for the GNOME desktop environment. Guake's style of window is based on a famous FPS game, and one of its goals is to be easy to reach and developer friendly. no cap, it really is ๐ฎโจ
- Lightweight
- Simple Easy and Elegant
- Smooth integration of terminal into GUI
- Appears when you call and disappears once you are done by pressing a predefined hotkey (
F12by default) - Compiz transparency support
- Multi tab
- Plenty of color palettes
- Quick Open in your favorite text editor with a click on a file name (with line number support)
- Customizable hotkeys for tab access, reorganization, background transparency, font size,...
- Extremely configurable
- Configure Guake startup by running a bash script when Guake starts
- Multi-monitor support (open on a specified monitor, open on mouse monitor)
- Save terminal content to file
- Open URL to your browser
๐ธ USER MANUAL ๐ธ
๐ What is Guake?
Guake is a powerful drop-down terminal, accessible by a simple hotkey. It has been designed to be the swiss knife of any developer willing to increase its productivity. literally your main character tool fr ๐ฅ
๐ฆ Alternatives to Guake
Here are some of the best terminals available on the Linux environments that bring similar features of Guake:
- Tilda โ
https://github.com/lanoxx/tilda/ - Tilix โ
https://github.com/gnunn1/tilix - Yakuake โ
https://www.kde.org/applications/system/yakuake/(For the KDE) - GNOME Terminal โ
https://wiki.gnome.org/Apps/Terminal - Terminator โ
http://gnometerminator.blogspot.com/
๐ Guake 3 Features
TBD: Long description of each feature
โญ Single Hotkey terminal
TBD:
- Appears when you call and disappears once you are done by pressing a predefined hotkey (
F12by default) - Customizable hotkeys for tab access, reorganization, background transparency, font size,...
๐ Auto-start
Guake can now (>=3.1) starts automatically on GNOME startup.
๐ Advanced Tab Support
Guake has several modes available to manage tab. You can let guake automatically rename the tab or give you own name.
๐ Color Palettes
Thanks to the Guake community, a huge number of Terminal palettes are provided out of the box. the palette selection is genuinely giving ๐จ
๐ง GTK Theme
Guake allows you to choose a different GTK theme than your environment.
Note: You need to restart Guake after changing the GTK theme.
๐ฅ Quick Open, hyperlink and Search on web
Guake automatically finds URL printed in your terminal and allow you to click on it using [Ctrl]+click. Many other terminals, if not all, does that already.
โจ Quick-Open
[image]
Guake is also able to find out file names and open it in your favorite code editor, such as Visual Studio Code, Atom or SublimText.
Guake brings this to much more, by automatically parsing output of popular system commands such as gcc, Python's traceback or pytest report, and allowing you to automatically open the file at the correct line number. Guake is even able to find the Python function name automatically when used with pytest. [image]
Even if Guake cannot parse the output, you can still ask him to open a wanted file path displayed in your terminal, provided the file exists at this path. Simply select the full path and click using the [Ctrl]+click, or with the contextual menu on right click. [image]
๐ Contextual menu
Right click also displays "Search on web" (if you have selected a text) and "Open link" (if the text under the cursor is a URL or if the selected text is a URL).
Guake also supports HTML-like anchor https://gist.github.com/egmontkob/eb114294efbcd5adb1944c9f3cb5feda with special characters such as:
echo -e '\e]8;;http://example.com\aThis is a link\e]8;;\a'
๐ธ HTML-like anchors
You may need a recent version of the VTE (Virtual Terminal Emulator) component in you system (vte >= 0.50).
๐ซถ Multi Monitor
TBD: Multi-monitor support (open on a specified monitor, open on mouse monitor)
๐ Hook points
TBD: Configure Guake startup by running a bash script when Guake starts
๐พ Save Terminal Content
TBD: Save terminal content to file
๐ Custom Commands
TBD
๐ DBus commands
The major features of guake are available on DBus.
๐ Tab UUID
Tabs are uniquely identified with a UUID. Each terminal receives this UUID in the following environment varialbe: GUAKE_TAB_UUID. It can be used to rename the tab from the command line using --tab-index 3c542bc1-7c99-4e73-8d37-e08281bd592c.
๐ Per-directory .guake.yml file
If there is a file named .guake.yml in the current working directory of the shell associated with a tab, Guake will try to read the title from there. The current format is very simple and it will probably change in the future:
title: "My Great Project"
๐ง Installing Guake ๐ง
๐ System-wide installation
On wayland systems, you will need to set the hotkey for opening Guake from your window manager's global settings.
For GNOME:
- Open Gnome Settings
- Go to Devices -> Keyboard
- Scroll in the list of the keyboard shorcuts all way down to Custom Shortcuts
- Press
+to add a custom shortcut - In the Add Custom Shortcut dialog type
guake-togglefor command - Enter the name and specify a shortcut, then press Add
Always prefer using your package manager to install guake.
๐ Debian / Ubuntu
Ubuntu and Debian users will use sudo apt install guake.
Guake also has a PPA. You can add the Guake PPA to your system by entering:
$ sudo add-apt-repository ppa:linuxuprising/guake
$ sudo apt-get update
After which you will be able to install and update to the latest version of Guake on the PPA.
๐ Fedora
Tested in Fedora 34: We can use dnf to install it.
$ sudo dnf install guake
Then you can open it via:
$ guake
To allow global 'F12' to open the guake, go to Setting >> Device >> Keyboard >> Scroll to bottom >> "+" to create a new global short cut with 'F12' keybinding and command 'guake'.
You may notice the style may have some error. You can fix this by installing and apply custom theme.
$ sudo dnf install arc-theme gnome-tweaks
Then use
$ gnome-tweaks
to change theme to change theme to one of the yakuake will fix this.
๐ Arch Linux
Guake is available on community repository, just use: sudo pacman -S guake to install it.
๐ฆ Manjaro
Manjaro users can use pacman -S guake.
โญ Install from Pypi
Guake is now automatically published on Pypi.
Please note the recommended way is to install Guake using pipx that will put Guake in a dedicated, isolated environment for your local user. Ensure $HOME/.local/bin is in your PATH.
$ python3 -m pip install --user pipx
$ pipx install guake
Alternatively, you can use the following command to install on a local environment:
$ pip install --user guake
Avoid using pip install guake without the --user, you may break your system.
โ ๏ธ bestie please do NOT skip that --user, fr fr, you will wreck your system ๐ญ
You need to ensure the following points are met in your configuration:
$HOME/.local/binshould be in your$PATH- You need to have some dependencies installed on your system:
gir1.2-keybinder-3.0gir1.2-notify-0.7gir1.2-vte-2.91libkeybinder-3.0-0libutempter0python3-setuptoolspython3-cairopython3-dbuspython3-gipython3-pippython3
๐ Install from source
If you want to install Guake from its sources, please follow this procedure:
- First, DO NOT USE TARBALLS GENERATED BY GITHUB on the Release Page. They are automatically generated and cannot be used alone. We use a package, namely PBR, that requires the full git history to work.
Checkout the HEAD of the source tree with:
$ git clone https://github.com/Guake/guake.git
- make sure that you have the needed system dependencies (Python GTK, VTE, ...) installed for your system. If you are unsure about the dependencies, you can run this script to install them:
$ ./scripts/bootstrap-dev-[debian, arch, fedora].sh run make
Note: Insert your distribution in the square brackets.
To install Guake itself, use:
$ make
$ sudo make install
To uninstall, still in the source directory:
$ make
$ sudo make uninstall
Tips for a complete Guake reinstallation (without system dependencies):
$ sudo make uninstall && make && sudo make install
$ # Or use this shortcut:
$ make reinstall # (do not sudo it!)
๐ป Command Line Arguments ๐ป
Here is the command line interface Guake provides:
Please run guake --help to see command line interface help
๐ D-Bus Interface ๐
TBD: Describe the DBus interface, with message, how to use it. Recall how to send guake toggle command.
๐ Frequently Asked Questions ๐
โจ๏ธ Manual keybinding
If you want to trigger guake manually, for instance on system where libkeybinder3 does not work, you can register the following snippet in your window manager
dbus-send --type=method_call --dest=org.guake3.RemoteControl \
/org/guake3/RemoteControl org.guake3.RemoteControl.show_hide
You can use the simpler:
guake-toggle
Please note the command guake -t will also toggle Guake but since it initialize a bit more than just necessary, it can be slower that the two previous commands.
๐ฆ Note on Wayland
There are some reports of Guake not opening when a Wayland app or empty desktop is focused. The issue has been reported on Ubuntu 17.10 LTS, Fedora 26 and Fedora 27. For more context, see issue #1041.
The workaround is setting a manual keybinding as described above. On Fedora 26, for example, this can be accomplished by going to Settings > Keyboard and adding a new custom shortcut to execute guake-toggle.
๐ Note for Archlinux users
This applies to users of Archlinux based distributions too and may be of help to non Debian/Ubuntu users as well. Currently make install is optimized for Ubuntu, which does not mean that it cannot be used on other systems, but depending on your system you may have to tell make install where to install guake (the default for Ubuntu is /usr/local/lib/python3.x/dist-packages/guake).
So on Ubuntu the following commands are equivalent:
$ sudo make install
$ sudo make install PREFIX=/usr/local
On Archlinux this can be done by passing /usr as PREFIX:
$ sudo make install PREFIX=/usr
โฆwhich is the bit that changes where everything lands, so now it goes to /usr/lib/python3.x/site-packages/guake instead. ๐
And bestie, don't stress about which one to pick โ the install script is smart enough to figure out on its own whether you need dist-packages or site-packages. No manual labor required. โจ
Wanna dig deeper? Go check the official PKGBUILD at archlinux.org (https://www.archlinux.org/packages/community/any/guake/), the PKGBUILD on the aur (http://aur.archlinux.org/packages/guake-git), or this gist (https://gist.github.com/aichingm/ed35ba3b136be4424b1ac947207dbca3). ๐ซถ
Why Guake crashes with Tmux and Byubu? ๐ญ
So tmux and Byobu can totally be used as your shell instead of bash or zsh โ that's valid, we love that for you. BUT. You have to make sure the "use login shell" option is disabled. If it's set, Guake literally will not be able to start. And if Guake then refuses to start again at all, you gotta bust out dconf-editor to reset that option. Consider this your warning, no cap. ๐
GTK 3 Port ๐
Early 2018, Guake got ported to GTK3, and that was thanks to the huge work of @aichingm โ absolute icon behavior, we're obsessed. ๐
The old releases and any code that depended on GTK2 got yeeted onto the 0.8.x branch of the GitHub project (https://github.com/Guake/guake/tree/0.8.x) and will no more be actively maintained. It's giving retirement era.
Please note that we target supporting mainly the GTK and VTE versions that ship by default on the most popular distributions, like Ubuntu or Arch Linux (currently: Ubuntu 16.04 LTS and 17.10).
Guake is now only compatible with Python 3.5+. Periodt.
And the port to GTK 3 plus Python 3 naturally led to skipping all the 1.x and 2.x version numbers entirely in Guake's versioning: so hi, meet Guake 3. Slay. ๐
Dropped Features from Guake 0.8.x ๐ซ
--bgimgโ this option has been removed from vte. Gone girl, we don't know her.
Broken translations ๐
Some changes in the translation system made during the Guake 3 port may have broken the welcome message in some languages (#1209). Not ideal, we know.
Help is welcomed for updating translations in your language! See the "Update translation" section below. ๐ซถ
Note for maintainers ๐
Guake has drastically changed its build system with Guake 3. You may need to adapt all the integration scripts accordingly. Heads up, bestie.
Guake now uses Pipfile to store its Python dependencies (except the system dependencies such as PyGTK3). It is maintained and used by the pipenv CLI tool. It's a system more advanced than using requirements.txt, but that file is still generated for backward compatibility (for example: ReadTheDocs only supports requirements.txt for the moment), by the command pipenv requirements. From then on, Guake is a classic, canon Python package (with setup.py, building distribution packages, ...). So proper, so official. โจ
It however requires system libraries, so it cannot work isolated inside a virtualenv. If you look closer at the virtualenv used with make dev ; make run, you will see it is configured to use the system libraries using pew toggleglobalsitepackages.
If for any reason pipenv does not work on your platform, you can still install guake from these requirements files, but the ultimate source of truth for dependency declaration is the Pipfile. No arguing with the Pipfile.
Do not hesitate to contact me at gaetan [at] xeberon.net. ๐
PROJECT INFORMATION ๐
History of the Project ๐
TBD: history of the project.
The lore is pending, bestie. It's giving "coming soon".
Guake Change Log ๐๏ธ
3.8.5
New Features
--is-visibleoption returns1when visible, and0when not- Double click to open a new tab, without side effects in mouse enabled terminal apps
Known Issues
- keybindings does not work with not English layout.
Bug Fixes
- Changed Toggle Hide on Lose Focus Shortcut to
Shift-Ctrl-F1. Instead of change Go to tab1 shortcut, becauseCtrl-F1is in the poolCtrl-Fnof change to tabs. - Fix issue
Ctrl+F1does two jobs in Keyboard Shortcuts Page - Add environment variable
GUAKE_ENABLE_WAYLAND, fixed #1934 - System font applied only for last tab #1947
- Guake suddenly not starting any more due to
ModuleNotFoundError: No module named 'importlib_metadata'#1962 - Fix vte
spawn_sync runtime check failed: ((spawn_flags & ignored_spawn_flags()) == 0) - Fix the way PBR computes the package version.
- Eliminated redundant terminal spawning on startup
- Fix system font application issue
- Add fallback for version number finding
- Reinstated double clicking to open new tabs
- Use keycodes instead of keyvals for keybindings. This allow one to use keybindings with different keyboard layouts.
Notes for Package Maintainers
- Switched from importlib + pbr to
setuptools_scmfor versioning
Other
- Fix for release pipeline.
Security Issues
- Fixed security Issue: Exposure of sensitive function, malicious user can arbitrary command via an
execute_commandd-bus method. #1796
Translation Updates
- Chinese Simplified (@kitty-panics)
- Croatian (@milotype)
- Dutch (@Vistaus)
- German (@m1ga, @rMb93)
- Indonesian (@rezaalmanda)
- Polish (@piotrdrag)
- Russian (@vantu5z)
- Swedish (@MorganAntonsson)
- Turkish (@Draconis-25, @ersen0)
3.8.4
Unreleased.
3.8.3
Unreleased.
3.8.2
Unreleased.
3.8.1
Release Summary
Added line height and character width adjustment options
Fix keybinding regressions
Lazy focus loss to avoid closing on short-term losses
Moved guake.desktop.metainfo.xml to $datadir
New Features
- Feature request: Setting line-spacing / line-height #849
- Support of short term focus loss and avoid folding #1643
Bug Fixes
- Some shortcut keys are abnormal #1939
Notes for Package Maintainers
- Glade layout file upgraded with
3.38.2from last used3.22.2, should still be valid but some things may be deprecated/renamed. guake.desktop.metainfo.xmlhas been moved to$datadirin Makefile
3.8.0
Release Summary
Add Finnish translation
Stopped setting GDK_BACKEND to x11 in terminals.
Bug Fixes
GDK_BACKENDis propagated to the shell in terminal #1871
Translation Updates
fi
3.8.0.0rc1
Release Summary
Adds "Galizur" Theme
Adds Shades of Purple Theme
Default to the system theme, make having guake deviate be optional.
Add copy on select option to copy to regular clipboard
Color Palettes: Fix "Gruvbox Dark" & Add "Gruvbox Material Dark"
Add support for tabs in keyboard shortcuts
placing the appstream metainfo file in the right path according to https://www.freedesktop.org/software/appstream/docs/chap-Metadata.html#spec-component-location
Automatically hide the tab bar when there is only one tab
Add close tab to d-bus interface.
Fix ignored "Show scrollbar" after splitting vertically
Fix missing or malformed schema files when upgrading guake
Move window to correct coordinates before maximizing
Fixes prompting when closing a tab.
Fix right click menu not populating when custom commands is malformed
Fix trailing punctuation in URLs being included in the URL
Revive GUAKE_TAB_UUID
New Features
- Allow reset of show-hide hot key in preferences
- Add guake background image
- adds a new color theme named "Galizur"
- adds the Shades of Purple converted from
https://github.com/ahmadawais/shades-of-purple-iterm2 - Now defaults to system default theme
- New option to still allow independently setting guake's theme.
- "copy on selection" option even if the desktop doesn't do it #43
- copy text on selection #1898
- Added Gruvbox dark
- Allow
Ctrl-Tabas an accelerator #152 - Automatically hide the tab bar when there is only one tab #924
- Add close tab to d-bus interface.
- Move the window to the correct coordinates, in the correct display, before attempting to maximize the window.
- Re-implemented the refocus functionality.
This functionality allows the user to return the focus to an open guake window. It happened to be partially be maintained but faced issues in the migration to Gtk3.
The functionality was revived, partially based on commented-out code found in Guake.show_hide().
- Bring back
GUAKE_TAB_UUID
Known Issues
- removes the broken feature, where double-clicking on the tab bar opened a new tab #1439
Upgrade Notes
- If a different theme from system default was already selected and desired, users may need to uncheck "Use system default theme" in properties->general
- Will be disabled by default
- Will have to manually change keyboard shortcuts to use tab on existing installations
- If setting is undesired, uncheck the hide tab if one tab option in settings
- Add close tab to d-bus interface.
- Should fix the errors with malformed schema files when upgrading guake.
Deprecations
- Default keyboard shortcut for next/previous tab is no longer
ctrl+pgup/pgdn
Bug Fixes
- Adjusted Gruvbox
- placing the appstream metainfo file in the right path
- fixes #924
- Added regex for line start by
<word> <word>. Refer Issue - Fix config didn't reload when
set_workspace - Fix ineffective override of the
GDK_BACKENDenvironment variable causing invalid pointer location and display detection (#1820) - fixes an issue, where double-clicking in certain CLI apps would instead open a new tab #1697
- fixes #1734
- Does not start after upgrade to 3.7.0 with pip3 due to faulty schema #1718
- (Potentially) Guake 3.6.3 missing
gschemas.compiledin PyPi #1621 - Guake always appears on mouse display regardless of Guake Preferences #1689
- guake follows mouse focus when have 2 monitors #1761
- Multiple monitors issue with Fedora 31 #1745
- Guake window follows mouse across monitors till it loses focus #1735
- And possibly more
- Fixes #1863
- Minimal Right Click Menu, no copy or split screen #1845
- Update search box to work with updated regex vte apis for v0.46+, #1752
- Open with URL includes trailing single quote (invalid URL) #1624
- Update
session.jsonwhen directory changed, not terminal title changed #1633 - Fixes #1712
Notes for Package Maintainers
- Add close tab to d-bus interface.
- Should resolve issues with the
gschemas.compiledfile. Make sure that the locationorg.guake.gschema.xmlis being saved to is user executable if guake is installed in userspace so that guake can compile and creategschemas.compiled.
If the destination for org.guake.gschema.xml cannot be user executable, make sure to include:
glib-compile-schemas [schema directory]
In the installation script, replacing [schema directory] with the place org.guake.gschema.xml is being saved.
3.7.0
Release Summary
Fixes the bug when "New Tab" or "Split Terminal" resets colors set by "--bgcolor" command. ๐
Custom colors for every terminal, added. ๐
Colors get saved right alongside all the other tab info, and there's a whole new "Reset custom colors" menu item sitting pretty in the tab context menu.
Resetting the colors of the current page. Managing the background and foreground colors of the current terminal. The command line arguments --reset-colors, --bgcolor-focused, --fgcolor-focused and --reset-colors-focused got added.
The --bgcolor-focused, --fgcolor-focused and --reset-colors-focused command line arguments got renamed to --bgcolor-current, --fgcolor-current and --reset-colors-current respectively. yes bestie, the names changed, write the new ones down ๐
Adds an option to display only the last directory on the current path as the tab name.
โจ New Features โจ
- Add tab selection popover in each notebook ๐
- Add fullscreen hide tabbar option
- List new features here followed by the ticket number, for example:
- Resetting colors of the current page.
- Setting of background and foreground colors and resetting colors of the focused terminal.
- Setting of background and foreground colors and resetting colors of the current terminal (not the focused one).
- Add
--select-terminaland--selected-terminaloptions to Guake CLI - Adds an option to display only the last directory on the current path as the tab name.
- Reworked the tab name selection to use a drop-down menu.
- Unfullscreen through D-Bus interface, as well as through CLI.
๐ Known Issues ๐
- When a user changes a background color of a terminal or a tab, this color is saved, and cannot be reset by changing settings. This is OK. The issue is that the user cannot set color transparency, and the transparency becomes fixed until the terminal colors are reset by the user (with a
--reset*command or via the tab context menu.
๐ญ Deprecations ๐ญ
- Translations need to be updated.
๐ฅ Bug Fixes ๐ฅ
- Fix Crash (TypeError) when common keys are found in config #1713
- Fixes the bug when
"New Tab"or"Split Terminal"resets colors set by"--bgcolor"command. - Add pew package to Pipfile
- When composited changed, it will update Guake window visual to make it transparent
- Fix fullscreen/unfullscreen not handle correctly when trigger by wm
- Fix search revealer causing terminal unclickable at bottom right
- adding a new tab no longer shows the hidden scrollbars on other tabs
- Remove no need window draw callback
- Fix make uninstall not cleaning up properly
- Update some dependencies for build environment
- Update the error message on missing dependencies (ex: when use
'pip install'guake)
๐ธ Translation Updates ๐ธ
- Dutch
- Polish
- French
๐ฆ Other ๐ฆ
- Add a recommendation on how to install Guake from pypi. The best way is to use the pipx installer, which installs guake in its own virtual environment and creates a launcher in
~/.local/bin.
๐ 3.6.3 ๐
โจ New Features โจ
- Add drag-n-drop to terminal (text & uris) ๐ฑ๏ธ
- When scrolling with
"shift"(1 page) or"shift + ctrl"(4 pages) it will be faster (#271)
๐ฅ Bug Fixes ๐ฅ
- Add
schema_versioncheck for tabs session restore - Add save/restore terminal split for tabs session โ Save/Restore terminal split by pre-order traversal full binary tree in list
- Bump tabs session
schema_versionto 2 (to support terminal split) - Lazy restore terminal split until Guake is visible
- Manage terminal signal handler by
handler_ids - Avoid spurious resize event when showing fullscreened window
- Make sure
workspace-specific-tab-setsonly enable on X11 backend (due to wnck) - Add
install/uninstall-dev-localeto support dev locale - Fix
DualTerminalBoxgrab focus when remove dead child - Support customize prefix for make
- Fix re-focus on terminal after rename dialog destroy
- Fix split terminal by menu will not follow last terminal cwd (if option set)
- Fix
delete_shellusingos.waitpid(should not use it)
๐ธ Translation Updates ๐ธ
- German
- French
๐ 3.6.2 ๐
โจ New Features โจ
- List new features here followed by the ticket number, for example:
- RFE: Open new tab next to current tab #582
๐ฅ Bug Fixes ๐ฅ
- Respect the XDG Base Directory Specification by supporting
XDG_CONFIG_HOMEenvironment variable to find the~/.configdirectory.
๐ธ Translation Updates ๐ธ
- Czech (thanks @p-bo)
- Dutch (thanks @Vistaus)
- Norwegian Bokmรฅl (thanks @comradekingu)
- Polish (thanks @piotrdrag)
- Russian (thanks @f2404)
๐ฆ Notes for Package Maintainers ๐ฆ
- The data directory is back into
guakemodule, in order to prepare for the migration toimportlib-resource(#1405). This should simplify a lot the load of resources, and avoid all the complication due to difference in prod/dev/traditional linux/debian customization/...
๐ 3.6.1 ๐
๐ฅ Bug Fixes ๐ฅ
- Fix search box background so that it will follow current theme
- Minor build system fixes
๐ 3.6.0 ๐
๐ Release Summary ๐
This release brings three of the most awaited features on Guake:
- search in current terminal
- session saving
- settings export and import
Our MVC ("Most Valuable Contributor") for this release is Louie Lu (@mlouielu) who worked hard to build these three features in a row! Thank you very much for your hard work ! ๐
โจ New Features โจ
- Add
--supportoption to Guake CLI for user when need to report issue - Add save/restore tabs function.
- Add label parameter to
notebook.new_page_with_focus - Add search box for terminal. Default hotkey is
Ctrl+Shift+F. - Add session save preferences for startup/tabs:
"restore-tabs-startup": when enabled, it will restore tabs when startup"restore-tabs-notify": when enabled, it will notify user after tabs restored (except startup)"save-tabs-when-changed": when enabled, it will automatically save tabs session when changed (new/del/reorder)
- Add CLI option to split tab:
--split-verticaland--split-horizontal. - Save and restore Guake settings
๐ฅ Bug Fixes ๐ฅ
- Add libwnck to bootstrap scripts
- Fix a need for double toggling to hide when using command line with
--showand option withonly_show_hide = False. - Remove unused logging level setup
- Fix
window-title-changeddidn't save tabs - fix typo
- Fix vte-warning when using
Vte.Regex.new_for_match - Workspaces can now properly save/restore tabs
- Fix
on_terminal_title_changedonly searching incurrent_notebook(it should find every notebook)
๐ธ Translation Updates ๐ธ
- fr (French)
- pl (Polish)
- added zh_TW (Chinese Traditional). Louie Lu would be very glad to have some help on localizing Guake!
- ru (Russian)
- nb (Norvegian)
- sv (Swedish)
- nl (Dutch)
๐ฆ Notes for Package Maintainers ๐ฆ
- Package maintainers should be aware that libwnck (Window Navigator Construction Kit) is now a mandatory dependency of Guake.
๐ 3.5.0 ๐
๐ Release Summary ๐
This version is mainly a maintaince release, after the big reworks on Guake from last year. I took some delay in fixing Guake due to a growing family. Thanks again for the various contributors who submitted their patches, it helps a lot the whole community. I may be able to find more time in the upcoming months to add even cooler features to our beloved Guake.
โจ New Features โจ
- new hotkey (
CTRL+SHIFT+H) to open new tab in home directory ๐ - "New tab" button #1471
- Open new tab by double-clicking on the tab bar
- Add new context menu on the notebook
- Add a CLI option to change palette scheme #1345
- Bold text is also bright (>= VTE 0.52 only)
-
guake --split-verticaland--split-horizontalsplit the current tab just like the context menu does - Optional close buttons for tabs (disabled by default)
- Guake can now provide a set of tabs per workspace
๐ฅ Bug Fixes ๐ฅ
- Reverse transparency slider (to be more meaningful, #1501
- Fix command-line select tab behavior #1492
- removed duplicate event bind? previously I had issue where quick-open event would be fired twice because of this.
- fixes
- fixes
- fix unnecessary show/hide
- fix settings only applied to the active workspace if more the 1 is used
- fix prompt quit dialog numbers when more then 1 workspace is used
๐ธ Translation Updates ๐ธ
- fr
- de
๐ฆ Other ๐ฆ
- For Guake translators using weblate <https://hosted.weblate.org/projects/guake/guake/>, I had to force push because of big conflicts. Some may have loose recent translation in your language. Sorry for that.
๐ 3.4.0 ๐
๐ Release Summary ๐
This major release provides one of the most awaited feature to every Guake adicts: Split terminal. Split easily vertically and horizontally each terminal and have more than one terminal per tab. There have been several shortcut changes to help navigate easily on your screen: Ctrl+Shift+Up/Down/Left/Right to switch from terminal to terminal. Thanks for you hard work, @aichingm ! ๐
โจ New Features โจ
- Split and resize terminals via mouse or keyboard shortcuts.
๐ญ Deprecations ๐ญ
"New terminal"/"Rename terminal"/"Close terminal"items has been removed from the terminal context menu. They are still available on the tab context menu.
๐ฅ Bug Fixes ๐ฅ
- Fix multiline selection right click (#1413)
- Fix tab name (#1017)
- fixes jumping preference window (#1149)
- fix no focus after closing a split terminal (#1421)
- Add note about shell that does not support
--loginparameter (#469)
๐ธ Translation Updates ๐ธ
- pl (Piotr Drฤ g on weblate)
- nl (Heimen Stoffels on weblate)
- nb (Allan Nordhรธy on weblate)
- ru (Igor on weblate)
- zh_CN (ๅบ็งๅฝฌ on weblate)
- cs (Pavel Borecki on weblate)
- de (Robin Bauknecht on weblate)
- fr (Gaetan Semet)
๐ 3.3.3 ๐
๐ Release Summary ๐
This release adds a big rewrite of the Terminal underlying mechanism by Mario Aichinger. It will serve as a foundation layer for long-awaiting features such as Split Terminal <https://github.com/Guake/guake/issues/71>, Find Text <https://github.com/Guake/guake/issues/116>, Save/Load Session <https://github.com/Guake/guake/issues/114>, and so on.
โจ New Features โจ
- add a new option in the context menu (copy url)
- support for per terminal context menus
- new more fullscreen handeling
- load default font via python Gio and not via cli call
- add json example for custom commands in the code
- port screen selectino (
use_mouse) to Gdk - add notification for failed show-hide key rebindings
- add one-click key binding editing
- port word character exceptions for newer vte versions
- use
Gtk.Boxinstead ofGtk.HBox - use
Gtk.Notebook's tabs implementation โจ - enable tab switching by scrolling (mouse wheel) over the tabs/tab-bar ๐ฑ๏ธ
๐ Bug Fixes
- fixes Settings schema
guake.generaldoes not contain a key nameddisplay_n๐ญ - fixes
guake --fgcolor/--bgcolorerror (#1376).
๐ Translation Updates
fr(thanks samuelorsi125t and ButterflyOfFire) ๐ru(thanks Igor)pl(thanks Piotr Drฤ g)cz(thanks Pavel Borecki)de(thanks Dirk den Hoedt and Mario Aichinger)gl(thanks Nacho Vidal)
๐ฆ Notes for Package Maintainers
- Please note
libutempter0should now be considered as a mandatory dependency of Guake. It solves the frozen terminal issue on exit (#1014) ๐ง
3.3.2
๐ Bug Fixes
- Travis build cleaned build artifacts before deployment, leading to missing files when built in the CI. ๐
3.3.1
๐ธ Release Summary
This minor release mainly fix some issues when installing Guake though pip install --user --upgrade guake. A big thanks also to everyone who contributed to the translations on Weblate https://hosted.weblate.org/projects/guake/guake/. ๐ซถ
๐ Bug Fixes
- Don't translate application icon (this finally fixes Guake application icon not being displayed with German locale, which was only partially resolved with #1320) ๐
- Install of Guake through
pip installwas broken (missingpaths.py). Now fixed. Discarded generation ofbdist. (fix
๐ Translation Updates
sv(thanks to @MorganAntonsson)de(thanks to @rzimmer)frru(thanks Igor "f2404" on Weblate)cz(thanks Pavel Borecki on Weblate)pl(thanks Piotr Drฤ g on Weblate)it(thanks Maurizio De Santis on Weblate)
โจ Other
- Update about screen's credits
3.3.0
๐ New Features
pip install guakenow compiles the gsettings schema and finds its languages automatically. ๐
๐ Bug Fixes
- Wayland is a bit more well supported. The X11 backend is now used by default for GDK and it seems to make the shortcut works under most situation.
A more cleaner solution would be to develop a GAction (vote for this feature here https://feathub.com/Guake/guake/+29])
- A new command has been added:
guake-toggle, should be faster thanguake -t. You can use it when you register the global shortcut manually (X11 or Wayland). ๐ฅ
3.2.2
๐ Bug Fixes
- Fix transparency regression on ubuntu composite (#1333) ๐ซฅ
- Fix transparency issue
- Fix right-click on link
- Fix bad css override on check tab background (#1326)
- Fix Guake application icon not displayed with German locale
- fix ctrl+click on hyperlinks on VTE 0.50 (#1295)
- Fixed "Gruvbox Dark" color palette (swapped foreground and background)
- Swapped foreground and background colors for palettes added in commit #58842e9.
โจ Other
- Add option groupes to the bootstrap scripts
3.2.1
๐ New Features
- Thanks to @arcticicestudio, a new nice, clean new palette theme is available for Guake users: Nord (#1275) ๐
โ ๏ธ Known Issues
- Multiline url are sometimes not handled correctly. ๐ฌ
- Users of Byobu or Tmux as default shell should disable the "login shell" option (in the "Shell" panel). This uses an option,
--login, that does not exist on these two tools.
๐ Bug Fixes
- Fix duplication in theme list (#1304)
- Fix right click selection in Midnight Commander
- Corrected usage of
Vte.Regex.new_for_matchto fix regular expression matching (hyperlinks, quick open) on VTE >0.50 (#1295) - URL with
'(simple quote) and()(parenthesis) are now captured by hyperlink matcher. This may causes some issues with log and so that use parenthesis around hyperlinks, but since parenthesis and quotes are valid characters inside a URL, like for instance URL created by Kibana, they deserve the right to be shown as proper url in Guake. ๐
User can still select the URL in the terminal if he wishes to capture the exact url, before doing a Ctrl+click or a right click.
For developers, it is advised to end the URL with a character that cannot be used in URL, such as space, tab, new line. Ending with a dot (.) or a comma (,) will not be seen as part of the URL by Guake, so most logs and traces that adds a dot or a comma at the end of the URL might still work.
- Fix "Grubbox Dark" theme
๐ Translation Updates
frplru
โจ Other
- Rework the documentation. The README grew up a lot and was hard to use. It has been cut into several user manual pages in the official online documentation. ๐
3.2.0
๐ New Features
- Allow user to select the theme within the preference UI ๐จ
- Selected tab use "selected highlight" color from theme (#1036)
๐ Translation Updates
fr
3.1.1
๐ New Features
- Quick open displays a combobox with predefined settings for Visual Studio Code, Atom and Sublime Text. ๐ป
๐ Bug Fixes
- Fix hyperlink VTE
3.1.0
๐ธ Release Summary
This version of Guake brings mostly bug fixes, and some new features like "Quick Open on selection". I have also reworked internally the Quick Open so that it can automatically open files from logs from pytest and other python development tools output. However, there might still some false positive on the hovering of the mouse in the terminal, the most famous being the output of ls -l which may have the mouse looks like it sees hyperlinks on the terminal everywhere. Click does nothing but its an annoying limitation. Package maintainers should read the "Notes for Package Maintainers" of this release note carefully. ๐ญ
๐ New Features
- New "start at login" option in the settings (only for GNOME) #251
- Add
--verbose/-vparameter to enable debug logging. Please note the existing-v(for version number) has been renamed-V. ๐ - Support for hyperlink VTE extension (described here
https://gist.github.com/egmontkob/eb114294efbcd5adb1944c9f3cb5feda) #945 (Untested, as it requires VTE 0.50) - Add great color palettes from Guake Color Scheme
https://github.com/ziyenano/Guake-Color-Schemes, thanks for @ziyenano :- Aci,
- aco,
- Azu,
- Bim,
- Cai,
- Elementary,
- Elic,
- Elio,
- Freya,
- Gruvbox Dark,
- Hemisu Dark,
- Hemisu Light,
- Jup,
- Mar,
- Material,
- Miu,
- Monokai dark,
- Nep,
- One Light,
- Pali,
- Peppermint,
- Sat,
- Shel,
- Tin,
- Ura,
- Vag.
- Allow application to capture right click (ex: Midnight commander). #1096. It is still possible to show the contextual menu with Shift+right click. ๐ฑ๏ธ
๐ Bug Fixes
- delete tab even without libutempter (#1198)
- Fix crash when changing command file #1229
- fix import sys in
simplegladeapp.py - change scope of
which_alignvariable inpref.py(#1225) - Fix several issues on Quick Edit:
- quick open freezes guake ๐ง
- support for systems with PCRE2 (regular expression in terminal) disabled for VTE, like Ubuntu 17.10 and +.
This might disable quick open and open url on direct Ctrl+click. User can still select the wanted url or text and Cltr+click or use contextual menu.
See this discussion on Tilix https://github.com/gnunn1/tilix/issues/916, another Terminal emulator that suffurs the same issue.
- quick open now appears in contextual menu (#1157)
- bad translation update on the contextual menu. This causes new strings that was hidden to appear for translators.
- Fix quick open on pattern
"<File:line>"line that was not opening the wanted file.
- Fix user interface translations #1228
- Some systems such as Ubuntu did displayed Guake with a translated interface (#1209). The locale system has been reworked to fix that.
- There might be broken translations, or not up-to-date language support by Guake. A global refresh of all existing translations would be welcomed. Most has not been updated since the transition to Guake 3, so these languages support might probably be unfunctional or at least partialy localized. ๐
- A big thank you for all the volunteers and Guake enthousiats would often update their own translation to help guake being used world-wide. - Help is always welcomed for updating translations ! ๐
- Support for vte 2.91 (0.52) #1222
๐ Translation Updates
fr_FRplde
๐ฆ Notes for Package Maintainers
- The setup mechanism has changed a little bit. Some maintainers used to patch the source code of Guake to change the pixmap, Gtk schema or locale paths directly in the
guake/globals.pyfile. This was due to a lack of flexibility of the installation target of the Makefile.
The make install target looks now a little bit more familiar, allowing distribution packager to set the various paths directly with make flags.
For example:
sudo make install \
prefix=/usr \
DESTDIR=/path/for/packager \
PYTHON_SITE_PACKAGE_NAME=site-package \
localedir=/usr/share/locale
The main overrides are:
IMAGE_DIR: where the pixmap should be installed. Default:/usr/local/share/guake/pixmapslocaledir: where locales should be installed. Default:/usr/local/share/localeGLADE_DIR: where the Glade files should be installed. Default:/usr/local/share/guakegsettingsschemadir: where gsettings/dconf schema should be installed. Default:/usr/local/share/glib-2.0/schemas/
I invite package maintainers to open tickets on Github about any other difficulties encountered when packaging Guake. ๐ซถ
3.0.6
๐ Bug Fixes
- Hotfix of #1198 (Ctrl+D in the terminal does not close) and #1014 (guake hangs on exit) ๐
3.0.5
๐ Bug Fixes
- Apply cursor blinking to new tabs as well, not only on settings change.
- Fix window losefocus hotkey #1080
- Fix refocus if open #1188
- fix preferences window header color, align the close button more nicely and change borders to margins
- Implements a timestamp for wayland (#1215)
3.0.4
๐ New Features
- Add window displacement options to move guake away from the screen edges ๐ธ
- okay so you can manually enter the name of the GTK theme you want Guake to use. but bestie, there's literally no Preference setting for this yet โ you have to manually enter the name using
dconf-editor, in the key/apps/guake/general/gtk-theme-name. Use a name that matches one of the folders in/usr/share/themes. Also please consider this is an early adopter feature and has only been tested on Ubuntu systems. Dark theme preference can be set with the key/apps/guake/general/gtk-prefer-dark-theme. ๐ - Allow
make install-systemto be run as a non-root user, and it'll print a message if you do. โจ - Quick open can now open a file under your selection. Just select a filename in the current terminal and do a
Ctrl+clickโ if the file path can be found, it'll open in your editor. It lets you virtually open any file path in your terminal (if it's on your local machine), but you have to select the file path first, unlike the Quick Open feature that finds file names using regular expression.
Also note it can look in the current folder if the selected file name exists, so you can Ctrl+click on relative paths too.
Line number syntax is supported too: filename.txt:5 will go directly to the 5th line if your Quick Open is set for that. ๐ฆ
๐ Bug Fixes ๐
- fixes the issue with vertically stacked dual monitors #1162
- Quick Open functionality is restored #1121
- Unusable Guake with the "hide on focus lose" option #1152
- Speed up guake D-Bus communication (command line such as
guake -t). ๐
3.0.3
Release Summary
This minor release is mainly focused on fixing big problems that were left over after the migration to GTK3. I wanna acknowledge the work of some contributors who helped testing and reporting issues on Guake 3.0.0. Thanks a lot to @egmontkob and @aichingm. ๐
The Preference window has been deeply reworked and the hotkey management has been rewritten. This was one of the major regressions in Guake 3.0. ๐ญ
New Features
[dev env]automatically open reno slug after creation for editing โจ[dev env]: Add the possibility to terminate guake withCtrl+con the terminal where Guake has been launched ๐- Add "Infinite scrolling" option in the "Scrolling" panel #274 ๐
- Added a hotkey for showing and focusing the Guake window when it is opened or closed. It's convenient when the Guake window is overlapped with other windows and you just need to show it without closing and opening it again. #1133 ๐
Known Issues
- Quick Edit feature is not working (#1121) ๐
Deprecations
- Remove visible bell feature #1081 ๐๏ธ
Bug Fixes
- Command options do not work, crash when disabling keybinding #1111 ๐ฅ
- Do not open Guake window upon startup #1113 ๐ โโ๏ธ
- Fix crash on increase/decrease main window height shortcut #1099 ๐ ๏ธ
- Resolved conflicting default shortcut for
Ctrl+F2(now, rename current tab is set toCtrl+Shift+R) #1101, #1098 ๐ - The hotkey management has been rewritten and is now fully functional โจ
- Rework the Preference window and reorganize the settings. Lots of small issues have been fixed. The Preference window now fits in a
1024x768screen. ๐ - Fix 'Failed to execute child process "-"' - #1119 ๐ค
- History size spin is fixed and now increments by
1000steps. Default history value is now set to1000, because "1024" has no real meaning for the end user. #1082 ๐ข
Translation Updates
- de ๐ฉ๐ช
- fr ๐ซ๐ท
- ru ๐ท๐บ
Other
- The dependencies of the Guake executable have been slightly better described in the
README. There's an example for Debian/Ubuntu in the filebootstrap-dev-debian.sh, which is the main environment where Guake is developed and tested. ๐ง - Package maintainers are encouraged to submit their
bootstrap-dev-[distribution].sh, applicable for other distributions, to help users install Guake from source, and other package maintainers. ๐ฆ
3.0.2
New Features
- Preliminary Dark theme support. To use it, install the 'numix' theme on your system. For example, Ubuntu/Debian users would use
sudo apt install numix-gtk-theme. ๐
Known Issues
- Cannot enable or disable the GTK or Dark theme by a preference setting. ๐
Deprecations
- Resizer discontinued ๐ซ
Bug Fixes
- Fix
sudo make uninstall/installto work only with/usr/local๐ ๏ธ - Fix translation mo file generation ๐
- Fix crash on Wayland ๐
- Fix quick open and open link in terminal ๐
- Fixed Guake initialization on desktop environments that do not support compositing. ๐ฅ๏ธ
3.0.1
Release Summary
Minor maintenance release. ๐งน
Bug Fixes
- Code cleaning and GNOME desktop file conformance โจ
3.0.0
Release Summary
Guake has been ported to GTK-3 thanks to the huge work of @aichingm. This also means Guake now uses the latest version of the terminal emulator component, VTE 2.91. Guake is now only working on Python 3 (version 3.5 or 3.6). Official support for Python 2 has been dropped. This enables new features in upcoming releases, such as "find in terminal", or "split screen". ๐
New Features
- Ported to GTK3:
- cli arguments
- D-Bus
- context menu of the terminal, the tab bar and the tray icon
- scrollbar of the terminal
- ctrl+d on terminal
- fix double click on the tab bar
- fix double click on tab to rename
- fix clipboard from context menu
- notification module
- keyboard shortcuts
- preference screen
- port gconfhandler to gsettingshandler
- about dialog
- pattern matching
- Guake.accel* methods
- Guake now uses a brand new build system:
- pipenv to manage dependencies in Pipfile
- enforced code styling and checks using Pylint, Flake8, Yapf, ISort.
- simpler release management thanks to PBR
[dev env]reno <https://docs.openstack.org/reno/latest/> will be used to generate release notes for Guake starting version 3.0.0. It allows developers to write the right chunk that will appear in the release note directly from their Pull Request. ๐- Update Guake window title when:
- the active tab changes
- the active tab is renamed
- the vte title changes
Known Issues
- Translation might be broken in some language, waiting for the translation file to be updated by volunteers
- Resizer does not work anymore
- Package maintainers have to rework their integration script completely
- quick open and open link in terminal is broken
- Note for package maintainers: Guake 3 has a minor limitation regarding Glib/GTK Schemas files. Guake looks for the gsettings schema inside its data directory. So you will probably need install the schema twice, once in
/usr/local/lib/python3.5/dist-packages/guake/data/and once in/usr/share/glib-2.0/schemas(see #1064 <https://github.com/Guake/guake/issues/1064>). This is planned to be fixed in Guake 3.1
Upgrade Notes
- Minor rework of the preference window.
Deprecations
- Background picture is no more customizable on each terminal
- Visual Bell has been deprecated
Translation Updates
- fr-FR
Version 0.8.11
Maintenance release with bug fixes and translation updates.
- #885 revert to the old fixed-width tabs behavior
- move the startup script setting to the hooks tab
- #977 Add a configuration toggle to disable windows refocus
- #970 Right-click tab options don't work properly
- #995 Russian translation
- #983 French translation
- #986 Update German translation
Version 0.8.10
Minors Bug fixes and new Ocean and Oceanic Next color schemes.
Version 0.8.9
Thanks for guakers for the following contibutions:
New features:
- #793, #876: Execute a script on display event
- #864: Add preference dialog checkbox for toggling 'resizer' visibility
- #885: tabs share the full screen width
- #942: Quick open also matches /home path
- #933: Add -l option to get tab label
Bug Fixes
- #934: Quick open does not work with dash
- #893, #896, #888: another Unity screen size fix
- Translation update: ja (#875), cn (#955), nl (#931), pt (#895),
Version 0.8.8
Thank to these contribution from Guake users, I am happy to announce a new minor fix release of Guake.
Features:
- Close a tab with the middle button of the mouse
Bug Fixes:
- Fix error when toggle key was disabled
- Update change news
- Uppercase palette name
- Fix pylint errors
- Convert README badge to SVG
- Update Japanese translation
- update Russian translation
- updated CS translation
- Update zh_CN translation
Version 0.8.7
Do not forget to update the software version
Version 0.8.6
Lot of bug fixes in this release. Thanks for all contributors ! Please note that it is not tested on dual screen set ups.
Bug fixes:
- Terminal geometry fixes (#773 @koter84, #775 RedFlames, b36295 myself)
- Fix "changing max tab length" set all tab to same title
- Fix on terminal kill (#636, @coderstephen)
- Typo/Cosmetics (#761, @thuandt)
- Fix the bottom of tab buttons being cut off in Gnome (#786 @lopsided98)
- Fix fullscreen follow mouse (#774 @koter84)
- Option to shorten VTE tab name (#798 @versusvoid)
- Updated translations:
- french (b071b4, myself)
- russian (#787 @vantu5z),
- corean (#766 @nessunkim),
- polish (#799 @piotrdrag)
Version 0.8.5
Minor version today, mostly minor bug fixes and translation update. I did have time to work on GTK3, maintaining Guake to keep using GTK2 is more and more difficult, Travis kind of abandoned the compatibility of PyGtk2.
- Add a shortcut to open the last tab (#706, thanks @evgenius)
- Fix icon size on Ubuntu (#734)
- Add tab UUID and selection by UUID (#741, thanks @SoniEx2, @Ozzyboshi)
- Updated Polish (#705), Chinese (#711), German (#732), Brazil Portuguese (#744), Czech (#747)
- Fixed doc (#709, #706)
- Fix some Pep8 issue
Version 0.8.4
Bug fixes:
- Very big icon tray (#598, @thardev)
- Feature keyboard shorcut hide on lose focus (#650, #262, #350, @thardev)
- Endless transparency and small rework of hide on lose focus (#651, @thardev)
- fix tray icon does not align in center (#663, @wuxinyumrx)
- Updated pt_BR translation (#686, @matheus-manoel)
- improved Bluloco theme readability (#693, @uloco)
- ensure gsettings process is well kill (#636)
- fix exception in preference panel
Version 0.8.3
Quick fix about missing svg file
โจ Version 0.8.2 โจ
Bug fix version, bestie! Thanks for the external contributions! ๐ซถ
Feature:
- new palette
'Bluloco'(my default one now!) (@uloco)
Bug fixes:
- tab bar width (@ozzyboshi)
- open new tab in current directory (#578, @Xtreak)
- fix default interpreter (#619, @Xtreak)
- fix use VTE title (#524, @Xtreak)
- Russian translation (@vantu5z), german (@Airfunker), spanish (@thardev) chinese (@Xinyu Ng)
- fix guake cannot restore fullscreen (#628, @thardev)
๐ซ Version 0.8.1 ๐ซ
okay so the dev literally started working on Guake 1.0.0, and not in a dedicated branch. It's now in its own source folder. We clearly need to move to gtk3 soon, since GTK2 is being discontinued, the VTE is no more maintained for GTK2-Python, and it adds lot of cool features.
So they're now starting to work on a complete rewrite of Guake, so don't expect 0.8.x to see lot of new features, unfortunately. But Guake 1.0.0 will add features such as:
- line wrap in terminal
- search in terminal
- dconf/gsettings to store configuration
- GTK3 look and feel
- much cleaner build and translation systems
But, this means they cannot work too much on 0.8.x. They still do some bug fixes, and thanks to external contributors that share the love for Guake, Guake 0.8 still moves on! ๐
So don't hesitate to have a look in the code to fix any bug you are experiencing and submit a Pull Request. ๐ซถ
New features:
- a-la guake-indicator custom commands (#564) - by @Ozzyboshi!
- Add option to allow/disallow bold font (#603) - by @helix84!
- Clean current terminal item in contextual menu (#608) - by @Denis Subbotin
Bug fixes:
- Terminal widget disappears at random times (#592)
- Typo - by @selivan, @Ruined1
๐ฅ Version 0.8.0 ๐ฅ
The dev has been extremely busy the previous 3 months, so they have almost not worked on Guake. They wanted to introduce in the next version some major features heavily asked, like session save and split terminal. They will have to wait a bit more. ๐ญ
As a result, most of the contribution are from external contributors. Thank you very much for all these patches! ๐
This releases introduces two major changes in the project, thus the minor version change.
First, the new homepage is now online:
<http://guake-project.org/>
As they remind you, Guake has not control over the old domain guake.org. So far the content is still one of the old content of this domain. So please use <http://guake-project.org> to reference Guake.
Source code of the Web site can be found here:
<https://github.com/Guake/guake-website>
The second major change in the project is the abandon of our internal hotkey manager globalhotkey, which was responsible for binding hotkeys globally to the window manager. This piece of code was extremely old and hard to maintain. This was also unnecessarily complexifying the build process of Guake. Thanks to the contribution of @jenrik, we are now using a pretty common package keybinder (Ubuntu: python-keybinder).
Bug fixes:
- Guake fails to start due to a GlobalHotkey related C call fixed by replacing GlobalHotkeys with keybinder. Fixed by @jenrik. (#558, #510)
- Fix icon issue with appindicator (#591)
- swap terms correctly when moving tabs (#473, #512, #588)
- Remove last reference to
--show-hide(#587) - fixed and completed german translation (#585)
- Drop duplicated man page (a526046a)
- use full path to tray icon with libappindicator (#591)
๐ธ Version 0.7.2 (2015.05.20) ๐ธ
Bug fixes:
- Fix Ctrl+D regression (#550)
- update Quick Open Preference Window
๐ฆ Version 0.7.1 (2015.05.18): ๐ฆ
Some bug fixes, and cleared issues with new palette colors.
As side note, our domain 'guake.org' has been squatted by an outsider that seems only interested in getting money to release the domain. Since Guake is a small project, based on 100% OpenSource spirit, we do not want to loose more time on this subject. The guake website will be deployed soon on a new URL:
<http://guake-project.org>
Please do NOT useguake.organymore, until we can retrieve it. We cannot be hold responsible for any content onguake.organymore. ๐
Bug fixes:
- Background and font color inversed for some color schemes (#516)
- Guake width wrong on non-Unity Ubuntu desktop (#517)
- Add
get_gtktab_namedbus interface (#529, #530) - Fix issue with selection copy (#514)
- I18n fixes and updated Polish translation (#519). Thanks a lot @piotrdrag!
- Remove add and guake icon in tab (#543)
prompt_on_close_taboption (#546) Thanks a lot @tobz1000!- Fix default shortcuts for move tabs
๐ Version 0.7.0 (2015.05.02): ๐
The dev had more time working on Guake recently, so they fixed some long term issues, and exposed some internal settings into the preference window.
Thanks for the external contribution: @varemenos, @seraff and others!
Here is the complete changelog for this release:
- Reorganised palette definition, add a demo terminal in preference panel (#504, #273, #220)
- Plenty of other new color palettes (thanks again @varemenos ! #504)
- don't propagate
COLORTERMenvironment variable in terminal (#488) - Force
$TERMenvironment variable to'xterm-256color'in terminals (#341) - Fix issue with the quit confirmation dialog box (#499)
- Add shortcut for transparency level (#481)
- Add label to tell user how to disable a shortcut (#488)
- Expose
cursor_shapeand blink cursor method in pref window (#505) - Expose Guake startup script to the pref window (#198)
- Some window management bug fixes (#506, #445)
- Fix "Not focused on opening if tab was moved" (#441)
- Add contextual menu item
'Open Link'on right click on a link (5476653) - Fix compatibility with Ubuntu 15.04 (#509)
- Fix Guake Turns Gray sometimes (#473, #512)
๐ Version 0.6.2 (2015.04.20): ๐
- Packaging issue fixes
โญ Version 0.6.1 (2015.04.19): โญ
- bug fixes
๐ Version 0.6.0 (2015.04.18): ๐
This version is poor in new feature, they just don't have time to work on Guake. They got a lot of incompatibility reports on new systems, such as Wayland. Port to gtk3 is still a must have, but all features of the VTE component does not seem to have been ported.
Features:
- Save current terminal buffer to file
- Hotkeys for moving tab
- plenty of color palettes (thanks @varemenos !)
- bug fixes
๐ Version 0.5.2 (2014.11.23): ๐
- bug fixes
- Disable the
'focus_if_open'feature (hidden trigger, true per default). Restaure focus does not work in all systems. - lot of "componentization" of the code, in preparation to the rebase of
'gtk3'branch.
๐ Version 0.5.1 (2014.11.06): ๐
- minor bug fixes release
๐ Version 0.5.0 (2014.02.22): ๐
- Tab can be moved
- Add change tab hotkey (F1-F10 by default) and is display on tab
- Add "New tab" menu item
- Quick open file path within the terminal output
- gconf only settings:
- startup scripts
- vertical aligments
- minor bug fixes
- New maintainer:
- Gaetan Semet
<<gaetan@xeberon.net>>
- Gaetan Semet
- Contributors:
- @koter84
- @kneirinck
๐ง Versions < 0.5.0 ๐ง
changes since 0.4.4:
- Custom tab titles are no longer overridden by VTE ones (rgaudin)
- Absent notifications daemon is no longer fatal
- Fix for
<Ctrl>keyhotkeys being recorded as<Primary>key(Ian MacLeod) - Font resizing using
<Ctrl>+and<Ctrl>-(Eiichi Sato) - D-Bus and commandline interface improvements
- L10n:
- Norwegian Bokmรฅl po file renamed to
nb_NO.po(Bjรธrn Lie) - Added translations: Croatian, Czech, Dutch, Galician, Indonesian, Ukrainian.
- Updated translations: Catalan, French, German, Hungarian, Spanish, Swedish.
- Norwegian Bokmรฅl po file renamed to
changes since 0.4.3:
- New icon for both guake and guake-prefs
- Improved build scripts for themable icon installation
- Updated some autotools files
- Fixing a typo in the
guake-prefs.desktopfile (Zaitor) wm_classcan't be get by gnome-shell css #414- Add the missing "System" category required by FDO menu specification (Jekyll Wu)
- Do not install the system-wide autostart file (Jekyll Wu)
- Call window.move/resize only when not in fullscreen mode #403 (Empee584)
- Terminal scrolls to the wrong position when hiding and unhiding in fullscreen mode #258 (Empee584)
- Toggle fullscreen malfunction #371 (Empee584 & Sylvestre)
- Guake overlapped the second screen in a dual-monitor setup with a sidepanel (Sylvestre)
- Tree items in Keyboard shortcuts tab of preferences window not localized #280 (Robertd)
- Add option to start in fullscreen mode #408 (Dom Sekotill)
- Refactoring of the fullscreen logic and addition of the
--fullscreenflag (Marcel Partap)
changes since 0.4.2:
- Better tab titling, based on VTE title sequences (Aleksandar Krsteski & Max Ulidtko)
- Some drag & drop support (Max Ulidtko)
- Fix for the many times reported "gconf proxy port as int" issue (Pingou)
- Better file layout which doesn't modify
PYTHONPATH(Max Ulidtko)
Updated translation and new translation:
- Russian (Vadim Kotov)
- Spanish (Ricardo A. Hermosilla Carrillo)
- Japanese (kazutaka)
- Catalan (el_libre como el chaval)
changes since 0.4.1:
Updated translations and new translations (unsorted):
- Norwegian (wty)
- Turkish (Berk Demirkฤฑr)
- Swedish (Daniel Nylander)
- Persian (Kasra Keshavarz)
- French (Bouska and Pingou)
- Russian (Pavel Alexeev and vkotovv)
- Polish (Piotr Drฤ g)
- Spanish, Castilian (dmartinezc)
- Italian (Marco Leogrande a.k.a. dark)
- Chinese simplified (็้ฒ, Gan Lu)
- Portuguese/Brazilian (Djavan Fagundes)
- Japanese (kazutaka)
- Punjabi (A S Alam)
Bugs/Features:
- Calling the
hide()method when closing main window: #229 (Lincoln) - Fixing dbus path and name for the RemoteControl object: #202 (Lincoln)
- Setting
http{s,}_proxyvars before callingfork_command: #172 (Lincoln) - Adding the
fr' langtoALL_LINGUAS: #189 (Lincoln) ๐ - Option to configure the color palette: #51 (Eduardo Grajeda) โ yes bestie, COLOR PALETTE CONFIG, we love to see it ๐
- Do not hide when showing rename dialog (Aleksandar Krsteski) โ iconique behaviour honestly
- Fixing the tab renaming feature: #205 (Lincoln) ๐ฅ
โจ changes since 0.4.0 โจ
Updated translation and new translation: like, the whole globe showed up for this one ๐
- Italian ๐ฎ๐น
- French ๐ซ๐ท
- Portuguese/Brazilian ๐ง๐ท
- Novergian ๐ณ๐ด
- German ๐ฉ๐ช
- Polish ๐ต๐ฑ
- Greek ๐ฌ๐ท
- Hungarian ๐ญ๐บ
๐ Bugs/Features ๐
- Change start message #168 ๐ฌ
- Add an option to the preference windows to create new tab in cwd #146 โ cwd girlies rise up ๐ซถ
- Preferences windows are resizable #149 โ drag it, she's flexible now โจ
- Guake's windows not shown when ran for the first time #174 โ the classic first-impression glitch, fixed ๐ญ
- Implement dbus interface to script with guake #150, #138, #105, #126, #128, #109 โ okay so this one is huge, she can talk to scripts now, no cap ๐ฅ
- Command line arguments implemented -n create a new tab -e execute a command on a defined tab -r rename a tab -t toggle visibility โ literally the whole toolkit,
-n,-e,-r,-t, periodt ๐ - Improve regex to use character classes (improve the support of certain locales) #156 ๐
- Ask user if he really wants to quit when there is a child process #158 โ she's checking in on you before you do something drastic, main character energy fr fr ๐
- Double click on a tab allows you to rename the tab #165 โ double tap like it's a photo you love ๐
- Add more information on the INSTALL file ๐
- Tray icon position fixed #161 ๐ฏ
๐ ๏ธ Infrastructure ๐ ๏ธ
- Move from guake-terminal.org to guake.org โ new address, same queen ๐
- Set up a mailing-list at:
http://lists.guake.org/cgi-bin/mailman/listinfo/guake๐ฌ
๐ฆ changes since 0.2 ๐ฆ
- Making prefs dialog window better, including a better title, fixing some paddings and spaces. โจ โ spacing is a love language
- Added backspace and delete compatibility options (thanks to gnome-terminal guys =) ๐
- Cleanup of data files (images and glade files), mostly images. ๐งน
- Complete rewrite of tab system in the main window. ๐ฅ โ she got a whole glow-up
- Fixing all issues (I think =) in close tab feature. ๐ญ โ the "(I think =)" is sending me, but okay bestie, we trust you
- Adding tab rename feature. ๐
- Making easier to grab keybinging shortcuts from the prefs screen by using eggcellrendererkeys lib. โจ๏ธ
- Now we look for more python interpreters when filling interpreters combo. ๐
- Fixing a lot of bugs. ๐ โ "a lot" is doing a lot of work in that sentence but slay
๐ License ๐
Okay so here's the legal bit, bestie โ I'm not touching this one, it's giving sacred text, so it goes down exactly as written ๐ซถ
GNU GENERAL PUBLIC LICENSE
Version 2, June 1991
Copyright (C) 1989, 1991 Free Software Foundation, Inc. 51 Franklin
Street, Fifth Floor, Boston, MA 02110-1301 USA
Everyone is permitted to copy and distribute verbatim copies of this
license document, but changing it is not allowed.
๐ CONTRIBUTING TO GUAKE ๐
Basic Details
So you wanna help build Guake?? bestie that's SO iconic of you ๐ซถ here's the general tea you need before you jump in.
Found a Bug?
Before you go opening a fresh issue, pls pls pls read this first:
- There's a Bountysource page (<https://www.bountysource.com/teams/guake>) where you can request new features for Guake โจ
- before opening a new bug, please search for a similar one in the GitHub Issues (<https://github.com/Guake/guake/issues>) ๐
Submitting a Pull Request
okay so before you submit a new Pull Request to Guake, do these steps, in order, no skipping ๐
- rebase on latest HEAD with
git pull rebase upstream master - describe your change in the pull request
- execute the code styling, checks and unit tests using:
$ make style check reno-lint test
- add a slug in release note using
$ make reno SLUG=<short_name_of_my_feature>and edit the created file inreleasenotes/notes/.
You can see how reno works using pipenv run reno --help. Please use a generic slug (eg, for translation update, use translation).
Release Procedure
- Ensure
requirements.txtis up to date with thePipfile.lock, or we will havedev0version generated - Merge all translation from Weblate
- Generate the release notes, and updates
NEWS.rstwith the upcoming release. - Ensure this pull request build.
- Merge
- Tag with the same version
Setting up the development environment
Before building the code, please ensure the dependencies are installed:
- GTK:
>=3.18 - VTE:
2.91 libkeybinder3
See full list of dependencies on the Dependencies (#dependencies) page.
The following section describes how to install these dependencies on some systems, please be aware it might not be applicable to yours directly.
Install System dependencies
Ubuntu
Execute the following command to bootstrap all needed system dependencies:
$ ./scripts/bootstrap-dev-debian.sh
Fedora
Execute:
$ ./scripts/bootstrap-dev-fedora.sh
Arch Linux
Execute:
$ ./scripts/bootstrap-dev-arch.sh
Setup development environment
Install the dependencies of your system and use the following commands:
$ make dev
$ sudo make install-schemas # still required even for local execution
You can force the interpreter version using the PYTHON_INTERPRETER variable:
$ make dev PYTHON_INTERPRETER=python3.6
Local execution of guake (without system-wide install):
$ make run
Install on system
Use the following command to build and install on your system (in /usr/local/):
$ make dev && make && sudo make install
You can reinstall easily in your environment (only validated for Debian/Ubuntu) with:
$ make reinstall # will execute `sudo`
Git hook
This project uses pre-commit (<https://pre-commit.com/>) to automatically execute some codestyle tools. It should be automatically installed by the make dev command, you can use make style if you want to run it manually. If you want to pass more options, you can use:
$ pipenv run pre-commit run --all-files
๐ฅ HACKING GUAKE ๐ฅ
Contributing
First, be sure to use a version of Python 3 where GTK and GObjects works in your system. For instance, under Ubuntu 17.04, PyGtk and python3-gi does not work well if the default python 3 interpreter is forced to Python 3.6.
- Ubuntu 14.04 LTS โ Recommended Python version:
Python 3.4(UNTESTED) - Ubuntu 16.04 LTS โ Recommended Python version:
Python 3.5(TESTED) - Ubuntu 17.04 โ Recommended Python version:
Python 3.5(TESTED) - Ubuntu 17.10 โ Recommended Python version:
Python 3.6(TESTED), Notes: Quick Open disabled (#1230)
Validate your code
We are strict on code styling, with pep8 and pylint running automatically in GitHub Actions in order to reject badly shaped patches. Please use the following command to validate all python files:
$ make style # fix the style of python files
$ make check # static code analysis
$ make test # unit test campaign
$ make dists # make distribution packages
Update translation
Update all translation files:
$ make update-po
Install the translations files:
$ sudo make install-locale
Then use your favorite po editor, such as poedit.
Start Guake with a different locale (locales should be installed):
$ LC_ALL=fr_FR.UTF8 make run
Update NEWS
Update the NEWS file using the followng command:
make release-note-news
The ChangeLog files is not maintained but instead automatically generated by PBR when building the distribution packages.
Same goes for the ChangeLog file.
Versioning
Versioning is automatically done using git tags. When a semver tag is pushed, a new version is automatically created by PBR.
PBR also has some magic to generate the version automatically from sem-ver tag found in the commit message. See the Makefile's tag-pbr target.
GitHub Actions build
GitHub Actions automatically check pull requests are compiling and check for code style.
Status of the latest build: <https://github.com/Guake/guake/actions>
๐ HELP FOR PACKAGE MAINTAINERS ๐
This page is primarily targeted to package maintainers, willing to build and distribute Guake inside a Linux Distribution, such as Debian, Arch, Fedora, and so on.
It gives some information about how Guake is built.
Dependencies
System dependencies
Here are the system dependencies of Guake for its execution:
- GTK:
>=3.18 - VTE:
2.91(>=0.42, https://packages.ubuntu.com/xenial/gir1.2-vte-2.91). See doc here <https://lazka.github.io/pgi-docs/#Vte-2.91> gir1.2-keybinder-3.0gir1.2-notify-0.7gir1.2-vte-2.91libkeybinder3python3-cairopython3-dbuspython3-gi
Optional dependencies:
libutempter0: compatibility withwallorscreencommands- Any GTK theme:
numix-gtk-theme, ...
Python dependencies
The complete list of Python packages Guake requires for its execution is descripbed in the Pipfile, section packages.
Compatibility
The Team is willing to see Guake available on every major Linux distribution. Do not hesitate to contact us through GitHub Issue or directly by email (gaetan [at] xeberon.net) if you see any issue when packageing Guake.
The major compatibility issues we experience if with the different version of VTE. We try to integrate new cool VTE features when they are ready, and protect them with test on the version installed on the user's environment, but there may still be mistakes made, breaking the software for a given environment. Do not hesitate to warn us for that!
- Source Code available on GitHub <https://github.com/Guake/guake/>.
- Official Homepage: <https://guake.github.io>
- Online Documentation is hosted on ReadTheDocs <http://guake.readthedocs.io/>.
- If you are not a developer, you can still contribute to Guake by improving its translations in your language <https://hosted.weblate.org/projects/guake/guake/>. Guake users are welcome to support Weblate <https://weblate.org/donate/> in providing this service for free for OpenSource Projects.
Important note: Do NOT use the domain guake.org, it has been registered by someone outside the team. We cannot be held responsible for the content on that web site. ๐ซ fr fr stay away from that one bestie
๐ธ AUTHOR ๐ธ
Gaetan Semet
๐ COPYRIGHT ๐
2018, Gaetan Semet
and that's a wrap on the whole page, bestie!! ๐
โจ this version of the page is 1.0, dated Oct 26, 2025, and it's the GUAKE(1) man page โ go forth and slay ๐๐ฆ๐
๐ฆ where this page comes from
- ubuntu resolute: guake 3.10.1-1 ยท GPL-2.0-or-later
- ubuntu stonking: guake 3.10.1-1 ยท GPL-2.0-or-later
- ๐ girlified by deepseek-ai/DeepSeek-V4.1-Flash on : a language model's rewrite of the original, under its terms