nord: desktop apps
This commit is contained in:
parent
1abe47b0c2
commit
cf52f57012
|
@ -12,6 +12,11 @@
|
||||||
nixpkgs.config.libmfxSupport = true; # intel
|
nixpkgs.config.libmfxSupport = true; # intel
|
||||||
|
|
||||||
hardware.opengl.enable = true;
|
hardware.opengl.enable = true;
|
||||||
#hardware.opengl.extraPackages = [ pkgs.mesa.drivers ];
|
hardware.opengl.extraPackages = with pkgs; [
|
||||||
hardware.opengl.extraPackages = with pkgs; [ mesa.drivers vaapiIntel libvdpau-va-gl vaapiVdpau intel-ocl ];
|
mesa.drivers
|
||||||
|
vaapiIntel
|
||||||
|
libvdpau-va-gl
|
||||||
|
vaapiVdpau
|
||||||
|
intel-ocl
|
||||||
|
];
|
||||||
}
|
}
|
||||||
|
|
|
@ -13,6 +13,8 @@
|
||||||
|
|
||||||
boot.kernelPackages = pkgs.linuxPackages_latest; # amdgpu audio fix when at 4k@60fps
|
boot.kernelPackages = pkgs.linuxPackages_latest; # amdgpu audio fix when at 4k@60fps
|
||||||
|
|
||||||
|
services.flatpak.enable = true;
|
||||||
|
|
||||||
imports = [
|
imports = [
|
||||||
./hardware-configuration.nix
|
./hardware-configuration.nix
|
||||||
../../hardware/rocm.nix
|
../../hardware/rocm.nix
|
||||||
|
@ -26,13 +28,16 @@
|
||||||
#../../profiles/desktop/sound/pipewire.nix
|
#../../profiles/desktop/sound/pipewire.nix
|
||||||
#../../profiles/desktop/sound/alsa.nix
|
#../../profiles/desktop/sound/alsa.nix
|
||||||
|
|
||||||
|
../../profiles/desktop/steam.nix
|
||||||
|
|
||||||
../../profiles/nfs/reidun.nix
|
../../profiles/nfs/reidun.nix
|
||||||
|
|
||||||
#../../profiles/remote-builders #
|
../../profiles/remote-builders
|
||||||
#../../profiles/autossh-reverse-tunnels
|
#../../profiles/autossh-reverse-tunnels
|
||||||
#../../profiles/domeneshop-dyndns # handled by noximilien
|
#../../profiles/domeneshop-dyndns # handled by noximilien
|
||||||
];
|
];
|
||||||
|
|
||||||
|
networking.firewall.allowedTCPPorts = [ 57621 ]; # spotify
|
||||||
|
|
||||||
# run/build weird binaries
|
# run/build weird binaries
|
||||||
# TODO: somehow make sure this is in sync with remote-builders
|
# TODO: somehow make sure this is in sync with remote-builders
|
||||||
|
|
|
@ -2,18 +2,26 @@
|
||||||
{
|
{
|
||||||
services.xserver.enable = true;
|
services.xserver.enable = true;
|
||||||
services.xserver.displayManager.gdm.enable = true;
|
services.xserver.displayManager.gdm.enable = true;
|
||||||
|
services.xserver.displayManager.gdm.wayland = true;
|
||||||
services.xserver.desktopManager.gnome.enable = true;
|
services.xserver.desktopManager.gnome.enable = true;
|
||||||
#services.printing.enable = true; # CUPS
|
#services.printing.enable = true; # CUPS
|
||||||
|
programs.xwayland.enable = true;
|
||||||
|
xdg.portal.enable = true;
|
||||||
|
|
||||||
services.udev.packages = with pkgs; [ gnome.gnome-settings-daemon ];
|
services.udev.packages = with pkgs; [ gnome.gnome-settings-daemon ];
|
||||||
|
|
||||||
|
programs.gnome-terminal.enable = false;
|
||||||
|
|
||||||
|
services.tumbler.enable = true;
|
||||||
|
services.gnome.sushi.enable = true;
|
||||||
|
|
||||||
environment.systemPackages = with pkgs; [
|
environment.systemPackages = with pkgs; [
|
||||||
lxterminal
|
lxterminal
|
||||||
gnomeExtensions.appindicator
|
gnomeExtensions.appindicator
|
||||||
];
|
];
|
||||||
|
|
||||||
environment.gnome.excludePackages = (with pkgs; [
|
environment.gnome.excludePackages = (with pkgs; [
|
||||||
#gnome-photos
|
gnome-photos
|
||||||
gnome-tour
|
gnome-tour
|
||||||
]) ++ (with pkgs.gnome; [
|
]) ++ (with pkgs.gnome; [
|
||||||
#cheese # webcam tool
|
#cheese # webcam tool
|
||||||
|
|
|
@ -0,0 +1,29 @@
|
||||||
|
{ config, pkgs, lib, ... }:
|
||||||
|
{
|
||||||
|
programs.steam.enable = true;
|
||||||
|
programs.steam.remotePlay.openFirewall = true; # Open ports in the firewall for Steam Remote Play
|
||||||
|
programs.steam.dedicatedServer.openFirewall = true; # Open ports in the firewall for Source Dedicated Server
|
||||||
|
|
||||||
|
nixpkgs.config.allowUnfreePredicate = pkg: builtins.elem (lib.getName pkg) [
|
||||||
|
"steam"
|
||||||
|
"steam-original"
|
||||||
|
"steam-runtime"
|
||||||
|
];
|
||||||
|
|
||||||
|
#programs.java.enable = true;
|
||||||
|
nixpkgs.config.packageOverrides = pkgs: {
|
||||||
|
steam = pkgs.steam.override {
|
||||||
|
withPrimus = config.hardware.nvidia.modesetting.enable;
|
||||||
|
#withJava = config.programs.java.enable;
|
||||||
|
extraPkgs = pkgs: with pkgs; [
|
||||||
|
libgdiplus
|
||||||
|
];
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
environment.systemPackages = with pkgs; [
|
||||||
|
steam-tui
|
||||||
|
steamcmd
|
||||||
|
];
|
||||||
|
|
||||||
|
}
|
|
@ -1,10 +0,0 @@
|
||||||
{ config, pkgs, lib, ... }:
|
|
||||||
let
|
|
||||||
to-import = name: value: ./. + ("/" + name);
|
|
||||||
filter-users = key: val: val == "directory" && lib.pathExists "${./.}${key}/default.nix";
|
|
||||||
imports = lib.mapAttrsToList to-import (lib.filterAttrs filter-users (builtins.readDir ./.));
|
|
||||||
in
|
|
||||||
{
|
|
||||||
# TODO: does not work?
|
|
||||||
inherit imports;
|
|
||||||
}
|
|
|
@ -1,20 +1,19 @@
|
||||||
# https://nix-community.github.io/home-manager/options.html
|
# https://nix-community.github.io/home-manager/options.html
|
||||||
{ pkgs, config, ... }:
|
{ pkgs, config, ... }:
|
||||||
{
|
{
|
||||||
|
nixpkgs.config.allowUnfree = true;
|
||||||
|
home.stateVersion = "22.11";
|
||||||
|
|
||||||
imports = [
|
imports = [
|
||||||
./profiles/bat.nix
|
./profiles/bat.nix
|
||||||
./profiles/git.nix
|
./profiles/git.nix
|
||||||
./profiles/gtk.nix
|
./profiles/gtk.nix
|
||||||
./profiles/micro.nix
|
./profiles/micro.nix
|
||||||
./profiles/mpv.nix
|
|
||||||
./profiles/shell.nix
|
./profiles/shell.nix
|
||||||
./profiles/ssh.nix
|
./profiles/ssh.nix
|
||||||
./profiles/tmate.nix
|
./profiles/tmate.nix
|
||||||
];
|
];
|
||||||
|
|
||||||
nixpkgs.config.allowUnfree = true;
|
|
||||||
home.stateVersion = "22.11";
|
|
||||||
|
|
||||||
programs.bash.initExtra = ''
|
programs.bash.initExtra = ''
|
||||||
if [ "$COLORTERM" = "truecolor" ] || [ "$TERM" == "xterm" ]; then
|
if [ "$COLORTERM" = "truecolor" ] || [ "$TERM" == "xterm" ]; then
|
||||||
export TERM=xterm-256color
|
export TERM=xterm-256color
|
||||||
|
@ -81,16 +80,18 @@
|
||||||
comma
|
comma
|
||||||
|
|
||||||
(python3.withPackages (python-packages: with python-packages; [
|
(python3.withPackages (python-packages: with python-packages; [
|
||||||
requests
|
|
||||||
numpy
|
|
||||||
scipy
|
|
||||||
ptpython
|
|
||||||
poetry
|
|
||||||
rich
|
|
||||||
matplotlib
|
matplotlib
|
||||||
more-itertools
|
more-itertools
|
||||||
toml
|
numpy
|
||||||
|
#objexplore # TODO: package this, used in python interactive shell
|
||||||
|
poetry
|
||||||
|
ptpython
|
||||||
|
python-lsp-server
|
||||||
pyyaml
|
pyyaml
|
||||||
|
requests
|
||||||
|
rich
|
||||||
|
scipy
|
||||||
|
toml
|
||||||
virtualenv
|
virtualenv
|
||||||
]))
|
]))
|
||||||
];
|
];
|
||||||
|
@ -103,12 +104,9 @@
|
||||||
|
|
||||||
tmux = "systemd-run --scope --user tmux"; # detach from ssh scope, surviving logout
|
tmux = "systemd-run --scope --user tmux"; # detach from ssh scope, surviving logout
|
||||||
|
|
||||||
# TODO: wayland detection
|
# TODO: wayland
|
||||||
clip = "xclip -sel clip -t text/plain -rmlastnl -i";
|
clip = "xclip -sel clip -t text/plain -rmlastnl -i";
|
||||||
|
|
||||||
python = "ptpython"; # this has too many problems...
|
|
||||||
cpython = "python";
|
|
||||||
|
|
||||||
# TODO: ps1?
|
# TODO: ps1?
|
||||||
pwd-fqdn = ''echo "$(whoami)@$(hostname -f):$(printf "%q" "$(realpath .)/")"'';
|
pwd-fqdn = ''echo "$(whoami)@$(hostname -f):$(printf "%q" "$(realpath .)/")"'';
|
||||||
|
|
||||||
|
|
|
@ -16,7 +16,7 @@ import functools
|
||||||
import typing
|
import typing
|
||||||
from functools import reduce
|
from functools import reduce
|
||||||
from pathlib import Path
|
from pathlib import Path
|
||||||
from objexplore import explore
|
#from objexplore import explore # to be added in nixpkgs
|
||||||
|
|
||||||
p = pprint
|
p = pprint
|
||||||
|
|
||||||
|
|
|
@ -4,9 +4,12 @@
|
||||||
imports = [
|
imports = [
|
||||||
./default.nix
|
./default.nix
|
||||||
./profiles/gnome
|
./profiles/gnome
|
||||||
|
./profiles/mpv.nix
|
||||||
|
./profiles/desktop.nix
|
||||||
];
|
];
|
||||||
|
|
||||||
home.packages = with pkgs; [
|
home.packages = with pkgs; [
|
||||||
|
gnome.eog
|
||||||
];
|
];
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
|
@ -0,0 +1,35 @@
|
||||||
|
{ pkgs, lib, ... }:
|
||||||
|
{
|
||||||
|
home.packages = with pkgs; [
|
||||||
|
atom # TODO: config
|
||||||
|
discord
|
||||||
|
element-desktop#-wayland
|
||||||
|
f3d
|
||||||
|
firefox
|
||||||
|
gnome-connections
|
||||||
|
scrcpy
|
||||||
|
slack
|
||||||
|
#spotify
|
||||||
|
transmission-remote-gtk
|
||||||
|
];
|
||||||
|
|
||||||
|
# flatpak
|
||||||
|
|
||||||
|
home.activation.addFlathubRemote = lib.hm.dag.entryAfter ["writeBoundary"] ''
|
||||||
|
if command -v flatpak >/dev/null; then
|
||||||
|
$DRY_RUN_CMD \
|
||||||
|
flatpak remote-add --if-not-exists --user flathub https://dl.flathub.org/repo/flathub.flatpakrepo
|
||||||
|
fi
|
||||||
|
'';
|
||||||
|
# TODO: automatic flatpak updates
|
||||||
|
|
||||||
|
/** /
|
||||||
|
# fix spotify facebook login (i instead opt for flatpack, as it how fails with some libcurl stuff)
|
||||||
|
nixpkgs.overlays = [(final: prev: {
|
||||||
|
spotify = prev.spotify.override {
|
||||||
|
nss = prev.nss_latest;
|
||||||
|
};
|
||||||
|
})];
|
||||||
|
/**/
|
||||||
|
|
||||||
|
}
|
|
@ -6,7 +6,7 @@ with lib.hm.gvariant;
|
||||||
{
|
{
|
||||||
dconf.settings = {
|
dconf.settings = {
|
||||||
"org/gnome/shell/extensions/user-theme" = {
|
"org/gnome/shell/extensions/user-theme" = {
|
||||||
name = "vimix-dark-laptop-ruby";
|
name = "vimix-dark-doder";
|
||||||
};
|
};
|
||||||
|
|
||||||
"org/gnome/desktop/interface" = {
|
"org/gnome/desktop/interface" = {
|
||||||
|
|
|
@ -52,20 +52,22 @@
|
||||||
curl
|
curl
|
||||||
wget
|
wget
|
||||||
|
|
||||||
|
sshuttle
|
||||||
|
|
||||||
#tldr
|
#tldr
|
||||||
entr
|
entr
|
||||||
axel aria
|
axel aria
|
||||||
xe # xargs alternative
|
xe # xargs alternative
|
||||||
sd # sed alternative
|
sd # sed alternative
|
||||||
fd # find alternative
|
fd # find alternative
|
||||||
silver-searcher # `ag`
|
silver-searcher # 'ag'
|
||||||
ripgrep
|
ripgrep # 'rg'
|
||||||
gron
|
gron
|
||||||
jq
|
jq
|
||||||
yq
|
yq # includes xmlq and tomlq
|
||||||
fq
|
fq # binary jq
|
||||||
htmlq
|
htmlq
|
||||||
just
|
just # justfile
|
||||||
sysz
|
sysz
|
||||||
du-dust # du alternative
|
du-dust # du alternative
|
||||||
ncdu # Disk usage analyzer with an ncurses interface
|
ncdu # Disk usage analyzer with an ncurses interface
|
||||||
|
|
Loading…
Reference in New Issue