tmux

Prosto aczkolwiek czytelnie, jak na obrazku (config z internetu niestety nie pamiętam linka do oryginału).

#set-option -g default-command "exec /bin/bash"
set-window-option -g mode-keys vi
#custom
set -g status-bg '#d3d7cf'
set -g status-fg '#2e3436'

# remap prefix from 'C-b' to 'C-a'
#unbind C-b
#set-option -g prefix C-a
#bind-key C-a send-prefix

# split panes using | and -
bind | split-window -h
bind - split-window -v
unbind '"'
unbind %

# reload config file (change file location to your the tmux.conf you want to use)
bind r source-file ~/.tmux.conf

# switch panes using Alt-arrow without prefix
bind -n M-Left select-pane -L
bind -n M-Right select-pane -R
bind -n M-Up select-pane -U
bind -n M-Down select-pane -D

# Enable mouse mode (tmux 2.1 and above)
#set -g mouse on

######################
### DESIGN CHANGES ###
######################

# panes
set -g pane-border-fg black
set -g pane-active-border-fg brightred

## Status bar design
# status line
set -g status-justify left
set -g status-bg default
set -g status-fg colour12
set -g status-interval 2

# messaging
set -g message-fg black
set -g message-bg yellow
set -g message-command-fg blue
set -g message-command-bg black

#window mode
setw -g mode-bg colour6
setw -g mode-fg colour0

# window status
setw -g window-status-format " #F#I:#W#F "
setw -g window-status-current-format " #F#I:#W#F "
setw -g window-status-format "#[fg=magenta]#[bg=black] #I #[bg=cyan]#[fg=colour8] #W "
setw -g window-status-current-format "#[bg=brightmagenta]#[fg=colour8] #I #[fg=colour8]#[bg=colour14] #W "
setw -g window-status-current-bg colour0
setw -g window-status-current-fg colour11
setw -g window-status-current-attr dim
setw -g window-status-bg green
setw -g window-status-fg black
setw -g window-status-attr reverse

# Info on left (I don't have a session display for now)
set -g status-left ''

# loud or quiet?
set-option -g visual-activity off
set-option -g visual-bell off
set-option -g visual-silence off
set-window-option -g monitor-activity off
set-option -g bell-action none

set -g default-terminal "screen-256color"

# The modes {
setw -g clock-mode-colour colour135
setw -g mode-attr bold
setw -g mode-fg colour196
setw -g mode-bg colour238

# }
# The panes {

set -g pane-border-bg colour235
set -g pane-border-fg colour238
set -g pane-active-border-bg colour236
set -g pane-active-border-fg colour51

# }
# The statusbar {

set -g status-position bottom
set -g status-bg colour234
set -g status-fg colour137
set -g status-attr dim
set -g status-left ''
set -g status-right '#[fg=colour233,bg=colour245,bold] %H:%M:%S '
set -g status-right-length 50
set -g status-left-length 20

setw -g window-status-current-fg colour81
setw -g window-status-current-bg colour238
setw -g window-status-current-attr bold
setw -g window-status-current-format ' #I#[fg=colour250]:#[fg=colour255]#W#[fg=colour50]#F '

setw -g window-status-fg colour138
setw -g window-status-bg colour235
setw -g window-status-attr none
setw -g window-status-format ' #I#[fg=colour237]:#[fg=colour250]#W#[fg=colour244]#F '

setw -g window-status-bell-attr bold
setw -g window-status-bell-fg colour255
setw -g window-status-bell-bg colour1

# }
# The messages {

set -g message-attr bold
set -g message-fg colour232
set -g message-bg colour166

# }

vimrc

Vim vim vim, kto lubi ten używa, upakowanego pewnie w pełno pluginów i wypasiony plik konfiguracyjny. Także i ja wrzucę ale wersję minimalistyczną, mieszczącą się w kilku linijkach, bez żadnych pluginów.

Mi wystarcza (ok przyznaje czasem włączam jakieś dodatki ale tylko czasem), może komuś się przyda też 🙂

colorscheme desert
" save automatically when text is changed
set updatetime=200
au CursorHold * silent! update
set number
source $VIMRUNTIME/mswin.vim
behave mswin
set cursorline
set cursorcolumn
syntax on

guess who’s back? conky :)

