Initial commit
This commit is contained in:
		
						commit
						cb6f195d10
					
				
							
								
								
									
										1
									
								
								config.nix
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										1
									
								
								config.nix
									
									
									
									
									
										Normal file
									
								
							@ -0,0 +1 @@
 | 
			
		||||
{ allowUnfree = true; }
 | 
			
		||||
							
								
								
									
										373
									
								
								dunstrc
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										373
									
								
								dunstrc
									
									
									
									
									
										Normal file
									
								
							@ -0,0 +1,373 @@
 | 
			
		||||
 [global]
 | 
			
		||||
    ### Display ###
 | 
			
		||||
 | 
			
		||||
    # Which monitor should the notifications be displayed on.
 | 
			
		||||
    monitor = 0
 | 
			
		||||
 | 
			
		||||
    # Display notification on focused monitor.  Possible modes are:
 | 
			
		||||
    #   mouse: follow mouse pointer
 | 
			
		||||
    #   keyboard: follow window with keyboard focus
 | 
			
		||||
    #   none: don't follow anything
 | 
			
		||||
    #
 | 
			
		||||
    # "keyboard" needs a window manager that exports the
 | 
			
		||||
    # _NET_ACTIVE_WINDOW property.
 | 
			
		||||
    # This should be the case for almost all modern window managers.
 | 
			
		||||
    #
 | 
			
		||||
    # If this option is set to mouse or keyboard, the monitor option
 | 
			
		||||
    # will be ignored.
 | 
			
		||||
    follow = mouse
 | 
			
		||||
 | 
			
		||||
    # The geometry of the window:
 | 
			
		||||
    #   [{width}]x{height}[+/-{x}+/-{y}]
 | 
			
		||||
    # The geometry of the message window.
 | 
			
		||||
    # The height is measured in number of notifications everything else
 | 
			
		||||
    # in pixels.  If the width is omitted but the height is given
 | 
			
		||||
    # ("-geometry x2"), the message window expands over the whole screen
 | 
			
		||||
    # (dmenu-like).  If width is 0, the window expands to the longest
 | 
			
		||||
    # message displayed.  A positive x is measured from the left, a
 | 
			
		||||
    # negative from the right side of the screen.  Y is measured from
 | 
			
		||||
    # the top and down respectively.
 | 
			
		||||
    # The width can be negative.  In this case the actual width is the
 | 
			
		||||
    # screen width minus the width defined in within the geometry option.
 | 
			
		||||
    geometry = "300x5-30+20"
 | 
			
		||||
 | 
			
		||||
    # Show how many messages are currently hidden (because of geometry).
 | 
			
		||||
    indicate_hidden = yes
 | 
			
		||||
 | 
			
		||||
    # Shrink window if it's smaller than the width.  Will be ignored if
 | 
			
		||||
    # width is 0.
 | 
			
		||||
    shrink = no
 | 
			
		||||
 | 
			
		||||
    # The transparency of the window.  Range: [0; 100].
 | 
			
		||||
    # This option will only work if a compositing window manager is
 | 
			
		||||
    # present (e.g. xcompmgr, compiz, etc.).
 | 
			
		||||
    transparency = 0
 | 
			
		||||
 | 
			
		||||
    # The height of the entire notification.  If the height is smaller
 | 
			
		||||
    # than the font height and padding combined, it will be raised
 | 
			
		||||
    # to the font height and padding.
 | 
			
		||||
    notification_height = 0
 | 
			
		||||
 | 
			
		||||
    # Draw a line of "separator_height" pixel height between two
 | 
			
		||||
    # notifications.
 | 
			
		||||
    # Set to 0 to disable.
 | 
			
		||||
    separator_height = 2
 | 
			
		||||
 | 
			
		||||
    # Padding between text and separator.
 | 
			
		||||
    padding = 8
 | 
			
		||||
 | 
			
		||||
    # Horizontal padding.
 | 
			
		||||
    horizontal_padding = 8
 | 
			
		||||
 | 
			
		||||
    # Defines width in pixels of frame around the notification window.
 | 
			
		||||
    # Set to 0 to disable.
 | 
			
		||||
    frame_width = 3
 | 
			
		||||
 | 
			
		||||
    # Defines color of the frame around the notification window.
 | 
			
		||||
    frame_color = "#aaaaaa"
 | 
			
		||||
 | 
			
		||||
    # Define a color for the separator.
 | 
			
		||||
    # possible values are:
 | 
			
		||||
    #  * auto: dunst tries to find a color fitting to the background;
 | 
			
		||||
    #  * foreground: use the same color as the foreground;
 | 
			
		||||
    #  * frame: use the same color as the frame;
 | 
			
		||||
    #  * anything else will be interpreted as a X color.
 | 
			
		||||
    separator_color = frame
 | 
			
		||||
 | 
			
		||||
    # Sort messages by urgency.
 | 
			
		||||
    sort = yes
 | 
			
		||||
 | 
			
		||||
    # Don't remove messages, if the user is idle (no mouse or keyboard input)
 | 
			
		||||
    # for longer than idle_threshold seconds.
 | 
			
		||||
    # Set to 0 to disable.
 | 
			
		||||
    # Transient notifications ignore this setting.
 | 
			
		||||
    idle_threshold = 120
 | 
			
		||||
 | 
			
		||||
    ### Text ###
 | 
			
		||||
 | 
			
		||||
    font = Monospace 8
 | 
			
		||||
 | 
			
		||||
    # The spacing between lines.  If the height is smaller than the
 | 
			
		||||
    # font height, it will get raised to the font height.
 | 
			
		||||
    line_height = 0
 | 
			
		||||
 | 
			
		||||
    # Possible values are:
 | 
			
		||||
    # full: Allow a small subset of html markup in notifications:
 | 
			
		||||
    #        <b>bold</b>
 | 
			
		||||
    #        <i>italic</i>
 | 
			
		||||
    #        <s>strikethrough</s>
 | 
			
		||||
    #        <u>underline</u>
 | 
			
		||||
    #
 | 
			
		||||
    #        For a complete reference see
 | 
			
		||||
    #        <http://developer.gnome.org/pango/stable/PangoMarkupFormat.html>.
 | 
			
		||||
    #
 | 
			
		||||
    # strip: This setting is provided for compatibility with some broken
 | 
			
		||||
    #        clients that send markup even though it's not enabled on the
 | 
			
		||||
    #        server. Dunst will try to strip the markup but the parsing is
 | 
			
		||||
    #        simplistic so using this option outside of matching rules for
 | 
			
		||||
    #        specific applications *IS GREATLY DISCOURAGED*.
 | 
			
		||||
    #
 | 
			
		||||
    # no:    Disable markup parsing, incoming notifications will be treated as
 | 
			
		||||
    #        plain text. Dunst will not advertise that it has the body-markup
 | 
			
		||||
    #        capability if this is set as a global setting.
 | 
			
		||||
    #
 | 
			
		||||
    # It's important to note that markup inside the format option will be parsed
 | 
			
		||||
    # regardless of what this is set to.
 | 
			
		||||
    markup = full
 | 
			
		||||
 | 
			
		||||
    # The format of the message.  Possible variables are:
 | 
			
		||||
    #   %a  appname
 | 
			
		||||
    #   %s  summary
 | 
			
		||||
    #   %b  body
 | 
			
		||||
    #   %i  iconname (including its path)
 | 
			
		||||
    #   %I  iconname (without its path)
 | 
			
		||||
    #   %p  progress value if set ([  0%] to [100%]) or nothing
 | 
			
		||||
    #   %n  progress value if set without any extra characters
 | 
			
		||||
    #   %%  Literal %
 | 
			
		||||
    # Markup is allowed
 | 
			
		||||
    format = "<b>%s</b>\n%b"
 | 
			
		||||
 | 
			
		||||
    # Alignment of message text.
 | 
			
		||||
    # Possible values are "left", "center" and "right".
 | 
			
		||||
    alignment = left
 | 
			
		||||
 | 
			
		||||
    # Show age of message if message is older than show_age_threshold
 | 
			
		||||
    # seconds.
 | 
			
		||||
    # Set to -1 to disable.
 | 
			
		||||
    show_age_threshold = 60
 | 
			
		||||
 | 
			
		||||
    # Split notifications into multiple lines if they don't fit into
 | 
			
		||||
    # geometry.
 | 
			
		||||
    word_wrap = yes
 | 
			
		||||
 | 
			
		||||
    # When word_wrap is set to no, specify where to make an ellipsis in long lines.
 | 
			
		||||
    # Possible values are "start", "middle" and "end".
 | 
			
		||||
    ellipsize = middle
 | 
			
		||||
 | 
			
		||||
    # Ignore newlines '\n' in notifications.
 | 
			
		||||
    ignore_newline = no
 | 
			
		||||
 | 
			
		||||
    # Stack together notifications with the same content
 | 
			
		||||
    stack_duplicates = true
 | 
			
		||||
 | 
			
		||||
    # Hide the count of stacked notifications with the same content
 | 
			
		||||
    hide_duplicate_count = false
 | 
			
		||||
 | 
			
		||||
    # Display indicators for URLs (U) and actions (A).
 | 
			
		||||
    show_indicators = yes
 | 
			
		||||
 | 
			
		||||
    ### Icons ###
 | 
			
		||||
 | 
			
		||||
    # Align icons left/right/off
 | 
			
		||||
    icon_position = off
 | 
			
		||||
 | 
			
		||||
    # Scale larger icons down to this size, set to 0 to disable
 | 
			
		||||
    max_icon_size = 32
 | 
			
		||||
 | 
			
		||||
    # Paths to default icons.
 | 
			
		||||
    icon_path = /usr/share/icons/gnome/16x16/status/:/usr/share/icons/gnome/16x16/devices/
 | 
			
		||||
 | 
			
		||||
    ### History ###
 | 
			
		||||
 | 
			
		||||
    # Should a notification popped up from history be sticky or timeout
 | 
			
		||||
    # as if it would normally do.
 | 
			
		||||
    sticky_history = yes
 | 
			
		||||
 | 
			
		||||
    # Maximum amount of notifications kept in history
 | 
			
		||||
    history_length = 20
 | 
			
		||||
 | 
			
		||||
    ### Misc/Advanced ###
 | 
			
		||||
 | 
			
		||||
    # dmenu path.
 | 
			
		||||
    dmenu = /usr/bin/dmenu -p dunst:
 | 
			
		||||
 | 
			
		||||
    # Browser for opening urls in context menu.
 | 
			
		||||
    browser = /usr/bin/firefox -new-tab
 | 
			
		||||
 | 
			
		||||
    # Always run rule-defined scripts, even if the notification is suppressed
 | 
			
		||||
    always_run_script = true
 | 
			
		||||
 | 
			
		||||
    # Define the title of the windows spawned by dunst
 | 
			
		||||
    title = Dunst
 | 
			
		||||
 | 
			
		||||
    # Define the class of the windows spawned by dunst
 | 
			
		||||
    class = Dunst
 | 
			
		||||
 | 
			
		||||
    # Print a notification on startup.
 | 
			
		||||
    # This is mainly for error detection, since dbus (re-)starts dunst
 | 
			
		||||
    # automatically after a crash.
 | 
			
		||||
    startup_notification = false
 | 
			
		||||
 | 
			
		||||
    # Manage dunst's desire for talking
 | 
			
		||||
    # Can be one of the following values:
 | 
			
		||||
    #  crit: Critical features. Dunst aborts
 | 
			
		||||
    #  warn: Only non-fatal warnings
 | 
			
		||||
    #  mesg: Important Messages
 | 
			
		||||
    #  info: all unimportant stuff
 | 
			
		||||
    # debug: all less than unimportant stuff
 | 
			
		||||
    verbosity = mesg
 | 
			
		||||
 | 
			
		||||
    # Define the corner radius of the notification window
 | 
			
		||||
    # in pixel size. If the radius is 0, you have no rounded
 | 
			
		||||
    # corners.
 | 
			
		||||
    # The radius will be automatically lowered if it exceeds half of the
 | 
			
		||||
    # notification height to avoid clipping text and/or icons.
 | 
			
		||||
    corner_radius = 0
 | 
			
		||||
 | 
			
		||||
    ### Legacy
 | 
			
		||||
 | 
			
		||||
    # Use the Xinerama extension instead of RandR for multi-monitor support.
 | 
			
		||||
    # This setting is provided for compatibility with older nVidia drivers that
 | 
			
		||||
    # do not support RandR and using it on systems that support RandR is highly
 | 
			
		||||
    # discouraged.
 | 
			
		||||
    #
 | 
			
		||||
    # By enabling this setting dunst will not be able to detect when a monitor
 | 
			
		||||
    # is connected or disconnected which might break follow mode if the screen
 | 
			
		||||
    # layout changes.
 | 
			
		||||
    force_xinerama = false
 | 
			
		||||
 | 
			
		||||
    ### mouse
 | 
			
		||||
 | 
			
		||||
    # Defines action of mouse event
 | 
			
		||||
    # Possible values are:
 | 
			
		||||
    # * none: Don't do anything.
 | 
			
		||||
    # * do_action: If the notification has exactly one action, or one is marked as default,
 | 
			
		||||
    #              invoke it. If there are multiple and no default, open the context menu.
 | 
			
		||||
    # * close_current: Close current notification.
 | 
			
		||||
    # * close_all: Close all notifications.
 | 
			
		||||
    mouse_left_click = close_current
 | 
			
		||||
    mouse_middle_click = do_action
 | 
			
		||||
    mouse_right_click = close_all
 | 
			
		||||
 | 
			
		||||
