25 changed files with 1561 additions and 5 deletions
@ -0,0 +1,13 @@ |
|||||||
|
- name: update prelink cache |
||||||
|
command: prelink -afmR |
||||||
|
|
||||||
|
- name: emerge depclean |
||||||
|
portage: |
||||||
|
depclean: yes |
||||||
|
|
||||||
|
- name: emerge world |
||||||
|
debug: msg="make.conf has been updated. Please run 'emerge @world'" |
||||||
|
|
||||||
|
- name: emerge custom set |
||||||
|
debug: msg="Custom set has been updated. Please run 'emerge @{{ apps.set_name }}'" |
||||||
|
|
@ -0,0 +1,80 @@ |
|||||||
|
- name: Make a list with packages with custom USE flags |
||||||
|
template: |
||||||
|
src: packages.j2 |
||||||
|
dest: /etc/portage/package.use/custom.clt |
||||||
|
vars: |
||||||
|
packages: "{{ gentoo.use.custom }}" |
||||||
|
|
||||||
|
- name: Freeze packages |
||||||
|
template: |
||||||
|
src: packages.j2 |
||||||
|
dest: /etc/portage/package.provide |
||||||
|
vars: |
||||||
|
packages: "{{ apps.freeze }}" |
||||||
|
|
||||||
|
- name: Mask packages |
||||||
|
template: |
||||||
|
src: packages.j2 |
||||||
|
dest: /etc/portage/package.mask/custom.clt |
||||||
|
vars: |
||||||
|
packages: "{{ apps.mask }}" |
||||||
|
|
||||||
|
- name: Unmask packages |
||||||
|
template: |
||||||
|
src: packages.j2 |
||||||
|
dest: /etc/portage/package.keywords/custom.clt |
||||||
|
vars: |
||||||
|
packages: "{{ apps.unmask }}" |
||||||
|
|
||||||
|
- name: Make directories for savedconfig files |
||||||
|
file: |
||||||
|
path: "/etc/portage/savedconfig/{{ item | dirname }}" |
||||||
|
state: directory |
||||||
|
with_items: "{{ gentoo.use.config }}" |
||||||
|
|
||||||
|
- name: Copy savedconfig files |
||||||
|
template: |
||||||
|
src: "savedconfig/{{ item }}" |
||||||
|
dest: "/etc/portage/savedconfig/{{ item }}" |
||||||
|
with_items: "{{ gentoo.use.config }}" |
||||||
|
tags: |
||||||
|
- portage |
||||||
|
- emerge |
||||||
|
- savedconfig |
||||||
|
|
||||||
|
- name: Make custom package set |
||||||
|
template: |
||||||
|
src: packages.j2 |
||||||
|
dest: "/etc/portage/sets/{{ apps.set_name }}" |
||||||
|
vars: |
||||||
|
packages: "{{ apps.install }}" |
||||||
|
notify: emerge custom set |
||||||
|
|
||||||
|
- name: Remove unused applications |
||||||
|
portage: |
||||||
|
package: "{{ apps.remove }}" |
||||||
|
state: absent |
||||||
|
notify: emerge depclean |
||||||
|
|
||||||
|
- name: Disable services |
||||||
|
service: |
||||||
|
name: "{{ item.name }}" |
||||||
|
runlevel: "{{ item.runlevel | default(omit) }}" |
||||||
|
state: stopped |
||||||
|
enabled: no |
||||||
|
with_items: "{{ services.disabled }}" |
||||||
|
|
||||||
|
- name: Enable services |
||||||
|
service: |
||||||
|
name: "{{ item.name }}" |
||||||
|
runlevel: "{{ item.runlevel | default(omit) }}" |
||||||
|
state: started |
||||||
|
enabled: yes |
||||||
|
with_items: "{{ services.enabled }}" |
||||||
|
|
||||||
|
# Download binaries from GitHub |
||||||
|
# TODO: Mention binary releases in README.md |
||||||
|
- include: install-github.yml app_name="{{ item.name }}" app_repository="{{ item.repository }}" app_type="{{ item.type }}" |
||||||
|
with_items: |
||||||
|
- "{{ apps.github }}" |
||||||
|
when: false |
@ -0,0 +1,19 @@ |
|||||||
|
--- |
||||||
|
|
||||||
|
- name: Create {{ apps.bin_path }} directory |
||||||
|
file: |
||||||
|
path: "{{ apps.bin_path }}" |
||||||
|
state: directory |
||||||
|
|
||||||
|
- name: Get latest {{ app_name }} GitHub release |
||||||
|
shell: > |
||||||
|
curl -sq "https://api.github.com/repos/{{ app_repository }}/releases/latest" | jq -r '.assets[] | select ( .name | contains ("{{ app_type }}") ) | .browser_download_url' |
||||||
|
register: app_release |
||||||
|
|
||||||
|
- name: Download {{ app_name }} |
||||||
|
get_url: |
||||||
|
url: "{{ app_release.stdout }}" |
||||||
|
dest: "{{ apps.bin_path }}/{{ app_name }}" |
||||||
|
mode: 0777 |
||||||
|
when: app_release.rc == 0 |
||||||
|
|
@ -0,0 +1,61 @@ |
|||||||
|
- include_vars: system.yml |
||||||
|
- include_vars: services.yml |
||||||
|
- include_vars: sysctl.yml |
||||||
|
- include_vars: mount.yml |
||||||
|
- include_vars: portage.yml |
||||||
|
- include_vars: applications.yml |
||||||
|
- include_vars: xorg.yml |
||||||
|
- include_vars: cleanup.yml |
||||||
|
|
||||||
|
- name: Adjust number of tty consoles |
||||||
|
lineinfile: |
||||||
|
path: /etc/inittab |
||||||
|
regexp: '^c{{ item }}:' |
||||||
|
state: absent |
||||||
|
with_sequence: start={{ system.tty_consoles + 1 }} end=9 |
||||||
|
|
||||||
|
- name: Configure tmpfs |
||||||
|
mount: |
||||||
|
path: "{{ item.path }}" |
||||||
|
src: tmpfs |
||||||
|
fstype: tmpfs |
||||||
|
state: present |
||||||
|
opts: "{{ item.options | default('defaults') }}" |
||||||
|
with_items: "{{ mount.tmpfs }}" |
||||||
|
|
||||||
|
- include: portage.yml |
||||||
|
|
||||||
|
- include: applications.yml |
||||||
|
|
||||||
|
- include: prelink.yml |
||||||
|
when: optimisation.prelink |
||||||
|
|
||||||
|
- include: preload.yml |
||||||
|
when: optimisation.preload |
||||||
|
|
||||||
|
- name: Set sysctl options |
||||||
|
sysctl: |
||||||
|
name: "{{ item.name }}" |
||||||
|
value: "{{ item.value }}" |
||||||
|
state: present |
||||||
|
sysctl_set: yes |
||||||
|
with_items: "{{ sysctl }}" |
||||||
|
|
||||||
|
- name: Make xorg.conf |
||||||
|
template: |
||||||
|
src: xorg.conf.j2 |
||||||
|
dest: "/etc/X11/xorg.conf.clt" |
||||||
|
|
||||||
|
- name: Configure touchpad |
||||||
|
template: |
||||||
|
src: xorg.touchpad.conf.j2 |
||||||
|
dest: "/etc/X11/xorg.conf.d/touchpad.conf.clt" |
||||||
|
|
||||||
|
- name: Update imagemagick policies |
||||||
|
lineinfile: |
||||||
|
path: /etc/ImageMagick-7/policy.xml |
||||||
|
regexp: '<policy domain="coder" rights="read | write" pattern="PDF" />' |
||||||
|
line: '<policy domain="coder" rights="read | write" pattern="PDF" />' |
||||||
|
insertbefore: '</policymap>' |
||||||
|
state: present |
||||||
|
|
@ -0,0 +1,29 @@ |
|||||||
|
- name: Create make.conf |
||||||
|
template: |
||||||
|
src: make.conf.j2 |
||||||
|
dest: /etc/portage/make.conf/custom.clt |
||||||
|
notify: emerge world |
||||||
|
|
||||||
|
- name: Enable SQLite in portage |
||||||
|
lineinfile: |
||||||
|
path: /etc/portage/modules |
||||||
|
regexp: '^portdbapi\.auxdbmodule' |
||||||
|
line: 'portdbapi.auxdbmodule = cache.sqlite.database' |
||||||
|
create: yes |
||||||
|
register: portage_sqlite_enabled |
||||||
|
|
||||||
|
- name: Update portage cache |
||||||
|
shell: > |
||||||
|
rm -rf /var/cache/edb/dep && |
||||||
|
emerge --metadata |
||||||
|
when: portage_sqlite_enabled.changed |
||||||
|
|
||||||
|
- name: Configure eix |
||||||
|
template: |
||||||
|
src: eixrc.j2 |
||||||
|
dest: /etc/eixrc/50-calculate.clt |
||||||
|
register: eix_configured |
||||||
|
|
||||||
|
- name: Update eix cache |
||||||
|
shell: eix-update |
||||||
|
when: eix_configured.changed |
@ -0,0 +1,18 @@ |
|||||||
|
- name: Install prelink utility |
||||||
|
portage: |
||||||
|
package: prelink |
||||||
|
state: present |
||||||
|
register: prelink_installed |
||||||
|
notify: update prelink cache |
||||||
|
|
||||||
|
- name: Update env data |
||||||
|
command: env-update |
||||||
|
when: prelink_installed.changed |
||||||
|
|
||||||
|
- name: Enable prelink |
||||||
|
lineinfile: |
||||||
|
path: /etc/conf.d/prelink |
||||||
|
regexp: '^PRELINKING' |
||||||
|
line: 'PRELINKING="{{ optimisation.prelink }}"' |
||||||
|
create: yes |
||||||
|
notify: update prelink cache |
@ -0,0 +1,13 @@ |
|||||||
|
- name: Install preload |
||||||
|
portage: |
||||||
|
package: preload |
||||||
|
state: present |
||||||
|
register: preload_updated |
||||||
|
|
||||||
|
- name: Enable daemons |
||||||
|
service: |
||||||
|
name: preload |
||||||
|
state: started |
||||||
|
enabled: yes |
||||||
|
runlevel: default |
||||||
|
when: preload_updated.changed |
@ -0,0 +1,9 @@ |
|||||||
|
# {{ ansible_managed }} |
||||||
|
|
||||||
|
COLORSCHEME{{ gentoo.eix.colorscheme }}="true" |
||||||
|
NOSTATUSLINE="{{ 'false' if gentoo.eix.statusline == 'true' else 'true' }}" |
||||||
|
EIX_LIMIT={{ gentoo.eix.limit }} |
||||||
|
EIX_LIMIT_COMPACT={{ gentoo.eix.limit_compact }} |
||||||
|
PORTDIR_CACHE_METHOD='{{ gentoo.eix.cache_method }}' |
||||||
|
OVERLAY_CACHE_METHOD='{{ gentoo.eix.cache_method }}' |
||||||
|
|
@ -0,0 +1,59 @@ |
|||||||
|
# {{ ansible_managed }} |
||||||
|
|
||||||
|
#------------------------------------ |
||||||
|
# Основные опции сборки |
||||||
|
#------------------------------------ |
||||||
|
FEATURES="{{ gentoo.portage.features | join(' ') }}" |
||||||
|
|
||||||
|
#------------------------------------ |
||||||
|
# Настройки компилятора |
||||||
|
#------------------------------------ |
||||||
|
# Дополнительные параметры, передаваемые компилятору. Флаг '-march=native' |
||||||
|
# оптимизирует программы под ваше оборудование. |
||||||
|
CFLAGS="{{ gentoo.portage.cflags | join(' ') }}" |
||||||
|
CXXFLAGS="${CFLAGS}" |
||||||
|
|
||||||
|
#---------------------------------- |
||||||
|
# Ускорение компиляции |
||||||
|
#---------------------------------- |
||||||
|
MAKEOPTS="{{ gentoo.portage.buildopts.common | join(' ') }} {{ gentoo.portage.buildopts.make | join(' ') }}" |
||||||
|
|
||||||
|
# Количество пакетов для одновременной сборки. |
||||||
|
EMERGE_DEFAULT_OPTS="${EMERGE_DEFAULT_OPTS} {{ gentoo.portage.buildopts.common | join(' ') }} {{ gentoo.portage.buildopts.emerge | join(' ') }}" |
||||||
|
|
||||||
|
#PORTAGE_BUNZIP2_COMMAND="lbunzip2 -nX" |
||||||
|
|
||||||
|
#---------------------------------- |
||||||
|
# Поддерживаемые архитектуры |
||||||
|
#---------------------------------- |
||||||
|
ABI_X86="{{ gentoo.architectures | join(' ') }}" |
||||||
|
|
||||||
|
QEMU_SOFTMMU_TARGETS="i386 x86_64" |
||||||
|
QEMU_USER_TARGETS="i386 x86_64" |
||||||
|
|
||||||
|
RUBY_TARGETS="{{ gentoo.interpretators.ruby | join(' ') }}" |
||||||
|
RUBY_SINGLE_TARGETS="ruby27" |
||||||
|
|
||||||
|
PYTHON_TARGETS="{{ gentoo.interpretators.python | join(' ') }}" |
||||||
|
|
||||||
|
#---------------------------------- |
||||||
|
# Локализация |
||||||
|
#---------------------------------- |
||||||
|
LINGUAS="{{ gentoo.languages | join(' ') }}" |
||||||
|
L10N="{{ gentoo.languages | join(' ') }}" |
||||||
|
|
||||||
|
#---------------------------------- |
||||||
|
# Устройства |
||||||
|
#---------------------------------- |
||||||
|
INPUT_DEVICES="{{ gentoo.devices.input | join(' ') }}" |
||||||
|
VIDEO_CARDS="{{ gentoo.devices.video | join(' ') }}" |
||||||
|
|
||||||
|
#---------------------------------- |
||||||
|
# USE-Флаги |
||||||
|
#---------------------------------- |
||||||
|
USE_ENABLED="{{ gentoo.use.enabled | join(' ') }}" |
||||||
|
|
||||||
|
USE_DISABLED="{{ gentoo.use.disabled | map('regex_replace', '(.*)', '-\\1') | join(' ') }}" |
||||||
|
|
||||||
|
USE="$USE_DISABLED $USE_ENABLED" |
||||||
|
|
@ -0,0 +1,6 @@ |
|||||||
|
# {{ ansible_managed }} |
||||||
|
|
||||||
|
{% for package in packages %} |
||||||
|
{{ package }} |
||||||
|
{% endfor %} |
||||||
|
|
@ -0,0 +1,23 @@ |
|||||||
|
/* See LICENSE file for copyright and license details. */ |
||||||
|
/* Default settings; can be overriden by command line. */ |
||||||
|
|
||||||
|
static int topbar = 1; /* -b option; if 0, dmenu appears at bottom */ |
||||||
|
/* -fn option overrides fonts[0]; default X11 font or font set */ |
||||||
|
static const char *fonts[] = { |
||||||
|
"{{ x.font_name }}:size=14" |
||||||
|
}; |
||||||
|
static const char *prompt = NULL; /* -p option; prompt to the left of input field */ |
||||||
|
static const char *colors[SchemeLast][2] = { |
||||||
|
/* fg bg */ |
||||||
|
[SchemeNorm] = { "#bbbbbb", "#222222" }, |
||||||
|
[SchemeSel] = { "#eeeeee", "#005577" }, |
||||||
|
[SchemeOut] = { "#000000", "#00ffff" }, |
||||||
|
}; |
||||||
|
/* -l option; if nonzero, dmenu uses vertical list with given number of lines */ |
||||||
|
static unsigned int lines = 0; |
||||||
|
|
||||||
|
/* |
||||||
|
* Characters not considered part of a word while deleting words |
||||||
|
* for example: " /?\"&[]" |
||||||
|
*/ |
||||||
|
static const char worddelimiters[] = " "; |
@ -0,0 +1,59 @@ |
|||||||
|
/* See LICENSE file for copyright and license details. */ |
||||||
|
|
||||||
|
/* appearance */ |
||||||
|
static const char font[] = "-*-*-medium-*-*-*-16-*-*-*-*-*-*-*"; |
||||||
|
/*static const char font[] = "DevaVu Sans:pixelsize=30:antialias=true:autohint=true";*/ |
||||||
|
static const char* normbgcolor = "#222222"; |
||||||
|
static const char* normfgcolor = "#cccccc"; |
||||||
|
static const char* selbgcolor = "#555555"; |
||||||
|
static const char* selfgcolor = "#ffffff"; |
||||||
|
static const char before[] = "<"; |
||||||
|
static const char after[] = ">"; |
||||||
|
static const int tabwidth = 400; |
||||||
|
static const Bool foreground = True; |
||||||
|
|
||||||
|
/* |
||||||
|
* Where to place a new tab when it is opened. When npisrelative is True, |
||||||
|
* then the current position is changed + newposition. If npisrelative |
||||||
|
* is False, then newposition is an absolute position. |
||||||
|
*/ |
||||||
|
static int newposition = 0; |
||||||
|
static Bool npisrelative = False; |
||||||
|
|
||||||
|
#define SETPROP(p) { \ |
||||||
|
.v = (char *[]){ "/bin/sh", "-c", \ |
||||||
|
"prop=\"`xwininfo -children -id $1 | grep '^ 0x' | sed -e's@^ *\\(0x[0-9a-f]*\\) \"\\([^\"]*\\)\".*@\\1 \\2@' | xargs -0 printf %b | dmenu -l 10`\" &&" \ |
||||||
|
"xprop -id $1 -f $0 8s -set $0 \"$prop\"", \ |
||||||
|
p, winid, NULL \ |
||||||
|
} \ |
||||||
|
} |
||||||
|
|
||||||
|
#define MODKEY ControlMask |
||||||
|
static Key keys[] = { \ |
||||||
|
/* modifier key function argument */ |
||||||
|
{ MODKEY|ShiftMask, XK_Return, focusonce, { 0 } }, |
||||||
|
{ MODKEY|ShiftMask, XK_Return, spawn, { 0 } }, |
||||||
|
{ MODKEY, XK_t, spawn, SETPROP("_TABBED_SELECT_TAB") }, |
||||||
|
|
||||||
|
{ MODKEY|ShiftMask, XK_l, rotate, { .i = +1 } }, |
||||||
|
{ MODKEY|ShiftMask, XK_h, rotate, { .i = -1 } }, |
||||||
|
{ MODKEY|ShiftMask, XK_j, movetab, { .i = -1 } }, |
||||||
|
{ MODKEY|ShiftMask, XK_k, movetab, { .i = +1 } }, |
||||||
|
{ MODKEY, XK_Tab, rotate, { .i = 0 } }, |
||||||
|
|
||||||
|
{ MODKEY, XK_1, move, { .i = 0 } }, |
||||||
|
{ MODKEY, XK_2, move, { .i = 1 } }, |
||||||
|
{ MODKEY, XK_3, move, { .i = 2 } }, |
||||||
|
{ MODKEY, XK_4, move, { .i = 3 } }, |
||||||
|
{ MODKEY, XK_5, move, { .i = 4 } }, |
||||||
|
{ MODKEY, XK_6, move, { .i = 5 } }, |
||||||
|
{ MODKEY, XK_7, move, { .i = 6 } }, |
||||||
|
{ MODKEY, XK_8, move, { .i = 7 } }, |
||||||
|
{ MODKEY, XK_9, move, { .i = 8 } }, |
||||||
|
{ MODKEY, XK_0, move, { .i = 9 } }, |
||||||
|
|
||||||
|
{ MODKEY, XK_q, killclient, { 0 } }, |
||||||
|
|
||||||
|
{ 0, XK_F11, fullscreen, { 0 } }, |
||||||
|
}; |
||||||
|
|
@ -0,0 +1,498 @@ |
|||||||
|
/* {{ ansible_managed }} */ |
||||||
|
|
||||||
|
/* See LICENSE file for copyright and license details. */ |
||||||
|
|
||||||
|
/* |
||||||
|
* appearance |
||||||
|
* |
||||||
|
* font: see http://freedesktop.org/software/fontconfig/fontconfig-user.html |
||||||
|
*/ |
||||||
|
/* CHANGED */ |
||||||
|
static char *font = "{{ x.font_name }}:pixelsize=18:antialias=true:autohint=true"; |
||||||
|
static int borderpx = 2; |
||||||
|
|
||||||
|
/* |
||||||
|
* What program is execed by st depends of these precedence rules: |
||||||
|
* 1: program passed with -e |
||||||
|
* 2: utmp option |
||||||
|
* 3: SHELL environment variable |
||||||
|
* 4: value of shell in /etc/passwd |
||||||
|
* 5: value of shell in config.h |
||||||
|
*/ |
||||||
|
/* CHANGED */ |
||||||
|
static char *shell = "/bin/bash"; |
||||||
|
char *utmp = NULL; |
||||||
|
char *stty_args = "stty raw pass8 nl -echo -iexten -cstopb 38400"; |
||||||
|
|
||||||
|
/* identification sequence returned in DA and DECID */ |
||||||
|
char *vtiden = "\033[?6c"; |
||||||
|
|
||||||
|
/* Kerning / character bounding-box multipliers */ |
||||||
|
static float cwscale = 1.0; |
||||||
|
static float chscale = 1.0; |
||||||
|
|
||||||
|
/* |
||||||
|
* word delimiter string |
||||||
|
* |
||||||
|
* More advanced example: " `'\"()[]{}" |
||||||
|
*/ |
||||||
|
char *worddelimiters = " "; |
||||||
|
|
||||||
|
/* selection timeouts (in milliseconds) */ |
||||||
|
static unsigned int doubleclicktimeout = 300; |
||||||
|
static unsigned int tripleclicktimeout = 600; |
||||||
|
|
||||||
|
/* alt screens */ |
||||||
|
int allowaltscreen = 1; |
||||||
|
|
||||||
|
/* frames per second st should at maximum draw to the screen */ |
||||||
|
static unsigned int xfps = 120; |
||||||
|
static unsigned int actionfps = 30; |
||||||
|
|
||||||
|
/* |
||||||
|
* blinking timeout (set to 0 to disable blinking) for the terminal blinking |
||||||
|
* attribute. |
||||||
|
*/ |
||||||
|
static unsigned int blinktimeout = 800; |
||||||
|
|
||||||
|
/* |
||||||
|
* thickness of underline and bar cursors |
||||||
|
*/ |
||||||
|
static unsigned int cursorthickness = 2; |
||||||
|
|
||||||
|
/* |
||||||
|
* bell volume. It must be a value between -100 and 100. Use 0 for disabling |
||||||
|
* it |
||||||
|
*/ |
||||||
|
static int bellvolume = 0; |
||||||
|
|
||||||
|
/* default TERM value */ |
||||||
|
char *termname = "st-256color"; |
||||||
|
|
||||||
|
/* |
||||||
|
* spaces per tab |
||||||
|
* |
||||||
|
* When you are changing this value, don't forget to adapt the »it« value in |
||||||
|
* the st.info and appropriately install the st.info in the environment where |
||||||
|
* you use this st version. |
||||||
|
* |
||||||
|
* it#$tabspaces, |
||||||
|
* |
||||||
|
* Secondly make sure your kernel is not expanding tabs. When running `stty |
||||||
|
* -a` »tab0« should appear. You can tell the terminal to not expand tabs by |
||||||
|
* running following command: |
||||||
|
* |
||||||
|
* stty tabs |
||||||
|
*/ |
||||||
|
unsigned int tabspaces = 8; |
||||||
|
|
||||||
|
static const char *colorname_xterm[] = { |
||||||
|
/* 8 normal colors */ |
||||||
|
"#3B3B3C", /* black */ |
||||||
|
"#CD0000", /* red */ |
||||||
|
"#20A330", /* green */ |
||||||
|
"#b8b800", /* yellow */ |
||||||
|
"#0000CD", /* blue */ |
||||||
|
"#B217B2", /* magenta */ |
||||||
|
"#00B0B0", /* cyan */ |
||||||
|
"#BEB262", /* gray */ |
||||||
|
|
||||||
|
/* 8 bright colors */ |
||||||
|
"#808080", /* gray */ |
||||||
|
"#800000", /* red */ |
||||||
|
"#005020", /* green */ |
||||||
|
"#995500", /* yellow */ |
||||||
|
"#004080", /* blue */ |
||||||
|
"#443300", /* magenta */ |
||||||
|
"#306080", /* cyan */ |
||||||
|
"#7F7776", /* white */ |
||||||
|
|
||||||
|
[255] = 0, |
||||||
|
|
||||||
|
/* more colors can be added after 255 to use with DefaultXX */ |
||||||
|
"#cccccc", |
||||||
|
"#555555", |
||||||
|
"#D9D9D9", |
||||||
|
"#000000", |
||||||
|
}; |
||||||
|
|
||||||
|
static const char *colorname[] = { |
||||||
|
/* 8 normal colors */ |
||||||
|
"#3B3B3C", /* black */ |
||||||
|
"#CD0000", /* red */ |
||||||
|
"#0A6D16", /* green */ |
||||||
|
"#b8b800", /* yellow */ |
||||||
|
"#0000CD", /* blue */ |
||||||
|
"#B217B2", /* magenta */ |
||||||
|
"#00B0B0", /* cyan */ |
||||||
|
"#D9D9D9", /* gray */ |
||||||
|
|
||||||
|
/* 8 bright colors */ |
||||||
|
"#808080", /* gray */ |
||||||
|
"#800000", /* red */ |
||||||
|
"#005020", /* green */ |
||||||
|
"#995500", /* yellow */ |
||||||
|
"#004080", /* blue */ |
||||||
|
"#443300", /* magenta */ |
||||||
|
"#306080", /* cyan */ |
||||||
|
"#7F7776", /* white */ |
||||||
|
|
||||||
|
[255] = 0, |
||||||
|
|
||||||
|
/* more colors can be added after 255 to use with DefaultXX */ |
||||||
|
"#8C8C8C", |
||||||
|
"#E29B00", |
||||||
|
"#464B50", |
||||||
|
"#000000", |
||||||
|
}; |
||||||
|
|
||||||
|
|
||||||
|
/* |
||||||
|
* Default colors (colorname index) |
||||||
|
* foreground, background, cursor, reverse cursor |
||||||
|
*/ |
||||||
|
/* CHANGED */ |
||||||
|
unsigned int defaultfg = 259; |
||||||
|
unsigned int defaultbg = 7; |
||||||
|
static unsigned int defaultcs = 256; |
||||||
|
static unsigned int defaultrcs = 257; |
||||||
|
|
||||||
|
/* |
||||||
|
* Default shape of cursor |
||||||
|
* 2: Block ("█") |
||||||
|
* 4: Underline ("_") |
||||||
|
* 6: Bar ("|") |
||||||
|
* 7: Snowman ("☃") |
||||||
|
*/ |
||||||
|
static unsigned int cursorshape = 2; |
||||||
|
|
||||||
|
/* |
||||||
|
* Default columns and rows numbers |
||||||
|
*/ |
||||||
|
|
||||||
|
static unsigned int cols = 80; |
||||||
|
static unsigned int rows = 24; |
||||||
|
|
||||||
|
/* |
||||||
|
* Default colour and shape of the mouse cursor |
||||||
|
*/ |
||||||
|
static unsigned int mouseshape = XC_xterm; |
||||||
|
static unsigned int mousefg = 7; |
||||||
|
static unsigned int mousebg = 0; |
||||||
|
|
||||||
|
/* |
||||||
|
* Color used to display font attributes when fontconfig selected a font which |
||||||
|
* doesn't match the ones requested. |
||||||
|
*/ |
||||||
|
static unsigned int defaultattr = 11; |
||||||
|
|
||||||
|
/* |
||||||
|
* Internal mouse shortcuts. |
||||||
|
* Beware that overloading Button1 will disable the selection. |
||||||
|
*/ |
||||||
|
static MouseShortcut mshortcuts[] = { |
||||||
|
/* button mask string */ |
||||||
|
{ Button4, XK_ANY_MOD, "\031" }, |
||||||
|
{ Button5, XK_ANY_MOD, "\005" }, |
||||||
|
}; |
||||||
|
|
||||||
|
/* Internal keyboard shortcuts. */ |
||||||
|
#define MODKEY Mod1Mask |
||||||
|
#define TERMMOD (ControlMask|ShiftMask) |
||||||
|
|
||||||
|
static Shortcut shortcuts[] = { |
||||||
|
/* mask keysym function argument */ |
||||||
|
{ XK_ANY_MOD, XK_Break, sendbreak, {.i = 0} }, |
||||||
|
{ ControlMask, XK_Print, toggleprinter, {.i = 0} }, |
||||||
|
{ ShiftMask, XK_Print, printscreen, {.i = 0} }, |
||||||
|
{ XK_ANY_MOD, XK_Print, printsel, {.i = 0} }, |
||||||
|
{ TERMMOD, XK_Prior, zoom, {.f = +1} }, |
||||||
|
{ TERMMOD, XK_Next, zoom, {.f = -1} }, |
||||||
|
{ TERMMOD, XK_Home, zoomreset, {.f = 0} }, |
||||||
|
{ TERMMOD, XK_C, clipcopy, {.i = 0} }, |
||||||
|
{ TERMMOD, XK_V, clippaste, {.i = 0} }, |
||||||
|
{ TERMMOD, XK_Y, selpaste, {.i = 0} }, |
||||||
|
{ ShiftMask, XK_Insert, selpaste, {.i = 0} }, |
||||||
|
{ TERMMOD, XK_Num_Lock, numlock, {.i = 0} }, |
||||||
|
}; |
||||||
|
|
||||||
|
/* |
||||||
|
* Special keys (change & recompile st.info accordingly) |
||||||
|
* |
||||||
|
* Mask value: |
||||||
|
* * Use XK_ANY_MOD to match the key no matter modifiers state |
||||||
|
* * Use XK_NO_MOD to match the key alone (no modifiers) |
||||||
|
* appkey value: |
||||||
|
* * 0: no value |
||||||
|
* * > 0: keypad application mode enabled |
||||||
|
* * = 2: term.numlock = 1 |
||||||
|
* * < 0: keypad application mode disabled |
||||||
|
* appcursor value: |
||||||
|
* * 0: no value |
||||||
|
* * > 0: cursor application mode enabled |
||||||
|
* * < 0: cursor application mode disabled |
||||||
|
* crlf value |
||||||
|
* * 0: no value |
||||||
|
* * > 0: crlf mode is enabled |
||||||
|
* * < 0: crlf mode is disabled |
||||||
|
* |
||||||
|
* Be careful with the order of the definitions because st searches in |
||||||
|
* this table sequentially, so any XK_ANY_MOD must be in the last |
||||||
|
* position for a key. |
||||||
|
*/ |
||||||
|
|
||||||
|
/* |
||||||
|
* If you want keys other than the X11 function keys (0xFD00 - 0xFFFF) |
||||||
|
* to be mapped below, add them to this array. |
||||||
|
*/ |
||||||
|
static KeySym mappedkeys[] = { -1 }; |
||||||
|
|
||||||
|
/* |
||||||
|
* State bits to ignore when matching key or button events. By default, |
||||||
|
* numlock (Mod2Mask) and keyboard layout (XK_SWITCH_MOD) are ignored. |
||||||
|
*/ |
||||||
|
static uint ignoremod = Mod2Mask|XK_SWITCH_MOD; |
||||||
|
|
||||||
|
/* |
||||||
|
* Override mouse-select while mask is active (when MODE_MOUSE is set). |
||||||
|
* Note that if you want to use ShiftMask with selmasks, set this to an other |
||||||
|
* modifier, set to 0 to not use it. |
||||||
|
*/ |
||||||
|
static uint forceselmod = ShiftMask; |
||||||
|
|
||||||
|
/* |
||||||
|
* This is the huge key array which defines all compatibility to the Linux |
||||||
|
* world. Please decide about changes wisely. |
||||||
|
*/ |
||||||
|
static Key key[] = { |
||||||
|
/* keysym mask string appkey appcursor */ |
||||||
|
{ XK_KP_Home, ShiftMask, "\033[2J", 0, -1}, |
||||||
|
{ XK_KP_Home, ShiftMask, "\033[1;2H", 0, +1}, |
||||||
|
{ XK_KP_Home, XK_ANY_MOD, "\033[H", 0, -1}, |
||||||
|
{ XK_KP_Home, XK_ANY_MOD, "\033[1~", 0, +1}, |
||||||
|
{ XK_KP_Up, XK_ANY_MOD, "\033Ox", +1, 0}, |
||||||
|
{ XK_KP_Up, XK_ANY_MOD, "\033[A", 0, -1}, |
||||||
|
{ XK_KP_Up, XK_ANY_MOD, "\033OA", 0, +1}, |
||||||
|
{ XK_KP_Down, XK_ANY_MOD, "\033Or", +1, 0}, |
||||||
|
{ XK_KP_Down, XK_ANY_MOD, "\033[B", 0, -1}, |
||||||
|
{ XK_KP_Down, XK_ANY_MOD, "\033OB", 0, +1}, |
||||||
|
{ XK_KP_Left, XK_ANY_MOD, "\033Ot", +1, 0}, |
||||||
|
{ XK_KP_Left, XK_ANY_MOD, "\033[D", 0, -1}, |
||||||
|
{ XK_KP_Left, XK_ANY_MOD, "\033OD", 0, +1}, |
||||||
|
{ XK_KP_Right, XK_ANY_MOD, "\033Ov", +1, 0}, |
||||||
|
{ XK_KP_Right, XK_ANY_MOD, "\033[C", 0, -1}, |
||||||
|
{ XK_KP_Right, XK_ANY_MOD, "\033OC", 0, +1}, |
||||||
|
{ XK_KP_Prior, ShiftMask, "\033[5;2~", 0, 0}, |
||||||
|
{ XK_KP_Prior, XK_ANY_MOD, "\033[5~", 0, 0}, |
||||||
|
{ XK_KP_Begin, XK_ANY_MOD, "\033[E", 0, 0}, |
||||||
|
{ XK_KP_End, ControlMask, "\033[J", -1, 0}, |
||||||
|
{ XK_KP_End, ControlMask, "\033[1;5F", +1, 0}, |
||||||
|
{ XK_KP_End, ShiftMask, "\033[K", -1, 0}, |
||||||
|
{ XK_KP_End, ShiftMask, "\033[1;2F", +1, 0}, |
||||||
|
{ XK_KP_End, XK_ANY_MOD, "\033[4~", 0, 0}, |
||||||
|
{ XK_KP_Next, ShiftMask, "\033[6;2~", 0, 0}, |
||||||
|
{ XK_KP_Next, XK_ANY_MOD, "\033[6~", 0, 0}, |
||||||
|
{ XK_KP_Insert, ShiftMask, "\033[2;2~", +1, 0}, |
||||||
|
{ XK_KP_Insert, ShiftMask, "\033[4l", -1, 0}, |
||||||
|
{ XK_KP_Insert, ControlMask, "\033[L", -1, 0}, |
||||||
|
{ XK_KP_Insert, ControlMask, "\033[2;5~", +1, 0}, |
||||||
|
{ XK_KP_Insert, XK_ANY_MOD, "\033[4h", -1, 0}, |
||||||
|
{ XK_KP_Insert, XK_ANY_MOD, "\033[2~", +1, 0}, |
||||||
|
{ XK_KP_Delete, ControlMask, "\033[M", -1, 0}, |
||||||
|
{ XK_KP_Delete, ControlMask, "\033[3;5~", +1, 0}, |
||||||
|
{ XK_KP_Delete, ShiftMask, "\033[2K", -1, 0}, |
||||||
|
{ XK_KP_Delete, ShiftMask, "\033[3;2~", +1, 0}, |
||||||
|
{ XK_KP_Delete, XK_ANY_MOD, "\033[P", -1, 0}, |
||||||
|
{ XK_KP_Delete, XK_ANY_MOD, "\033[3~", +1, 0}, |
||||||
|
{ XK_KP_Multiply, XK_ANY_MOD, "\033Oj", +2, 0}, |
||||||
|
{ XK_KP_Add, XK_ANY_MOD, "\033Ok", +2, 0}, |
||||||
|
{ XK_KP_Enter, XK_ANY_MOD, "\033OM", +2, 0}, |
||||||
|
{ XK_KP_Enter, XK_ANY_MOD, "\r", -1, 0}, |
||||||
|
{ XK_KP_Subtract, XK_ANY_MOD, "\033Om", +2, 0}, |
||||||
|
{ XK_KP_Decimal, XK_ANY_MOD, "\033On", +2, 0}, |
||||||
|
{ XK_KP_Divide, XK_ANY_MOD, "\033Oo", +2, 0}, |
||||||
|
{ XK_KP_0, XK_ANY_MOD, "\033Op", +2, 0}, |
||||||
|
{ XK_KP_1, XK_ANY_MOD, "\033Oq", +2, 0}, |
||||||
|
{ XK_KP_2, XK_ANY_MOD, "\033Or", +2, 0}, |
||||||
|
{ XK_KP_3, XK_ANY_MOD, "\033Os", +2, 0}, |
||||||
|
{ XK_KP_4, XK_ANY_MOD, "\033Ot", +2, 0}, |
||||||
|
{ XK_KP_5, XK_ANY_MOD, "\033Ou", +2, 0}, |
||||||
|
{ XK_KP_6, XK_ANY_MOD, "\033Ov", +2, 0}, |
||||||
|
{ XK_KP_7, XK_ANY_MOD, "\033Ow", +2, 0}, |
||||||
|
{ XK_KP_8, XK_ANY_MOD, "\033Ox", +2, 0}, |
||||||
|
{ XK_KP_9, XK_ANY_MOD, "\033Oy", +2, 0}, |
||||||
|
{ XK_Up, ShiftMask, "\033[1;2A", 0, 0}, |
||||||
|
{ XK_Up, Mod1Mask, "\033[1;3A", 0, 0}, |
||||||
|
{ XK_Up, ShiftMask|Mod1Mask,"\033[1;4A", 0, 0}, |
||||||
|
{ XK_Up, ControlMask, "\033[1;5A", 0, 0}, |
||||||
|
{ XK_Up, ShiftMask|ControlMask,"\033[1;6A", 0, 0}, |
||||||
|
{ XK_Up, ControlMask|Mod1Mask,"\033[1;7A", 0, 0}, |
||||||
|
{ XK_Up,ShiftMask|ControlMask|Mod1Mask,"\033[1;8A", 0, 0}, |
||||||
|
{ XK_Up, XK_ANY_MOD, "\033[A", 0, -1}, |
||||||
|
{ XK_Up, XK_ANY_MOD, "\033OA", 0, +1}, |
||||||
|
{ XK_Down, ShiftMask, "\033[1;2B", 0, 0}, |
||||||
|
{ XK_Down, Mod1Mask, "\033[1;3B", 0, 0}, |
||||||
|
{ XK_Down, ShiftMask|Mod1Mask,"\033[1;4B", 0, 0}, |
||||||
|
{ XK_Down, ControlMask, "\033[1;5B", 0, 0}, |
||||||
|
{ XK_Down, ShiftMask|ControlMask,"\033[1;6B", 0, 0}, |
||||||
|
{ XK_Down, ControlMask|Mod1Mask,"\033[1;7B", 0, 0}, |
||||||
|
{ XK_Down,ShiftMask|ControlMask|Mod1Mask,"\033[1;8B",0, 0}, |
||||||
|
{ XK_Down, XK_ANY_MOD, "\033[B", 0, -1}, |
||||||
|
{ XK_Down, XK_ANY_MOD, "\033OB", 0, +1}, |
||||||
|
{ XK_Left, ShiftMask, "\033[1;2D", 0, 0}, |
||||||
|
{ XK_Left, Mod1Mask, "\033[1;3D", 0, 0}, |
||||||
|
{ XK_Left, ShiftMask|Mod1Mask,"\033[1;4D", 0, 0}, |
||||||
|
{ XK_Left, ControlMask, "\033[1;5D", 0, 0}, |
||||||
|
{ XK_Left, ShiftMask|ControlMask,"\033[1;6D", 0, 0}, |
||||||
|
{ XK_Left, ControlMask|Mod1Mask,"\033[1;7D", 0, 0}, |
||||||
|
{ XK_Left,ShiftMask|ControlMask|Mod1Mask,"\033[1;8D",0, 0}, |
||||||
|
{ XK_Left, XK_ANY_MOD, "\033[D", 0, -1}, |
||||||
|
{ XK_Left, XK_ANY_MOD, "\033OD", 0, +1}, |
||||||
|
{ XK_Right, ShiftMask, "\033[1;2C", 0, 0}, |
||||||
|
{ XK_Right, Mod1Mask, "\033[1;3C", 0, 0}, |
||||||
|
{ XK_Right, ShiftMask|Mod1Mask,"\033[1;4C", 0, 0}, |
||||||
|
{ XK_Right, ControlMask, "\033[1;5C", 0, 0}, |
||||||
|
{ XK_Right, ShiftMask|ControlMask,"\033[1;6C", 0, 0}, |
||||||
|
{ XK_Right, ControlMask|Mod1Mask,"\033[1;7C", 0, 0}, |
||||||
|
{ XK_Right,ShiftMask|ControlMask|Mod1Mask,"\033[1;8C",0, 0}, |
||||||
|
{ XK_Right, XK_ANY_MOD, "\033[C", 0, -1}, |
||||||
|
{ XK_Right, XK_ANY_MOD, "\033OC", 0, +1}, |
||||||
|
{ XK_ISO_Left_Tab, ShiftMask, "\033[Z", 0, 0}, |
||||||
|
{ XK_Return, Mod1Mask, "\033\r", 0, 0}, |
||||||
|
{ XK_Return, XK_ANY_MOD, "\r", 0, 0}, |
||||||
|
{ XK_Insert, ShiftMask, "\033[4l", -1, 0}, |
||||||
|
{ XK_Insert, ShiftMask, "\033[2;2~", +1, 0}, |
||||||
|
{ XK_Insert, ControlMask, "\033[L", -1, 0}, |
||||||
|
{ XK_Insert, ControlMask, "\033[2;5~", +1, 0}, |
||||||
|
{ XK_Insert, XK_ANY_MOD, "\033[4h", -1, 0}, |
||||||
|
{ XK_Insert, XK_ANY_MOD, "\033[2~", +1, 0}, |
||||||
|
{ XK_Delete, ControlMask, "\033[M", -1, 0}, |
||||||
|
{ XK_Delete, ControlMask, "\033[3;5~", +1, 0}, |
||||||
|
{ XK_Delete, ShiftMask, "\033[2K", -1, 0}, |
||||||
|
{ XK_Delete, ShiftMask, "\033[3;2~", +1, 0}, |
||||||
|
{ XK_Delete, XK_ANY_MOD, "\033[P", -1, 0}, |
||||||
|
{ XK_Delete, XK_ANY_MOD, "\033[3~", +1, 0}, |
||||||
|
{ XK_BackSpace, XK_NO_MOD, "\177", 0, 0}, |
||||||
|
{ XK_BackSpace, Mod1Mask, "\033\177", 0, 0}, |
||||||
|
{ XK_Home, ShiftMask, "\033[2J", 0, -1}, |
||||||
|
{ XK_Home, ShiftMask, "\033[1;2H", 0, +1}, |
||||||
|
{ XK_Home, XK_ANY_MOD, "\033[H", 0, -1}, |
||||||
|
{ XK_Home, XK_ANY_MOD, "\033[1~", 0, +1}, |
||||||
|
{ XK_End, ControlMask, "\033[J", -1, 0}, |
||||||
|
{ XK_End, ControlMask, "\033[1;5F", +1, 0}, |
||||||
|
{ XK_End, ShiftMask, "\033[K", -1, 0}, |
||||||
|
{ XK_End, ShiftMask, "\033[1;2F", +1, 0}, |
||||||
|
{ XK_End, XK_ANY_MOD, "\033[4~", 0, 0}, |
||||||
|
{ XK_Prior, ControlMask, "\033[5;5~", 0, 0}, |
||||||
|
{ XK_Prior, ShiftMask, "\033[5;2~", 0, 0}, |
||||||
|
{ XK_Prior, XK_ANY_MOD, "\033[5~", 0, 0}, |
||||||
|
{ XK_Next, ControlMask, "\033[6;5~", 0, 0}, |
||||||
|
{ XK_Next, ShiftMask, "\033[6;2~", 0, 0}, |
||||||
|
{ XK_Next, XK_ANY_MOD, "\033[6~", 0, 0}, |
||||||
|
{ XK_F1, XK_NO_MOD, "\033OP" , 0, 0}, |
||||||
|
{ XK_F1, /* F13 */ ShiftMask, "\033[1;2P", 0, 0}, |
||||||
|
{ XK_F1, /* F25 */ ControlMask, "\033[1;5P", 0, 0}, |
||||||
|
{ XK_F1, /* F37 */ Mod4Mask, "\033[1;6P", 0, 0}, |
||||||
|
{ XK_F1, /* F49 */ Mod1Mask, "\033[1;3P", 0, 0}, |
||||||
|
{ XK_F1, /* F61 */ Mod3Mask, "\033[1;4P", 0, 0}, |
||||||
|
{ XK_F2, XK_NO_MOD, "\033OQ" , 0, 0}, |
||||||
|
{ XK_F2, /* F14 */ ShiftMask, "\033[1;2Q", 0, 0}, |
||||||
|
{ XK_F2, /* F26 */ ControlMask, "\033[1;5Q", 0, 0}, |
||||||
|
{ XK_F2, /* F38 */ Mod4Mask, "\033[1;6Q", 0, 0}, |
||||||
|
{ XK_F2, /* F50 */ Mod1Mask, "\033[1;3Q", 0, 0}, |
||||||
|
{ XK_F2, /* F62 */ Mod3Mask, "\033[1;4Q", 0, 0}, |
||||||
|
{ XK_F3, XK_NO_MOD, "\033OR" , 0, 0}, |
||||||
|
{ XK_F3, /* F15 */ ShiftMask, "\033[1;2R", 0, 0}, |
||||||
|
{ XK_F3, /* F27 */ ControlMask, "\033[1;5R", 0, 0}, |
||||||
|
{ XK_F3, /* F39 */ Mod4Mask, "\033[1;6R", 0, 0}, |
||||||
|
{ XK_F3, /* F51 */ Mod1Mask, "\033[1;3R", 0, 0}, |
||||||
|
{ XK_F3, /* F63 */ Mod3Mask, "\033[1;4R", 0, 0}, |
||||||
|
{ XK_F4, XK_NO_MOD, "\033OS" , 0, 0}, |
||||||
|
{ XK_F4, /* F16 */ ShiftMask, "\033[1;2S", 0, 0}, |
||||||
|
{ XK_F4, /* F28 */ ControlMask, "\033[1;5S", 0, 0}, |
||||||
|
{ XK_F4, /* F40 */ Mod4Mask, "\033[1;6S", 0, 0}, |
||||||
|
{ XK_F4, /* F52 */ Mod1Mask, "\033[1;3S", 0, 0}, |
||||||
|
{ XK_F5, XK_NO_MOD, "\033[15~", 0, 0}, |
||||||
|
{ XK_F5, /* F17 */ ShiftMask, "\033[15;2~", 0, 0}, |
||||||
|
{ XK_F5, /* F29 */ ControlMask, "\033[15;5~", 0, 0}, |
||||||
|
{ XK_F5, /* F41 */ Mod4Mask, "\033[15;6~", 0, 0}, |
||||||
|
{ XK_F5, /* F53 */ Mod1Mask, "\033[15;3~", 0, 0}, |
||||||
|
{ XK_F6, XK_NO_MOD, "\033[17~", 0, 0}, |
||||||
|
{ XK_F6, /* F18 */ ShiftMask, "\033[17;2~", 0, 0}, |
||||||
|
{ XK_F6, /* F30 */ ControlMask, "\033[17;5~", 0, 0}, |
||||||
|
{ XK_F6, /* F42 */ Mod4Mask, "\033[17;6~", 0, 0}, |
||||||
|
{ XK_F6, /* F54 */ Mod1Mask, "\033[17;3~", 0, 0}, |
||||||
|
{ XK_F7, XK_NO_MOD, "\033[18~", 0, 0}, |
||||||
|
{ XK_F7, /* F19 */ ShiftMask, "\033[18;2~", 0, 0}, |
||||||
|
{ XK_F7, /* F31 */ ControlMask, "\033[18;5~", 0, 0}, |
||||||
|
{ XK_F7, /* F43 */ Mod4Mask, "\033[18;6~", 0, 0}, |
||||||
|
{ XK_F7, /* F55 */ Mod1Mask, "\033[18;3~", 0, 0}, |
||||||
|
{ XK_F8, XK_NO_MOD, "\033[19~", 0, 0}, |
||||||
|
{ XK_F8, /* F20 */ ShiftMask, "\033[19;2~", 0, 0}, |
||||||
|
{ XK_F8, /* F32 */ ControlMask, "\033[19;5~", 0, 0}, |
||||||
|
{ XK_F8, /* F44 */ Mod4Mask, "\033[19;6~", 0, 0}, |
||||||
|
{ XK_F8, /* F56 */ Mod1Mask, "\033[19;3~", 0, 0}, |
||||||
|
{ XK_F9, XK_NO_MOD, "\033[20~", 0, 0}, |
||||||
|
{ XK_F9, /* F21 */ ShiftMask, "\033[20;2~", 0, 0}, |
||||||
|
{ XK_F9, /* F33 */ ControlMask, "\033[20;5~", 0, 0}, |
||||||
|
{ XK_F9, /* F45 */ Mod4Mask, "\033[20;6~", 0, 0}, |
||||||
|
{ XK_F9, /* F57 */ Mod1Mask, "\033[20;3~", 0, 0}, |
||||||
|
{ XK_F10, XK_NO_MOD, "\033[21~", 0, 0}, |
||||||
|
{ XK_F10, /* F22 */ ShiftMask, "\033[21;2~", 0, 0}, |
||||||
|
{ XK_F10, /* F34 */ ControlMask, "\033[21;5~", 0, 0}, |
||||||
|
{ XK_F10, /* F46 */ Mod4Mask, "\033[21;6~", 0, 0}, |
||||||
|
{ XK_F10, /* F58 */ Mod1Mask, "\033[21;3~", 0, 0}, |
||||||
|
{ XK_F11, XK_NO_MOD, "\033[23~", 0, 0}, |
||||||
|
{ XK_F11, /* F23 */ ShiftMask, "\033[23;2~", 0, 0}, |
||||||
|
{ XK_F11, /* F35 */ ControlMask, "\033[23;5~", 0, 0}, |
||||||
|
{ XK_F11, /* F47 */ Mod4Mask, "\033[23;6~", 0, 0}, |
||||||
|
{ XK_F11, /* F59 */ Mod1Mask, "\033[23;3~", 0, 0}, |
||||||
|
{ XK_F12, XK_NO_MOD, "\033[24~", 0, 0}, |
||||||
|
{ XK_F12, /* F24 */ ShiftMask, "\033[24;2~", 0, 0}, |
||||||
|
{ XK_F12, /* F36 */ ControlMask, "\033[24;5~", 0, 0}, |
||||||
|
{ XK_F12, /* F48 */ Mod4Mask, "\033[24;6~", 0, 0}, |
||||||
|
{ XK_F12, /* F60 */ Mod1Mask, "\033[24;3~", 0, 0}, |
||||||
|
{ XK_F13, XK_NO_MOD, "\033[1;2P", 0, 0}, |
||||||
|
{ XK_F14, XK_NO_MOD, "\033[1;2Q", 0, 0}, |
||||||
|
{ XK_F15, XK_NO_MOD, "\033[1;2R", 0, 0}, |
||||||
|
{ XK_F16, XK_NO_MOD, "\033[1;2S", 0, 0}, |
||||||
|
{ XK_F17, XK_NO_MOD, "\033[15;2~", 0, 0}, |
||||||
|
{ XK_F18, XK_NO_MOD, "\033[17;2~", 0, 0}, |
||||||
|
{ XK_F19, XK_NO_MOD, "\033[18;2~", 0, 0}, |
||||||
|
{ XK_F20, XK_NO_MOD, "\033[19;2~", 0, 0}, |
||||||
|
{ XK_F21, XK_NO_MOD, "\033[20;2~", 0, 0}, |
||||||
|
{ XK_F22, XK_NO_MOD, "\033[21;2~", 0, 0}, |
||||||
|
{ XK_F23, XK_NO_MOD, "\033[23;2~", 0, 0}, |
||||||
|
{ XK_F24, XK_NO_MOD, "\033[24;2~", 0, 0}, |
||||||
|
{ XK_F25, XK_NO_MOD, "\033[1;5P", 0, 0}, |
||||||
|
{ XK_F26, XK_NO_MOD, "\033[1;5Q", 0, 0}, |
||||||
|
{ XK_F27, XK_NO_MOD, "\033[1;5R", 0, 0}, |
||||||
|
{ XK_F28, XK_NO_MOD, "\033[1;5S", 0, 0}, |
||||||
|
{ XK_F29, XK_NO_MOD, "\033[15;5~", 0, 0}, |
||||||
|
{ XK_F30, XK_NO_MOD, "\033[17;5~", 0, 0}, |
||||||
|
{ XK_F31, XK_NO_MOD, "\033[18;5~", 0, 0}, |
||||||
|
{ XK_F32, XK_NO_MOD, "\033[19;5~", 0, 0}, |
||||||
|
{ XK_F33, XK_NO_MOD, "\033[20;5~", 0, 0}, |
||||||
|
{ XK_F34, XK_NO_MOD, "\033[21;5~", 0, 0}, |
||||||
|
{ XK_F35, XK_NO_MOD, "\033[23;5~", 0, 0}, |
||||||
|
}; |
||||||
|
|
||||||
|
/* |
||||||
|
* Selection types' masks. |
||||||
|
* Use the same masks as usual. |
||||||
|
* Button1Mask is always unset, to make masks match between ButtonPress. |
||||||
|
* ButtonRelease and MotionNotify. |
||||||
|
* If no match is found, regular selection is used. |
||||||
|
*/ |
||||||
|
static uint selmasks[] = { |
||||||
|
[SEL_RECTANGULAR] = Mod1Mask, |
||||||
|
}; |
||||||
|
|
||||||
|
/* |
||||||
|
* Printable characters in ASCII, used to estimate the advance width |
||||||
|
* of single wide characters. |
||||||
|
*/ |
||||||
|
static char ascii_printable[] = |
||||||
|
" !\"#$%&'()*+,-./0123456789:;<=>?" |
||||||
|
"@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\\]^_" |
||||||
|
"`abcdefghijklmnopqrstuvwxyz{|}~"; |
@ -0,0 +1,104 @@ |
|||||||
|
Section "ServerLayout" |
||||||
|
Identifier "Layout0" |
||||||
|
Screen 0 "Screen0" 0 0 |
||||||
|
Screen 1 "Screen1" RightOf "Screen0" |
||||||
|
InputDevice "Keyboard0" "CoreKeyboard" |
||||||
|
InputDevice "Mouse0" "CorePointer" |
||||||
|
Option "Xinerama" "0" |
||||||
|
EndSection |
||||||
|
|
||||||
|
Section "Module" |
||||||
|
Load "dri" |
||||||
|
Load "i2c" |
||||||
|
Load "bitmap" |
||||||
|
Load "ddc" |
||||||
|
Load "int10" |
||||||
|
Load "vbe" |
||||||
|
Load "glx" # OpenGL X protocol interface |
||||||
|
Load "extmod" # Misc. required extension |
||||||
|
EndSection |
||||||
|
|
||||||
|
Section "InputDevice" |
||||||
|
Identifier "Keyboard0" |
||||||
|
Driver "kbd" |
||||||
|
EndSection |
||||||
|
|
||||||
|
Section "InputDevice" |
||||||
|
Identifier "Mouse0" |
||||||
|
Driver "mouse" |
||||||
|
Option "Protocol" "IMPS/2" |
||||||
|
Option "Device" "/dev/psaux" |
||||||
|
Option "Emulate3Buttons" "no" |
||||||
|
Option "ZAxisMapping" "4 5" |
||||||
|
EndSection |
||||||
|
|
||||||
|
Section "Monitor" |
||||||
|
Identifier "eDP1" |
||||||
|
VendorName "Monitor Vendor" |
||||||
|
ModelName "Monitor Model" |
||||||
|
Option "Primary" "true" |
||||||
|
Option "PreferredMode" "1920x1080" |
||||||
|
Option "DPMS" |
||||||
|
EndSection |
||||||
|
|
||||||
|
Section "Monitor" |
||||||
|
Identifier "DP1" |
||||||
|
VendorName "Monitor Vendor" |
||||||
|
ModelName "Monitor Model" |
||||||
|
Option "Below" "eDP1" |
||||||
|
Option "PreferredMode" "1920x515" |
||||||
|
Option "DPMS" |
||||||
|
EndSection |
||||||
|
|
||||||
|
Section "Device" |
||||||
|
Identifier "Card0" |
||||||
|
Driver "intel" |
||||||
|
# Option "DRI" "2" |
||||||
|
Option "DRI" "False" |
||||||
|
BusID "PCI:0:2:0" |
||||||
|
#Screen 0 |
||||||
|
EndSection |
||||||
|
|
||||||
|
Section "Device" |
||||||
|
Identifier "Card1" |
||||||
|
Driver "intel" |
||||||
|
#Driver "nouveau" |
||||||
|
BusID "PCI:2:0:0" |
||||||
|
#BusID "PCI:0:2:0" |
||||||
|
#Screen 1 |
||||||
|
EndSection |
||||||
|
|
||||||
|
Section "Screen" |
||||||
|
Identifier "Screen0" |
||||||
|
Device "Card0" |
||||||
|
Monitor "eDP1" |
||||||
|
DefaultDepth 24 |
||||||
|
#Option "AutoServerLayout" "on" |
||||||
|
#Option "AccelMethod" "sna" |
||||||
|
Option "TearFree" "on" |
||||||
|
Option "eDP1" "eDP1" |
||||||
|
Option "ZaphodHeads" "eDP1" |
||||||
|
SubSection "Display" |
||||||
|
Viewport 0 0 |
||||||
|
Depth 24 |
||||||
|
Modes "1920x1080" |
||||||
|
EndSubSection |
||||||
|
EndSection |
||||||
|
|
||||||
|
Section "Screen" |
||||||
|
Identifier "Screen1" |
||||||
|
Device "Card1" |
||||||
|
Monitor "DP1" |
||||||
|
DefaultDepth 24 |
||||||
|
#Option "AutoServerLayout" "on" |
||||||
|
#Option "AccelMethod" "sna" |
||||||
|
Option "TearFree" "on" |
||||||
|
Option "DP1" "DP1" |
||||||
|
Option "ZaphodHeads" "DP1" |
||||||
|
SubSection "Display" |
||||||
|
Viewport 0 0 |
||||||
|
Depth 24 |
||||||
|
Modes "1920x515" |
||||||
|
EndSubSection |
||||||
|
EndSection |
||||||
|
|
@ -0,0 +1,18 @@ |
|||||||
|
Section "InputClass" |
||||||
|
Identifier "Touchpad" |
||||||
|
Driver "libinput" |
||||||
|
MatchIsTouchpad "1" |
||||||
|
Option "Protocol" "event" |
||||||
|
Option "DisableWhileTyping" "on" |
||||||
|
Option "AccelSpeed" "0.35" |
||||||
|
Option "Tapping" "on" |
||||||
|
Option "TappingDrag" "on" |
||||||
|
Option "TapButton1" "1" |
||||||
|
Option "TapButton2" "2" |
||||||
|
Option "TapButton3" "3" |
||||||
|
Option "CircularScrolling" "1" |
||||||
|
# 1 = L, 2 = R, 3 = M |
||||||
|
Option "ClickMethod" "clickfinger" |
||||||
|
# L+R = M |
||||||
|
Option "MiddleEmulation" "on" |
||||||
|
EndSection |
@ -0,0 +1,89 @@ |
|||||||
|
|
||||||
|
apps: |
||||||
|
set_name: apps |
||||||
|
remove: |
||||||
|
- app-editors/nano |
||||||
|
freeze: |
||||||
|
mask: |
||||||
|
unmask: |
||||||
|
- app-admin/ansible-lint |
||||||
|
- app-misc/nnn |
||||||
|
- app-text/docx2txt |
||||||
|
- dev-haskell/stack-bin ~amd64 |
||||||
|
# - sys-apps/bat |
||||||
|
# - dev-haskell/hlint |
||||||
|
install: |
||||||
|
- app-admin/ansible # https://www.ansible.com/ Automate deployment, configuration, and upgrading. |
||||||
|
- app-arch/unrar # https://www.rarlab.com/ Extract, view, and test RAR archives. |
||||||
|
- app-editors/neovim # https://neovim.io/ Ambitious Vim-fork focused on extensibility and agility. |
||||||
|
- app-emulation/docker # https://www.docker.com/ Pack, ship and run any application as a lightweight container. |
||||||
|
- app-misc/jq # https://stedolan.github.io/jq/ Lightweight and flexible command-line JSON processor. |
||||||
|
- app-misc/nnn # https://github.com/jarun/nnn Tiny, lightning fast, feature-packed file manager. |
||||||
|
- app-misc/vifm # https://vifm.info/ Ncurses based file manager with vi like keybindings. |
||||||
|
- app-shells/hstr # https://github.com/dvorka/hstr Bash and zsh history suggest box. |
||||||
|
- app-text/antiword # http://www.winfield.demon.nl/ Utility to read Word (.doc) files. |
||||||
|
- app-text/docx2txt # https://docx2txt.sourceforge.io/ Converts Microsoft Office docx documents to equivalent text documents. |
||||||
|
- app-text/ghostscript-gpl # https://www.ghostscript.com/ Interpreter for PostScript and PDF. |
||||||
|
- app-text/sdcv # https://dushistov.github.io/sdcv/ Console version of StarDict. |
||||||
|
- app-text/tree # http://mama.indstate.edu/users/ice/tree/ Display directories as trees (with optional color/HTML output). |
||||||
|
- app-text/zathura # https://pwmt.org/projects/zathura/ A document viewer. |
||||||
|
- dev-haskell/stack-bin # https://haskellstack.org/ The Haskell Tool Stack. |
||||||
|
- dev-lang/tcl # https://tcl.tk TCL Programming language. |
||||||
|
- dev-lang/tk # https://tcl.tk GUI ToolKit for TCL Programming language. |
||||||
|
- dev-util/shellcheck-bin # https://www.shellcheck.net/ Static analysis and lint tool, for (ba)sh scripts. |
||||||
|
- mail-client/neomutt # https://neomutt.org/ Command line mail reader (or MUA). It’s a fork of Mutt with added features. |
||||||
|
- mail-filter/procmail # http://www.procmail.org/ Mail delivery agent. |
||||||
|
- media-gfx/geeqie # http://www.geeqie.org/ lightweight image viewer for Linux, BSDs and compatibles. |
||||||
|
- media-gfx/imagemagick # https://www.imagemagick.org/ Tools and libraries to manipulate images in many formats. |
||||||
|
- media-gfx/sxiv # https://github.com/muennich/sxiv Simple X Image Viewer. |
||||||
|
- media-libs/exiftool # https://www.sno.phy.queensu.ca/~phil/exiftool/index.html Perl lib for reading and writing EXIF metadata. |
||||||
|
- media-sound/mpc # https://musicpd.org/clients/mpc/ A minimalist command line interface to MPD. |
||||||
|
- media-sound/mpd # https://www.musicpd.org/ Flexible, powerful, server-side application for playing music. |
||||||
|
- media-sound/ncmpcpp # https://rybczak.net/ncmpcpp/ NCurses Music Player Client (Plus Plus). |
||||||
|
- media-video/mpv # https://mpv.io/ Free, open source, and cross-platform media player. |
||||||
|
- net-fs/sshfs # https://github.com/libfuse/sshfs A network filesystem client to connect to SSH servers. |
||||||
|
- net-mail/fetchmail # https://www.fetchmail.info Full-featured, robust, well-documented remote-mail retrieval and forwarding utility. |
||||||
|
- net-misc/aria2 # https://aria2.github.io Lightweight multi-protocol & multi-source command-line download utility. |
||||||
|
- net-misc/connman # https://01.org/connman Internet connection daemon. |
||||||
|
- sys-fs/dfc # https://projects.gw-computing.net/projects/dfc Display graphs and colors of file system space/usage. |
||||||
|
- sys-fs/ntfs3g # https://www.tuxera.com/community/open-source-ntfs-3g/ Read-write NTFS driver for FUSE. |
||||||
|
- sys-process/htop # https://hisham.hm/htop/ Improved top (interactive process viewer). |
||||||
|
- www-client/firefox-bin # https://www.mozilla.org/ru/firefox/ Mozilla Firefox. |
||||||
|
- x11-misc/dmenu # https://tools.suckless.org/dmenu/ Fast and lightweight dynamic menu for X. |
||||||
|
- x11-misc/polybar # https://polybar.github.io/ A fast and easy-to-use status bar. |
||||||
|
- x11-misc/rofi # https://github.com/davatorium/rofi A window switcher, application launcher and dmenu replacement. |
||||||
|
- x11-misc/tabbed # https://tools.suckless.org/tabbed/ Simple generic tabbed fronted to xembed aware applications. |
||||||
|
- x11-misc/wmctrl # https://sites.google.com/site/tstyblo/wmctrl Command line tool to interact with an EWMH/NetWM compatible X Window Manager. |
||||||
|
- x11-misc/xclip # https://github.com/astrand/xclip Command line interface to the X11 clipboard. |
||||||
|
- x11-terms/st # https://st.suckless.org Simple terminal implementation for X. |
||||||
|
- x11-wm/bspwm # https://github.com/baskerville/bspwm A tiling window manager based on binary space partitioning. |
||||||
|
|
||||||
|
- sys-apps/preload |
||||||
|
- sys-devel/prelink |
||||||
|
- sys-power/acpi |
||||||
|
|
||||||
|
# Libraries and dependencies |
||||||
|
- app-arch/zip |
||||||
|
- app-text/zathura-djvu |
||||||
|
- app-text/zathura-pdf-poppler |
||||||
|
- dev-python/passlib |
||||||
|
- dev-tcltk/tcllib |
||||||
|
- dev-tcltk/tclreadline |
||||||
|
- dev-tcltk/tkimg |
||||||
|
- media-fonts/sophia-nubian |
||||||
|
- net-print/cups # Required by Joplin.app |
||||||
|
|
||||||
|
bin_path: ~/.shellrc/bin/hub/ |
||||||
|
github: |
||||||
|
- name: joplin |
||||||
|
type: AppImage |
||||||
|
repository: laurent22/joplin |
||||||
|
|
||||||
|
# - sys-apps/fd # https://github.com/sharkdp/fd Simple, fast and user-friendly alternative to find. **[BIN]** |
||||||
|
# - sys-apps/ripgrep # https://github.com/BurntSushi/ripgrep Search tool like grep and The Silver Searcher. **[BIN]** |
||||||
|
# - app-text/odt2txt # https://github.com/dstosberg/odt2txt/ Convert OpenDocument files to plain text. |
||||||
|
# - dev-haskell/hlint # https://github.com/ndmitchell/hlint Haskell source code suggestions. **[BIN]** |
||||||
|
# - sys-apps/bat # https://github.com/sharkdp/bat Clone of cat(1) with syntax highlighting and Git integration. **[BIN]** |
||||||
|
# - media-video/vlc # https://www.videolan.org/vlc/ VLC media player. |
||||||
|
# - media-gfx/graphviz |
||||||
|
# - x11-misc/dunst |
@ -0,0 +1,6 @@ |
|||||||
|
|
||||||
|
cleanup: |
||||||
|
dirs: |
||||||
|
- Видео |
||||||
|
- Документы |
||||||
|
|
@ -0,0 +1,12 @@ |
|||||||
|
|
||||||
|
mount: |
||||||
|
tmpfs: |
||||||
|
- path: /tmp |
||||||
|
- path: /var/lock |
||||||
|
- path: /var/tmp |
||||||
|
options: rw,nosuid,noatime,nodev,size=5G,mode=1777 |
||||||
|
- path: /var/calculate/tmp/portage |
||||||
|
options: rw,nosuid,noatime,nodev,size=8G,mode=775,uid=portage,gid=portage |
||||||
|
# - path: /var/tmp/portage |
||||||
|
# options: rw,nosuid,noatime,nodev,size=5G,mode=775,uid=portage,gid=portage,x-mount.mkdir=775 |
||||||
|
|
@ -0,0 +1,398 @@ |
|||||||
|
|
||||||
|
gentoo: |
||||||
|
architectures: |
||||||
|
- 64 |
||||||
|
languages: |
||||||
|
- ru |
||||||
|
- en |
||||||
|
interpretators: |
||||||
|
python: |
||||||
|
- python2_7 |
||||||
|
- python3_6 |
||||||
|
ruby: |
||||||
|
- ruby25 |
||||||
|
- ruby27 |
||||||
|
devices: |
||||||
|
input: |
||||||
|
- libinput |
||||||
|
video: |
||||||
|
- intel |
||||||
|
portage: |
||||||
|
features: |
||||||
|
- -getbinpkg |
||||||
|
- parallel-fetch |
||||||
|
- metadata-transfer |
||||||
|
cflags: |
||||||
|
- -O2 # Оптимизация |
||||||
|
- -march=native # Сборка под текущую архитектуру |
||||||
|
- -pipe # Передача промежуточных данных по конвееру |
||||||
|
- -g0 # Отключение отладочной информации |
||||||
|
#- --param l2-cache-size=256 # L2 Cache в килобайтах (lscpu | grep 'L2 cache' | cut -d : -f 2- | grep -o -E '[0-9]+' |
||||||
|
#- -fomit-frame-pointer # Доступ к переменным через стек |
||||||
|
#- -fgraphite |
||||||
|
#- -fgraphite-identity # Оценка выгодности использования Graphite |
||||||
|
#- -floop-interchange # Оптимизация циклов |
||||||
|
#- -floop-block # Оптимизация циклов |
||||||
|
#- -floop-strip-mine # Оптимизация циклов |
||||||
|
#- -mmmx # Инструкции процессора (cat /proc/cpuinfo | tr ' ' '\012' | grep -e sse -e mmx -e now | sort -u) |
||||||
|
#- -msse |
||||||
|
#- -msse2 |
||||||
|
#- -msse4.1 |
||||||
|
#- -msse4.2 |
||||||
|
#- -mssse3 |
||||||
|
#- -ftree-vectorize |
||||||
|
buildopts: |
||||||
|
common: |
||||||
|
- --jobs={{ ansible_processor_vcpus * 2 }} # Максимальное количество запускаемых копий make |
||||||
|
- --load-average={{ ansible_processor_vcpus + 1 }} # Допустимая средняя загрузка CPU |
||||||
|
make: |
||||||
|
- -s # Уменьшение количества выводимой информации |
||||||
|
emerge: |
||||||
|
- --keep-going # Не прерывать сборку при ошибках |
||||||
|
|
||||||
|
eix: |
||||||
|
colorscheme: 1 |
||||||
|
statusline: false |
||||||
|
limit: 50 |
||||||
|
limit_compact: 0 |
||||||
|
cache_method: sqlite |
||||||
|
|
||||||
|
use: |
||||||
|
config: |
||||||
|
- x11-misc/dmenu |
||||||
|
- x11-misc/tabbed |
||||||
|
- x11-terms/st |
||||||
|
custom: |
||||||
|
- dev-lang/ghc binary |
||||||
|
- sys-apps/iproute2 -minimal |
||||||
|
- x11-base/xorg-server -minimal |
||||||
|
- app-portage/eix sqlite |
||||||
|
- app-text/ghostscript-gpl -gtk |
||||||
|
- dev-lang/python sqlite |
||||||
|
- dev-libs/libxml2 python |
||||||
|
- media-gfx/graphviz -gtk tcl # Tcl/Tk Img package |
||||||
|
- media-sound/mpd -curl -fifo -expat -lame -mikmod -network -upnp -icu -inotify |
||||||
|
- sys-apps/calculate-utils minimal |
||||||
|
- sys-apps/file python |
||||||
|
- sys-kernel/calculate-sources desktop #-minimal |
||||||
|
- x11-misc/tabbed savedconfig |
||||||
|
- x11-misc/xmobar -alsa -dbus #mpd |
||||||
|
- x11-misc/dmenu savedconfig |
||||||
|
- x11-misc/polybar mpd |
||||||
|
- x11-terms/st savedconfig |
||||||
|
- x11-wm/xmonad -default-term |
||||||
|
- net-misc/connman dbus |
||||||
|
- net-wireless/wpa_supplicant dbus |
||||||
|
- dev-libs/glib dbus |
||||||
|
enabled: |
||||||
|
- imlib |
||||||
|
- minimal |
||||||
|
- nouveau |
||||||
|
- readline |
||||||
|
- unicode3 |
||||||
|
- xft |
||||||
|
#- glibc-omitfp # Нужен для CFLAGS="-fomit-frame-pointer" |
||||||
|
#- graphite |
||||||
|
#- xinerama |
||||||
|
disabled: |
||||||
|
# TODO: CHECK |
||||||
|
- vaapi |
||||||
|
- vdpau |
||||||
|
|
||||||
|
- pam |
||||||
|
- consolekit |
||||||
|
- gtk-doc |
||||||
|
- chm |
||||||
|
|
||||||
|
- emoji |
||||||
|
- dbus |
||||||
|
- container-init |
||||||
|
- 32bit |
||||||
|
- a52 |
||||||
|
- aac |
||||||
|
- acl |
||||||
|
- ada |
||||||
|
- apparmor |
||||||
|
- arts |
||||||
|
- arts |
||||||
|
- audacious |
||||||
|
- bash-completion |
||||||
|
- bcrypt |
||||||
|
- berkdb |
||||||
|
- bidi |
||||||
|
- blink |
||||||
|
- bluetooth |
||||||
|
- bluray |
||||||
|
- boost |
||||||
|
- caps |
||||||
|
- cdda |
||||||
|
- cddb |
||||||
|
- cdio |
||||||
|
- cdparanoia |
||||||
|
- cdrkit |
||||||
|
- cgi |
||||||
|
- cgroups |
||||||
|
- chromecast |
||||||
|
- chromium |
||||||
|
- client |
||||||
|
- cmus |
||||||
|
- cue |
||||||
|
- cups |
||||||
|
- cvs |
||||||
|
- darcs |
||||||
|
- dbm |
||||||
|
- dbmmaker |
||||||
|
- debug |
||||||
|
- desktop |
||||||
|
- dga |
||||||
|
- directx |
||||||
|
- doc |
||||||
|
- doctool |
||||||
|
- dvbpsi |
||||||
|
- dvd |
||||||
|
- dvdnav |
||||||
|
- eds |
||||||
|
- emacs |
||||||
|
- epydoc |
||||||
|
- equalizer |
||||||
|
- esd |
||||||
|
- ethernet |
||||||
|
- eve |
||||||
|
- examples |
||||||
|
- fax |
||||||
|
- ffmpeg |
||||||
|
- flac |
||||||
|
- foomatic |
||||||
|
- fortran |
||||||
|
- gdbm |
||||||
|
- geoip |
||||||
|
- geoloc |
||||||
|
- ghostscript |
||||||
|
- glamor |
||||||
|
- gnome |
||||||
|
- gnome-keyring |
||||||
|
- gpg |
||||||
|
- gpgme |
||||||
|
- gpm |
||||||
|
- gstreamer |
||||||
|
- guile |
||||||
|
- handbook |
||||||
|
- hangouts |
||||||
|
- ieee1394 |
||||||
|
- inifile |
||||||
|
- install |
||||||
|
- introspection |
||||||
|
- ios |
||||||
|
- ios |
||||||
|
- ipv6 |
||||||
|
- irc |
||||||
|
- jabber |
||||||
|
- jack |
||||||
|
- java |
||||||
|
- joystick |
||||||
|
- kde |
||||||
|
- kerberos |
||||||
|
- l2tp |
||||||
|
- lame |
||||||
|
- lastfm |
||||||
|
- latex |
||||||
|
- ldap |
||||||
|
- libass |
||||||
|
- libcaca |
||||||
|
- libproxy |
||||||
|
- lirc |
||||||
|
- live |
||||||
|
- lua |
||||||
|
- matroska |
||||||
|
- mikmod # Трекерная музыка |
||||||
|
- modemmanager |
||||||
|
- mono |
||||||
|
- mp4 |
||||||
|
- multilib |
||||||
|
- musepack |
||||||
|
- native-headset |
||||||
|
- networkmanager |
||||||
|
- nfs |
||||||
|
- ntfsdecrypt |
||||||
|
- ntp |
||||||
|
- nvidia |
||||||
|
- ofono |
||||||
|
- ofono-headset |
||||||
|
- ogg |
||||||
|
- opencl # Требует драйвер nvidia |
||||||
|
- openconnect |
||||||
|
- openvpn |
||||||
|
- opus |
||||||
|
- orc |
||||||
|
- osdmenu |
||||||
|
- oss |
||||||
|
- pdf |
||||||
|
- perl |
||||||
|
- pinentry |
||||||
|
- policykit |
||||||
|
- portmon |
||||||
|
- postgres |
||||||
|
- postscript |
||||||
|
- pptp |
||||||
|
- pulseaudio |
||||||
|
- python |
||||||
|
- qt |
||||||
|
- qt3support |
||||||
|
- qt4 |
||||||
|
- qt4 |
||||||
|
- qt5 |
||||||
|
- raw |
||||||
|
- reiserfs |
||||||
|
- rsync-verify |
||||||
|
- ruby |
||||||
|
- samba |
||||||
|
- scanner |
||||||
|
- screensaver |
||||||
|
- scrypt |
||||||
|
- sec |
||||||
|
- server |
||||||
|
- skins |
||||||
|
- smartcard |
||||||
|
- snappy |
||||||
|
- speex |
||||||
|
- srt |
||||||
|
- svg |
||||||
|
- systemd |
||||||
|
- tcl |
||||||
|
- test |
||||||
|
- tga |
||||||
|
- themes |
||||||
|
- theora |
||||||
|
- timidity |
||||||
|
- tinfo |
||||||
|
- tk |
||||||
|
- totp |
||||||
|
- uchardet |
||||||
|
- udisks |
||||||
|
- update_drivedb |
||||||
|
- upnp |
||||||
|
- v4l |
||||||
|
- vala |
||||||
|
- vim |
||||||
|
- vmware |
||||||
|
- vnc |
||||||
|
- vorbis |
||||||
|
- vpnc |
||||||
|
- vpx |
||||||
|
- vulkan |
||||||
|
- wavpack |
||||||
|
- wayland |
||||||
|
- webkit |
||||||
|
- wispr |
||||||
|
- wmf |
||||||
|
- wxwidgets |
||||||
|
- wxwindows |
||||||
|
- xa |
||||||
|
- xcomposite |
||||||
|
- xscreensaver |
||||||
|
- zsh-completion |
||||||
|
|
||||||
|
# LANGUAGES |
||||||
|
- l10n_am |
||||||
|
- l10n_ar |
||||||
|
- l10n_bg |
||||||
|
- l10n_bn |
||||||
|
- l10n_ca |
||||||
|
- l10n_cs |
||||||
|
- l10n_da |
||||||
|
- l10n_de |
||||||
|
- l10n_el |
||||||
|
- l10n_en-GB |
||||||
|
- l10n_es |
||||||
|
- l10n_es-419 |
||||||
|
- l10n_et |
||||||
|
- l10n_fa |
||||||
|
- l10n_fi |
||||||
|
- l10n_fil |
||||||
|
- l10n_fr |
||||||
|
- l10n_gu |
||||||
|
- l10n_he |
||||||
|
- l10n_hi |
||||||
|
- l10n_hr |
||||||
|
- l10n_hu |
||||||
|
- l10n_id |
||||||
|
- l10n_it |
||||||
|
- l10n_ja |
||||||
|
- l10n_kn |
||||||
|
- l10n_ko |
||||||
|
- l10n_lt |
||||||
|
- l10n_lv |
||||||
|
- l10n_ml |
||||||
|
- l10n_mr |
||||||
|
- l10n_ms |
||||||
|
- l10n_nb |
||||||
|
- l10n_nl |
||||||
|
- l10n_pl |
||||||
|
- l10n_pt-BR |
||||||
|
- l10n_pt-PT |
||||||
|
- l10n_ro |
||||||
|
- l10n_sk |
||||||
|
- l10n_sl |
||||||
|
- l10n_sr |
||||||
|
- l10n_sv |
||||||
|
- l10n_sw |
||||||
|
- l10n_ta |
||||||
|
- l10n_te |
||||||
|
- l10n_th |
||||||
|
- l10n_tr |
||||||
|
- l10n_uk |
||||||
|
- l10n_vi |
||||||
|
- l10n_zh-CN |
||||||
|
- l10n_zh-TW |
||||||
|
- linguas_am |
||||||
|
- linguas_ar |
||||||
|
- linguas_bg |
||||||
|
- linguas_bn |
||||||
|
- linguas_ca |
||||||
|
- linguas_cs |
||||||
|
- linguas_da |
||||||
|
- linguas_de |
||||||
|
- linguas_el |
||||||
|
- linguas_en_GB |
||||||
|
- linguas_es |
||||||
|
- linguas_es_LA |
||||||
|
- linguas_et |
||||||
|
- linguas_fa |
||||||
|
- linguas_fi |
||||||
|
- linguas_fil |
||||||
|
- linguas_fr |
||||||
|
- linguas_gu |
||||||
|
- linguas_he |
||||||
|
- linguas_hi |
||||||
|
- linguas_hr |
||||||
|
- linguas_hu |
||||||
|
- linguas_id |
||||||
|
- linguas_it |
||||||
|
- linguas_ja |
||||||
|
- linguas_kn |
||||||
|
- linguas_ko |
||||||
|
- linguas_lt |
||||||
|
- linguas_lv |
||||||
|
- linguas_ml |
||||||
|
- linguas_mr |
||||||
|
- linguas_ms |
||||||
|
- linguas_nb |
||||||
|
- linguas_nl |
||||||
|
- linguas_pl |
||||||
|
- linguas_pt_BR |
||||||
|
- linguas_pt_PT |
||||||
|
- linguas_ro |
||||||
|
- linguas_sk |
||||||
|
- linguas_sl |
||||||
|
- linguas_sr |
||||||
|
- linguas_sv |
||||||
|
- linguas_sw |
||||||
|
- linguas_ta |
||||||
|
- linguas_te |
||||||
|
- linguas_th |
||||||
|
- linguas_tr |
||||||
|
- linguas_uk |
||||||
|
- linguas_vi |
||||||
|
- linguas_zh_CN |
||||||
|
- linguas_zh_TW |
||||||
|
|
@ -0,0 +1,13 @@ |
|||||||
|
|
||||||
|
services: |
||||||
|
disabled: |
||||||
|
- name: xdm |
||||||
|
- name: cupsd |
||||||
|
- name: bluetooth |
||||||
|
- name: sshd |
||||||
|
- name: swap |
||||||
|
runlevel: boot |
||||||
|
enabled: |
||||||
|
- name: connman |
||||||
|
runlevel: boot |
||||||
|
|
@ -0,0 +1,7 @@ |
|||||||
|
|
||||||
|
sysctl: |
||||||
|
- name: vm.laptop_mode # Увеличение нахождения SSD в режиме suspend |
||||||
|
value: 5 |
||||||
|
- name: vm.swappiness # При скольких процентах свободной оперативной памяти начинать писать в своп |
||||||
|
value: 10 |
||||||
|
|
@ -0,0 +1,8 @@ |
|||||||
|
|
||||||
|
system: |
||||||
|
tty_consoles: 4 |
||||||
|
|
||||||
|
optimisation: |
||||||
|
prelink: yes |
||||||
|
preload: yes |
||||||
|
|
Loading…
Reference in new issue