Znowu wracają czasy 2012 roku, gnome 2 i zabawy z conky. Trochę konfiguracji przewinęło się na blogu i tak mnie wczoraj naszło aby znowu skorzystać z tego cudownego narzędzia.

Na początek popełniłem dwie wersje, jedna na prawą stronę ekranu a druga jako górny panel. Konfiguracje w linkach poniżej (wersja z panelem jest dostosowana do mojej szerokości monitora więc gdyby ktoś skorzystał musi sobie poprawić ${goto x} na swoje wartości).

conkyrc1

conkyrc2

nixnote2 beta 5

Dawno brakowało mi jakiegoś klienta z gui do evernote na linuxie. Dopiero odnowiona/przepisana wersja nixnote na qt jako tako działa i wygląda.

Screenshot from 2015-12-08 18-04-48Jedyny problem to paczka która w zależnościach ma jakieś stare wersje libopenexr kiedy to w sidzie aktualna jest libopenexr6v5.

Dlatego też zapodaję poprawioną paczkę dla w/w wersji libopenexr: nixnote2-2.0-beta5_amd64.deb

BOINC

Większość z naszych maszyn podczas gdy na nich nie pracujemy marnuje się (o ile są włączone oczywiście ;)) dlaczego by też nie wykorzystać ich w imię nauki.

W BOINC możemy wybrać sobie dowolny projekt dla którego udostępnimy swoją moc obliczeniową, wystarczy zainstalować:

aptitude install boinc-client

Graficznie resztę można wyklikać poprzez:

aptitude install boinc-manager

Gdy jednak maszyna nie posiada serwera graficznego możemy się posiłkować konfiguracją manualną (boinc-manager posiada opcję połączenia remote aczkolwiek nie mogłem w ten sposób dodać żadnego projektu, świetnie się jednak sprawdza później do podglądu jak nam idzie).

Tak więc wybieramy jakiś projekt, rejestrujemy konto na stronie i konfiguruejmy klienta:

boinccmd --lookup_account projekt mail haslo

np:

boinccmd --lookup_account http://setiathome.berkeley.edumail@mail haslo

pojawi się nasz kod, dodajemy go:

boinccmd --project_attach projekt kod

np:

boinccmd --project_attach http://setiathome.berkeley.edu kod

Aby móc połączyć się zdalnie w pliku /var/lib/boinc-client/remote_hosts.cfg podajemy ip a w /var/lib/boinc-client//var/lib/boinc-client hasło.

Na koniec w iptables otwieramy port 31416 i łączymy się managerem.

BOINC
BOINC

screen config

Gdyby ktoś chciał to mój obecny config screena:

# $Id: screenrc,v 1.15 2003/10/08 11:39:03 zal Exp $
#
# /etc/screenrc
#
#   This is the system wide screenrc.
#
#   You can use this file to change the default behavior of screen system wide
#   or copy it to ~/.screenrc and use it as a starting point for your own
#   settings.
#
#   Commands in this file are used to set options, bind screen functions to
#   keys, redefine terminal capabilities, and to automatically establish one or
#   more windows at the beginning of your screen session.
#
#   This is not a comprehensive list of options, look at the screen manual for
#   details on everything that you can put in this file.
#

# ------------------------------------------------------------------------------
# SCREEN SETTINGS
# ------------------------------------------------------------------------------

#startup_message off
#nethack on

#defflow on # will force screen to process ^S/^Q
deflogin on
#autodetach off

# turn visual bell on
vbell on
vbell_msg "   Wuff  ----  Wuff!!  "

# define a bigger scrollback, default is 100 lines
defscrollback 1024

# ------------------------------------------------------------------------------
# SCREEN KEYBINDINGS
# ------------------------------------------------------------------------------

# Remove some stupid / dangerous key bindings
bind ^k
#bind L
bind ^
# Make them better
bind \ quit
bind K kill
bind I login on
bind O login off
bind } history

# An example of a "screen scraper" which will launch urlview on the current
# screen window
#
#bind ^B eval "hardcopy_append off" "hardcopy -h $HOME/.screen-urlview" "screen urlview $HOME/.screen-urlview"

# ------------------------------------------------------------------------------
# TERMINAL SETTINGS
# ------------------------------------------------------------------------------