# Experimental features that may or may not work correctly. Do not expect them
 | 
			
		||||
# to have a consistent behaviour across releases.
 | 
			
		||||
[experimental]
 | 
			
		||||
    # Calculate the dpi to use on a per-monitor basis.
 | 
			
		||||
    # If this setting is enabled the Xft.dpi value will be ignored and instead
 | 
			
		||||
    # dunst will attempt to calculate an appropriate dpi value for each monitor
 | 
			
		||||
    # using the resolution and physical size. This might be useful in setups
 | 
			
		||||
    # where there are multiple screens with very different dpi values.
 | 
			
		||||
    per_monitor_dpi = false
 | 
			
		||||
 | 
			
		||||
[shortcuts]
 | 
			
		||||
 | 
			
		||||
    # Shortcuts are specified as [modifier+][modifier+]...key
 | 
			
		||||
    # Available modifiers are "ctrl", "mod1" (the alt-key), "mod2",
 | 
			
		||||
    # "mod3" and "mod4" (windows-key).
 | 
			
		||||
    # Xev might be helpful to find names for keys.
 | 
			
		||||
 | 
			
		||||
    # Close notification.
 | 
			
		||||
    close = mod4+space
 | 
			
		||||
 | 
			
		||||
    # Close all notifications.
 | 
			
		||||
    #close_all = ctrl+shift+space
 | 
			
		||||
 | 
			
		||||
    # Redisplay last message(s).
 | 
			
		||||
    # On the US keyboard layout "grave" is normally above TAB and left
 | 
			
		||||
    # of "1". Make sure this key actually exists on your keyboard layout,
 | 
			
		||||
    # e.g. check output of 'xmodmap -pke'
 | 
			
		||||
    history = mod4+bar
 | 
			
		||||
 | 
			
		||||
    # Context menu.
 | 
			
		||||
    #context = ctrl+shift+period
 | 
			
		||||
 | 
			
		||||
