forked from UniverseBow/flake
init (cerulean template)
This commit is contained in:
commit
1b7b1e66f0
65 changed files with 5597 additions and 0 deletions
12
hosts/modules/apps/sober.nix
Normal file
12
hosts/modules/apps/sober.nix
Normal file
|
|
@ -0,0 +1,12 @@
|
|||
{...}: {
|
||||
services.flatpak = {
|
||||
enable = true;
|
||||
packages = [
|
||||
{
|
||||
# Linux Runtime for Roblox
|
||||
appId = "org.vinegarhq.Sober";
|
||||
origin = "flathub";
|
||||
}
|
||||
];
|
||||
};
|
||||
}
|
||||
50
hosts/modules/apps/steam.nix
Normal file
50
hosts/modules/apps/steam.nix
Normal file
|
|
@ -0,0 +1,50 @@
|
|||
{
|
||||
pkgs,
|
||||
upkgs,
|
||||
...
|
||||
}: {
|
||||
nixpkgs.overlays = [
|
||||
(self: super: {
|
||||
lutris = super.lutris.overrideAttrs (final: prev: {
|
||||
# WARNING: pkgs.mbedtls_2 is marked insecure!
|
||||
# Replace pkgs.mbedtls_2 (v2.28.10) with pkgs.mbedtls (v3.6.4)
|
||||
targetPkgs = pkgs: (
|
||||
(builtins.filter (p: p != pkgs.mbedtls_2) (prev.targetPkgs pkgs))
|
||||
++ [pkgs.mbedtls]
|
||||
);
|
||||
});
|
||||
})
|
||||
];
|
||||
|
||||
programs = {
|
||||
steam = {
|
||||
enable = true;
|
||||
package = upkgs.millennium-steam;
|
||||
gamescopeSession.enable = false; # .desktop entry for gamescope
|
||||
|
||||
remotePlay.openFirewall = true;
|
||||
dedicatedServer.openFirewall = true;
|
||||
localNetworkGameTransfers.openFirewall = true;
|
||||
|
||||
extraCompatPackages = with pkgs; [
|
||||
proton-ge-bin
|
||||
];
|
||||
};
|
||||
|
||||
gamemode.enable = true;
|
||||
};
|
||||
|
||||
environment.systemPackages = with pkgs; [
|
||||
steamcmd
|
||||
|
||||
mangohud
|
||||
protonup-qt
|
||||
|
||||
# XXX: DEBUG: disable lutris
|
||||
# XXX: NOTE: pkgs.lutris depends on pkgs.mbedtls_2 which is marked insecure!
|
||||
# XXX: NOTE: Use the provided overlay to patch pkgs.mbedtls_2 -> pkgs.mbedtls
|
||||
# lutris
|
||||
|
||||
bottles
|
||||
];
|
||||
}
|
||||
27
hosts/modules/bashistrans.nix
Normal file
27
hosts/modules/bashistrans.nix
Normal file
|
|
@ -0,0 +1,27 @@
|
|||
{pkgs, ...}: {
|
||||
# I want to use fish as my login shell but it always goes terrible
|
||||
# cause it isn't POSIX compliant, so instead Bash is my login and
|
||||
# will just exec fish (^-^)
|
||||
programs = {
|
||||
fish.enable = true;
|
||||
|
||||
bash = {
|
||||
blesh.enable = false; # ble.sh replacement for GNU readline
|
||||
completion.enable = true;
|
||||
|
||||
interactiveShellInit = ''
|
||||
# help bash transition into a beautiful fish!
|
||||
if [[ -z $BASH_IS_TRANS ]]
|
||||
then
|
||||
if [[ $(${pkgs.procps}/bin/ps --no-header --pid=$PPID --format=comm) != "fish" && -z ''${BASH_EXECUTION_STRING} ]]
|
||||
then
|
||||
shopt -q login_shell && LOGIN_OPTION='--login' || LOGIN_OPTION=""
|
||||
exec ${pkgs.fish}/bin/fish $LOGIN_OPTION
|
||||
fi
|
||||
fi
|
||||
# bash is trans now! (no more transitioning required)
|
||||
export BASH_IS_TRANS=true
|
||||
'';
|
||||
};
|
||||
};
|
||||
}
|
||||
14
hosts/modules/core/garbage-collector.nix
Executable file
14
hosts/modules/core/garbage-collector.nix
Executable file
|
|
@ -0,0 +1,14 @@
|
|||
{...}: {
|
||||
# Optimize storage and automatic scheduled GC running
|
||||
# If you want to run GC manually, use commands:
|
||||
# `nix-store --optimize` for finding and eliminating redundant copies of identical store paths
|
||||
# `nix-store --gc` for optimizing the nix store and removing unreferenced and obsolete store paths
|
||||
# `nix-collect-garbage -d` for deleting old generations of user profiles
|
||||
nix.settings.auto-optimise-store = true;
|
||||
nix.optimise.automatic = true;
|
||||
nix.gc = {
|
||||
automatic = true;
|
||||
dates = "weekly";
|
||||
options = "--delete-older-than 14d";
|
||||
};
|
||||
}
|
||||
33
hosts/modules/wm/hyprland.nix
Normal file
33
hosts/modules/wm/hyprland.nix
Normal file
|
|
@ -0,0 +1,33 @@
|
|||
{
|
||||
inputs,
|
||||
pkgs,
|
||||
lib,
|
||||
system,
|
||||
...
|
||||
}: let
|
||||
hyprpkgs = inputs.hyprland.inputs.nixpkgs.legacyPackages.${system};
|
||||
in {
|
||||
environment.defaultPackages = with pkgs; [
|
||||
hyprsunset
|
||||
];
|
||||
|
||||
xdg.portal = {
|
||||
enable = true;
|
||||
|
||||
wlr.enable = true;
|
||||
};
|
||||
|
||||
programs = {
|
||||
hyprland = {
|
||||
enable = true;
|
||||
package = inputs.hyprland.packages.${system}.hyprland;
|
||||
portalPackage = inputs.hyprland.packages.${system}.xdg-desktop-portal-hyprland;
|
||||
xwayland.enable = true;
|
||||
};
|
||||
};
|
||||
|
||||
hardware.graphics = {
|
||||
package = lib.mkForce hyprpkgs.mesa;
|
||||
package32 = lib.mkForce hyprpkgs.pkgsi686Linux.mesa;
|
||||
};
|
||||
}
|
||||
Loading…
Add table
Add a link
Reference in a new issue