Coder Social home page Coder Social logo

nordtheme / gnome-terminal Goto Github PK

View Code? Open in Web Editor NEW
481.0 11.0 40.0 842 KB

An arctic, north-bluish clean and elegant GNOME Terminal color theme.

Home Page: https://www.nordtheme.com/ports/gnome-terminal

License: MIT License

Shell 85.03% JavaScript 14.97%
nord gnome terminal gnome-terminal gnome-terminal-themes color theme color-theme color-scheme colorscheme

gnome-terminal's Introduction

An arctic, north-bluish clean and elegant GNOME Terminal color theme.

Designed for a fluent and clear workflow based on the Nord color palette.

Getting started

Requirements

The installation script requires dconf and uuidgen (util-linux) to be available on your PATH to create a new profile and generate a random profile UUID.

Some distributions may require additional package(s):

  • dconf-tools - transitional package for dconf-cli and dconf-editor (Debian, Mint, Ubuntu)
  • dconf-gsettings-backend to ensure GSettings compatibility (Debian, Mint, Ubuntu)
  • dconf-cli to ensure full CLI support (Debian, Mint, Ubuntu)
  • dconf-service to ensure D-Bus support for the GSettings backend (Debian, Mint, Ubuntu)
  • uuid-runtime to provide runtime components for the Universally Unique ID library (Debian, Mint, Ubuntu)

The packages should be available for all distributions using the GNOME Terminal by default.

Installation

  1. Clone this repository
    git clone https://github.com/nordtheme/gnome-terminal.git
    cd nord-gnome-terminal/src
  2. Run the nord.sh shell script to start the automated installation.

A list of available options can be shown with -h, --help.

./nord.sh --help

Usage: nord.sh [OPTIONS]

  • -h, --help - Shows the help
  • -l, --loglevel <LOG_LEVEL>, --loglevel=<LOG_LEVEL> - Set the log level
    • 0 ERROR
    • 1 WARNING
    • 2 SUCCESS (default)
    • 3 INFO
    • 4 DEBUG
  • -p, --profile <PROFILE_NAME>, --profile=<PROFILE_NAME> - The name of the profile to install the theme to. If not specified a new profile as clone of the default profile will be created.

Profile Handling

The script detects available profiles and

  • clones the default profile if no specific profile has been specified - this ensures that no custom profile colors are overriden
  • allows to install the theme for a specific profile - the name of the profile the theme should be installed to can be passed using the -p/--profile option
  • handles already existing Nord profiles via version comparison - if the Nord profile already exists and the script version is less than the installed version a confirmation is shown whether to override the theme of abort the installation, otherwise the profile will be
    • updated if the script version is greater than the installed version
    • reinstalled if the installed version is equal to the script version

Log Level

The script provides a -l/--loglevel option to allow to define the log level. Available levels are

  • 0 ERROR - The script will run in silent mode, only error messages are shown
  • 1 WARNING - Shows warning messages
  • 2 SUCCESS (default) - Shows success messages
  • 3 INFO - Shows additional information messages
  • 4 DEBUG - Runs the script in debug mode showing additional debug messages

Activation

Set as default profile

  1. Open the Preferences
  2. Switch to the Profiles tab
  3. Select Nord from the drop-down menu labeled with Profile used when launching a new terminal

Lazy profile change

  1. Right-click anywhere inside the terminal window to open the context menu
  2. Hover over Profiles and select Nord

Screenshots

htop

Contribution

Please report issues/bugs, feature requests and suggestions for improvements to the issue tracker.

Copyright © 2016-present Sven Greb

gnome-terminal's People

Contributors

amayer5125 avatar dsmithhayes avatar svengreb avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

gnome-terminal's Issues

Have to unset $LS_COLORS

Hi,

I need to add export LS_COLORS="" to my .bashrc to allow the nord colors to apply when using ls --color.
I'm using Fedora 27.

Have I done something wrong or is this something that can be added to the install script?

Thanks

Add info about GIO modules variable to README

I am using Ubuntu 16.04, and installation instructions from the README didn't work for me.
The script ran without errors, but the following message appeared:

GLib-GIO-Message: Using the 'memory' GSettings backend.  Your settings will not be saved or shared with other applications.

The solution is described in this StackOverflow answer: before running the script, export the GIO_EXTRA_MODULES variable (it is OK to set it only for the current session).

export GIO_EXTRA_MODULES=/usr/lib/x86_64-linux-gnu/gio/modules

On a side note, add an installation one-liner to README:

curl -sL https://raw.githubusercontent.com/arcticicestudio/nord-gnome-terminal/develop/src/nord.sh | bash

Can't seem to install requirments.