[urgency_low]
 | 
			
		||||
    # IMPORTANT: colors have to be defined in quotation marks.
 | 
			
		||||
    # Otherwise the "#" and following would be interpreted as a comment.
 | 
			
		||||
    background = "#222222"
 | 
			
		||||
    foreground = "#888888"
 | 
			
		||||
    timeout = 10
 | 
			
		||||
    # Icon for notifications with low urgency, uncomment to enable
 | 
			
		||||
    #icon = /path/to/icon
 | 
			
		||||
 | 
			
		||||
[urgency_normal]
 | 
			
		||||
    background = "#285577"
 | 
			
		||||
    foreground = "#ffffff"
 | 
			
		||||
    timeout = 10
 | 
			
		||||
    # Icon for notifications with normal urgency, uncomment to enable
 | 
			
		||||
    #icon = /path/to/icon
 | 
			
		||||
 | 
			
		||||
[urgency_critical]
 | 
			
		||||
    background = "#900000"
 | 
			
		||||
    foreground = "#ffffff"
 | 
			
		||||
    frame_color = "#ff0000"
 | 
			
		||||
    timeout = 0
 | 
			
		||||
    # Icon for notifications with critical urgency, uncomment to enable
 | 
			
		||||
    #icon = /path/to/icon
 | 
			
		||||
 | 
			
		||||
