autologin, tmux, mpd, mpv

This commit is contained in:
tristan 2023-04-12 16:02:21 +01:00
parent 014f391d4b
commit ad478d1e9e
4 changed files with 77 additions and 25 deletions

6
flake.lock generated
View file

@ -82,11 +82,11 @@
},
"nixpkgs_2": {
"locked": {
"lastModified": 1680865339,
"narHash": "sha256-H6rmJ1CyJ3Q5ZyoLMYq/UEYMS9Q1orJjRpWiQ47HudE=",
"lastModified": 1681154110,
"narHash": "sha256-OQwWzlzAY1dCqgSsgZzsPIOGmX4pBGaoXOy0rSl4b5Y=",
"owner": "NixOS",
"repo": "nixpkgs",
"rev": "0040164e473509b4aee6aedb3b923e400d6df10b",
"rev": "115a96e2ac1e92937cd47c30e073e16dcaaf6247",
"type": "github"
},
"original": {

View file

@ -25,7 +25,6 @@
modules = [
hyprland.nixosModules.default
{programs.hyprland.enable = true;}
./system/configuration.nix
home-manager.nixosModules.home-manager {
home-manager.useGlobalPkgs = true;

View file

@ -2,6 +2,8 @@
# your system. Help is available in the configuration.nix(5) man page
# and in the NixOS manual (accessible by running nixos-help).
# https://search.nixos.org/options
{ config, pkgs, ... }:
{
imports = [
@ -10,6 +12,8 @@
nix.settings = {
experimental-features = [ "nix-command" "flakes" ];
# temporary unstable hyprland release
substituters = ["https://hyprland.cachix.org"];
trusted-public-keys = ["hyprland.cachix.org-1:a7pgxzMz7+chwVL3/pzj6jIBMioiJM7ypFP8PwtkuGc="];
};
@ -53,9 +57,16 @@
# Configure graphical stuff
services.xserver = {
enable = false;
enable = true;
layout = "gb";
libinput.enable = true;
# the only display manager that works?
displayManager.gdm.enable = true;
displayManager.autoLogin = {
enable = true;
user = "tristan";
};
};
qt5.enable = true;
@ -123,10 +134,32 @@
services.dbus.enable = true;
programs.light.enable = true;
programs.dconf.enable = true;
programs.hyprland = {
enable = true;
xwayland.enable = true;
};
programs.hyprland.enable = true;
programs.tmux.enable = true;
programs.tmux.extraConfig = ''
set escape-time 0
set -g default-terminal screen
bind -n M-s split-window -v
bind -n M-v split-window -h
bind -n M-Enter split-window -h
bind -n M-h select-pane -L
bind -n M-j select-pane -D
bind -n M-k select-pane -U
bind -n M-l select-pane -R
bind -n M-q kill-pane
bind -n M-< resize-pane -L 10
bind -n M-> resize-pane -R 10
bind -n M-- resize-pane -D 10
bind -n M-+ resize-pane -U 10
bind -n M-u copy-mode
bind -n M-p paste-buffer
set-window-option -g mode-keys vi
bind-key -T copy-mode-vi v send-keys -X begin-selection
bind-key -T copy-mode-vi y send-keys -X copy-selection
'';
# Some programs need SUID wrappers, can be configured further or are
# started in user sessions.

View file

@ -1,23 +1,13 @@
{ config, pkgs, user, ... }:
# https://nix-community.github.io/home-manager/options.html
{
# Home Manager needs a bit of information about you and the
# paths it should manage.
# don't change
home.stateVersion = "22.05";
programs.home-manager.enable = true;
home.username = "tristan";
home.homeDirectory = "/home/tristan";
# This value determines the Home Manager release that your
# configuration is compatible with. This helps avoid breakage
# when a new Home Manager release introduces backwards
# incompatible changes.
#
# You can update Home Manager without changing this value. See
# the Home Manager release notes for a list of state version
# changes in each release.
home.stateVersion = "22.05";
# Let Home Manager install and manage itself.
programs.home-manager.enable = true;
home.packages = with pkgs; [
gimp
];
@ -41,7 +31,7 @@
services.swayidle.enable = true;
services.swayidle.events = [
{ event = "before-sleep"; command = "${pkgs.swaylock}/bin/swaylock"; }
{ event = "lock"; command = "lock"; }
{ event = "lock"; command = "${pkgs.swaylock}/bin/swaylock"; }
];
programs.waybar.enable = true;
@ -60,6 +50,10 @@
format-icons.default = ["🔈" "🔉" "🔊"];
on-click = "pavucontrol";
};
mpd = {
server = "192.168.1.2";
on-click = "foot -e ncmpcpp";
};
};
};
@ -70,4 +64,30 @@
package = pkgs.materia-theme;
};
};
programs.ncmpcpp.enable = true;
programs.ncmpcpp.settings.mpd_host = "192.168.1.2";
# services.mpd-mpris.enable = true;
# services.mpd-mpris.mpd = {
# host = "192.168.1.2";
# };
programs.mpv.enable = true;
programs.mpv.bindings = {
l = "seek 5";
h = "seek -5";
e = "add chapter 1";
b = "add chapter -1";
">" = "multiply speed 1.1";
"<" = "multiply speed 1/1.1";
"." = "frame-step";
"," = "frame-back-step";
"ctrl+n" = "playlist-next";
"ctrl+p" = "playlist-prev";
k = "add volume 2";
j = "add volume -2";
m = "cycle mute";
c = "cycle sub-visibility";
};
}