hyprland: initial dunst configuration and xdg portal

main
Christian Ott 2 years ago
parent 3f5be7bb74
commit 566976b50a
  1. 5
      configuration.nix
  2. 51
      flake.lock
  3. 5
      flake.nix
  4. 5
      home.nix
  5. 17
      hyperland/default.nix
  6. 100
      modules/dunst.nix

@ -93,6 +93,11 @@
tree
];
};
xdg.portal = {
enable = true;
extraPortals = [ pkgs.xdg-desktop-portal-hyprland ];
configPackages = [ pkgs.xdg-desktop-portal-hyprland ];
};
# List packages installed in system profile. To search, run:
# $ nix search wget

@ -1,5 +1,21 @@
{
"nodes": {
"base16-schemes": {
"flake": false,
"locked": {
"lastModified": 1696158499,
"narHash": "sha256-5yIHgDTPjoX/3oDEfLSQ0eJZdFL1SaCfb9d6M0RmOTM=",
"owner": "tinted-theming",
"repo": "base16-schemes",
"rev": "a9112eaae86d9dd8ee6bb9445b664fba2f94037a",
"type": "github"
},
"original": {
"owner": "tinted-theming",
"repo": "base16-schemes",
"type": "github"
}
},
"home-manager": {
"inputs": {
"nixpkgs": [
@ -21,6 +37,25 @@
"type": "github"
}
},
"nix-colors": {
"inputs": {
"base16-schemes": "base16-schemes",
"nixpkgs-lib": "nixpkgs-lib"
},
"locked": {
"lastModified": 1707825078,
"narHash": "sha256-hTfge2J2W+42SZ7VHXkf4kjU+qzFqPeC9k66jAUBMHk=",
"owner": "misterio77",
"repo": "nix-colors",
"rev": "b01f024090d2c4fc3152cd0cf12027a7b8453ba1",
"type": "github"
},
"original": {
"owner": "misterio77",
"repo": "nix-colors",
"type": "github"
}
},
"nixos-hardware": {
"locked": {
"lastModified": 1714465198,
@ -53,6 +88,21 @@
"type": "github"
}
},
"nixpkgs-lib": {
"locked": {
"lastModified": 1697935651,
"narHash": "sha256-qOfWjQ2JQSQL15KLh6D7xQhx0qgZlYZTYlcEiRuAMMw=",
"owner": "nix-community",
"repo": "nixpkgs.lib",
"rev": "e1e11fdbb01113d85c7f41cada9d2847660e3902",
"type": "github"
},
"original": {
"owner": "nix-community",
"repo": "nixpkgs.lib",
"type": "github"
}
},
"nixpkgs-unstable": {
"locked": {
"lastModified": 1713248628,
@ -72,6 +122,7 @@
"root": {
"inputs": {
"home-manager": "home-manager",
"nix-colors": "nix-colors",
"nixos-hardware": "nixos-hardware",
"nixpkgs": "nixpkgs",
"nixpkgs-unstable": "nixpkgs-unstable"

@ -5,13 +5,14 @@
nixpkgs.url = "github:nixos/nixpkgs/nixos-23.11";
nixpkgs-unstable.url = "github:nixos/nixpkgs/nixos-unstable";
nixos-hardware.url = "github:NixOS/nixos-hardware/master";
nix-colors.url = "github:misterio77/nix-colors";
home-manager = {
url = github:nix-community/home-manager/release-23.11;
inputs.nixpkgs.follows = "nixpkgs";
};
};
outputs = { self, nixpkgs, nixpkgs-unstable, nixos-hardware, home-manager, ... }@inputs:
outputs = { self, nixpkgs, nixpkgs-unstable, nixos-hardware, home-manager, nix-colors, ... }@inputs:
let
username = "chrigi";
lib = nixpkgs.lib;
@ -35,7 +36,7 @@
home-manager.useGlobalPkgs = true;
home-manager.useUserPackages = true;
home-manager.users.${username} = import ./home.nix;
home-manager.extraSpecialArgs = {inherit pkgs-unstable username; };
home-manager.extraSpecialArgs = {inherit pkgs-unstable username nix-colors; };
}
];
};

@ -1,9 +1,12 @@
{ config, pkgs, pkgs-unstable, username, ... }:
{ config, pkgs, pkgs-unstable, nix-colors, username, ... }:
{
imports = [
nix-colors.homeManagerModules.default
./modules/dunst.nix
./hyperland
];
colorScheme = nix-colors.colorSchemes.gruvbox-material-dark-hard;
# TODO please change the username & home directory to your own
home.username = "${username}";

@ -1,9 +1,26 @@
{ config, pkgs, pkgs-unstable, username, ... }:
{
home.packages = with pkgs; [
dunst
waybar
swww
rofi
# (pkgs.waybar.overrideAttrs (oldAttrs: {
# mesonFlags = oldAttrs.mesonFlags ++ [ "-Dexperimental=true" ];
# }))
];
wayland.windowManager.hyprland.enable = true;
wayland.windowManager.hyprland.settings = {
"$mod" = "SUPER";
exec-once = [
"dunst"
"waybar"
];
bind =
[
"$mod, F, exec, firefox"

@ -0,0 +1,100 @@
{
inputs,
config,
...
}:{
services.dunst = {
enable = true;
settings = {
global = {
background = "#${config.colorScheme.palette.base00}";
foreground = "#${config.colorScheme.palette.base06}";
monitor = 0;
follow = "mouse";
width = "(0,600)";
height = 350;
progress_bar = true;
progress_bar_height = 25;
progress_bar_frame_width = 3;
progress_bar_min_width = 460;
progress_bar_max_width = 480;
highlight = "#79dcaa";
indicate_hidden = true;
shrink = true;
transparency = 5;
separator_height = 5;
padding = 10;
horizontal_padding = 10;
frame_width = 0;
frame_color = "#${config.colorScheme.palette.base06}";
sort = true;
idle_threshold = 0;
font = "JetBrains Mono Nerd Font 13";
line_height = 2;
markup = "full";
origin = "top-right";
offset = "10x10";
format = "<b>%s</b>''\n%b";
alignment = "left";
show_age_threshold = 60;
word_wrap = true;
ignore_newline = true;
stack_duplicates = true;
hide_duplicate_count = false;
show_indicators = true;
icon_position = "left";
max_icon_size = 86;
min_icon_size = 32;
icon_theme = "Papirus";
enable_recursive_icon_lookup = true;
sticky_history = true;
history_length = 20;
browser = "firefox";
always_run_script = true;
title = "Dunst";
class = "Dunst";
corner_radius = 10;
icon_corner_radius= 5;
notification_limit = 5;
mouse_left_click = "close_current";
mouse_middle_click = "do_action";
mouse_right_click = "context_all";
ignore_dbusclose = true;
ellipsize = "middle";
};
urgency_normal = {
timeout = 6;
background = "#${config.colorScheme.palette.base00}";
frame_color = "#${config.colorScheme.palette.base07}";
foreground = "#${config.colorScheme.palette.base06}";
};
urgency_low = {
timeout = 2;
background = "#${config.colorScheme.palette.base00}";
frame_color = "#${config.colorScheme.palette.base07}";
foreground = "#${config.colorScheme.palette.base06}";
};
urgency_critical = {
timeout = 30;
background = "#${config.colorScheme.palette.base00}";
frame_color = "#${config.colorScheme.palette.base07}";
foreground = "#${config.colorScheme.palette.base06}";
};
fullscreen_show_critical = {
msg_urgency = "critical";
fullscreen = "pushback";
};
network = {
appname = "network";
new_icon = "network";
summary = "*";
format = "<span size='x-large' weight='bold'>%s</span>''\n<span font_desc='Cooper Hewitt,Iosevka Nerd Font 12'>%b</span>";
};
NetworkManager_Applet = {
appname = "NetworkManager Applet";
new_icon = "network-wireless";
};
};
};
}
Loading…
Cancel
Save

Powered by TurnKey Linux.