Compare commits
29 commits
3d2f4e8724
...
603971e590
Author | SHA1 | Date | |
---|---|---|---|
603971e590 | |||
5d3e9d47ff | |||
e53f2fd23d | |||
e2d1a54594 | |||
f364afefd9 | |||
61bcca0e3d | |||
14f7c99c30 | |||
fc804cd443 | |||
dc8c3121ef | |||
627b5a6aa1 | |||
4a67198a86 | |||
ea753db9c4 | |||
568f5dfbc3 | |||
26bf0c8618 | |||
035dfa62a1 | |||
a019e2f168 | |||
c89472f897 | |||
a4d176a3b8 | |||
64168f40c9 | |||
6894adf02e | |||
8c2ed133c3 | |||
b96bf6dd06 | |||
5035b060f3 | |||
9017706dbd | |||
1d2f4c677c | |||
24e1850800 | |||
4303d86e7f | |||
954653ad31 | |||
2ecc6e684a |
28 changed files with 301 additions and 194 deletions
|
@ -13,34 +13,11 @@ in {
|
|||
];
|
||||
|
||||
colorScheme = inputs.nix-colors.colorSchemes.catppuccin-mocha;
|
||||
# wallpaper = outputs.wallpapers.cyberpunk-city-red;
|
||||
#
|
||||
# # ------ ----- ------
|
||||
# # | DP-3 | | DP-1| | DP-2 |
|
||||
# # ------ ----- ------
|
||||
# monitors = [
|
||||
# {
|
||||
# name = "DP-3";
|
||||
# width = 1920;
|
||||
# height = 1080;
|
||||
# x = 0;
|
||||
# workspace = "3";
|
||||
# enabled = false;
|
||||
# }
|
||||
# {
|
||||
# name = "DP-1";
|
||||
# width = 2560;
|
||||
# height = 1080;
|
||||
# x = 1920;
|
||||
# workspace = "1";
|
||||
# primary = true;
|
||||
# }
|
||||
# {
|
||||
# name = "DP-2";
|
||||
# width = 1920;
|
||||
# height = 1080;
|
||||
# x = 4480;
|
||||
# workspace = "2";
|
||||
# }
|
||||
# ];
|
||||
nixpkgs = {
|
||||
config = {
|
||||
permittedInsecurePackages = [
|
||||
"electron-25.9.0"
|
||||
];
|
||||
};
|
||||
};
|
||||
}
|
||||
|
|
|
@ -20,10 +20,14 @@
|
|||
httpie # Better curl
|
||||
diffsitter # Better diff
|
||||
jq # JSON pretty printer and manipulator
|
||||
timer # To help with my ADHD paralysis
|
||||
timer # Nice looking timer
|
||||
lazydocker # Docker TUI
|
||||
neofetch
|
||||
tldr # nice & short manual snippets
|
||||
neofetch # Unixporn stuff
|
||||
tldr # Nice & short manual snippets
|
||||
ntfy-sh # Push notifications to other devices
|
||||
ipinfo # IP geolocation
|
||||
|
||||
mpv # Video player
|
||||
|
||||
nvd # Differ
|
||||
nix-output-monitor
|
||||
|
|
|
@ -12,6 +12,7 @@
|
|||
hasLazydocker = hasPackage "lazydocker";
|
||||
hasNixYourShell = hasPackage "nix-your-shell";
|
||||
hasShellColor = config.programs.shellcolor.enable;
|
||||
hasWezterm = config.programs.wezterm.enable;
|
||||
shellcolor = "${pkgs.shellcolord}/bin/shellcolor";
|
||||
in {
|
||||
programs.fish = {
|
||||
|
@ -44,6 +45,14 @@ in {
|
|||
name = "autopair";
|
||||
src = pkgs.fishPlugins.autopair.src;
|
||||
}
|
||||
{
|
||||
name = "puffer";
|
||||
src = pkgs.fishPlugins.puffer.src;
|
||||
}
|
||||
{
|
||||
name = "z";
|
||||
src = pkgs.fishPlugins.z.src;
|
||||
}
|
||||
];
|
||||
shellAliases = {
|
||||
lzg = mkIf hasLazygit "lazygit";
|
||||
|
@ -53,6 +62,13 @@ in {
|
|||
slp = "systemctl suspend";
|
||||
sdn = "shutdown 0";
|
||||
nrs = "nh os switch ~/.setup";
|
||||
|
||||
ls = mkIf hasExa "eza";
|
||||
ll = mkIf hasExa "eza -l";
|
||||
la = mkIf hasExa "eza -la";
|
||||
exa = mkIf hasExa "eza";
|
||||
|
||||
imgcat = mkIf hasWezterm "wezterm imgcat";
|
||||
};
|
||||
shellAbbrs = rec {
|
||||
jqless = "jq -C | less -r";
|
||||
|
@ -65,8 +81,13 @@ in {
|
|||
nbn = "nix build nixpkgs#";
|
||||
nf = "nix flake";
|
||||
|
||||
ls = mkIf hasExa "eza";
|
||||
exa = mkIf hasExa "eza";
|
||||
glk = "gpg --list-keys --with-keygrip";
|
||||
gssh = "gpg --export-ssh-key";
|
||||
gnk = "gpg --full-generate-key --expert";
|
||||
gek = "gpg --edit-key --expert";
|
||||
|
||||
udmount = "udisksctl mount -b";
|
||||
udumount = "udisksctl unmount -b";
|
||||
};
|
||||
functions = {
|
||||
# Disable greeting
|
||||
|
|
|
@ -69,6 +69,7 @@ in {
|
|||
type = "lua";
|
||||
}
|
||||
|
||||
cmp-path
|
||||
nvim-cmp
|
||||
{
|
||||
plugin = nvim-cmp;
|
||||
|
@ -101,6 +102,7 @@ in {
|
|||
p.java
|
||||
p.rust
|
||||
p.cpp
|
||||
p.c
|
||||
p.css
|
||||
p.csv
|
||||
p.dockerfile
|
||||
|
@ -143,6 +145,7 @@ in {
|
|||
nui-nvim
|
||||
{
|
||||
plugin = neo-tree-nvim;
|
||||
config = builtins.readFile ./plugin/neo-tree.lua;
|
||||
type = "lua";
|
||||
}
|
||||
|
||||
|
@ -172,6 +175,23 @@ in {
|
|||
config = builtins.readFile ./plugin/none-ls.lua;
|
||||
type = "lua";
|
||||
}
|
||||
|
||||
{
|
||||
plugin = nvim-autopairs;
|
||||
config = "require('nvim-autopairs').setup({})";
|
||||
type = "lua";
|
||||
}
|
||||
|
||||
{
|
||||
plugin = barbar-nvim;
|
||||
config = builtins.readFile ./plugin/barbar.lua;
|
||||
}
|
||||
|
||||
{
|
||||
plugin = nvim-surround;
|
||||
config = "require('nvim-surround').setup({})";
|
||||
type = "lua";
|
||||
}
|
||||
];
|
||||
|
||||
extraLuaConfig = ''
|
||||
|
|
|
@ -16,3 +16,6 @@ vim.o.updatetime = 300
|
|||
vim.o.termguicolors = true
|
||||
|
||||
vim.o.mouse = "a"
|
||||
|
||||
-- disable empty line ~
|
||||
vim.o.fillchars = "eob: "
|
||||
|
|
0
home/features/coding/nvim/plugin/barbar.lua
Normal file
0
home/features/coding/nvim/plugin/barbar.lua
Normal file
|
@ -42,5 +42,6 @@ cmp.setup({
|
|||
sources = {
|
||||
{ name = "nvim_lsp" },
|
||||
{ name = "luasnip" },
|
||||
{ name = "path" },
|
||||
},
|
||||
})
|
||||
|
|
19
home/features/coding/nvim/plugin/neo-tree.lua
Normal file
19
home/features/coding/nvim/plugin/neo-tree.lua
Normal file
|
@ -0,0 +1,19 @@
|
|||
require("neo-tree").setup({
|
||||
close_if_last_window = true, -- Close Neo-tree if it is the last window left in the tab
|
||||
hide_root_node = true, -- Hide the root node
|
||||
filesystem = {
|
||||
filtered_items = {
|
||||
visible = false,
|
||||
hide_dotfiles = false,
|
||||
hide_gitignored = false,
|
||||
hide_by_name = {
|
||||
".git",
|
||||
".DS_Store",
|
||||
"thumbs.db",
|
||||
},
|
||||
show_hidden_count = false,
|
||||
},
|
||||
},
|
||||
})
|
||||
|
||||
vim.keymap.set("n", "<C-n>", "<Cmd>Neotree toggle<CR>")
|
|
@ -1,8 +1,18 @@
|
|||
{
|
||||
{pkgs, ...}: {
|
||||
imports = [
|
||||
./firefox.nix
|
||||
./alacritty.nix
|
||||
./wezterm.nix
|
||||
./font.nix
|
||||
./playerctl.nix
|
||||
./easyeffects.nix
|
||||
];
|
||||
|
||||
home.packages = with pkgs; [
|
||||
jellyfin-media-player # watch shows & movies from jellyfin with hardware decoding
|
||||
feishin-appimage # self-packaged feishin while electron build fails
|
||||
signal-desktop # secure messenger
|
||||
webcord-vencord # more "privacy friendly" discord client
|
||||
obsidian
|
||||
];
|
||||
}
|
||||
|
|
6
home/features/desktop/common/easyeffects.nix
Normal file
6
home/features/desktop/common/easyeffects.nix
Normal file
|
@ -0,0 +1,6 @@
|
|||
{
|
||||
# services.easyeffects.enable = true;
|
||||
xdg.configFile."easyeffects/output/Beyerdynamic_DT990_Oratory.json" = {
|
||||
source = ../../../../rsc/config/easyeffects/Beyerdynamic_DT990_Oratory.json;
|
||||
};
|
||||
}
|
|
@ -117,58 +117,67 @@
|
|||
|
||||
settings = {
|
||||
"dom.security.https_only_mode" = true;
|
||||
"browser.download.panel.shown" = true;
|
||||
"browser.download.panel.shown" = false;
|
||||
"browser.toolbars.bookmarks.visibility" = "always";
|
||||
"signon.rememberSignons" = false;
|
||||
"browser.formfill.enable" = false;
|
||||
"signon. prefillForms" = false;
|
||||
"browser.shell.checkDefaultBrowser" = false;
|
||||
"browser.newtabpage.activity-stream.showSponsoredTopSites" = false;
|
||||
# "browser.newtabpage.activity-stream.showSponsoredTopSites" = false;
|
||||
"browser.uiCustomization.state" = ''{"placements":{"widget-overflow-fixed-list":[],"unified-extensions-area":["addon_darkreader_org-browser-action","plasma-browser-integration_kde_org-browser-action","_506e023c-7f2b-40a3-8066-bc5deb40aebe_-browser-action","_testpilot-containers-browser-action","7esoorv3_alefvanoon_anonaddy_me-browser-action","_a6c4a591-f1b2-4f03-b3ff-767e5bedf4e7_-browser-action","gdpr_cavi_au_dk-browser-action","firefoxcolor_mozilla_com-browser-action","firefox-translations-addon_mozilla_org-browser-action"],"nav-bar":["back-button","forward-button","stop-reload-button","urlbar-container","downloads-button","unified-extensions-button","ublock0_raymondhill_net-browser-action","_446900e4-71c2-419f-a6a7-df9c091e268b_-browser-action"],"toolbar-menubar":["menubar-items"],"TabsToolbar":["tabbrowser-tabs","new-tab-button","alltabs-button"],"PersonalToolbar":["personal-bookmarks"]},"seen":["save-to-pocket-button","developer-button","_446900e4-71c2-419f-a6a7-df9c091e268b_-browser-action","addon_darkreader_org-browser-action","ublock0_raymondhill_net-browser-action","plasma-browser-integration_kde_org-browser-action","_506e023c-7f2b-40a3-8066-bc5deb40aebe_-browser-action","_testpilot-containers-browser-action","7esoorv3_alefvanoon_anonaddy_me-browser-action","_a6c4a591-f1b2-4f03-b3ff-767e5bedf4e7_-browser-action","gdpr_cavi_au_dk-browser-action","firefoxcolor_mozilla_com-browser-action","firefox-translations-addon_mozilla_org-browser-action"],"dirtyAreaCache":["nav-bar","PersonalToolbar","toolbar-menubar","TabsToolbar","unified-extensions-area"],"currentVersion":20,"newElementCount":4}'';
|
||||
};
|
||||
arkenfox = {
|
||||
enable = true;
|
||||
"0000".enable = true;
|
||||
"0100" = {
|
||||
enable = true;
|
||||
# Allow setting homepage
|
||||
"0102"."browser.startup.page".value = 1;
|
||||
};
|
||||
"0200" = {
|
||||
enable = true;
|
||||
};
|
||||
"0300".enable = true;
|
||||
# We keep safebrowsing
|
||||
"0400".enable = false;
|
||||
"0600" = {
|
||||
enable = true;
|
||||
"0610"."browser.send_pings".enable = true;
|
||||
};
|
||||
"0700" = {
|
||||
enable = true;
|
||||
# Disable DNS over HTTPS
|
||||
"0710"."network.trr.mode".value = 5;
|
||||
};
|
||||
# "0800" = {
|
||||
# enable = true;
|
||||
# # Keep using url bar as search bar
|
||||
# "0801"."keyword.enabled".value = true;
|
||||
# };
|
||||
"0900".enable = true;
|
||||
"1000" = {
|
||||
enable = true;
|
||||
# Enable disk cache for performance reasons
|
||||
"1001"."browser.cache.disk.enable".enable = true;
|
||||
"1001"."browser.cache.disk.enable".value = true;
|
||||
};
|
||||
"1200".enable = true;
|
||||
# I don't use container tabs
|
||||
"1700".enable = false;
|
||||
"2600" = {
|
||||
enable = true;
|
||||
# The recent documents feature is useful
|
||||
"2653".enable = false;
|
||||
};
|
||||
"2700".enable = true;
|
||||
"0000".enable = true;
|
||||
"0100" = {
|
||||
enable = true;
|
||||
# Allow setting homepage
|
||||
"0102"."browser.startup.page".value = 1;
|
||||
};
|
||||
"0200" = {
|
||||
enable = true;
|
||||
};
|
||||
"0300".enable = true;
|
||||
# We keep safebrowsing
|
||||
"0400".enable = false;
|
||||
"0600" = {
|
||||
enable = true;
|
||||
"0610"."browser.send_pings".enable = true;
|
||||
};
|
||||
"0700" = {
|
||||
enable = true;
|
||||
# Disable DNS over HTTPS
|
||||
"0710"."network.trr.mode".value = 5;
|
||||
};
|
||||
# "0800" = {
|
||||
# enable = true;
|
||||
# # Keep using url bar as search bar
|
||||
# "0801"."keyword.enabled".value = true;
|
||||
# };
|
||||
"0900".enable = true;
|
||||
"1000" = {
|
||||
enable = true;
|
||||
# Enable disk cache for performance reasons
|
||||
"1001"."browser.cache.disk.enable".enable = true;
|
||||
"1001"."browser.cache.disk.enable".value = true;
|
||||
};
|
||||
"1200".enable = true;
|
||||
# I don't use container tabs
|
||||
"1700".enable = false;
|
||||
"2600" = {
|
||||
enable = true;
|
||||
# useDownloadDir
|
||||
"2651".enable = false;
|
||||
# always_ask_before_handling_new_types
|
||||
"2654".enable = false;
|
||||
};
|
||||
"2700".enable = true;
|
||||
"2800" = {
|
||||
"2812".enable = true;
|
||||
};
|
||||
"5000" = {
|
||||
"5008".enable = true;
|
||||
};
|
||||
};
|
||||
};
|
||||
};
|
||||
|
|
53
home/features/desktop/common/wezterm.nix
Normal file
53
home/features/desktop/common/wezterm.nix
Normal file
|
@ -0,0 +1,53 @@
|
|||
{
|
||||
pkgs,
|
||||
config,
|
||||
...
|
||||
}: {
|
||||
programs.wezterm = {
|
||||
enable = true;
|
||||
colorSchemes = {
|
||||
"${config.colorscheme.slug}" = with config.colorScheme; {
|
||||
foreground = "#${colors.base05}";
|
||||
background = "#${colors.base00}";
|
||||
|
||||
ansi = [
|
||||
"#${colors.base00}"
|
||||
"#${colors.base08}"
|
||||
"#${colors.base0B}"
|
||||
"#${colors.base0A}"
|
||||
"#${colors.base0D}"
|
||||
"#${colors.base0E}"
|
||||
"#${colors.base0C}"
|
||||
"#${colors.base05}"
|
||||
];
|
||||
brights = [
|
||||
"#${colors.base03}"
|
||||
"#${colors.base08}"
|
||||
"#${colors.base0B}"
|
||||
"#${colors.base0A}"
|
||||
"#${colors.base0D}"
|
||||
"#${colors.base0E}"
|
||||
"#${colors.base0C}"
|
||||
"#${colors.base07}"
|
||||
];
|
||||
cursor_fg = "#${colors.base00}";
|
||||
cursor_bg = "#${colors.base05}";
|
||||
selection_fg = "#${colors.base00}";
|
||||
selection_bg = "#${colors.base05}";
|
||||
};
|
||||
};
|
||||
extraConfig = ''
|
||||
return {
|
||||
font = wezterm.font("${config.fontProfiles.monospace.family}"),
|
||||
font_size = 12.0,
|
||||
window_background_opacity = 0.83,
|
||||
color_scheme = "${config.colorscheme.slug}",
|
||||
hide_tab_bar_if_only_one_tab = true,
|
||||
window_close_confirmation = "NeverPrompt",
|
||||
set_environment_variables = {
|
||||
TERM = 'wezterm',
|
||||
},
|
||||
}
|
||||
'';
|
||||
};
|
||||
}
|
|
@ -1,5 +1,4 @@
|
|||
{pkgs, ...}: {
|
||||
imports = [
|
||||
# ./steam.nix
|
||||
];
|
||||
}
|
||||
|
|
|
@ -1,31 +0,0 @@
|
|||
{
|
||||
pkgs,
|
||||
lib,
|
||||
config,
|
||||
...
|
||||
}: let
|
||||
steam-with-pkgs = pkgs.steam.override {
|
||||
extraPkgs = pkgs:
|
||||
with pkgs; [
|
||||
xorg.libXcursor
|
||||
xorg.libXi
|
||||
xorg.libXinerama
|
||||
xorg.libXScrnSaver
|
||||
libpng
|
||||
libpulseaudio
|
||||
libvorbis
|
||||
stdenv.cc.cc.lib
|
||||
libkrb5
|
||||
keyutils
|
||||
gamescope
|
||||
mangohud
|
||||
];
|
||||
};
|
||||
in {
|
||||
home.packages = with pkgs; [
|
||||
steam-with-pkgs
|
||||
gamescope
|
||||
mangohud
|
||||
protontricks
|
||||
];
|
||||
}
|
|
@ -32,9 +32,12 @@
|
|||
../common/optional/kde-connect.nix
|
||||
../common/optional/gnome-keyring.nix
|
||||
../common/optional/adb.nix
|
||||
../common/optional/docker.nix
|
||||
../common/optional/gaming/gamemode.nix
|
||||
../common/optional/gaming/steam.nix
|
||||
../common/optional/gaming/vr.nix
|
||||
../common/optional/desktop/japanese.nix
|
||||
../common/optional/udisks.nix
|
||||
];
|
||||
|
||||
nixpkgs = {
|
||||
|
|
|
@ -18,17 +18,17 @@
|
|||
boot.extraModulePackages = [];
|
||||
|
||||
fileSystems."/" = {
|
||||
device = "/dev/disk/by-uuid/f9ba57fb-0b82-47e0-8189-7bbebc530e2b";
|
||||
device = "/dev/disk/by-uuid/e92a5e85-52ce-4627-be79-5c07a99e2d1b";
|
||||
fsType = "ext4";
|
||||
};
|
||||
|
||||
fileSystems."/boot" = {
|
||||
device = "/dev/disk/by-uuid/BCF2-51D4";
|
||||
device = "/dev/disk/by-uuid/348E-AC69";
|
||||
fsType = "vfat";
|
||||
};
|
||||
|
||||
swapDevices = [
|
||||
{device = "/dev/disk/by-uuid/4834fbc3-3feb-4b93-b11f-8b9bd054c5c1";}
|
||||
{device = "/dev/disk/by-uuid/ae322cab-c083-4644-80ff-9122498d54e8";}
|
||||
];
|
||||
|
||||
# Enables DHCP on each ethernet and wireless interface. In case of scripted networking
|
||||
|
|
|
@ -14,6 +14,7 @@
|
|||
./nix.nix
|
||||
./podman.nix
|
||||
./power-button.nix
|
||||
./documentation.nix
|
||||
]
|
||||
++ (builtins.attrValues outputs.nixosModules);
|
||||
|
||||
|
|
9
hosts/common/global/documentation.nix
Normal file
9
hosts/common/global/documentation.nix
Normal file
|
@ -0,0 +1,9 @@
|
|||
{pkgs, ...}: {
|
||||
environment.systemPackages = with pkgs; [man-pages man-pages-posix];
|
||||
documentation.dev.enable = true;
|
||||
documentation.man = {
|
||||
# In order to enable to mandoc man-db has to be disabled.
|
||||
man-db.enable = false;
|
||||
mandoc.enable = true;
|
||||
};
|
||||
}
|
12
hosts/common/optional/desktop/japanese.nix
Normal file
12
hosts/common/optional/desktop/japanese.nix
Normal file
|
@ -0,0 +1,12 @@
|
|||
{pkgs, ...}: {
|
||||
i18n.inputMethod = {
|
||||
enabled = "fcitx5";
|
||||
fcitx5.addons = with pkgs; [
|
||||
fcitx5-mozc
|
||||
fcitx5-gtk
|
||||
];
|
||||
};
|
||||
fonts.fonts = with pkgs; [
|
||||
noto-fonts-cjk-sans
|
||||
];
|
||||
}
|
15
hosts/common/optional/desktop/plasma.nix
Normal file
15
hosts/common/optional/desktop/plasma.nix
Normal file
|
@ -0,0 +1,15 @@
|
|||
{pkgs, ...}: {
|
||||
imports = [./global.nix ./x11.nix];
|
||||
|
||||
services.xserver.desktopManager.plasma5.enable = true;
|
||||
environment.plasma5.excludePackages = with pkgs.libsForQt5; [
|
||||
elisa
|
||||
gwenview
|
||||
okular
|
||||
oxygen
|
||||
khelpcenter
|
||||
konsole
|
||||
plasma-browser-integration
|
||||
print-manager
|
||||
];
|
||||
}
|
|
@ -1,21 +1,38 @@
|
|||
{
|
||||
pkgs,
|
||||
inputs,
|
||||
lib,
|
||||
...
|
||||
}: {
|
||||
imports = [
|
||||
inputs.xremap.nixosModules.default
|
||||
];
|
||||
|
||||
hardware.uinput.enable = true;
|
||||
users.groups.uinput.members = ["ghoscht"];
|
||||
users.groups.input.members = ["ghoscht"];
|
||||
|
||||
systemd.user.services.set-xhost = {
|
||||
description = "Run a one-shot command upon user login";
|
||||
path = [pkgs.xorg.xhost];
|
||||
wantedBy = ["default.target"];
|
||||
script = "xhost +SI:localuser:root";
|
||||
environment.DISPLAY = "DP-4"; # NOTE: This is hardcoded for this flake
|
||||
};
|
||||
|
||||
services.xremap = {
|
||||
withX11 = true;
|
||||
watch = true;
|
||||
# debug = true;
|
||||
userName = "ghoscht";
|
||||
serviceMode = "system";
|
||||
config = {
|
||||
keymap = [
|
||||
{
|
||||
name = "main remaps";
|
||||
remap = {
|
||||
super-e = {
|
||||
launch = ["firefox"];
|
||||
launch = ["${lib.getExe pkgs.pavucontrol}"];
|
||||
};
|
||||
};
|
||||
}
|
||||
|
|
|
@ -7,45 +7,7 @@
|
|||
programs = {
|
||||
steam = {
|
||||
enable = true;
|
||||
remotePlay.openFirewall = true;
|
||||
};
|
||||
|
||||
alvr = {
|
||||
enable = true;
|
||||
openFirewall = true;
|
||||
};
|
||||
};
|
||||
|
||||
hardware = {
|
||||
# Enable Steam hardware compatibility
|
||||
# steam-hardware.enable = true;
|
||||
|
||||
# Enable OpenGL
|
||||
opengl = {
|
||||
enable = true;
|
||||
driSupport = true;
|
||||
driSupport32Bit = true;
|
||||
extraPackages = with pkgs; [libva-utils];
|
||||
};
|
||||
};
|
||||
|
||||
# Allow Minecraft server ports
|
||||
networking.firewall.allowedTCPPorts = [25565];
|
||||
|
||||
# Fixes SteamLink/Remote play crashing, add packages necessary for VR
|
||||
environment.systemPackages = with pkgs;
|
||||
[libcanberra protonup-qt]
|
||||
++ [
|
||||
android-tools
|
||||
android-udev-rules
|
||||
sidequest
|
||||
BeatSaberModManager
|
||||
helvum
|
||||
];
|
||||
|
||||
# Fixes issue with SteamVR not starting
|
||||
system.activationScripts = {
|
||||
fixSteamVR = "${pkgs.libcap}/bin/setcap CAP_SYS_NICE+ep /home/ghoscht/.local/share/Steam/steamapps/common/SteamVR/bin/linux64/vrcompositor-launcher";
|
||||
};
|
||||
|
||||
xdg.mime = {
|
||||
|
|
|
@ -1,6 +1,6 @@
|
|||
{
|
||||
# programs.alvr = {
|
||||
# enable = true;
|
||||
# openFirewall = true;
|
||||
# };
|
||||
programs.alvr = {
|
||||
enable = true;
|
||||
openFirewall = true;
|
||||
};
|
||||
}
|
||||
|
|
|
@ -1,33 +0,0 @@
|
|||
{
|
||||
pkgs,
|
||||
config,
|
||||
...
|
||||
}: {
|
||||
console = {
|
||||
useXkbConfig = true;
|
||||
earlySetup = false;
|
||||
};
|
||||
|
||||
boot = {
|
||||
plymouth = {
|
||||
enable = true;
|
||||
theme = "spinner-monochrome";
|
||||
themePackages = [
|
||||
(pkgs.plymouth-spinner-monochrome.override {
|
||||
inherit (config.boot.plymouth) logo;
|
||||
})
|
||||
];
|
||||
};
|
||||
loader.timeout = 0;
|
||||
kernelParams = [
|
||||
"quiet"
|
||||
"loglevel=3"
|
||||
"systemd.show_status=auto"
|
||||
"udev.log_level=3"
|
||||
"rd.udev.log_level=3"
|
||||
"vt.global_cursor_default=0"
|
||||
];
|
||||
consoleLogLevel = 0;
|
||||
initrd.verbose = false;
|
||||
};
|
||||
}
|
3
hosts/common/optional/udisks.nix
Normal file
3
hosts/common/optional/udisks.nix
Normal file
|
@ -0,0 +1,3 @@
|
|||
{
|
||||
services.udisks2.enable = true;
|
||||
}
|
|
@ -4,10 +4,10 @@
|
|||
fetchurl,
|
||||
}: let
|
||||
pname = "alvr";
|
||||
version = "20.5.0";
|
||||
version = "v21.0.0-dev00+nightly.2023.12.31";
|
||||
src = fetchurl {
|
||||
url = "https://github.com/alvr-org/ALVR/releases/download/v${version}/ALVR-x86_64.AppImage";
|
||||
hash = "sha256-shA93fK/F+PNRv+DCTfvN+tm0w/sj/yPEYc5ms2vHRk=";
|
||||
url = "https://github.com/alvr-org/ALVR-nightly/releases/download/v21.0.0-dev00%2Bnightly.2023.12.31/ALVR-x86_64.AppImage";
|
||||
hash = "sha256-bRnuQGGSXd+QJGKzACgfwFOmKgk3u9JoIj6krB+HHC8=";
|
||||
};
|
||||
|
||||
appimageContents = appimageTools.extractType2 {inherit pname version src;};
|
||||
|
|
|
@ -3,4 +3,5 @@
|
|||
{pkgs, ...}: {
|
||||
# example = pkgs.callPackage ./example { };
|
||||
alvr = pkgs.callPackage ./alvr {};
|
||||
feishin-appimage = pkgs.callPackage ./feishin {};
|
||||
}
|
||||
|
|
26
pkgs/feishin/default.nix
Normal file
26
pkgs/feishin/default.nix
Normal file
|
@ -0,0 +1,26 @@
|
|||
{
|
||||
lib,
|
||||
appimageTools,
|
||||
fetchurl,
|
||||
}: let
|
||||
pname = "feishin";
|
||||
version = "0.5.3";
|
||||
src = fetchurl {
|
||||
url = "https://github.com/jeffvli/feishin/releases/download/v${version}/Feishin-${version}-linux-x86_64.AppImage";
|
||||
hash = "sha256-1JlsEBLVBaaae9NDGsGI5CyE+XcBunSt0CWQFpkL87w=";
|
||||
};
|
||||
|
||||
appimageContents = appimageTools.extractType2 {inherit pname version src;};
|
||||
in
|
||||
appimageTools.wrapType2 {
|
||||
inherit pname version src;
|
||||
|
||||
extraInstallCommands = ''
|
||||
mv $out/bin/${pname}-${version} $out/bin/${pname}
|
||||
|
||||
install -Dm444 ${appimageContents}/feishin.desktop -t $out/share/applications
|
||||
substituteInPlace $out/share/applications/feishin.desktop \
|
||||
--replace 'Exec=AppRun --no-sandbox %U' 'Exec=${pname}'
|
||||
cp -r ${appimageContents}/usr/share/icons $out/share
|
||||
'';
|
||||
}
|
Loading…
Reference in a new issue