carrot

Carrot awesomeWM personalization application

View on GitHub

:carrot: Carrot awesomeWM personalization application

Thanks God, for creating :carrot:

Contents

Features

THEME zenburn
WALLPAPER /usr/share/awesome/themes/default/background.png
TAGS WEB, IDE, TERM, FILE, 5, 6, 7, BOOK, MUSIC, WINE, GAME, 12

APPS.TERMINAL terminator
APPS.GEDITOR gvim

WIBARS.AWBAR.POSITION top
WIBARS.AWBAR.WIDGETS launcher, taglist, promptbox, carrot_battery, keyboardlayout, systray, textclock

WIBARS.TASKBAR.POSITION bottom
WIBARS.TASKBAR.WIDGETS tasklist, layoubox

AUTOSTARTS.IDE.COMMAND emacs
AUTOSTARTS.IDE.TAGS IDE

AUTOSTARTS.PASYSTRAY.COMMAND pasystray
AUTOSTARTS.BLUEMAN.COMMAND blueman-applet

AUTOSTARTS.TERM.COMMAND terminator
AUTOSTARTS.TERM.TAGS TERM, 6, 7

Installation

Prerequisites

First you need to use awesomeWM as your window manager

AUR (Arch User Repository)

If you’re using Arch Linux install awesome-carrot package from AUR

luarocks

Install Carrot using lua package manager, luarocks:

sudo luarocks install carrot

git

Clone Carrot project into awesome configuration directory: ~/.config/awesome/

cd ~/.config/awesome
git clone https://github.com/pouyanh/carrot.git

Usage

  1. Start Carrot in awesomeWM config file: ~/.config/awesome/rc.lua
local Carrot = require("carrot")

Carrot.Start()

-- Nothing more is needed for normal usage in rc.lua
  1. Write configurations beside awesomeWM config file in: ~/.config/awesome/config
THEME multicolor

Configuration is discussed in Configuration

Configuration

Parameter Description Type Default Example
THEME Theme name string default zenburn
WALLPAPER Background image filepath string (empty) /usr/share/awesome/themes/default/background.png
MOD Primary modifier key string Mod4 Mod4
ALT Secondary modifier key string Mod1 Mod1
TAGS Ordered list of tags []string 1, 2, 3, 4, 5, 6, 7, 8, 9 WEB, IDE, TERM, FILE, BOOK, MUSIC, WINE, GAME
TAGSEL Tag selector key group KeyGroup NUMROW FUNCTION
APPS Default applications AppList { {
APPS.TERMINAL Default console/terminal string “terminal”: “uxvt”, “terminal”: “terminator”,
APPS.EDITOR Default console editor string “editor”: $EDITOR or “vim”, “editor”: “nano”,
APPS.GEDITOR Default gui editor string “geditor”: “atom”, “geditor”: “atom”,
APPS.BROWSER Default internet browser string “browser”: “firefox”, “browser”: “chromium”,
APPS.EXPLORER Default file explorer string “explorer”: “thunar”, “explorer”: “spacefm”,
APPS.LOCKER Default screen locker string “locker”: “slock”, “locker”: “xsecurelock”
APPS.SHOTER Default screen capturer string “shoter”: “scrot” “shoter”: “deepin-screenshot”
      } }
WIBARS Screens widget bars map[string]Wibar {  
      “top”: {  
      “layout”: ABC  
      “position”: TOP  
      “widgets”: [  
      “launcher”,  
      “taglist”,  
      “promptbox”,  
      “carrot_battery”,  
      “keyboardlayout”,  
      “systray”,  
      “textclock”  
      ]  
      }  
      }  
AUTOSTARTS Apps would run on startup map[string]App {}  

Types

Type Description Definition Example
KeyGroup   NUMROW | FUNCTION | NUMPAD  
Layout      
Position   TOP | BOTTOM | LEFT | RIGHT  
AppList   {  
    “terminal”: string,  
    “editor”: string,  
    “geditor”: string,  
    “browser”: string,  
    “explorer”: string,  
    “locker”: string,  
    “shoter”: string  
    }  
Wibar A widget bar {  
    “layout”: Layout,  
    “position”: Position,  
    “widgets”: []string  
    }  
App An application {  
  App run command “command”: string,  
  List of bounded tags to app “tags”: []string  
    }  

Todo

  1. Customize wallpaper
  2. Fully customizable wibars
  3. Autostart applications with default tags
  4. Activate tags using one of number or function keys

License

This software is licensed under the GPL v3 License. © 2018 Janstun