summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorPaweł Dybiec <pawel@dybiec.info>2022-05-04 02:10:28 +0100
committerPaweł Dybiec <pawel@dybiec.info>2022-05-04 02:10:28 +0100
commit8594a505dcbec46bbac28be5b9ceb5ac2cd1a3a6 (patch)
treef96ea4dee378fb939455d517b1ba16bc73d3ef37
Initial commit
-rw-r--r--bashrc45
-rw-r--r--emacs.d/init.el74
-rw-r--r--gitconfig12
-rwxr-xr-xinstall.sh9
-rw-r--r--nvim/init.vim2
-rw-r--r--profile18
-rw-r--r--tmux.conf75
7 files changed, 235 insertions, 0 deletions
diff --git a/bashrc b/bashrc
new file mode 100644
index 0000000..5044329
--- /dev/null
+++ b/bashrc
@@ -0,0 +1,45 @@
+# bashrc
+# If not running interactively, don't do anything
+case $- in
+ *i*) ;;
+ *) return;;
+esac
+
+HISTCONTROL=ignoreboth
+shopt -s histappend
+HISTSIZE=20000
+HISTFILESIZE=20000
+
+shopt -s checkwinsize
+
+# prompt
+PS1='\[\033[01;32m\]\u@\h\[\033[00m\]:\[\033[01;34m\]\w\[\033[00m\]\$ '
+
+# enable color support of ls and also add handy aliases
+if [ -x /usr/bin/dircolors ]; then
+ test -r ~/.dircolors && eval "$(dircolors -b ~/.dircolors)" || eval "$(dircolors -b)"
+ alias ls='ls --color=auto'
+ alias grep='grep --color=auto'
+ alias fgrep='fgrep --color=auto'
+ alias egrep='egrep --color=auto'
+fi
+
+
+
+# enable programmable completion features (you don't need to enable
+# this, if it's already enabled in /etc/bash.bashrc and /etc/profile
+# sources /etc/bash.bashrc).
+if ! shopt -oq posix; then
+ if [ -f /usr/share/bash-completion/bash_completion ]; then
+ . /usr/share/bash-completion/bash_completion
+ elif [ -f /etc/bash_completion ]; then
+ . /etc/bash_completion
+ fi
+fi
+
+
+bind '"\e[A": history-search-backward'
+bind '"\e[B": history-search-forward'
+export GPT_TTY=$(tty)
+alias t='tmux new-session -A -s main'
+alias vim='nvim'
diff --git a/emacs.d/init.el b/emacs.d/init.el
new file mode 100644
index 0000000..d401c49
--- /dev/null
+++ b/emacs.d/init.el
@@ -0,0 +1,74 @@
+;; disable toolbars
+(menu-bar-mode -1)
+(tool-bar-mode -1)
+(scroll-bar-mode -1)
+;; # apt install fonts-mononoki
+(set-face-attribute 'default nil
+ :family "mononoki"
+ :height 120
+ :weight 'normal
+ :width 'normal)
+
+;;; packages stuff
+(custom-set-variables
+ '(custom-safe-themes
+ '("01cf34eca93938925143f402c2e6141f03abb341f27d1c2dba3d50af9357ce70" default))
+ '(helm-minibuffer-history-key "M-p")
+ '(inhibit-startup-screen t)
+ '(package-selected-packages
+ '(company doom-themes solarized-theme evil-tutor undo-fu evil-collection flycheck-rust rust-mode evil-visual-mark-mode tidal racket-mode helm helm-flycheck lsp-mode lsp-ui magit evil lsp-haskell use-package)))
+(require 'package)
+(add-to-list 'package-archives (cons "melpa" "https://melpa.org/packages/") t)
+(package-initialize)
+;; Theme
+(load-theme 'doom-laserwave t)
+;; Programming languages
+(use-package flycheck
+ :ensure t
+ :init
+ (global-flycheck-mode t))
+(use-package lsp-mode
+ :ensure t
+ :config
+ (setq lsp-prefer-flymake nil)
+ :hook (haskell-mode . lsp-deferred)
+ (rust-mode . lsp-deferred)
+ :commands lsp)
+(use-package lsp-ui
+ :ensure t
+ :commands lsp-ui-mode)
+(use-package lsp-haskell
+ :ensure t
+ )
+(with-eval-after-load 'rust-mode
+ (add-hook 'flycheck-mode-hook #'flycheck-rust-setup))
+(add-hook 'prog-mode-hook 'linum-mode)
+;; Evil
+(use-package evil
+ :ensure t
+ :init
+ (setq evil-want-keybinding nil)
+ (setq evil-want-fine-undo nil)
+ (setq evil-undo-system 'undo-fu)
+ :config
+ (evil-mode 1))
+(use-package evil-collection
+ :after evil
+ :ensure t
+ :config
+ (evil-collection-init))
+;; Helm
+(use-package helm
+ :ensure t
+ :bind (("M-x" . helm-M-x)
+ ("\C-x\C-f" . helm-find-files))
+ :config
+ (setq helm-M-x-fuzzy-match t)
+ (define-key evil-ex-map "x" 'helm-M-x)
+ (define-key evil-ex-map "b" 'helm-mini)
+ (define-key evil-ex-map "e" 'helm-find-files))
+
+(use-package magit
+ :ensure t
+ :bind (("C-x g". 'magit-status)))
+
diff --git a/gitconfig b/gitconfig
new file mode 100644
index 0000000..714f67a
--- /dev/null
+++ b/gitconfig
@@ -0,0 +1,12 @@
+[user]
+ name = Paweł Dybiec
+ email = pawel@dybiec.info
+ signingkey = D981E3D624C11C20B04FCD2B2397F066368B6FD9
+[pull]
+ rebase = true
+[commit]
+ #gpgsign = true
+[init]
+ defaultBranch = main
+[core]
+ autocrlf = input
diff --git a/install.sh b/install.sh
new file mode 100755
index 0000000..871874c
--- /dev/null
+++ b/install.sh
@@ -0,0 +1,9 @@
+#! /bin/bash
+dotfiles=$(realpath $(dirname $BASH_SOURCE))
+ln -sf $dotfiles/gitconfig $HOME/.gitconfig
+ln -sf $dotfiles/tmux.conf $HOME/.tmux.conf
+ln -sf $dotfiles/bashrc $HOME/.bashrc
+ln -sf $dotfiles/profile $HOME/.profile
+ln -sf $dotfiles/emacs.d $HOME/
+ln -sf $dotfiles/nvim $HOME/.config/
+emacs -nw --eval '(package-refresh-contents)' --eval '(package-install-selected-packages)' --eval '(kill-emacs)'
diff --git a/nvim/init.vim b/nvim/init.vim
new file mode 100644
index 0000000..3c4c97c
--- /dev/null
+++ b/nvim/init.vim
@@ -0,0 +1,2 @@
+set number
+set mouse=a
diff --git a/profile b/profile
new file mode 100644
index 0000000..7dd7b83
--- /dev/null
+++ b/profile
@@ -0,0 +1,18 @@
+# ~/.profile
+
+if [ -n "$BASH_VERSION" ]; then
+ if [ -f "$HOME/.bashrc" ]; then
+ . "$HOME/.bashrc"
+ fi
+fi
+
+export PATH=$HOME/.local/bin:$PATH
+source "$HOME/.cargo/env"
+source "$HOME/.ghcup/env"
+export PATH=$HOME/.cabal/bin/:$HOME/go/bin:$PATH
+# opam configuration
+#test -r /home/pawel/.opam/opam-init/init.sh && . /home/pawel/.opam/opam-init/init.sh > /dev/null 2> /dev/null || true
+#eval "$(opam env)"
+#eval "$(stack --bash-completion-script stack)"
+
+
diff --git a/tmux.conf b/tmux.conf
new file mode 100644
index 0000000..7065dd0
--- /dev/null
+++ b/tmux.conf
@@ -0,0 +1,75 @@
+# .tmux.conf
+
+set -g default-command "${SHELL}"
+set -g history-limit 500000
+set -g status-right "#{host} - %Y-%m-%d %H:%M"
+set -s default-terminal "screen-256color"
+set -gs escape-time 0
+set -g allow-rename off
+bind r source-file ~/.tmux.conf
+bind-key C-r command-prompt "new-session -s %1 ssh %1 \; set-option default-command \"ssh %1\""
+bind-key C-m command-prompt "new-session -s %1 ssh %1 \; set-option default-command \"mosh %1\""
+set -g mouse on
+
+unbind C-b
+set -g prefix C-x
+bind C-x send-prefix
+
+set -g set-titles on
+set -g base-index 1
+setw -g pane-base-index 1
+
+
+bind c new-window -c "#{pane_current_path}"
+
+######################
+### DESIGN CHANGES ###
+######################
+
+# loud or quiet?
+set -g visual-activity off
+set -g visual-bell off
+set -g visual-silence off
+setw -g monitor-activity off
+set -g bell-action none
+
+# THEME
+set -g status-style bg=default
+
+setw -g window-style 'bg=#040404'
+setw -g window-active-style 'bg=#000000'
+setw -g pane-active-border-style ''
+
+## highlight activity in status bar
+setw -g window-status-activity-style fg="#88bbbb"
+setw -g window-status-activity-style bg="#111122"
+
+set -g message-style bg="#77bbbb"
+set -g message-style fg="#000000"
+
+set -g message-command-style bg="#77bbbb"
+set -g message-command-style fg="#000000"
+
+# message bar or "prompt"
+set -g message-style bg="#202020"
+set -g message-style fg="#dd99dd"
+
+set -g mode-style bg="#111122"
+set -g mode-style fg="#dd9955"
+
+# right side of status bar holds "[host name] (date time)"
+set -g status-left-length 15
+set -g status-right-style bold
+set -g status-right '#[fg=#cc6699,bg=#2d2d2d] #{host}|#[fg=#ff9966] %H:%M |#[fg=#6699cc] %y.%m.%d '
+
+# Tabs
+set-window-option -g window-status-style bg=default
+set-window-option -g window-status-style fg=white
+set-window-option -g window-status-style none
+set-window-option -g window-status-format '#[fg=#556655,bg=#444444] #I #[fg=#cccccc,bg=#555555] #W #[default]'
+set-window-option -g window-status-current-style none
+set-window-option -g window-status-current-format '#[fg=#ffdd99,bg=#222222] #I #[fg=#cccccc,bg=#333333] #W #[default]'
+
+# Window borders
+set -g pane-border-style fg="#aaaaaa"
+set -g pane-active-border-style fg="#ee9955"