Migrate to uutils, install retroarch, add ivabus-dev.nix package (testing on celerrime)

Signed-off-by: Ivan Bushchik <ivabus@ivabus.dev>
This commit is contained in:
Ivan Bushchik 2023-09-04 21:54:55 +03:00
parent 5b7db36b26
commit 12c3e83dbe
No known key found for this signature in database
GPG key ID: 2F16FBF3262E090C
7 changed files with 67 additions and 5 deletions

View file

@ -30,7 +30,7 @@
curl curl
usbutils usbutils
pciutils pciutils
coreutils-full (uutils-coreutils.override { prefix = ""; })
killall killall
git git
git-crypt git-crypt

View file

@ -9,4 +9,4 @@ rec {
roles roles
]; ];
}; };
} }

View file

@ -31,11 +31,32 @@ in {
networking.useDHCP = true; networking.useDHCP = true;
# Setup asahi-specific things. NOTE: you must copy firmware from ESP to /etc/nixos/asahi/firmware # Setup asahi-specific things. NOTE: you must copy firmware from ESP to /etc/nixos/asahi/firmware
hardware.asahi.peripheralFirmwareDirectory = ../../asahi/firmware; hardware.asahi.peripheralFirmwareDirectory = ../../asahi/firmware;
hardware.asahi.addEdgeKernelConfig = true; hardware.asahi.addEdgeKernelConfig = true;
hardware.asahi.useExperimentalGPUDriver = true; hardware.asahi.useExperimentalGPUDriver = true;
environment.systemPackages = with pkgs; [
(retroarch.override { cores = with libretro; [ np2kai ];})
];
services.nginx = {
enable = true;
# Use recommended settings
recommendedGzipSettings = true;
recommendedOptimisation = true;
recommendedProxySettings = true;
recommendedTlsSettings = true;
virtualHosts."ivabus.dev" = {
# i don't want to call package like this
root = pkgs.callPackage ../../pkgs/ivabus-dev.nix {};
extraConfig = ''
error_page 404 /404.html;
'';
};
};
system.stateVersion = "23.05"; system.stateVersion = "23.05";
} }

39
pkgs/ivabus-dev.nix Normal file
View file

@ -0,0 +1,39 @@
{ pkgs ? import <nixpkgs> {}, bundlerEnv, ... }:
let
version = "025b56be08da939ad016dcacfb833b8652d2848e";
repo = builtins.fetchGit {
url = "https://github.com/ivabus/website";
rev = version;
};
gems = bundlerEnv {
name = "ivabus-dev";
ruby = pkgs.ruby;
gemdir = "${repo}/.";
};
in pkgs.stdenv.mkDerivation {
inherit version;
name = "ivabus-dev";
src = repo;
buildInputs = with pkgs; [
gems
# nokogiri dependencies
zlib
libiconv
libxml2
libxslt
# jekyll wants a JS runtime
nodejs-slim
];
buildPhase = ''
bundle exec jekyll build
'';
installPhase = ''
mkdir -p $out
cp -r _site/* $out/
'';
}

View file

@ -21,6 +21,7 @@ in {
ninja ninja
picocom picocom
screen screen
hyperfine
]; ];
} }
# Architecture-specific packages and configuration # Architecture-specific packages and configuration

View file

@ -15,6 +15,7 @@ in {
wineWowPackages.staging wineWowPackages.staging
winetricks winetricks
wineWowPackages.waylandFull wineWowPackages.waylandFull
(retroarch.override { cores = with libretro; [ np2kai ];})
]; ];
} }
# Enable steam only on x86_64 (since I have hosts with ARM, but I don't think I will enable my.roles.gaming on ARM system soon) # Enable steam only on x86_64 (since I have hosts with ARM, but I don't think I will enable my.roles.gaming on ARM system soon)
@ -24,4 +25,4 @@ in {
networking.firewall.allowedUDPPorts = [ 27031 27036 ]; networking.firewall.allowedUDPPorts = [ 27031 27036 ];
}) })
]); ]);
} }

View file

@ -85,7 +85,7 @@ in {
roboto-mono roboto-mono
kochi-substitute kochi-substitute
]; ];
environment.sessionVariables.NIXOS_OZONE_WL = "1"; # Enable wayland for electron
home-manager.users.ivabus = { home-manager.users.ivabus = {
gtk = { gtk = {
enable = true; enable = true;