# Every section that isn't one of the above is interpreted as a rules to
 | 
			
		||||
# override settings for certain messages.
 | 
			
		||||
# Messages can be matched by "appname", "summary", "body", "icon", "category",
 | 
			
		||||
# "msg_urgency" and you can override the "timeout", "urgency", "foreground",
 | 
			
		||||
# "background", "frame_color", "new_icon" and "format", "fullscreen",
 | 
			
		||||
# "stack_tag".
 | 
			
		||||
# Shell-like globbing will get expanded.
 | 
			
		||||
#
 | 
			
		||||
# SCRIPTING
 | 
			
		||||
# You can specify a script that gets run when the rule matches by
 | 
			
		||||
# setting the "script" option.
 | 
			
		||||
# The script will be called as follows:
 | 
			
		||||
#   script appname summary body icon urgency
 | 
			
		||||
# where urgency can be "LOW", "NORMAL" or "CRITICAL".
 | 
			
		||||
#
 | 
			
		||||
# NOTE: if you don't want a notification to be displayed, set the format
 | 
			
		||||
# to "".
 | 
			
		||||
# NOTE: It might be helpful to run dunst -print in a terminal in order
 | 
			
		||||
# to find fitting options for rules.
 | 
			
		||||
 | 
			
		||||
# fullscreen values
 | 
			
		||||
