terra terminal for ubuntu 14.04
I would like to try the terra terminal but the ppa doesn't work for 14.04. Does terra support 14.04?
If so, where can I find it?
You can make it work under Ubuntu 13.10 and greater. First You have to manually download the package for Raring version from here: Terra PPA.
Then, install the package with
sudo dpkg -i terra_0.1.7~raring1_amd64.deb
Then comment the lines 152, 156 and 165-166 in the file
/usr/lib/python2.7/site-packages/terra/VteObject.py
Here is how that portion of VteObject.py
looks:
#self.vte.set_background_saturation(ConfigManager.get_conf('transparency') / 100.0)
self.vte.set_opacity(int((100 - ConfigManager.get_conf(('transparency'))) / 100.0 * 65535))
#self.vte.set_background_transparent(ConfigManager.use_fake_transparency)
self.vte.set_word_chars(ConfigManager.get_conf('select-by-word'))
self.vte.set_colors(
Gdk.color_parse(ConfigManager.get_conf('color-text')),
Gdk.color_parse(ConfigManager.get_conf('color-background')),
[])
#self.vte.set_background_image_file(
# ConfigManager.get_conf('background-image'))
Terra will work after this, but you will not be able to adjust the transparency or set a custom background.
As per mario947's answer, adding the following to line 473 of /usr/lib/python2.7/dist-packages/terra/terminal.py
will allow you to adjust the transparency. You will need to restart the terminal process every time you adjust the transparency to see your change, however.
self.set_opacity((ConfigManager.get_conf('transparency')) / 100.0)
The surrounding part of that file should look like:
def init_transparency(self):
self.set_app_paintable(True)
visual = self.screen.get_rgba_visual()
if visual != None and self.screen.is_composited():
self.set_opacity((ConfigManager.get_conf('transparency')) / 100.0)
self.set_visual(visual)
else:
ConfigManager.use_fake_transparency = True
To make terra transparent in 14.04 you can add this
self.set_opacity((ConfigManager.get_conf('transparency')) / 100.0)
to the #473 line of /usr/lib/python2.7/dist-packages/terra/terminal.py
:
def init_transparency(self):
self.set_app_paintable(True)
visual = self.screen.get_rgba_visual()
if visual != None and self.screen.is_composited():
self.set_opacity((ConfigManager.get_conf('transparency')) / 100.0)
self.set_visual(visual)
else:
ConfigManager.use_fake_transparency = True