# The vt100 description does not mention "dl". *sigh*
termcapinfo vt100 dl=5E[M

# turn sending of screen messages to hardstatus off
hardstatus off
# Set the hardstatus prop on gui terms to set the titlebar/icon title
termcapinfo xterm*|rxvt*|kterm*|Eterm* hs:ts=E]0;:fs=07:ds=E]0;07
# use this for the hard status string
hardstatus string "%h%? users: %u%?"

# An alternative hardstatus to display a bar at the bottom listing the
# windownames and highlighting the current windowname in blue. (This is only
# enabled if there is no hardstatus setting for your terminal)
#
#hardstatus lastline "%-Lw%{= BW}%50>%n%f* %t%{-}%+Lw%<"

# set these terminals up to be 'optimal' instead of vt100
termcapinfo xterm*|linux*|rxvt*|Eterm* OP

# Change the xterm initialization string from is2=E[!pE[?3;4lE[4lE>
# (This fixes the "Aborted because of window size change" konsole symptoms found
#  in bug #134198)
termcapinfo xterm 'is=E[rE[mE[2JE[HE[?7hE[?1;4;6l'

# To get screen to add lines to xterm's scrollback buffer, uncomment the
# following termcapinfo line which tells xterm to use the normal screen buffer
# (which has scrollback), not the alternate screen buffer.
#
#termcapinfo xterm|xterms|xs|rxvt ti@:te@

# Enable non-blocking mode to better cope with flaky ssh connections.
defnonblock 5

# ------------------------------------------------------------------------------
# STARTUP SCREENS
# ------------------------------------------------------------------------------

# Example of automatically running some programs in windows on screen startup.
#
#   The following will open top in the first window, an ssh session to monkey
#   in the next window, and then open mutt and tail in windows 8 and 9
#   respectively.
#
# screen top
# screen -t monkey ssh monkey
# screen -t mail 8 mutt
# screen -t daemon 9 tail -f /var/log/daemon.log
startup_message off
escape ^Bb
#screen -t vps 0 ssh -l
#screen -t obsd 1 ssh -l
#screen -t icis 2 ssh -l
#screen -t htop 2 htop
select 0
#caption always "%{=}%-w%{+b w}%n %t%{-b w}%+w %=%c "
#caption always '%{=} %{b}@%H%{w} | %-w%{b}%n %t%{w}%+w%=| %{g}%D %M %d '
#hardstatus alwayslastline "%{b kw}%H %{r}%1` %{w}| %{g}%c %{w}| %{y}%d.%m.%Y %{w}| %{g}%l %{w}| %{-b kw}%u %-Lw%{= rW}%50> %n%f %t %{-}%+Lw%<"
hardstatus alwayslastline '%{=} %{b}@%H%{w} | %-w%{b}%n %t%{w}%+w%=| %{g}%D %M %d '

#LOGS
logfile $HOME/.screenlogs/screen_%H_%m%d%Y_%0c-%t.%n
deflog on
logtstamp on

A wygląda to tak:

screen.rc
screen.rc

cyanogenmod: call no sound

Od pewnego czasu w cyanogen modzie głośno o uciążliwym bugu. Otóż przestał działać mikrofon i głośnik podczas korzystania z dialera (w czasie rozmów tel.).

Winy jednoznacznie nie określono ale póki co wiadomo, że aktualizacje Google Play Services spowodowały ten błąd. Rozwiązania jednak jeszcze nie ma, przynajmniej oficjalnego więc aby móc korzystać w pełni z telefonu mamy do wyboru dwie opcje:

  1. Downgrade Google Play Services – ale tutaj jest haczyk, wszystkie aplikacje od google zaczynają sypać błędami, nie działa auth itp.
  2. Wyłączenie „CheckinService”

Jeśli chodzi o sposób nr 2 można go wykonać z poziomu adb tudzież konsoli w telefonie:

1. Turn off wireless and mobile data
 2. Reboot phone
 3. Open terminal emulator that comes with Cyanogenmod
 4. Elevate the shell to root, disable the service, exit the root shell, exit the terminal. Be careful, because you're running commands as root. The following commands work for me:
 === begin commands ===
 su
 pm disable com.google.android.gms/com.google.android.gms.checkin.CheckinService
 exit
 exit
 === end commands ===
 5. At this point you're safe to turn on wireless and mobile data whenever you want.

Na całkowite rozwiązanie niestety trzeba poczekać, polecam śledzić buga.