# show: show the notifications, regardless if there is a fullscreen window opened
 | 
			
		||||
# delay: displays the new notification, if there is no fullscreen window active
 | 
			
		||||
#        If the notification is already drawn, it won't get undrawn.
 | 
			
		||||
# pushback: same as delay, but when switching into fullscreen, the notification will get
 | 
			
		||||
#           withdrawn from screen again and will get delayed like a new notification
 | 
			
		||||
 | 
			
		||||
#[fullscreen_delay_everything]
 | 
			
		||||
#    fullscreen = delay
 | 
			
		||||
#[fullscreen_show_critical]
 | 
			
		||||
#    msg_urgency = critical
 | 
			
		||||
#    fullscreen = show
 | 
			
		||||
 | 
			
		||||
#[espeak]
 | 
			
		||||
#    summary = "*"
 | 
			
		||||
#    script = dunst_espeak.sh
 | 
			
		||||
 | 
			
		||||
#[script-test]
 | 
			
		||||
#    summary = "*script*"
 | 
			
		||||
#    script = dunst_test.sh
 | 
			
		||||
 | 
			
		||||
#[ignore]
 | 
			
		||||
#    # This notification will not be displayed
 | 
			
		||||
#    summary = "foobar"
 | 
			
		||||
#    format = ""
 | 
			
		||||
 | 
			
		||||
#[history-ignore]
 | 
			
		||||
#    # This notification will not be saved in history
 | 
			
		||||
#    summary = "foobar"
 | 
			
		||||
#    history_ignore = yes
 | 
			
		||||
 | 
			
		||||
#[signed_on]
 | 
			
		||||
#    appname = Pidgin
 | 
			
		||||
#    summary = "*signed on*"
 | 
			
		||||
#    urgency = low
 | 
			
		||||
#
 | 
			
		||||
#[signed_off]
 | 
			
		||||
#    appname = Pidgin
 | 
			
		||||
#    summary = *signed off*
 | 
			
		||||
#    urgency = low
 | 
			
		||||
#
 | 
			
		||||
#[says]
 | 
			
		||||
#    appname = Pidgin
 | 
			
		||||
#    summary = *says*
 | 
			
		||||
#    urgency = critical
 | 
			
		||||
#
 | 
			
		||||
#[twitter]
 | 
			
		||||
#    appname = Pidgin
 | 
			
		||||
#    summary = *twitter.com*
 | 
			
		||||
#    urgency = normal
 | 
			
		||||
#
 | 
			
		||||
#[stack-volumes]
 | 
			
		||||
#    appname = "some_volume_notifiers"
 | 
			
		||||
#    set_stack_tag = "volume"
 | 
			
		||||
#
 | 
			
		||||
