How do I add a border around windows but keep the current theme?

The file is /usr/share/themes/Ambiance/gtk-3.0/apps/unity.css

change
      -UnityDecoration-extents: 28px 0 0 0;
to
      -UnityDecoration-extents: 28px 1px 1px 1px;

logout and log back in and see effect the changes.

Thus, in your local copy, make the "1px 1px 1px;" change in the file ~/.themes/Ambiance/gtk-3.0/apps/unity.css

Enjoy! : )


Note that all the changes others have suggested that involve editing the system file /usr/share/themes/Ambiance/gtk-3.0/apps/unity.css can be done without such editing. Instead, just put the desired changes in your own file (that you create), ~/.config/gtk-3.0/gtk.css , which will take precedence over the system file.

Example content (e.g. the whole file ~/.config/gtk-3.0/gtk.css)...

/* Decorations */
UnityDecoration {
    -UnityDecoration-extents: 28px 1px 1px 1px;
}

...you may have to log out & log back in for this to take effect.

Also, note that if the terminal window has at least two tabs open, then Ambiance (or Unity?) will already put a medium thick border around the terminal. (ctrl-shift-t opens another tab.)


Building on Anders' answer, if you want a nice, subtle dark line instead of the default ugly bright/gradient line (just because you can use a gradient doesn't mean you should, Ubuntu!), edit /usr/share/themes/Ambiance/gtk-3.0/apps/unity.css like so:

Set the UnityDecoration extents like in Anders' answer:

-UnityDecoration-extents: 28px 1px 1px 1px;

Change the background-image to none in left/right, and change the background-color shade from 0.7 to 0.4 in left/right and bottom:

UnityDecoration.left,
UnityDecoration.right {
    background-color: shade (@bg_color, 0.4);
    background-size: 1px 70px;
    background-repeat: repeat-x;
    background-image: none;
}

UnityDecoration.left:backdrop,
UnityDecoration.right:backdrop {
    /* start color: mix of the top border color and bg-image gradient end */
    background-color: shade (@bg_color, 0.4);
    background-image: none;
}

UnityDecoration.bottom {
    background-image: none;
    background-color: shade (@bg_color, 0.4);
}

Optionally, adjust the 0.4 to your brightness preference.

After you change the files, you can either logout and log back in, or simply open the Appearance dialog and change the theme away from, then back to, Ambience.

Here's the result (may need to view at 100% to see the borders, they're only 1px thick):

Ubuntu Ambience Theme Borders