From b17c117901a3733e21f3789aad7574d692f7a22e Mon Sep 17 00:00:00 2001 From: JaeYoo-Im Date: Tue, 28 Mar 2023 17:16:38 +0900 Subject: [PATCH] Ubuntu : i3 configuration for xilinx tools --- .config/alacritty/alacritty.yml | 10 +- .config/i3/config | 179 ++++++++++++++++++++++++++++++ .config/rofi/config.rasi | 9 ++ .config/rofi/themes/material.rasi | 131 ++++++++++++++++++++++ .config/rofi/themes/onedark.rasi | 101 +++++++++++++++++ .config/rofi/themes/oxide.rasi | 170 ++++++++++++++++++++++++++++ .xmonad/scripts/picom.conf | 158 +++++++++++++------------- .zshrc | 4 +- scripts/init_script_ubuntu.sh | 64 +++++++++++ 9 files changed, 740 insertions(+), 86 deletions(-) create mode 100644 .config/i3/config create mode 100644 .config/rofi/config.rasi create mode 100644 .config/rofi/themes/material.rasi create mode 100644 .config/rofi/themes/onedark.rasi create mode 100644 .config/rofi/themes/oxide.rasi create mode 100644 scripts/init_script_ubuntu.sh diff --git a/.config/alacritty/alacritty.yml b/.config/alacritty/alacritty.yml index 9a77051..ce71480 100644 --- a/.config/alacritty/alacritty.yml +++ b/.config/alacritty/alacritty.yml @@ -14,19 +14,19 @@ scrolling: history: 10000 font: normal: - family: UbuntuMono + family: Mononoki Nerd Font style: Regular bold: - family: UbuntuMono + family: Mononoki Nerd Font style: Bold italic: - family: UbuntuMono + family: Mononoki Nerd Font style: Italic bold_italic: - family: UbuntuMono + family: Mononoki Nerd Font style: Bold Italic # Point size - size: 12.0 + size: 10.0 offset: x: 0 y: 1 diff --git a/.config/i3/config b/.config/i3/config new file mode 100644 index 0000000..42f0d0c --- /dev/null +++ b/.config/i3/config @@ -0,0 +1,179 @@ +# This file has been auto-generated by i3-config-wizard(1). +# It will not be overwritten, so edit it as you like. +# +# Should you change your keyboard layout some time, delete +# this file and re-run i3-config-wizard(1). +# + +# i3 config file (v4) +# +# Please see https://i3wm.org/docs/userguide.html for a complete reference! + +set $mod Mod4 + +# Font for window titles. Will also be used by the bar unless a different font +# is used in the bar {} block below. +font pango:monospace 8 + +# This font is widely installed, provides lots of unicode glyphs, right-to-left +# text rendering and scalability on retina/hidpi displays (thanks to pango). +#font pango:DejaVu Sans Mono 8 + +# The combination of xss-lock, nm-applet and pactl is a popular choice, so +# they are included here as an example. Modify as you see fit. + +# xss-lock grabs a logind suspend inhibit lock and will use i3lock to lock the +# screen before suspend. Use loginctl lock-session to lock your screen. +exec --no-startup-id xss-lock --transfer-sleep-lock -- i3lock --nofork + +# NetworkManager is the most popular way to manage wireless networks on Linux, +# and nm-applet is a desktop environment-independent system tray GUI for it. +exec --no-startup-id nm-applet + +# Use pactl to adjust volume in PulseAudio. +set $refresh_i3status killall -SIGUSR1 i3status +bindsym XF86AudioRaiseVolume exec --no-startup-id pactl set-sink-volume @DEFAULT_SINK@ +10% && $refresh_i3status +bindsym XF86AudioLowerVolume exec --no-startup-id pactl set-sink-volume @DEFAULT_SINK@ -10% && $refresh_i3status +bindsym XF86AudioMute exec --no-startup-id pactl set-sink-mute @DEFAULT_SINK@ toggle && $refresh_i3status +bindsym XF86AudioMicMute exec --no-startup-id pactl set-source-mute @DEFAULT_SOURCE@ toggle && $refresh_i3status + +# Use Mouse+$mod to drag floating windows to their wanted position +floating_modifier $mod + +# start a terminal +#bindsym $mod+Return exec i3-sensible-terminal +bindsym $mod+Return exec alacritty + +# kill focused window +bindsym $mod+Shift+c kill + +# start dmenu (a program launcher) +#bindsym $mod+d exec dmenu_run +bindsym $mod+d exec rofi -show drun +bindsym $mod+f exec firefox +bindsym $mod+n exec nautilus +bindsym $mod+t exec gnome-control-center +bindsym $mod+e exec emacs + +# There also is the (new) i3-dmenu-desktop which only displays applications +# shipping a .desktop file. It is a wrapper around dmenu, so you need that +# installed. +# bindsym $mod+d exec --no-startup-id i3-dmenu-desktop + +# change focus +bindsym $mod+h focus left +bindsym $mod+j focus down +bindsym $mod+k focus up +bindsym $mod+l focus right + +# move focused window +bindsym $mod+Shift+h move left +bindsym $mod+Shift+j move down +bindsym $mod+Shift+k move up +bindsym $mod+Shift+l move right + +# split in horizontal orientation +#bindsym $mod+h split h + +# split in vertical orientation +#bindsym $mod+v split v + +# enter fullscreen mode for the focused container +bindsym $mod+space fullscreen toggle + +# full screen window change +bindsym $mod+Control+j exec "i3-msg -t command 'fullscreen disable; focus next; fullscreen enable'" +bindsym $mod+Control+k exec "i3-msg -t command 'fullscreen disable; focus prev; fullscreen enable'" + +# change container layout (stacked, tabbed, toggle split) +bindsym $mod+Control+s layout stacking +bindsym $mod+Control+w layout tabbed +bindsym $mod+Control+e layout toggle split + +# toggle tiling / floating +bindsym $mod+Shift+space floating toggle + +# change focus between tiling / floating windows +#bindsym $mod+space focus mode_toggle + +# focus the parent container +bindsym $mod+a focus parent + +# focus the child container +#bindsym $mod+d focus child + +# Define names for default workspaces for which we configure key bindings later on. +# We use variables to avoid repeating the names in multiple places. +set $ws1 "1" +set $ws2 "2" +set $ws3 "3" +set $ws4 "4" +set $ws5 "5" +set $ws6 "6" +set $ws7 "7" +set $ws8 "8" +set $ws9 "9" +set $ws10 "10" + +# switch to workspace +bindsym $mod+1 workspace number $ws1 +bindsym $mod+2 workspace number $ws2 +bindsym $mod+3 workspace number $ws3 +bindsym $mod+4 workspace number $ws4 +bindsym $mod+5 workspace number $ws5 +bindsym $mod+6 workspace number $ws6 +bindsym $mod+7 workspace number $ws7 +bindsym $mod+8 workspace number $ws8 +bindsym $mod+9 workspace number $ws9 +bindsym $mod+0 workspace number $ws10 + +# move focused container to workspace +bindsym $mod+Shift+1 move container to workspace number $ws1 +bindsym $mod+Shift+2 move container to workspace number $ws2 +bindsym $mod+Shift+3 move container to workspace number $ws3 +bindsym $mod+Shift+4 move container to workspace number $ws4 +bindsym $mod+Shift+5 move container to workspace number $ws5 +bindsym $mod+Shift+6 move container to workspace number $ws6 +bindsym $mod+Shift+7 move container to workspace number $ws7 +bindsym $mod+Shift+8 move container to workspace number $ws8 +bindsym $mod+Shift+9 move container to workspace number $ws9 +bindsym $mod+Shift+0 move container to workspace number $ws10 + +# reload the configuration file +bindsym $mod+Shift+q reload +# restart i3 inplace (preserves your layout/session, can be used to upgrade i3) +bindsym $mod+Shift+r restart +# exit i3 (logs you out of your X session) +bindsym $mod+Shift+e exec "i3-nagbar -t warning -m 'You pressed the exit shortcut. Do you really want to exit i3? This will end your X session.' -B 'Yes, exit i3' 'i3-msg exit'" + + +# Need for i3-gaps +for_window [class="^.*"] border pixel 5 +for_window [class="alacritty"] border pixel 0 +for_window [class="Org.gnome.Nautilus"] border pixel 0 + +smart_gaps on +smart_borders on + +gaps inner 5 + +set $bg-color #2f343f +set $inactive-bg-color #2f343f +set $text-color #f3f4f5 +set $inactive-text-color #676E7D +set $urgent-bg-color #E53935 + +# class border backgr. text indicator child_border +client.focused #4545a8 #4545a8 #ffffff #752b30 #4545a8 +client.focused_inactive #617d9e #617d9e #ffffff #424f5f #617d9e +client.unfocused #424f5f #424f5f #83a5bc #424f5f #424f5f + +exec_always picom -b --config $HOME/.xmonad/scripts/picom.conf +exec_always feh --bg-fill /home/jaeus/wallpaper/colony.jpg + +#exec_always --no-startup-id $HOME/.config/polybar/launch.sh +# Start i3bar to display a workspace bar (plus the system information i3status +# finds out, if available) +bar { + status_command i3status +} diff --git a/.config/rofi/config.rasi b/.config/rofi/config.rasi new file mode 100644 index 0000000..17c3e44 --- /dev/null +++ b/.config/rofi/config.rasi @@ -0,0 +1,9 @@ +/* Rofi config file */ +configuration { + lines: 12; + font: "hack 10"; + show-icons: true; + theme: "~/.config/rofi/themes/onedark"; + display-window: "Window"; + display-drun: "Search"; +} diff --git a/.config/rofi/themes/material.rasi b/.config/rofi/themes/material.rasi new file mode 100644 index 0000000..c2a1b18 --- /dev/null +++ b/.config/rofi/themes/material.rasi @@ -0,0 +1,131 @@ +/* + * ROFI color theme + * + * Based on Base16 Material Color Scheme (https://github.com/ntpeters/base16-materialtheme-scheme) + * + * User: Tomaszal + * Copyright: Tomas Zaluckij + */ + +* { + base00: #263238; + base01: #2E3C43; + base02: #314549; + base03: #546E7A; + base04: #B2CCD6; + base05: #EEFFFF; + base06: #EEFFFF; + base07: #FFFFFF; + base08: #F07178; + base09: #F78C6C; + base0A: #FFCB6B; + base0B: #C3E88D; + base0C: #89DDFF; + base0D: #82AAFF; + base0E: #C792EA; + base0F: #FF5370; + + /*base0D: #00BCD4;*/ + + spacing: 0; + background-color: transparent; + + font: "Roboto Mono 13"; +} + +window { + transparency: "real"; + /*fullscreen: true;*/ + background-color: #263238CC; /*base00 + CC (80% opacity)*/ +} + +mainbox { + children: [inputbar, message, mode-switcher, listview]; + spacing: 30px; + /*margin: 20%;*/ + padding: 30px 0; + border: 1px; + border-color: @base0D; +} + +inputbar { + padding: 0 30px; + children: [prompt, textbox-prompt-colon, entry, case-indicator]; +} + +prompt { + text-color: @base0D; +} + +textbox-prompt-colon { + expand: false; + str: ":"; + margin: 0 1ch 0 0; + text-color: @base0D; +} + +entry { + text-color: @base07; +} + +case-indicator { + text-color: @base0F; +} + +mode-switcher, message { + border: 1px 0; + border-color: @base0D; +} + +button, textbox { + background-color: @base03; + text-color: @base07; + padding: 5px; +} + +button selected { + background-color: @base0D; +} + +listview { + scrollbar: true; + margin: 0 10px 0 30px; +} + +scrollbar { + background-color: @base03; + handle-color: @base0D; + handle-width: 10px; + border: 0 1px; + border-color: @base0D; + margin: 0 0 0 20px; +} + +element { + padding: 5px; + highlight: bold underline; +} + +element normal { + background-color: transparent; +} + +element selected { + background-color: @base0D; +} + +element alternate { + /*background-color: @base03;*/ +} + +element normal normal, element selected normal, element alternate normal { + text-color: @base07; +} + +element normal urgent, element selected urgent, element alternate urgent { + text-color: @base0F; +} + +element normal active, element selected active, element alternate active { + text-color: @base0B; +} diff --git a/.config/rofi/themes/onedark.rasi b/.config/rofi/themes/onedark.rasi new file mode 100644 index 0000000..22e3693 --- /dev/null +++ b/.config/rofi/themes/onedark.rasi @@ -0,0 +1,101 @@ +/* + * ROFI One Dark + * + * Based on OneDark.vim (https://github.com/joshdick/onedark.vim) + * + * Author: Benjamin Stauss + * User: me-benni + * + */ + + +* { + black: #000000; + red: #eb6e67; + green: #95ee8f; + yellow: #f8c456; + blue: #6eaafb; + mangenta: #d886f3; + cyan: #6cdcf7; + emphasis: #50536b; + text: #dfdfdf; + text-alt: #b2b2b2; + fg: #abb2bf; + bg: #282c34; + + spacing: 0; + background-color: transparent; + + font: "Fira Code 12"; + text-color: @text; +} + +window { + transparency: "real"; + fullscreen: true; + background-color: #282c34dd; + border: 0px; +} + +mainbox { + padding: 30% 30%; +} + +inputbar { + margin: 0px 0px 20px 0px; + children: [prompt, textbox-prompt-colon, entry, case-indicator]; +} + +prompt { + text-color: @blue; +} + +textbox-prompt-colon { + expand: false; + str: ":"; + text-color: @text-alt; +} + +entry { + margin: 0px 10px; +} + +listview { + spacing: 5px; + dynamic: true; + scrollbar: false; +} + +element { + padding: 5px; + text-color: @text-alt; + highlight: bold #95ee8f; /* green */ + border-radius: 3px; +} + +element selected { + background-color: @emphasis; + text-color: @text; +} + +element urgent, element selected urgent { + text-color: @red; +} + +element active, element selected active { + text-color: @purple; +} + +message { + padding: 5px; + border-radius: 3px; + background-color: @emphasis; + border: 1px; + border-color: @cyan; +} + +button selected { + padding: 5px; + border-radius: 3px; + background-color: @emphasis; +} diff --git a/.config/rofi/themes/oxide.rasi b/.config/rofi/themes/oxide.rasi new file mode 100644 index 0000000..e6826bf --- /dev/null +++ b/.config/rofi/themes/oxide.rasi @@ -0,0 +1,170 @@ +/** + * Oxide Color theme + * Author: Diki Ananta + * Repository: https://github.com/dikiaap/dotfiles + * License: MIT + **/ +* { + selected-normal-foreground: var(lightfg); + foreground: rgba ( 196, 202, 212, 100 % ); + normal-foreground: var(foreground); + alternate-normal-background: rgba ( 42, 42, 42, 100 % ); + red: rgba ( 194, 65, 65, 100 % ); + selected-urgent-foreground: var(lightfg); + blue: rgba ( 43, 131, 166, 100 % ); + urgent-foreground: var(lightfg); + alternate-urgent-background: var(red); + active-foreground: var(lightfg); + lightbg: var(foreground); + selected-active-foreground: var(lightfg); + alternate-active-background: var(blue); + background: rgba ( 33, 33, 33, 100 % ); + alternate-normal-foreground: var(foreground); + normal-background: var(background); + lightfg: rgba ( 249, 249, 249, 100 % ); + selected-normal-background: rgba ( 90, 90, 90, 100 % ); + separatorcolor: rgba ( 183, 183, 183, 100 % ); + spacing: 2; + border-color: var(foreground); + urgent-background: var(red); + alternate-active-foreground: var(active-foreground); + alternate-urgent-foreground: var(urgent-foreground); + background-color: rgba ( 0, 0, 0, 0 % ); + selected-urgent-background: rgba ( 214, 78, 78, 100 % ); + active-background: var(blue); + selected-active-background: rgba ( 39, 141, 182, 100 % ); +} +element { + border: 0; + spacing: 4px; + padding: 1px; +} +element normal.normal { + background-color: var(normal-background); + text-color: var(normal-foreground); +} +element normal.urgent { + background-color: var(urgent-background); + text-color: var(urgent-foreground); +} +element normal.active { + background-color: var(active-background); + text-color: var(active-foreground); +} +element selected.normal { + background-color: var(selected-normal-background); + text-color: var(selected-normal-foreground); +} +element selected.urgent { + background-color: var(selected-urgent-background); + text-color: var(selected-urgent-foreground); +} +element selected.active { + background-color: var(selected-active-background); + text-color: var(selected-active-foreground); +} +element alternate.normal { + background-color: var(alternate-normal-background); + text-color: var(alternate-normal-foreground); +} +element alternate.urgent { + background-color: var(alternate-urgent-background); + text-color: var(alternate-urgent-foreground); +} +element alternate.active { + background-color: var(alternate-active-background); + text-color: var(alternate-active-foreground); +} +element-text { + background-color: rgba ( 0, 0, 0, 0 % ); + highlight: inherit; + text-color: inherit; +} +element-icon { + background-color: rgba ( 0, 0, 0, 0 % ); + size: 21px; + text-color: inherit; +} +window { + background-color: var(background); + border: 0; + padding: 8; +} +mainbox { + border: 0; + padding: 0; +} +message { + border: 2px dash 0px 0px; + border-color: var(separatorcolor); + padding: 1px; +} +textbox { + text-color: var(foreground); +} +listview { + fixed-height: 0; + border: 0; + border-color: var(separatorcolor); + spacing: 2px; + scrollbar: true; + padding: 2px 0px 0px; +} +scrollbar { + width: 4px; + border: 0; + handle-color: rgba ( 85, 85, 85, 100 % ); + handle-width: 8px; + padding: 0; +} +sidebar { + border: 2px dash 0px 0px; + border-color: var(separatorcolor); +} +button { + spacing: 0; + text-color: var(normal-foreground); +} +button selected { + background-color: var(selected-normal-background); + text-color: var(selected-normal-foreground); +} +num-filtered-rows { + expand: false; + text-color: rgba ( 128, 128, 128, 100 % ); +} +num-rows { + expand: false; + text-color: rgba ( 128, 128, 128, 100 % ); +} +textbox-num-sep { + expand: false; + str: "/"; + text-color: rgba ( 128, 128, 128, 100 % ); +} +inputbar { + spacing: 0px; + text-color: var(normal-foreground); + padding: 1px; + children: [ prompt,textbox-prompt-colon,entry,overlay,case-indicator ]; +} +case-indicator { + spacing: 0; + text-color: var(normal-foreground); +} +entry { + placeholder: ""; + spacing: 0; + text-color: var(normal-foreground); + placeholder-color: rgba ( 128, 128, 128, 100 % ); +} +prompt { + spacing: 0; + text-color: var(normal-foreground); +} +textbox-prompt-colon { + expand: false; + str: ":"; + margin: 0px 0.3000em 0.0000em 0.0000em; + text-color: inherit; +} diff --git a/.xmonad/scripts/picom.conf b/.xmonad/scripts/picom.conf index 0291771..3f96a68 100644 --- a/.xmonad/scripts/picom.conf +++ b/.xmonad/scripts/picom.conf @@ -3,8 +3,8 @@ ################################# -# Enabled client-side shadows on windows. Note desktop windows -# (windows with '_NET_WM_WINDOW_TYPE_DESKTOP') never get shadow, +# Enabled client-side shadows on windows. Note desktop windows +# (windows with '_NET_WM_WINDOW_TYPE_DESKTOP') never get shadow, # unless explicitly requested using the wintypes option. # # shadow = false @@ -30,7 +30,7 @@ shadow-offset-y = -7; # # no-dock-shadow = false -# Don't draw shadows on drag-and-drop windows. This option is deprecated, +# Don't draw shadows on drag-and-drop windows. This option is deprecated, # you should use the *wintypes* option in your config file instead. # # no-dnd-shadow = false @@ -44,12 +44,12 @@ shadow-offset-y = -7; # Blue color value of shadow (0.0 - 1.0, defaults to 0). # shadow-blue = 0 -# Do not paint shadows on shaped windows. Note shaped windows -# here means windows setting its shape through X Shape extension. -# Those using ARGB background is beyond our control. -# Deprecated, use +# Do not paint shadows on shaped windows. Note shaped windows +# here means windows setting its shape through X Shape extension. +# Those using ARGB background is beyond our control. +# Deprecated, use # shadow-exclude = 'bounding_shaped' -# or +# or # shadow-exclude = 'bounding_shaped && !rounded_corners' # instead. # @@ -81,20 +81,20 @@ shadow-exclude = [ "class_g = 'Cairo-clock'", "class_g ?= 'Xfce4-notifyd'", "class_g ?= 'Xfce4-power-manager'", - "_GTK_FRAME_EXTENTS@:c", + "_GTK_FRAME_EXTENTS@:c" ]; # Add this one too for ... # "_NET_WM_STATE@:32a *= '_NET_WM_STATE_HIDDEN'" # Add this one above to the list to have no shadow in Openbox menu - # "! name~=''", + # "! name~=''", # Specify a X geometry that describes the region in which shadow should not -# be painted in, such as a dock window region. Use +# be painted in, such as a dock window region. Use # shadow-exclude-reg = "x10+0+0" # for example, if the 10 pixels on the bottom of the screen should not have shadows painted on. # -# shadow-exclude-reg = "" +# shadow-exclude-reg = "" # Crop shadow of a window fully on a particular Xinerama screen to the screen. # xinerama-shadow-crop = false @@ -164,9 +164,9 @@ focus-exclude = [ "class_g = 'Cairo-clock'" ]; # Use fixed inactive dim value, instead of adjusting according to window opacity. # inactive-dim-fixed = 1.0 -# Specify a list of opacity rules, in the format `PERCENT:PATTERN`, -# like `50:name *= "Firefox"`. picom-trans is recommended over this. -# Note we don't make any guarantee about possible conflicts with other +# Specify a list of opacity rules, in the format `PERCENT:PATTERN`, +# like `50:name *= "Firefox"`. picom-trans is recommended over this. +# Note we don't make any guarantee about possible conflicts with other # programs that set '_NET_WM_WINDOW_OPACITY' on frame or client windows. # example: # opacity-rule = [ "80:class_g = 'URxvt'" ]; @@ -180,20 +180,20 @@ opacity-rule = [ "80:class_g = 'Alacritty'"]; # Parameters for background blurring, see the *BLUR* section for more information. -# blur-method = +# blur-method = # blur-size = 12 # # blur-deviation = false -# Blur background of semi-transparent / ARGB windows. -# Bad in performance, with driver-dependent behavior. +# Blur background of semi-transparent / ARGB windows. +# Bad in performance, with driver-dependent behavior. # The name of the switch may change without prior notifications. # # blur-background = false -# Blur background of windows when the window frame is not opaque. +# Blur background of windows when the window frame is not opaque. # Implies: -# blur-background +# blur-background # Bad in performance, with driver-dependent behavior. The name may change. # # blur-background-frame = false @@ -239,7 +239,7 @@ vsync = false # Enable remote control via D-Bus. See the *D-BUS API* section below for more details. # dbus = false -# Try to detect WM windows (a non-override-redirect window with no +# Try to detect WM windows (a non-override-redirect window with no # child that has 'WM_STATE') and mark them as active. # # mark-wmwin-focused = false @@ -249,7 +249,7 @@ mark-wmwin-focused = true; # mark-ovredir-focused = false mark-ovredir-focused = true; -# Try to detect windows with rounded corners and don't consider them +# Try to detect windows with rounded corners and don't consider them # shaped windows. The accuracy is not very high, unfortunately. # # detect-rounded-corners = false @@ -261,28 +261,28 @@ detect-rounded-corners = true; # detect-client-opacity = false detect-client-opacity = true; -# Specify refresh rate of the screen. If not specified or 0, picom will +# Specify refresh rate of the screen. If not specified or 0, picom will # try detecting this with X RandR extension. # # refresh-rate = 60 refresh-rate = 0 -# Limit picom to repaint at most once every 1 / 'refresh_rate' second to -# boost performance. This should not be used with +# Limit picom to repaint at most once every 1 / 'refresh_rate' second to +# boost performance. This should not be used with # vsync drm/opengl/opengl-oml -# as they essentially does sw-opti's job already, +# as they essentially does sw-opti's job already, # unless you wish to specify a lower refresh rate than the actual value. # -# sw-opti = +# sw-opti = -# Use EWMH '_NET_ACTIVE_WINDOW' to determine currently focused window, -# rather than listening to 'FocusIn'/'FocusOut' event. Might have more accuracy, +# Use EWMH '_NET_ACTIVE_WINDOW' to determine currently focused window, +# rather than listening to 'FocusIn'/'FocusOut' event. Might have more accuracy, # provided that the WM supports it. # # use-ewmh-active-win = false -# Unredirect all windows if a full-screen opaque window is detected, -# to maximize performance for full-screen windows. Known to cause flickering +# Unredirect all windows if a full-screen opaque window is detected, +# to maximize performance for full-screen windows. Known to cause flickering # when redirecting/unredirecting windows. # # unredir-if-possible = false @@ -293,52 +293,52 @@ refresh-rate = 0 # Conditions of windows that shouldn't be considered full-screen for unredirecting screen. # unredir-if-possible-exclude = [] -# Use 'WM_TRANSIENT_FOR' to group windows, and consider windows +# Use 'WM_TRANSIENT_FOR' to group windows, and consider windows # in the same group focused at the same time. # # detect-transient = false detect-transient = true -# Use 'WM_CLIENT_LEADER' to group windows, and consider windows in the same -# group focused at the same time. 'WM_TRANSIENT_FOR' has higher priority if +# Use 'WM_CLIENT_LEADER' to group windows, and consider windows in the same +# group focused at the same time. 'WM_TRANSIENT_FOR' has higher priority if # detect-transient is enabled, too. # # detect-client-leader = false detect-client-leader = true -# Resize damaged region by a specific number of pixels. -# A positive value enlarges it while a negative one shrinks it. -# If the value is positive, those additional pixels will not be actually painted -# to screen, only used in blur calculation, and such. (Due to technical limitations, -# with use-damage, those pixels will still be incorrectly painted to screen.) -# Primarily used to fix the line corruption issues of blur, -# in which case you should use the blur radius value here -# (e.g. with a 3x3 kernel, you should use `--resize-damage 1`, -# with a 5x5 one you use `--resize-damage 2`, and so on). +# Resize damaged region by a specific number of pixels. +# A positive value enlarges it while a negative one shrinks it. +# If the value is positive, those additional pixels will not be actually painted +# to screen, only used in blur calculation, and such. (Due to technical limitations, +# with use-damage, those pixels will still be incorrectly painted to screen.) +# Primarily used to fix the line corruption issues of blur, +# in which case you should use the blur radius value here +# (e.g. with a 3x3 kernel, you should use `--resize-damage 1`, +# with a 5x5 one you use `--resize-damage 2`, and so on). # May or may not work with *--glx-no-stencil*. Shrinking doesn't function correctly. # # resize-damage = 1 -# Specify a list of conditions of windows that should be painted with inverted color. +# Specify a list of conditions of windows that should be painted with inverted color. # Resource-hogging, and is not well tested. # # invert-color-include = [] -# GLX backend: Avoid using stencil buffer, useful if you don't have a stencil buffer. -# Might cause incorrect opacity when rendering transparent content (but never -# practically happened) and may not work with blur-background. +# GLX backend: Avoid using stencil buffer, useful if you don't have a stencil buffer. +# Might cause incorrect opacity when rendering transparent content (but never +# practically happened) and may not work with blur-background. # My tests show a 15% performance boost. Recommended. # # glx-no-stencil = false -# GLX backend: Avoid rebinding pixmap on window damage. -# Probably could improve performance on rapid window content changes, +# GLX backend: Avoid rebinding pixmap on window damage. +# Probably could improve performance on rapid window content changes, # but is known to break things on some drivers (LLVMpipe, xf86-video-intel, etc.). # Recommended if it works. # # glx-no-rebind-pixmap = false -# Disable the use of damage information. +# Disable the use of damage information. # This cause the whole screen to be redrawn everytime, instead of the part of the screen # has actually changed. Potentially degrades the performance, but might fix some artifacts. # The opposing option is use-damage @@ -346,31 +346,31 @@ detect-client-leader = true # no-use-damage = false use-damage = true -# Use X Sync fence to sync clients' draw calls, to make sure all draw -# calls are finished before picom starts drawing. Needed on nvidia-drivers +# Use X Sync fence to sync clients' draw calls, to make sure all draw +# calls are finished before picom starts drawing. Needed on nvidia-drivers # with GLX backend for some users. # # xrender-sync-fence = false -# GLX backend: Use specified GLSL fragment shader for rendering window contents. -# See `compton-default-fshader-win.glsl` and `compton-fake-transparency-fshader-win.glsl` +# GLX backend: Use specified GLSL fragment shader for rendering window contents. +# See `compton-default-fshader-win.glsl` and `compton-fake-transparency-fshader-win.glsl` # in the source tree for examples. # # glx-fshader-win = '' -# Force all windows to be painted with blending. Useful if you +# Force all windows to be painted with blending. Useful if you # have a glx-fshader-win that could turn opaque pixels transparent. # # force-win-blend = false -# Do not use EWMH to detect fullscreen windows. +# Do not use EWMH to detect fullscreen windows. # Reverts to checking if a window is fullscreen based only on its size and coordinates. # # no-ewmh-fullscreen = false -# Dimming bright windows so their brightness doesn't exceed this set value. -# Brightness of a window is estimated by averaging all pixels in the window, -# so this could comes with a performance hit. +# Dimming bright windows so their brightness doesn't exceed this set value. +# Brightness of a window is estimated by averaging all pixels in the window, +# so this could comes with a performance hit. # Setting this to 1.0 disables this behaviour. Requires --use-damage to be disabled. (default: 1.0) # # max-brightness = 1.0 @@ -382,17 +382,17 @@ use-damage = true # Set the log level. Possible values are: # "trace", "debug", "info", "warn", "error" -# in increasing level of importance. Case doesn't matter. -# If using the "TRACE" log level, it's better to log into a file +# in increasing level of importance. Case doesn't matter. +# If using the "TRACE" log level, it's better to log into a file # using *--log-file*, since it can generate a huge stream of logs. # # log-level = "debug" log-level = "warn"; # Set the log file. -# If *--log-file* is never specified, logs will be written to stderr. -# Otherwise, logs will to written to the given file, though some of the early -# logs might still be written to the stderr. +# If *--log-file* is never specified, logs will be written to stderr. +# Otherwise, logs will to written to the given file, though some of the early +# logs might still be written to the stderr. # When setting this option from the config file, it is recommended to use an absolute path. # # log-file = '~/.config/compton.log' @@ -404,33 +404,33 @@ log-level = "warn"; # write-pid-path = '/path/to/your/log/file' # Window type settings -# -# 'WINDOW_TYPE' is one of the 15 window types defined in EWMH standard: -# "unknown", "desktop", "dock", "toolbar", "menu", "utility", -# "splash", "dialog", "normal", "dropdown_menu", "popup_menu", +# +# 'WINDOW_TYPE' is one of the 15 window types defined in EWMH standard: +# "unknown", "desktop", "dock", "toolbar", "menu", "utility", +# "splash", "dialog", "normal", "dropdown_menu", "popup_menu", # "tooltip", "notification", "combo", and "dnd". -# +# # Following per window-type options are available: :: -# +# # fade, shadow::: # Controls window-type-specific shadow and fade settings. -# +# # opacity::: # Controls default opacity of the window type. -# +# # focus::: -# Controls whether the window of this type is to be always considered focused. +# Controls whether the window of this type is to be always considered focused. # (By default, all window types except "normal" and "dialog" has this on.) -# +# # full-shadow::: -# Controls whether shadow is drawn under the parts of the window that you -# normally won't be able to see. Useful when the window has parts of it +# Controls whether shadow is drawn under the parts of the window that you +# normally won't be able to see. Useful when the window has parts of it # transparent, and you want shadows in those areas. -# +# # redir-ignore::: -# Controls whether this type of windows should cause screen to become +# Controls whether this type of windows should cause screen to become # redirected again after been unredirected. If you have unredir-if-possible -# set, and doesn't want certain window to cause unnecessary screen redirection, +# set, and doesn't want certain window to cause unnecessary screen redirection, # you can set this to `true`. # wintypes: diff --git a/.zshrc b/.zshrc index 8fa7ee5..09763db 100644 --- a/.zshrc +++ b/.zshrc @@ -3,8 +3,8 @@ ZSH_THEME="agnoster" #plugins=(git) source $ZSH/oh-my-zsh.sh prompt_context(){} -source /usr/share/zsh/plugins/zsh-syntax-highlighting/zsh-syntax-highlighting.zsh -source /usr/share/zsh/plugins/zsh-autosuggestions/zsh-autosuggestions.zsh +source $ZSH_CUSTOM/plugins/zsh-syntax-highlighting/zsh-syntax-highlighting.zsh +source $ZSH_CUSTOM/plugins/zsh-autosuggestions/zsh-autosuggestions.zsh ##WSL2 #VETHER_IP=$(/bin/grep nameserver /etc/resolv.conf 2> /dev/null | /bin/tr -s ' ' | /bin/cut -d' ' -f2) diff --git a/scripts/init_script_ubuntu.sh b/scripts/init_script_ubuntu.sh new file mode 100644 index 0000000..2f5e38a --- /dev/null +++ b/scripts/init_script_ubuntu.sh @@ -0,0 +1,64 @@ +#!/bin/sh +sudo apt update && sudo apt upgrade +sudo apt install git +sudo apt install stow + +# git config +git config --global user.name "JaeYoo-Im" +git config --global user.email "cpu3792@gmail.com" +git config --global user.autocrlf input + +cd ~/.dotfiles +stow . + +# ZSH +sudo apt install zsh figet +sh -c "$(curl -fsSL https://raw.githubusercontent.com/ohmyzsh/ohmyzsh/master/tools/install.sh)" +git clone https://github.com/zsh-users/zsh-syntax-highlighting.git ~/.oh-my-zsh/custom/plugins/zsh-syntax-highlighting +git clone https://github.com/zsh-users/zsh-autosuggestions.git ~/.oh-my-zsh/custom/plugins/zsh-autosuggestions +# Neovim +sudo apt install neovim curl +sh -c 'curl -fLo "${XDG_DATA_HOME:-$HOME/.local/share}"/nvim/site/autoload/plug.vim --create-dirs \ + https://raw.githubusercontent.com/junegunn/vim-plug/master/plug.vim' +nvim +PlugInstall +q +q + +# Tmux +sudo apt install tmux +git clone https://github.com/tmux-plugins/tpm ~/.tmux/plugins/tpm +TMUX_PLUGIN_MANAGER_PATH=~/.config/tmux/plugins/tpm ~/.tmux/plugins/tpm/scripts/install_plugins.sh +TMUX_PLUGIN_MANAGER_PATH=~/.config/tmux/plugins/tpm ~/.tmux/plugins/tpm/bin/update_plugins all + +# Nerd fonts +mkdir -p ~/Projects +wget https://github.com/ryanoasis/nerd-fonts/releases/download/v2.3.3/FiraCode.zip ~/Projects +wget https://github.com/ryanoasis/nerd-fonts/releases/download/v2.3.3/Mononoki.zip ~/Projects +unzip ~/Projects/*.zip -d ~/.fonts +fc-cache -fv +################################################## +## I3-WM +################################################## +# I3-gaps +sudo add-apt-repository ppa:regolith-linux/release +sudo apt update +sudo apt install i3-gaps + +# picom +# prequisite +sudo apt install libxext-dev libxcb1-dev libxcb-damage0-dev libxcb-dpms0-dev libxcb-xfixes0-dev libxcb-shape0-dev libxcb-render-util0-dev libxcb-render0-dev libxcb-randr0-dev libxcb-composite0-dev libxcb-image0-dev libxcb-present-dev libxcb-glx0-dev libpixman-1-dev libdbus-1-dev libconfig-dev libgl-dev libegl-dev libpcre2-dev libevdev-dev uthash-dev libev-dev libx11-xcb-dev meson +git clone https://github.com/yshui/picom ~/Project/picom +cd ~/Project/picom +git submodule update --init --recursive +meson setup --buildtype=release . build +ninja -C build +ninja -C build install + +# polybar +apt install build-essential git cmake cmake-data pkg-config python3-sphinx python3-packaging libuv1-dev libcairo2-dev libxcb1-dev libxcb-util0-dev libxcb-randr0-dev libxcb-composite0-dev python3-xcbgen xcb-proto libxcb-image0-dev libxcb-ewmh-dev libxcb-icccm4-dev +sudo apt install libxcb-xkb-dev libxcb-xrm-dev libxcb-cursor-dev libasound2-dev libpulse-dev i3-wm libjsoncpp-dev libmpdclient-dev libcurl4-openssl-dev libnl-genl-3-dev + +# terminal +sudo snap install alacritty --classic + +# Emacs +sudo snap install emacs --classic +sudo snap install ripgrep --classic