# vim: ft=cfg
 | 
			
		||||
							
								
								
									
										218
									
								
								home.nix
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										218
									
								
								home.nix
									
									
									
									
									
										Normal file
									
								
							@ -0,0 +1,218 @@
 | 
			
		||||
{ pkgs, config, lib, ...}:
 | 
			
		||||
 | 
			
		||||
{
 | 
			
		||||
 | 
			
		||||
  home.file.nixoverlays = {
 | 
			
		||||
    source = ./overlays;
 | 
			
		||||
    target = ".config/nixpkgs/overlays";
 | 
			
		||||
  };
 | 
			
		||||
 | 
			
		||||
  home.keyboard = {
 | 
			
		||||
    layout = "no-latin1";
 | 
			
		||||
  };
 | 
			
		||||
 | 
			
		||||
  xsession = {
 | 
			
		||||
    enable = true;
 | 
			
		||||
    windowManager = {
 | 
			
		||||
      i3.enable = true;
 | 
			
		||||
      i3.config = {
 | 
			
		||||
        modifier = "Mod4";
 | 
			
		||||
        keybindings = let modifier = "Mod4"; #xsession.windowManager.i3.config.modifier;
 | 
			
		||||
        in lib.mkOptionDefault {
 | 
			
		||||
          "${modifier}+0" = "workspace 10";
 | 
			
		||||
 | 
			
		||||
          "${modifier}+Tab" = "workspace next";
 | 
			
		||||
          "${modifier}+Shift+Tab" = "workspace prev";
 | 
			
		||||
 | 
			
		||||
          "XF86AudioRaiseVolume" = "exec --no-startup-id pactl set-sink-volume 0 +5%";
 | 
			
		||||
          "XF86AudioLowerVolume" = "exec --no-startup-id pactl set-sink-volume 0 -5%";
 | 
			
		||||
          "XF86AudioMute" = "exec --no-startup-id pactl set-sink-mute 0 toggle";
 | 
			
		||||
          "XF86AudioMicMute" = "exec --no-startup-id pactl set-source-mute 1 toggle";
 | 
			
		||||
 | 
			
		||||
          "XF86MonBrightnessUp" = "exec --no-startup-id xbacklight -inc 5";
 | 
			
		||||
          "XF86MonBrightnessDown" = "exec --no-startup-id xbacklight -dec 5";
 | 
			
		||||
 | 
			
		||||
          "XF86Display" = "exec arandr";
 | 
			
		||||
 | 
			
		||||
          "Print" = "exec scrot %Y-%m-%d_$wx$h_scrot.png -z -e 'mv $f /home/daniel/Pictures/screenshots/'";
 | 
			
		||||
          "${modifier}+Print" = "exec scrot %Y-%m-%d_$wx$h_scrot.png -z -e 'mv $f /home/daniel/Pictures/screenshots/'";
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
          "${modifier}+n" = "exec dolphin";
 | 
			
		||||
          "${modifier}+b" = "exec firefox";
 | 
			
		||||
          "${modifier}+t" = "exec gedit";
 | 
			
		||||
 | 
			
		||||
          "${modifier}+Return" = "exec i3-sensible-terminal -e zsh";
 | 
			
		||||
          "${modifier}+Shift+Return" = "exec i3-sensible-terminal -e ssh daniel@adam";
 | 
			
		||||
        };
 | 
			
		||||
      };
 | 
			
		||||
    };
 | 
			
		||||
  };
 | 
			
		||||
 
 | 
			
		||||
  services.compton = {
 | 
			
		||||
    enable = true;
 | 
			
		||||
    backend = "xrender";
 | 
			
		||||
  };
 | 
			
		||||
 | 
			
		||||
  programs.urxvt = {
 | 
			
		||||
    enable = true;
 | 
			
		||||
    fonts = [ "xft:DejaVu Sans Mono Nerd Font:size=12" ];
 | 
			
		||||
    scroll.bar.enable = false;
 | 
			
		||||
    shading = 20;
 | 
			
		||||
    extraConfig = {
 | 
			
		||||
      "foreground" = "#cccccc";
 | 
			
		||||
      "tintColor" = "white";
 | 
			
		||||
      "depth" = 32;
 | 
			
		||||
      "background" = "rgba:0000/0000/0200/c800";
 | 
			
		||||
#      "color0" = "#000000";
 | 
			
		||||
#      "color1" = "#9e1828";
 | 
			
		||||
#      "color2" = "#aece92";
 | 
			
		||||
#      "color3" = "#968a38";
 | 
			
		||||
#      "color4" = "#414171";
 | 
			
		||||
#      "color5" = "#963c59";
 | 
			
		||||
#      "color6" = "#418179";
 | 
			
		||||
#      "color7" = "#bebebe";
 | 
			
		||||
#      "color8" = "#666666";
 | 
			
		||||
#      "color9" = "#cf6171";
 | 
			
		||||
#      "color10" = "#c5f779";
 | 
			
		||||
#      "color11" = "#fff796";
 | 
			
		||||
#      "color12" = "#4186be";
 | 
			
		||||
#      "color13" = "#cf9ebe";
 | 
			
		||||
#      "color14" = "#71bebe";
 | 
			
		||||
#      "color15" = "#ffffff";
 | 
			
		||||
#      "buffered" = "false";
 | 
			
		||||
    };
 | 
			
		||||
  };
 | 
			
		||||
 | 
			
		||||
  programs.zsh = {
 | 
			
		||||
    enable = true;
 | 
			
		||||
    dotDir = ".config/zsh";
 | 
			
		||||
    enableAutosuggestions = true;
 | 
			
		||||
    enableCompletion = true;
 | 
			
		||||
    history = {
 | 
			
		||||
      expireDuplicatesFirst = true;
 | 
			
		||||
      ignoreDups = true;
 | 
			
		||||
    };
 | 
			
		||||
    oh-my-zsh = {
 | 
			
		||||
      enable = true;
 | 
			
		||||
      custom = "\$HOME/.config/nixpkgs/dotfiles/zsh/oh-my-zsh-custom";
 | 
			
		||||
      plugins = [
 | 
			
		||||
        "git"
 | 
			
		||||
        "sudo"
 | 
			
		||||
      ];
 | 
			
		||||
      theme = "powerlevel9k/powerlevel9k";
 | 
			
		||||
    };
 | 
			
		||||
    initExtra = ''
 | 
			
		||||
      POWERLEVEL9K_MODE='nerdfont-complete'
 | 
			
		||||
 | 
			
		||||
      POWERLEVEL9K_LEFT_PROMPT_ELEMENTS=(os_icon context dir newline vcs)
 | 
			
		||||
      POWERLEVEL9K_RIGHT_PROMPT_ELEMENTS=(status time)
 | 
			
		||||
 | 
			
		||||
      POWERLEVEL9K_OS_ICON_BACKGROUND="white"
 | 
			
		||||
      POWERLEVEL9K_OS_ICON_FOREGROUND="blue"
 | 
			
		||||
 | 
			
		||||
      POWERLEVEL9K_CONTEXT_DEFAULT_BACKGROUND="green"
 | 
			
		||||
      POWERLEVEL9K_CONTEXT_DEFAULT_FOREGROUND="white"
 | 
			
		||||
      POWERLEVEL9K_CONTEXT_SUDO_BACKGROUND="red"
 | 
			
		||||
      POWERLEVEL9K_CONTEXT_SUDO_FOREGROUND="white"
 | 
			
		||||
 | 
			
		||||
      POWERLEVEL9K_DIR_HOME_FOREGROUND="white"
 | 
			
		||||
      POWERLEVEL9K_DIR_HOME_SUBFOLDER_FOREGROUND="white"
 | 
			
		||||
      POWERLEVEL9K_DIR_DEFAULT_FOREGROUND="white"
 | 
			
		||||
      POWERLEVEL9K_SHORTEN_DIR_LENGTH=2
 | 
			
		||||
      POWERLEVEL9K_SHORTEN_DELIMITER=".."
 | 
			
		||||
 | 
			
		||||
      POWERLEVEL9K_MULTILINE_FIRST_PROMPT_PREFIX="↱"
 | 
			
		||||
      POWERLEVEL9K_MULTILINE_LAST_PROMPT_PREFIX="↳ "
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
      eval "$(ntfy shell-integration)"
 | 
			
		||||
      AUTO_NTFY_DONE_IGNORE="vim nano screen tmux"
 | 
			
		||||
    '';
 | 
			
		||||
  };
 | 
			
		||||
 | 
			
		||||
  home.file.ntfy = {
 | 
			
		||||
    source = ./secret/ntfy.yml;
 | 
			
		||||
    target = ".config/ntfy/ntfy.yml";
 | 
			
		||||
  };
 | 
			
		||||
 | 
			
		||||
  home.file.dunst = {
 | 
			
		||||
    source = ./dunstrc;
 | 
			
		||||
    target = ".config/dunst/dunstrc";
 | 
			
		||||
  };
 | 
			
		||||
 | 
			
		||||
  programs.direnv = {
 | 
			
		||||
    enable = true;
 | 
			
		||||
  };
 | 
			
		||||
 | 
			
		||||
  home.packages = [
 | 
			
		||||
    pkgs.gnome3.gnome-terminal
 | 
			
		||||
 | 
			
		||||
    pkgs.nerdfonts
 | 
			
		||||
    pkgs.dejavu_fonts
 | 
			
		||||
    pkgs.ntfy
 | 
			
		||||
    pkgs.dunst
 | 
			
		||||
 | 
			
		||||
    pkgs.scrot
 | 
			
		||||
    pkgs.xorg.xbacklight
 | 
			
		||||
 | 
			
		||||
    pkgs.steam
 | 
			
		||||
    pkgs.dolphinEmuMaster
 | 
			
		||||
    pkgs.dwarf-fortress-packages.dwarf-fortress-full
 | 
			
		||||
    pkgs.multimc
 | 
			
		||||
    pkgs.superTuxKart
 | 
			
		||||
#    pkgs.warsow
 | 
			
		||||
    
 | 
			
		||||
    pkgs.firefox
 | 
			
		||||
    pkgs.mpv
 | 
			
		||||
    pkgs.spotify
 | 
			
		||||
    
 | 
			
		||||
    pkgs.mumble
 | 
			
		||||
    
 | 
			
		||||
    pkgs.dolphin
 | 
			
		||||
    pkgs.gnome3.gedit
 | 
			
		||||
    pkgs.git
 | 
			
		||||
    
 | 
			
		||||
    pkgs.gimp
 | 
			
		||||
    pkgs.krita
 | 
			
		||||
    pkgs.inkscape
 | 
			
		||||
    pkgs.blender
 | 
			
		||||
    pkgs.audacity
 | 
			
		||||
    pkgs.mixxx
 | 
			
		||||
    pkgs.ardour
 | 
			
		||||
    pkgs.kdenlive
 | 
			
		||||
    
 | 
			
		||||
    pkgs.mkvtoolnix
 | 
			
		||||
    pkgs.ffmpeg
 | 
			
		||||
    
 | 
			
		||||
    pkgs.geogebra
 | 
			
		||||
  ];
 | 
			
		||||
 | 
			
		||||
  programs.obs-studio = {
 | 
			
		||||
    enable = true;
 | 
			
		||||
    plugins = [pkgs.obs-linuxbrowser];
 | 
			
		||||
  };
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
#  programs.htop = {
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
  services.kdeconnect = {
 | 
			
		||||
    enable = true;
 | 
			
		||||
    indicator = true;
 | 
			
		||||
  };
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
  services.gpg-agent = {
 | 
			
		||||
    enable = true;
 | 
			
		||||
    defaultCacheTtl = 1800;
 | 
			
		||||
    enableSshSupport = true;
 | 
			
		||||
  };
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
  programs.home-manager = {
 | 
			
		||||
    enable = true;
 | 
			
		||||
    path = "https://github.com/rycee/home-manager/archive/master.tar.gz";
 | 
			
		||||
  };
 | 
			
		||||
}
 | 
			
		||||
							
								
								
									
										7
									
								
								ntfy.yml.example
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										7
									
								
								ntfy.yml.example
									
									
									
									
									
										Normal file
									
								
							@ -0,0 +1,7 @@
 | 
			
		||||