[WARN] Missing required dependencies: \e[0;34muuidgen\e[0m [ERR] Required dependencies were not fulfilled: dconf expr gsettings uuidgen

I'm so confused

Unable to apply theme to Gnome Terminal in Fedora 26

I'm having some issues with installing this theme. I have verified that the dependencies outlined in the README have been met. When I run the nord.sh script I see the following output:

first-pic

After seeing this I found that Fedora 26 uses gconftool-2 not gconftool. So I changed line 87 from:

[[ -z "$GCONFTOOL" ]] && GCONFTOOL=gconftool

to:

[[ -z "$GCONFTOOL" ]] && GCONFTOOL=gconftool-2

After making this change I am now seeing the following output:

second-pic

Is there something I'm missing here? I've never really taken the time to dig into a GTK theme before so I'm pretty lost.

If there's any more information you need from me please let me know.

Running nord.sh crashes my gnome-terminal

❯ neofetch
                   -`                    nick@desktop 
                  .o+`                   ------------ 
                 `ooo/                   OS: Arch Linux x86_64 
                `+oooo:                  Host: MS-7751 2.0 
               `+oooooo:                 Kernel: 5.0.3-arch1-1-ARCH 
               -+oooooo+:                Uptime: 14 hours, 24 mins 
             `/:-:++oooo+:               Packages: 1168 (pacman) 
            `/++++/+++++++:              Shell: zsh 5.7.1 
           `/++++++++++++++:             DE: Budgie 
          `/+++ooooooooooooo/`           Theme: vimix-dark-ruby [GTK2/3] 
         ./ooosssso++osssssso+`          Icons: Numix-Circle [GTK2/3] 
        .oossssso-````/ossssss+`         Terminal: gnome-terminal 
       -osssssso.      :ssssssso.        CPU: Intel i5-3570K (4) @ 4.200GHz 
      :osssssss/        osssso+++.       GPU: NVIDIA GeForce GTX 670 
     /ossssssss/        +ssssooo/-       Memory: 3067MiB / 7927MiB 
   `/ossssso+/:-        -:/+osssso+-
  `+sso+:-`                 `.-/+oso:                            
 `++:.                           `-/+/
 .`                                 `/

I'm using gnome-terminal 3.32.0.

New color configurations

Pull Request #9

GNOME Terminal version 3.20+ now supports more color theme options.

Transparency

  • use-theme-transparency (Boolean)
  • use-transparent-background (Boolean)

Highlight colors
highlight-colors-set - Flag to indicate that custom highlight colors have been set:

  • highlight-foreground-color (String)
  • highlight-background-color (String)

Cursor colors
cursor-colors-set - Flag to indicate that custom highlight colors have been set:

  • cursor-foreground-color (String)
  • cursor-background-color (String)

version mismatch

[WARN] Detected incompatible GNOME Terminal version 3.6.2 (< 3.8)
[ERR] The installed GNOME Terminal version '3.6.2' is not compatible with the required (dconf migrated) version >= 3.8!

Migrate to MIT license

Subtask of nordtheme/nord#55

Adapt to the MIT license migration of the main Nord project. Detailed information can be found in the main task ticket.

Tasks

  • Update all license SVG badges
  • Update the LICENSE.md content
  • Update- and simplify all source code comment header

Document requirements

Related to #3

The documentation should provide instructions for the installation script requirements. It should include the used binaries, additional packages as mentioned in #3 and URLs for widely used distributions.

Shell script theme

Implement the main shell script theme file.
The order of the colors must reflect the ANSI Escape Code Colors for foreground and background.

Background: nord0
Foreground: nord4

Normal

Color Mapped to
Black nord1
Red nord11
Green nord14
Yellow nord13
Blue nord9
Magenta nord15
Cyan nord8
White nord5

Bright

Color Mapped to
Black nord3
Red nord11
Green nord14
Yellow nord13
Blue nord9
Magenta nord15
Cyan nord7
White nord6

Install script doesn't create new profile [Ubuntu GNOME]

Hello! First off, love the theme, great work!

I'm having an issue installing it with the script. To start, Ive installed all the prerequisites listed in your requirements section successfully.

When I run the script it says:

[SUCCESS] Nord GNOME Terminal version 0.1.0 has been successfully applied to the newly created 'Nord' profile

but no profile is visible in the the profile menu, nor in terminal/legacy/profiles in dconf-editor

Incorrect clone path for installation instructions

The current install instructions tell to clone this repository and then cd into nord-gnome-terminal to run the setup script. As this repository is called gnome-terminal, the git repo is cloned into the gnome-terminal location and the copy+paste instructions do not work.

question: what is your terminal setup?

Hello good day,

Just want to ask, how did you setup your terminal, are you using powerline?
It looks to unique. it just simple, clean, but beautiful.

Thanks.

Installed Nord - Can't find Profile (Works for 20.04.4 LTS, bug with 20.04 LTS)

I've installed Nord, but can't find where to activate it.
On Ubuntu 20.04, there doesn't seem to be a "Profiles" tab.

Screenshot from 2021-02-24 15-43-00
Screenshot from 2021-02-24 15-44-14

I saw this in the requirements, but have no idea how to add dconf and uuidgen to my PATH. (A search didn't yield any results either)
The installation script requires dconf and uuidgen (util-linux) to be available on your PATH to create a new profile and generate a random profile UUID.

License Links in README

There is a CC BY-SA 4.0 license badge at the bottom of the README without any explanation of what is covered under that license verse the MIT license. Should that badge be removed? Or maybe add a mention for what is covered under the CC BY-SA 4.0?

Is there a simple way to uninstall the profile?

It is not possible to select and remove the profile via the profile menu. I would like to use the gogh script for installing nord instead but can't figure out how to remove the profile at first.

Rewrite install script

Fixes #12
Fixes #6
Fixes #3

Prehistory

The profile script is currently not usable due to a undocumented behavior of dconf resulting in whether overriden profiles or error messages. The logic of the script worked previously, but the dconf or gsettings API changed breaking the script (forks of terminal.sexy) which's logic is used by almost all GNOME Terminal theme projects.

I've reported #789056 to the official GNOME bug tracker for the dconf component which got closed with the following reason:

This is simply an error in your script: you're using dconf to read keys that have never been written to. You need to use the gsettings tool instead, which takes into account the schema so it can return the default value in that case.

I tried to find the documentation where this behavior of dconf is described, but it seems like this knowledge is only documented in the code itself or internal developer documents.

Description

Since the script was never really optimized I decided to rewrite it to fix issues like #12 and #3 and implement the following additional features:

  • Profile Handling - the script should be able to detect available profiles and
    • clone the default profile if no specific profile has been specified - The script must be able to get the UUID of the default profile and clone it
    • install the theme for a specific profile - the user should be able to pass the name of the profile the theme should be installed to
    • handle already existing Nord profiles and compare the version - if the Nord GNOME Terminal theme Nord profile already exists and the script version less than the installed version the user should be able to confirm whether to override the theme of abort the installation, otherwise the profile should
      • be updated if the script version is greater than the installed version
      • be reinstalled if the installed version is equal to the script version
  • Log Level - the script should provide a option to allow the user to define the log level where the available levels should be
    • 0 - ERROR
    • 1 - WARNING
    • 2 - SUCCESS (default)
    • 3 - INFO
    • 4 - DEBUG
  • Dependency Management - the script should be able to validate all required dependencies to ensure the script can run on the executive environment which includes
    • dconf (dconf)
    • expr (coreutils)
    • gsettings (glib2)
    • uuidgen (util-linux)

Profile not listed

I ran the nord.sh but could not see the profile listed even after restarting terminal.
Tried to search for it but could not find it even my own profile couldnt find.

I use mint 18.1
Did not know anything about dconf-editor or gconf-editor so i installed both to see my self.
I have 3 profiles now: default, my own and nord.

In dconf i can see the default and my own while in gconf I can see nord(but not the other two)!

I remember reading "migrating profiles on linux mint 18" in my search results while i was searching whats going on so maybe gconf was old way or something and dconf is new? (and i assume u create the profile with the old way thus is not listed in profiles?)

Adapt remaining `arcticicestudio` "fade-out" changes

With the retirement of the Arctic Ice Studio personal & Nord project brand various migrations to the svengreb GitHub account of other projects were also completed within the last weeks. There are also changes in Nord projects like nordtheme/web that other projects depended on and can now be adapted as well.
Therefore all Nord projects must adapt these changes which includes…

No new profile created

I saw another user having problems with no new 'Nord' profile being created, and I am having the same problem. I installed all of your specified dependencies and the install appears to be working correctly. But I do not get a new profile being created.

I am using Gnome terminal 3.22.2 on Debian Stretch and below is the output I see. It looks to me like it is applying the settings to the '' profile rather than the 'Nord' profile.

[INFO] Validated required dependencies: dconf expr gsettings uuidgen
[INFO] Detected compatible GNOME Terminal version 3.22.2 (>= 3.8 dconf migrated)
GLib-GIO-Message: Using the 'memory' GSettings backend.  Your settings will not be saved or shared with other applications.
[INFO] Available profile UUIDs: b1dcc9dd-5262-4d8d-a863-c897e6d979b9
GLib-GIO-Message: Using the 'memory' GSettings backend.  Your settings will not be saved or shared with other applications.
GLib-GIO-Message: Using the 'memory' GSettings backend.  Your settings will not be saved or shared with other applications.
GLib-GIO-Message: Using the 'memory' GSettings backend.  Your settings will not be saved or shared with other applications.
[INFO] Cloned the default profile 'b1dcc9dd-5262-4d8d-a863-c897e6d979b9' with new UUID '48a30685-7008-46d9-beb0-1520e6e4b080'
[DEBUG] Applied Nord color palette
[DEBUG] Applied background- and foreground colors
[DEBUG] Applied bold color and configuration
[DEBUG] Applied system theme compability configuration
[DEBUG] Applied cursor colors and configuration
[DEBUG] Applied highlight colors and configuration
[DEBUG] Applied highlight colors and configuration
[DEBUG] Set Nord GNOME Terminal version key of the '' profile
[INFO] Applied theme colors and configurations
[SUCCESS] Nord GNOME Terminal version 0.1.0 has been successfully applied to the newly created 'Nord' profile
[DEBUG] Cleaning up script execution by unsetting declared functions and variables

For Bash on Windows

I can't find a Preferences menu with the Bash on Windows, is there any way to add the Nord profiles to change the color scheme?

Same prompt as in the screenshot

How can I configure my bash prompt to get the same one as in the screenshot?! Can this be implemented in the installation .sh file?

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.