---
 | 
			
		||||
backends:
 | 
			
		||||
    - matrix
 | 
			
		||||
matrix:
 | 
			
		||||
    url: "https://matrix.dodsorf.as"
 | 
			
		||||
    roomId: "***REMOVED***"
 | 
			
		||||
    token: "AAAbbBBCC"
 | 
			
		||||
							
								
								
									
										18
									
								
								overlays/ntfy.nix
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										18
									
								
								overlays/ntfy.nix
									
									
									
									
									
										Normal file
									
								
							@ -0,0 +1,18 @@
 | 
			
		||||
self: super:
 | 
			
		||||
{
 | 
			
		||||
  python = super.python.override {
 | 
			
		||||
    packageOverrides = python-self: python-super: {
 | 
			
		||||
      ntfy = python-super.ntfy.overrideAttrs (oldAttrs: {
 | 
			
		||||
        src = super.fetchgit {
 | 
			
		||||
          url = "https://github.com/dali99/ntfy";
 | 
			
		||||
          rev = "aa6273bd4c4a4e40a861060c4fc757fe121e7866";
 | 
			
		||||
          sha256 = "0zgkd1z4dimlzbs53x3797cq42x0r03nf4r1mjj2mvypnm5nijjp";
 | 
			
		||||
        };
 | 
			
		||||
        propagatedBuildInputs = with python-self; [ requests ruamel_yaml appdirs mock sleekxmpp emoji psutil dbus-python matrix-client ];
 | 
			
		||||
        preBuild = ''
 | 
			
		||||
          export HOME="$TMP"
 | 
			
		||||
        '';
 | 
			
		||||
      });
 | 
			
		||||
    };
 | 
			
		||||
  };
 | 
			
		||||
}
 | 
			
		||||
							
								
								
									
										7
									
								
								secret/ntfy.yml
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										7
									
								
								secret/ntfy.yml
									
									
									
									
									
										Normal file
									
								
							@ -0,0 +1,7 @@
 | 
			
		||||
---
 | 
			
		||||
backends:
 | 
			
		||||
    - matrix
 | 
			
		||||
matrix:
 | 
			
		||||
    url: "https://matrix.dodsorf.as"
 | 
			
		||||
    roomId: "***REMOVED***"
 | 
			
		||||
    token: "***REMOVED***"
 | 
			
		||||
							
								
								
									
										1
									
								
								zsh/oh-my-zsh-custom/themes/powerlevel9k
									
									
									
									
									
										Submodule
									
								
							
							
								
								
								
								
								
								
									
									
								
							
						
						
									
										1
									
								
								zsh/oh-my-zsh-custom/themes/powerlevel9k
									
									
									
									
									
										Submodule
									
								
							@ -0,0 +1 @@
 | 
			
		||||
Subproject commit c7d8ef07b76b9dc6022c656c761b6422ce919e94
 | 
			
		||||
		Loading…
	
	
			
			x
			
			
		
	
		Reference in New Issue
	
	Block a user