This commit is contained in:
foosinn 2022-02-13 00:31:58 +01:00
parent 4146b5aece
commit 2e10a00830
32 changed files with 2944 additions and 2163 deletions

View file

@ -5,24 +5,23 @@
{ config, pkgs, ... }:
{
imports =
[
./modules/colors.nix
imports = [
./modules/colors.nix
# Include the results of the hardware scan.
./hardware-configuration.nix
# Include the results of the hardware scan.
./hardware-configuration.nix
./roles/admin.nix
./roles/base.nix
./roles/desktop.nix
./roles/dev.nix
./roles/mail.nix
./roles/network.nix
./roles/nix.nix
./roles/vpn.nix
./roles/private.nix
./roles/game.nix
];
./roles/admin.nix
./roles/base.nix
./roles/desktop.nix
./roles/dev.nix
./roles/mail.nix
./roles/network.nix
./roles/nix.nix
./roles/vpn.nix
./roles/private.nix
./roles/game.nix
];
networking.useDHCP = false;
@ -32,9 +31,7 @@
services.openssh.enable = true;
networking.firewall.enable = true;
nixpkgs.config.permittedInsecurePackages = [
"openssl-1.0.2u"
];
nixpkgs.config.permittedInsecurePackages = [ "openssl-1.0.2u" ];
system.autoUpgrade.enable = true;
system.stateVersion = "20.03"; # We can stay here

View file

@ -3,32 +3,30 @@
# to /etc/nixos/configuration.nix instead.
{ config, lib, pkgs, modulesPath, ... }:
let
unstable = import <nixos-unstable> { config.allowUnfree = true; };
let unstable = import <nixos-unstable> { config.allowUnfree = true; };
in {
imports =
[ (modulesPath + "/installer/scan/not-detected.nix")
];
imports = [ (modulesPath + "/installer/scan/not-detected.nix") ];
boot.initrd.availableKernelModules = [ "nvme" "xhci_pci" "ahci" "usbhid" "usb_storage" "sd_mod" ];
boot.initrd.availableKernelModules =
[ "nvme" "xhci_pci" "ahci" "usbhid" "usb_storage" "sd_mod" ];
boot.initrd.kernelModules = [ "amdgpu" ];
boot.kernelModules = [ "kvm-amd" ];
boot.extraModulePackages = [ ];
fileSystems."/" =
{ device = "tank/root/nixos";
fsType = "zfs";
};
fileSystems."/" = {
device = "tank/root/nixos";
fsType = "zfs";
};
fileSystems."/home" =
{ device = "tank/root/home";
fsType = "zfs";
};
fileSystems."/home" = {
device = "tank/root/home";
fsType = "zfs";
};
fileSystems."/boot" =
{ device = "/dev/disk/by-uuid/587C-36F9";
fsType = "vfat";
};
fileSystems."/boot" = {
device = "/dev/disk/by-uuid/587C-36F9";
fsType = "vfat";
};
swapDevices = [ ];

View file

@ -3,43 +3,40 @@
# to /etc/nixos/configuration.nix instead.
{ config, lib, pkgs, modulesPath, ... }:
let
tuxedo-keyboard = pkgs.callPackage (import ../packages/tuxedo-keyboard.nix) {};
tuxedo-cc = pkgs.callPackage (import ../packages/tuxedo-control-center/default.nix) {};
let
tuxedo-keyboard =
pkgs.callPackage (import ../packages/tuxedo-keyboard.nix) { };
tuxedo-cc =
pkgs.callPackage (import ../packages/tuxedo-control-center/default.nix) { };
in {
imports =
[ (modulesPath + "/installer/scan/not-detected.nix")
];
imports = [ (modulesPath + "/installer/scan/not-detected.nix") ];
boot.initrd.availableKernelModules = [ "xhci_pci" "thunderbolt" "nvme" "usb_storage" "sd_mod" ];
boot.initrd.availableKernelModules =
[ "xhci_pci" "thunderbolt" "nvme" "usb_storage" "sd_mod" ];
boot.initrd.kernelModules = [ ];
boot.kernelModules = [ "kvm-intel" ];
boot.extraModulePackages = [
tuxedo-keyboard
];
environment.systemPackages = with pkgs; [
tuxedo-cc
];
boot.extraModulePackages = [ tuxedo-keyboard ];
environment.systemPackages = with pkgs; [ tuxedo-cc ];
fileSystems."/" =
{ device = "private/root/nixos";
fsType = "zfs";
};
fileSystems."/" = {
device = "private/root/nixos";
fsType = "zfs";
};
fileSystems."/home" =
{ device = "private/root/home";
fsType = "zfs";
};
fileSystems."/home" = {
device = "private/root/home";
fsType = "zfs";
};
fileSystems."/tmp" =
{ device = "private/root/tmp";
fsType = "zfs";
};
fileSystems."/tmp" = {
device = "private/root/tmp";
fsType = "zfs";
};
fileSystems."/boot" =
{ device = "/dev/disk/by-uuid/7E36-C774";
fsType = "vfat";
};
fileSystems."/boot" = {
device = "/dev/disk/by-uuid/7E36-C774";
fsType = "vfat";
};
swapDevices = [ ];

View file

@ -3,32 +3,37 @@
# to /etc/nixos/configuration.nix instead.
{ config, lib, pkgs, ... }:
let
unstable = import <nixos-unstable> { config.allowUnfree = true; };
let unstable = import <nixos-unstable> { config.allowUnfree = true; };
in {
imports =
[ <nixpkgs/nixos/modules/installer/scan/not-detected.nix>
];
imports = [ <nixpkgs/nixos/modules/installer/scan/not-detected.nix> ];
boot.initrd.availableKernelModules = [ "xhci_pci" "ehci_pci" "ahci" "usbhid" "usb_storage" "sd_mod" "rtsx_pci_sdmmc" ];
boot.initrd.availableKernelModules = [
"xhci_pci"
"ehci_pci"
"ahci"
"usbhid"
"usb_storage"
"sd_mod"
"rtsx_pci_sdmmc"
];
boot.initrd.kernelModules = [ ];
boot.kernelModules = [ "kvm-intel" ];
boot.extraModulePackages = [ ];
fileSystems."/" =
{ device = "cube/root/nixos";
fsType = "zfs";
};
fileSystems."/" = {
device = "cube/root/nixos";
fsType = "zfs";
};
fileSystems."/home" =
{ device = "cube/home";
fsType = "zfs";
};
fileSystems."/home" = {
device = "cube/home";
fsType = "zfs";
};
fileSystems."/boot" =
{ device = "/dev/disk/by-uuid/2AD7-4F18";
fsType = "vfat";
};
fileSystems."/boot" = {
device = "/dev/disk/by-uuid/2AD7-4F18";
fsType = "vfat";
};
swapDevices = [ ];

View file

@ -3,8 +3,7 @@
# to /etc/nixos/configuration.nix instead.
{ config, lib, pkgs, ... }:
let
unstable = import <nixos-unstable> { config.allowUnfree = true; };
let unstable = import <nixos-unstable> { config.allowUnfree = true; };
in {
imports = [
<nixpkgs/nixos/modules/installer/scan/not-detected.nix>
@ -19,14 +18,8 @@ in {
"w /sys/class/drm/card0/device/power_dpm_force_performance_level - - - - low"
];
boot.initrd.availableKernelModules = [
"nvme"
"xhci_pci"
"ahci"
"usb_storage"
"sd_mod"
"rtsx_pci_sdmmc"
];
boot.initrd.availableKernelModules =
[ "nvme" "xhci_pci" "ahci" "usb_storage" "sd_mod" "rtsx_pci_sdmmc" ];
boot.initrd.kernelModules = [ ];
boot.extraModulePackages = [ ];
boot.kernelModules = [ "kvm-amd" ];
@ -35,7 +28,6 @@ in {
boot.kernelPackages = unstable.linuxPackages_latest;
#boot.kernelPackages = unstable.linux_testing;
boot.loader.systemd-boot.enable = true;
boot.loader.efi.canTouchEfiVariables = true;
@ -45,20 +37,20 @@ in {
networking.interfaces.wlo1.useDHCP = true;
networking.resolvconf.useLocalResolver = true;
fileSystems."/" =
{ device = "tank/root/nixos";
fsType = "zfs";
};
fileSystems."/" = {
device = "tank/root/nixos";
fsType = "zfs";
};
fileSystems."/home" =
{ device = "tank/home";
fsType = "zfs";
};
fileSystems."/home" = {
device = "tank/home";
fsType = "zfs";
};
fileSystems."/boot" =
{ device = "/dev/disk/by-uuid/B048-FBC8";
fsType = "vfat";
};
fileSystems."/boot" = {
device = "/dev/disk/by-uuid/B048-FBC8";
fsType = "vfat";
};
swapDevices = [ ];

View file

@ -3,15 +3,13 @@
# to /etc/nixos/configuration.nix instead.
{ config, lib, pkgs, ... }:
let
unstable = import <nixos-unstable> { config.allowUnfree = true; };
let unstable = import <nixos-unstable> { config.allowUnfree = true; };
in {
imports =
[ <nixpkgs/nixos/modules/installer/scan/not-detected.nix>
];
imports = [ <nixpkgs/nixos/modules/installer/scan/not-detected.nix> ];
boot.extraModulePackages = [ ];
boot.initrd.availableKernelModules = [ "xhci_pci" "ahci" "nvme" "usb_storage" "sd_mod" "rtsx_pci_sdmmc" ];
boot.initrd.availableKernelModules =
[ "xhci_pci" "ahci" "nvme" "usb_storage" "sd_mod" "rtsx_pci_sdmmc" ];
boot.initrd.kernelModules = [ ];
boot.kernelModules = [ "kvm-intel" ];
boot.kernelParams = [ "intel_pstate=active" ];
@ -26,26 +24,26 @@ in {
enable = true;
extraPackages = with pkgs; [
intel-media-driver # LIBVA_DRIVER_NAME=iHD
vaapiIntel # LIBVA_DRIVER_NAME=i965
vaapiIntel # LIBVA_DRIVER_NAME=i965
vaapiVdpau
libvdpau-va-gl
];
};
fileSystems."/" =
{ device = "tank/work/nixos";
fsType = "zfs";
};
fileSystems."/" = {
device = "tank/work/nixos";
fsType = "zfs";
};
fileSystems."/home" =
{ device = "tank/work/home";
fsType = "zfs";
};
fileSystems."/home" = {
device = "tank/work/home";
fsType = "zfs";
};
fileSystems."/boot" =
{ device = "/dev/disk/by-uuid/DC7B-5E2D";
fsType = "vfat";
};
fileSystems."/boot" = {
device = "/dev/disk/by-uuid/DC7B-5E2D";
fsType = "vfat";
};
swapDevices = [ ];

View file

@ -1,16 +1,15 @@
with import <nixpkgs> {};
with import <nixpkgs> { };
stdenv.mkDerivation rec {
name = "cert-manager";
version = "v1.7.1";
src = fetchurl {
url = "https://github.com/cert-manager/cert-manager/releases/download/${version}/cmctl-linux-amd64.tar.gz";
url =
"https://github.com/cert-manager/cert-manager/releases/download/${version}/cmctl-linux-amd64.tar.gz";
sha256 = "1z5n2rcfhrl1vm5vxqa1759m3prlv08mmg96n16p4gwkdxycznx4";
};
nativeBuildInputs = [
autoPatchelfHook
];
nativeBuildInputs = [ autoPatchelfHook ];
unpackPhase = ''
tar xvpzf $src

View file

@ -1,22 +1,14 @@
{ stdenv
, buildFHSUserEnv
, fetchurl
, lib
, pkgs
, writeScript
}:
{ stdenv, buildFHSUserEnv, fetchurl, lib, pkgs, writeScript }:
let
version = "4.3.3";
release = "4469";
cloudstation = stdenv.mkDerivation rec {
name = "cloudstation-unpack";
buildInputs = [
pkgs.dpkg
pkgs.qt5.qtbase
];
buildInputs = [ pkgs.dpkg pkgs.qt5.qtbase ];
src = fetchurl {
url = "https://global.download.synology.com/download/Tools/CloudStationDrive/${version}-${release}/Ubuntu/Installer/x86_64/synology-cloud-station-drive-${release}.x86_64.deb";
url =
"https://global.download.synology.com/download/Tools/CloudStationDrive/${version}-${release}/Ubuntu/Installer/x86_64/synology-cloud-station-drive-${release}.x86_64.deb";
sha256 = "0v84yb70knmmjzp7lyn6jgy5bnfsfd47wmqh29phybqg4zk3d47j";
};
unpackPhase = ''
@ -35,31 +27,32 @@ let
dontWrapQtApps = true;
};
in buildFHSUserEnv {
name = "cloudstation";
targetPkgs = pkgs: with pkgs; with xorg; [
cloudstation
curl
dbus_libs
fontconfig
freetype
glib
libICE
libSM
libX11
libxcb
openssl
qt5.qtbase
qt5.qttools
qt5.qtwayland
qt5.qtx11extras
sqlite
stdenv.cc.cc.lib
xkeyboard_config
zlib
];
targetPkgs = pkgs:
with pkgs;
with xorg; [
cloudstation
curl
dbus_libs
fontconfig
freetype
glib
libICE
libSM
libX11
libxcb
openssl
qt5.qtbase
qt5.qttools
qt5.qtwayland
qt5.qtx11extras
sqlite
stdenv.cc.cc.lib
xkeyboard_config
zlib
];
runScript = writeScript "cloudstation" ''
#!/usr/bin/env bash

View file

@ -1,4 +1,4 @@
with import <nixpkgs> {};
with import <nixpkgs> { };
stdenv.mkDerivation rec {
name = "helm2";
@ -8,9 +8,7 @@ stdenv.mkDerivation rec {
sha256 = "38614a665859c0f01c9c1d84fa9a5027364f936814d1e47839b05327e400bf55";
};
nativeBuildInputs = [
autoPatchelfHook
];
nativeBuildInputs = [ autoPatchelfHook ];
unpackPhase = ''
tar xvpzf $src

View file

@ -5,7 +5,7 @@ python38Packages.buildPythonApplication rec {
version = "3.7.0-alpha";
src = fetchFromGitHub {
owner = "HenriWahl";
owner = "HenriWahl";
repo = "Nagstamon";
rev = "dba37dc034589dfb312c6e8a7cc768bcd1952db9";
sha256 = "1l095halb55qinaik51p3lxiln1s034dr28k7ra6xzrrv9l1x1xw";

View file

@ -1,4 +1,4 @@
with import <nixos-unstable> {};
with import <nixos-unstable> { };
neovim.override {
vimAlias = true;
@ -72,7 +72,7 @@ neovim.override {
noremap <leader>ff :FZF<cr>
noremap <leader>fn :NnnPicker %:p:h<cr>
noremap <leader>fc :saveas %:p:h
let g:which_key_map.y = { 'name': '+yank' }
noremap <leader>yp :read !wl-paste<cr>
noremap <leader>yy :read !wl-paste<cr>
@ -84,7 +84,7 @@ neovim.override {
noremap <leader>bd :bd<cr>
noremap <leader>bn :bn<cr>
noremap <leader>bp :bp<cr>
let g:which_key_map.m = { 'name': '+lang' }
noremap <leader>md :call LanguageClient_textDocument_codeAction()<cr>
noremap <leader>mc :call LanguageClient#textDocument_references()<cr>

View file

@ -5,20 +5,14 @@ rustPlatform.buildRustPackage rec {
version = "0.3.0";
src = fetchTarball {
url = https://ghom.niij.org/eaon/notcoal/archive/v0.3.0.tar.gz;
url = "https://ghom.niij.org/eaon/notcoal/archive/v0.3.0.tar.gz";
sha256 = "19gaba6asid5vplcy9q0ama40dvwwxglc40ks5240lydrvgfrimq";
};
cargoPatches = [
./Cargo.lock.patch
];
cargoPatches = [ ./Cargo.lock.patch ];
cargoSha256 = "0kgjxq2319l2gh1xc0f3ir1pa6z7p62z3fccswwxrz7gbn7nc07c";
cargoBuildFlags = ["--features=standalone"];
buildInputs = [
bash
notmuch
];
cargoBuildFlags = [ "--features=standalone" ];
buildInputs = [ bash notmuch ];
meta = with lib; {
description = "An email tagger for notmuch";

View file

@ -1,16 +1,15 @@
with import <nixpkgs> {};
with import <nixpkgs> { };
stdenv.mkDerivation {
name = "oc311";
version = "3.11";
src = fetchurl {
url = "https://github.com/openshift/origin/releases/download/v3.11.0/openshift-origin-client-tools-v3.11.0-0cbc58b-linux-64bit.tar.gz";
url =
"https://github.com/openshift/origin/releases/download/v3.11.0/openshift-origin-client-tools-v3.11.0-0cbc58b-linux-64bit.tar.gz";
sha256 = "4b0f07428ba854174c58d2e38287e5402964c9a9355f6c359d1242efd0990da3";
};
nativeBuildInputs = [
autoPatchelfHook
];
nativeBuildInputs = [ autoPatchelfHook ];
unpackPhase = ''
tar xvpzf $src --strip-components=1

View file

@ -1,16 +1,15 @@
with import <nixpkgs> {};
with import <nixpkgs> { };
stdenv.mkDerivation rec {
name = "oc46";
version = "4.6";
src = fetchurl {
url = "https://github.com/openshift/okd/releases/download/4.6.0-0.okd-2021-02-14-205305/openshift-client-linux-4.6.0-0.okd-2021-02-14-205305.tar.gz";
url =
"https://github.com/openshift/okd/releases/download/4.6.0-0.okd-2021-02-14-205305/openshift-client-linux-4.6.0-0.okd-2021-02-14-205305.tar.gz";
sha256 = "741c456f1d5227eb40722b0dac328c78dceba5103fd306cf7fe57a9474eb3d35";
};
nativeBuildInputs = [
autoPatchelfHook
];
nativeBuildInputs = [ autoPatchelfHook ];
unpackPhase = ''
tar xvpzf $src

View file

@ -1,17 +1,16 @@
with import <nixpkgs> {};
with import <nixpkgs> { };
stdenv.mkDerivation rec {
name = "openshift-install-4.5";
version = "4.5.0-0";
release = "2020-10-03-012432";
src = fetchurl {
url = "https://github.com/openshift/okd/releases/download/${version}.okd-${release}/openshift-install-linux-${version}.okd-${release}.tar.gz";
url =
"https://github.com/openshift/okd/releases/download/${version}.okd-${release}/openshift-install-linux-${version}.okd-${release}.tar.gz";
sha256 = "f497193e8918840a4fd3267839affdc91ec166c5fd2ae3fdc64f498b5fc56f55";
};
nativeBuildInputs = [
autoPatchelfHook
];
nativeBuildInputs = [ autoPatchelfHook ];
unpackPhase = ''
tar xvpzf $src

View file

@ -1,16 +1,15 @@
with import <nixpkgs> {};
with import <nixpkgs> { };
stdenv.mkDerivation rec {
name = "skaffold";
version = "1.17.2";
src = fetchurl {
url = "https://github.com/GoogleContainerTools/skaffold/releases/download/v${version}/skaffold-linux-amd64";
url =
"https://github.com/GoogleContainerTools/skaffold/releases/download/v${version}/skaffold-linux-amd64";
sha256 = "55dea8be16fa3abd81820a6a03f5d708beb5e152fe71e00f00744a4dd321c55a";
};
nativeBuildInputs = [
autoPatchelfHook
];
nativeBuildInputs = [ autoPatchelfHook ];
unpackPhase = ''
cp $src skaffold

View file

@ -1,36 +1,8 @@
{ lib
, stdenv
, makeWrapper
, fetchurl
, rpmextract
, autoPatchelfHook
, alsa-lib
, cups
, gdk-pixbuf
, glib
, gtk3
, libnotify
, libuuid
, libX11
, libXScrnSaver
, libXcomposite
, libXcursor
, libXdamage
, libXext
, libXfixes
, libXi
, libXrandr
, libXrender
, libXtst
, libxcb
, libxshmfence
, mesa
, nspr
, nss
, pango
, systemd
, libappindicator-gtk3
, libdbusmenu
{ lib, stdenv, makeWrapper, fetchurl, rpmextract, autoPatchelfHook, alsa-lib
, cups, gdk-pixbuf, glib, gtk3, libnotify, libuuid, libX11, libXScrnSaver
, libXcomposite, libXcursor, libXdamage, libXext, libXfixes, libXi, libXrandr
, libXrender, libXtst, libxcb, libxshmfence, mesa, nspr, nss, pango, systemd
, libappindicator-gtk3, libdbusmenu
}:
@ -39,11 +11,11 @@ stdenv.mkDerivation rec {
version = "1.1.0";
src = fetchurl {
url = "https://rpm.tuxedocomputers.com/opensuse/15.2/x86_64/tuxedo-control-center_${version}.rpm";
url =
"https://rpm.tuxedocomputers.com/opensuse/15.2/x86_64/tuxedo-control-center_${version}.rpm";
sha256 = "0rqhfi1slnh0kkn1vnxqynxm6yb4w1mhk4vi92vj0lrxlwdxf80c";
};
nativeBuildInputs = [
rpmextract
makeWrapper
@ -112,9 +84,9 @@ stdenv.mkDerivation rec {
runHook postInstall
'';
meta = with lib; {
description = "A tool to help you control performance, energy, fan and comfort settings on TUXEDO laptops.";
description =
"A tool to help you control performance, energy, fan and comfort settings on TUXEDO laptops.";
homepage = "github.com/tuxedocomputers/tuxedo-control-center";
license = licenses.gpl3Only;
maintainers = with maintainers; [ ];

View file

@ -1,9 +1,8 @@
{ pkgs, lib, stdenv, makeDesktopItem, desktop-file-utils,
python,
python,
makeWrapper, nodejs, electron_9, fetchFromGitHub
}:
makeWrapper, nodejs, electron_9, fetchFromGitHub }:
let
baseName = "tuxedo-control-center";
@ -27,13 +26,13 @@ let
#
# This means we have to provide our own electron binaries when
# wrapping this program.
ELECTRON_SKIP_BINARY_DOWNLOAD=1;
ELECTRON_SKIP_BINARY_DOWNLOAD = 1;
# Angular prompts for analytics, which in turn fails the build.
#
# We can disable analytics using false or empty string
# (See https://github.com/angular/angular-cli/blob/1a39c5202a6fe159f8d7db85a1c186176240e437/packages/angular/cli/models/analytics.ts#L506)
NG_CLI_ANALYTICS="false";
NG_CLI_ANALYTICS = "false";
};
desktopItem = makeDesktopItem {
@ -44,9 +43,8 @@ let
icon = "tuxedo-control-center";
categories = "System;";
};
in
stdenv.mkDerivation rec {
in stdenv.mkDerivation rec {
name = "${baseName}-${version}";
src = "${nodePackages}/lib/node_modules/tuxedo-control-center/";
@ -70,7 +68,7 @@ stdenv.mkDerivation rec {
substituteInPlace src/common/classes/TccPaths.ts \
--replace "/etc/tcc" "/var/lib/tcc" \
--replace "/opt/tuxedo-control-center/resources/dist/tuxedo-control-center/data/service/tccd" "$out/bin/tccd"
'';
'';
buildPhase = ''
set -x

View file

@ -1,8 +1,7 @@
# This file has been generated by node2nix 1.9.0. Do not edit!
{pkgs ? import <nixpkgs> {
inherit system;
}, system ? builtins.currentSystem, nodejs ? pkgs."nodejs-14_x"}:
{ pkgs ? import <nixpkgs> { inherit system; }, system ? builtins.currentSystem
, nodejs ? pkgs."nodejs-14_x" }:
let
nodeEnv = import ./node-env.nix {
@ -10,8 +9,7 @@ let
inherit pkgs nodejs;
libtool = if pkgs.stdenv.isDarwin then pkgs.darwin.cctools else null;
};
in
import ./node-packages.nix {
in import ./node-packages.nix {
inherit (pkgs) fetchurl nix-gitignore stdenv lib fetchgit;
inherit nodeEnv;
}

View file

@ -1,6 +1,6 @@
# This file originates from node2nix
{lib, stdenv, nodejs, python2, pkgs, libtool, runCommand, writeTextFile}:
{ lib, stdenv, nodejs, python2, pkgs, libtool, runCommand, writeTextFile }:
let
# Workaround to cope with utillinux in Nixpkgs 20.09 and util-linux in Nixpkgs master
@ -9,7 +9,7 @@ let
python = if nodejs ? python then nodejs.python else python2;
# Create a tar wrapper that filters all the 'Ignoring unknown extended header keyword' noise
tarWrapper = runCommand "tarWrapper" {} ''
tarWrapper = runCommand "tarWrapper" { } ''
mkdir -p $out/bin
cat > $out/bin/tar <<EOF
@ -21,8 +21,7 @@ let
'';
# Function that generates a TGZ file from a NPM project
buildNodeSourceDist =
{ name, version, src, ... }:
buildNodeSourceDist = { name, version, src, ... }:
stdenv.mkDerivation {
name = "node-tarball-${name}-${version}";
@ -40,26 +39,24 @@ let
'';
};
includeDependencies = {dependencies}:
lib.optionalString (dependencies != [])
(lib.concatMapStrings (dependency:
''
# Bundle the dependencies of the package
mkdir -p node_modules
cd node_modules
includeDependencies = { dependencies }:
lib.optionalString (dependencies != [ ]) (lib.concatMapStrings
(dependency: ''
# Bundle the dependencies of the package
mkdir -p node_modules
cd node_modules
# Only include dependencies if they don't exist. They may also be bundled in the package.
if [ ! -e "${dependency.name}" ]
then
${composePackage dependency}
fi
# Only include dependencies if they don't exist. They may also be bundled in the package.
if [ ! -e "${dependency.name}" ]
then
${composePackage dependency}
fi
cd ..
''
) dependencies);
cd ..
'') dependencies);
# Recursively composes the dependencies of a package
composePackage = { name, packageName, src, dependencies ? [], ... }@args:
composePackage = { name, packageName, src, dependencies ? [ ], ... }@args:
builtins.addErrorContext "while evaluating node package '${packageName}'" ''
DIR=$(pwd)
cd $TMPDIR
@ -106,7 +103,7 @@ let
${lib.optionalString (builtins.substring 0 1 packageName == "@") "cd .."}
'';
pinpointDependencies = {dependencies, production}:
pinpointDependencies = { dependencies, production }:
let
pinpointDependenciesFromPackageJSON = writeTextFile {
name = "pinpointDependencies.js";
@ -160,39 +157,46 @@ let
fs.writeFileSync("package.json", JSON.stringify(packageObj, null, 2));
'';
};
in
''
node ${pinpointDependenciesFromPackageJSON} ${if production then "production" else "development"}
in ''
node ${pinpointDependenciesFromPackageJSON} ${
if production then "production" else "development"
}
${lib.optionalString (dependencies != [])
''
if [ -d node_modules ]
then
cd node_modules
${lib.concatMapStrings (dependency: pinpointDependenciesOfPackage dependency) dependencies}
cd ..
fi
''}
${lib.optionalString (dependencies != [ ]) ''
if [ -d node_modules ]
then
cd node_modules
${
lib.concatMapStrings
(dependency: pinpointDependenciesOfPackage dependency)
dependencies
}
cd ..
fi
''}
'';
# Recursively traverses all dependencies of a package and pinpoints all
# dependencies in the package.json file to the versions that are actually
# being used.
pinpointDependenciesOfPackage = { packageName, dependencies ? [], production ? true, ... }@args:
''
pinpointDependenciesOfPackage =
{ packageName, dependencies ? [ ], production ? true, ... }@args: ''
if [ -d "${packageName}" ]
then
cd "${packageName}"
${pinpointDependencies { inherit dependencies production; }}
cd ..
${lib.optionalString (builtins.substring 0 1 packageName == "@") "cd .."}
${
lib.optionalString (builtins.substring 0 1 packageName == "@")
"cd .."
}
fi
'';
# Extract the Node.js source code which is used to compile packages with
# native bindings
nodeSources = runCommand "node-sources" {} ''
nodeSources = runCommand "node-sources" { } ''
tar --no-same-owner --no-same-permissions -xf ${nodejs.src}
mv node-* $out
'';
@ -320,93 +324,97 @@ let
'';
};
prepareAndInvokeNPM = {packageName, bypassCache, reconstructLock, npmFlags, production}:
prepareAndInvokeNPM =
{ packageName, bypassCache, reconstructLock, npmFlags, production }:
let
forceOfflineFlag = if bypassCache then "--offline" else "--registry http://www.example.com";
in
''
# Pinpoint the versions of all dependencies to the ones that are actually being used
echo "pinpointing versions of dependencies..."
source $pinpointDependenciesScriptPath
forceOfflineFlag = if bypassCache then
"--offline"
else
"--registry http://www.example.com";
in ''
# Pinpoint the versions of all dependencies to the ones that are actually being used
echo "pinpointing versions of dependencies..."
source $pinpointDependenciesScriptPath
# Patch the shebangs of the bundled modules to prevent them from
# calling executables outside the Nix store as much as possible
patchShebangs .
# Patch the shebangs of the bundled modules to prevent them from
# calling executables outside the Nix store as much as possible
patchShebangs .
# Deploy the Node.js package by running npm install. Since the
# dependencies have been provided already by ourselves, it should not
# attempt to install them again, which is good, because we want to make
# it Nix's responsibility. If it needs to install any dependencies
# anyway (e.g. because the dependency parameters are
# incomplete/incorrect), it fails.
#
# The other responsibilities of NPM are kept -- version checks, build
# steps, postprocessing etc.
# Deploy the Node.js package by running npm install. Since the
# dependencies have been provided already by ourselves, it should not
# attempt to install them again, which is good, because we want to make
# it Nix's responsibility. If it needs to install any dependencies
# anyway (e.g. because the dependency parameters are
# incomplete/incorrect), it fails.
#
# The other responsibilities of NPM are kept -- version checks, build
# steps, postprocessing etc.
export HOME=$TMPDIR
cd "${packageName}"
runHook preRebuild
export HOME=$TMPDIR
cd "${packageName}"
runHook preRebuild
${lib.optionalString bypassCache ''
${lib.optionalString reconstructLock ''
if [ -f package-lock.json ]
then
echo "WARNING: Reconstruct lock option enabled, but a lock file already exists!"
echo "This will most likely result in version mismatches! We will remove the lock file and regenerate it!"
rm package-lock.json
else
echo "No package-lock.json file found, reconstructing..."
fi
${lib.optionalString bypassCache ''
${lib.optionalString reconstructLock ''
if [ -f package-lock.json ]
then
echo "WARNING: Reconstruct lock option enabled, but a lock file already exists!"
echo "This will most likely result in version mismatches! We will remove the lock file and regenerate it!"
rm package-lock.json
else
echo "No package-lock.json file found, reconstructing..."
fi
node ${reconstructPackageLock}
''}
node ${addIntegrityFieldsScript}
node ${reconstructPackageLock}
''}
npm ${forceOfflineFlag} --nodedir=${nodeSources} ${npmFlags} ${lib.optionalString production "--production"} rebuild
node ${addIntegrityFieldsScript}
''}
if [ "''${dontNpmInstall-}" != "1" ]
then
# NPM tries to download packages even when they already exist if npm-shrinkwrap is used.
rm -f npm-shrinkwrap.json
npm ${forceOfflineFlag} --nodedir=${nodeSources} ${npmFlags} ${
lib.optionalString production "--production"
} rebuild
npm ${forceOfflineFlag} --nodedir=${nodeSources} ${npmFlags} ${lib.optionalString production "--production"} install
fi
if [ "''${dontNpmInstall-}" != "1" ]
then
# NPM tries to download packages even when they already exist if npm-shrinkwrap is used.
rm -f npm-shrinkwrap.json
npm ${forceOfflineFlag} --nodedir=${nodeSources} ${npmFlags} ${
lib.optionalString production "--production"
} install
fi
'';
# Builds and composes an NPM package including all its dependencies
buildNodePackage =
{ name
, packageName
, version
, dependencies ? []
, buildInputs ? []
, production ? true
, npmFlags ? ""
, dontNpmInstall ? false
, bypassCache ? false
, reconstructLock ? false
, preRebuild ? ""
, dontStrip ? true
, unpackPhase ? "true"
, buildPhase ? "true"
, meta ? {}
, ... }@args:
buildNodePackage = { name, packageName, version, dependencies ? [ ]
, buildInputs ? [ ], production ? true, npmFlags ? ""
, dontNpmInstall ? false, bypassCache ? false, reconstructLock ? false
, preRebuild ? "", dontStrip ? true, unpackPhase ? "true"
, buildPhase ? "true", meta ? { }, ... }@args:
let
extraArgs = removeAttrs args [ "name" "dependencies" "buildInputs" "dontStrip" "dontNpmInstall" "preRebuild" "unpackPhase" "buildPhase" "meta" ];
in
stdenv.mkDerivation ({
extraArgs = removeAttrs args [
"name"
"dependencies"
"buildInputs"
"dontStrip"
"dontNpmInstall"
"preRebuild"
"unpackPhase"
"buildPhase"
"meta"
];
in stdenv.mkDerivation ({
name = "${name}-${version}";
buildInputs = [ tarWrapper python nodejs ]
++ lib.optional (stdenv.isLinux) utillinux
++ lib.optional (stdenv.isDarwin) libtool
++ buildInputs;
++ lib.optional (stdenv.isDarwin) libtool ++ buildInputs;
inherit nodejs;
inherit dontStrip; # Stripping may fail a build for some package deployments
inherit
dontStrip; # Stripping may fail a build for some package deployments
inherit dontNpmInstall preRebuild unpackPhase buildPhase;
compositionScript = composePackage args;
@ -422,7 +430,9 @@ let
# Compose the package and all its dependencies
source $compositionScriptPath
${prepareAndInvokeNPM { inherit packageName bypassCache reconstructLock npmFlags production; }}
${prepareAndInvokeNPM {
inherit packageName bypassCache reconstructLock npmFlags production;
}}
# Create symlink to the deployed executable folder, if applicable
if [ -d "$out/lib/node_modules/.bin" ]
@ -455,98 +465,75 @@ let
} // extraArgs);
# Builds a node environment (a node_modules folder and a set of binaries)
buildNodeDependencies =
{ name
, packageName
, version
, src
, dependencies ? []
, buildInputs ? []
, production ? true
, npmFlags ? ""
, dontNpmInstall ? false
, bypassCache ? false
, reconstructLock ? false
, dontStrip ? true
, unpackPhase ? "true"
, buildPhase ? "true"
, ... }@args:
buildNodeDependencies = { name, packageName, version, src, dependencies ? [ ]
, buildInputs ? [ ], production ? true, npmFlags ? ""
, dontNpmInstall ? false, bypassCache ? false, reconstructLock ? false
, dontStrip ? true, unpackPhase ? "true", buildPhase ? "true", ... }@args:
let
extraArgs = removeAttrs args [ "name" "dependencies" "buildInputs" ];
in
stdenv.mkDerivation ({
name = "node-dependencies-${name}-${version}";
let extraArgs = removeAttrs args [ "name" "dependencies" "buildInputs" ];
in stdenv.mkDerivation ({
name = "node-dependencies-${name}-${version}";
buildInputs = [ tarWrapper python nodejs ]
++ lib.optional (stdenv.isLinux) utillinux
++ lib.optional (stdenv.isDarwin) libtool
++ buildInputs;
buildInputs = [ tarWrapper python nodejs ]
++ lib.optional (stdenv.isLinux) utillinux
++ lib.optional (stdenv.isDarwin) libtool ++ buildInputs;
inherit dontStrip; # Stripping may fail a build for some package deployments
inherit dontNpmInstall unpackPhase buildPhase;
inherit
dontStrip; # Stripping may fail a build for some package deployments
inherit dontNpmInstall unpackPhase buildPhase;
includeScript = includeDependencies { inherit dependencies; };
pinpointDependenciesScript = pinpointDependenciesOfPackage args;
includeScript = includeDependencies { inherit dependencies; };
pinpointDependenciesScript = pinpointDependenciesOfPackage args;
passAsFile = [ "includeScript" "pinpointDependenciesScript" ];
passAsFile = [ "includeScript" "pinpointDependenciesScript" ];
installPhase = ''
mkdir -p $out/${packageName}
cd $out/${packageName}
installPhase = ''
mkdir -p $out/${packageName}
cd $out/${packageName}
source $includeScriptPath
source $includeScriptPath
# Create fake package.json to make the npm commands work properly
cp ${src}/package.json .
chmod 644 package.json
${lib.optionalString bypassCache ''
if [ -f ${src}/package-lock.json ]
then
cp ${src}/package-lock.json .
fi
''}
# Create fake package.json to make the npm commands work properly
cp ${src}/package.json .
chmod 644 package.json
${lib.optionalString bypassCache ''
if [ -f ${src}/package-lock.json ]
then
cp ${src}/package-lock.json .
fi
''}
# Go to the parent folder to make sure that all packages are pinpointed
cd ..
${lib.optionalString (builtins.substring 0 1 packageName == "@") "cd .."}
# Go to the parent folder to make sure that all packages are pinpointed
cd ..
${lib.optionalString (builtins.substring 0 1 packageName == "@")
"cd .."}
${prepareAndInvokeNPM { inherit packageName bypassCache reconstructLock npmFlags production; }}
${prepareAndInvokeNPM {
inherit packageName bypassCache reconstructLock npmFlags production;
}}
# Expose the executables that were installed
cd ..
${lib.optionalString (builtins.substring 0 1 packageName == "@") "cd .."}
# Expose the executables that were installed
cd ..
${lib.optionalString (builtins.substring 0 1 packageName == "@")
"cd .."}
mv ${packageName} lib
ln -s $out/lib/node_modules/.bin $out/bin
'';
} // extraArgs);
mv ${packageName} lib
ln -s $out/lib/node_modules/.bin $out/bin
'';
} // extraArgs);
# Builds a development shell
buildNodeShell =
{ name
, packageName
, version
, src
, dependencies ? []
, buildInputs ? []
, production ? true
, npmFlags ? ""
, dontNpmInstall ? false
, bypassCache ? false
, reconstructLock ? false
, dontStrip ? true
, unpackPhase ? "true"
, buildPhase ? "true"
, ... }@args:
buildNodeShell = { name, packageName, version, src, dependencies ? [ ]
, buildInputs ? [ ], production ? true, npmFlags ? ""
, dontNpmInstall ? false, bypassCache ? false, reconstructLock ? false
, dontStrip ? true, unpackPhase ? "true", buildPhase ? "true", ... }@args:
let
nodeDependencies = buildNodeDependencies args;
in
stdenv.mkDerivation {
let nodeDependencies = buildNodeDependencies args;
in stdenv.mkDerivation {
name = "node-shell-${name}-${version}";
buildInputs = [ python nodejs ] ++ lib.optional (stdenv.isLinux) utillinux ++ buildInputs;
buildInputs = [ python nodejs ] ++ lib.optional (stdenv.isLinux) utillinux
++ buildInputs;
buildCommand = ''
mkdir -p $out/bin
cat > $out/bin/shell <<EOF
@ -559,13 +546,12 @@ let
# Provide the dependencies in a development shell through the NODE_PATH environment variable
inherit nodeDependencies;
shellHook = lib.optionalString (dependencies != []) ''
shellHook = lib.optionalString (dependencies != [ ]) ''
export NODE_PATH=${nodeDependencies}/lib/node_modules
export PATH="${nodeDependencies}/bin:$PATH"
'';
};
in
{
in {
buildNodeSourceDist = lib.makeOverridable buildNodeSourceDist;
buildNodePackage = lib.makeOverridable buildNodePackage;
buildNodeDependencies = lib.makeOverridable buildNodeDependencies;

File diff suppressed because it is too large Load diff

View file

@ -3,9 +3,8 @@
let
kernel = linuxPackages.kernel;
kernelDir = "${kernel.dev}/lib/modules/${kernel.modDirVersion}/build";
in
stdenv.mkDerivation rec {
in stdenv.mkDerivation rec {
name = "tuxedo-keyboard";
version = "v3.0.8";
@ -33,7 +32,8 @@ stdenv.mkDerivation rec {
'';
meta = {
homepage = https://github.com/tuxedocomputers/tuxedo-keyboard/blob/master/Makefile;
homepage =
"https://github.com/tuxedocomputers/tuxedo-keyboard/blob/master/Makefile";
};
}

View file

@ -1,16 +1,15 @@
with import <nixpkgs> {};
with import <nixpkgs> { };
stdenv.mkDerivation rec {
name = "vaultsink";
version = "0.1.8";
src = fetchurl {
url = "https://github.com/cookiefactory/vault-sink/releases/download/v${version}/vault-sink-linux-amd64";
url =
"https://github.com/cookiefactory/vault-sink/releases/download/v${version}/vault-sink-linux-amd64";
sha256 = "057799e7f907186993b591e3b2f743b69d7a9fed";
};
nativeBuildInputs = [
autoPatchelfHook
];
nativeBuildInputs = [ autoPatchelfHook ];
installPhase = ''
install -m 755 -D vault-sink-linux-amd64 $out/bin/sink

View file

@ -1,7 +1,6 @@
{ pkgs, options, ...}:
{ pkgs, options, ... }:
let
unstable = import <nixos-unstable> {};
let unstable = import <nixos-unstable> { };
in {
environment.systemPackages = with pkgs; [
cryptsetup
@ -29,8 +28,8 @@ in {
];
virtualisation.docker = {
enable = true;
storageDriver = "zfs";
enable = true;
storageDriver = "zfs";
};
virtualisation.libvirtd.enable = true;
}

View file

@ -1,7 +1,6 @@
{ config, lib, pkgs, ... }:
let
unstable = import <nixos-unstable> {};
let unstable = import <nixos-unstable> { };
in {
environment.systemPackages = with pkgs; [
acpi
@ -42,9 +41,7 @@ in {
];
environment = {
etc = {
"starship.toml".source = ../dotfiles/starship.toml;
};
etc = { "starship.toml".source = ../dotfiles/starship.toml; };
variables = {
BAT_THEME = "ansi";
@ -141,9 +138,9 @@ in {
services.lorri.enable = true;
security.wrappers.gvfsd-nfs = {
source = "${pkgs.gnome.gvfs}/libexec/gvfsd-nfs";
owner = "nobody";
group = "nogroup";
source = "${pkgs.gnome.gvfs}/libexec/gvfsd-nfs";
owner = "nobody";
group = "nogroup";
capabilities = "cap_net_bind_service+ep";
};
services.gvfs = {

View file

@ -26,21 +26,15 @@ in {
wf-recorder
xwayland
];
extraSessionCommands = ''
'';
extraSessionCommands = "";
};
xdg.portal = {
enable = true;
gtkUsePortal = true;
extraPortals = with pkgs; [
xdg-desktop-portal-gtk
xdg-desktop-portal-wlr
];
extraPortals = with pkgs; [ xdg-desktop-portal-gtk xdg-desktop-portal-wlr ];
};
boot.extraModulePackages = with config.boot.kernelPackages; [
v4l2loopback
];
boot.extraModulePackages = with config.boot.kernelPackages; [ v4l2loopback ];
colors = {
background = "#282a36";
@ -50,7 +44,7 @@ in {
green = "#50fa7b";
yellow = "#f1fa8c";
cyan = "#8be9fd";
magenta ="#bd93f9";
magenta = "#bd93f9";
blue = "#61bfff";
white = "#ffffff";
};
@ -60,37 +54,37 @@ in {
"sway/config".source = ../dotfiles/sway/config;
"sway/status.toml".source = ../dotfiles/sway/status.toml;
"xdg/alacritty/alacritty.yml".text = ''
font:
normal:
family: CaskaydiaCove Nerd Font
size: 12
font:
normal:
family: CaskaydiaCove Nerd Font
size: 12
background_opacity: 0.98
draw_bold_text_with_bright_colors: true
background_opacity: 0.98
draw_bold_text_with_bright_colors: true
colors:
primary:
background: "${colors.background}"
foreground: "${colors.foreground}"
colors:
primary:
background: "${colors.background}"
foreground: "${colors.foreground}"
normal:
black: "${colors.black}"
red: "${colors.red}"
green: "${colors.green}"
yellow: "${colors.yellow}"
cyan: "${colors.cyan}"
magenta: "${colors.magenta}"
blue: "${colors.blue}"
white: "${colors.white}"
normal:
black: "${colors.black}"
red: "${colors.red}"
green: "${colors.green}"
yellow: "${colors.yellow}"
cyan: "${colors.cyan}"
magenta: "${colors.magenta}"
blue: "${colors.blue}"
white: "${colors.white}"
window:
dynamic_title: true
window:
dynamic_title: true
env:
TERM: xterm-256color
env:
TERM: xterm-256color
key_bindings:
- { key: Escape, mods: Control, action: ToggleViMode }
key_bindings:
- { key: Escape, mods: Control, action: ToggleViMode }
'';
};
};
@ -105,9 +99,7 @@ key_bindings:
jack.enable = true;
config.pipewire = {
"context.properties" = {
"default.clock.rate" = 48000;
};
"context.properties" = { "default.clock.rate" = 48000; };
};
};
services.udev.packages = [
@ -128,13 +120,11 @@ key_bindings:
fira-code
noto-fonts
noto-fonts-emoji
(nerdfonts.override {
fonts = [ "CascadiaCode" "Meslo" ];
})
(nerdfonts.override { fonts = [ "CascadiaCode" "Meslo" ]; })
];
nixpkgs.config.allowUnfree = true;
environment.pathsToLink = ["/libexec"];
environment.pathsToLink = [ "/libexec" ];
environment.systemPackages = with pkgs; [
polkit_gnome
@ -194,31 +184,29 @@ key_bindings:
xfce.thunar
xfce.thunar-volman
ydotool
(
pkgs.writeTextFile {
name = "startsway";
destination = "/bin/startsway";
executable = true;
text = ''
#! ${pkgs.bash}/bin/bash
(pkgs.writeTextFile {
name = "startsway";
destination = "/bin/startsway";
executable = true;
text = ''
#! ${pkgs.bash}/bin/bash
export GTK_ICON_THEME=Dracula
export GTK_THEME=Dracula
export _JAVA_AWT_WM_NOREPARENTING=1
export MOZ_ENABLE_WAYLAND=1
export MOZ_USE_XINPUT2=1
export QT_AUTO_SCREEN_SCALE_FACTOR=0
export QT_QPA_PLATFORM=wayland-egl
export QT_WAYLAND_FORCE_DPI=96
export SDL_VIDEODRIVER=wayland
export XDG_CURRENT_DESKTOP=sway
export XDG_DATA_DIRS=${datadir}:$XDG_DATA_DIRS
export XDG_SESSION_TYPE=wayland
export GTK_ICON_THEME=Dracula
export GTK_THEME=Dracula
export _JAVA_AWT_WM_NOREPARENTING=1
export MOZ_ENABLE_WAYLAND=1
export MOZ_USE_XINPUT2=1
export QT_AUTO_SCREEN_SCALE_FACTOR=0
export QT_QPA_PLATFORM=wayland-egl
export QT_WAYLAND_FORCE_DPI=96
export SDL_VIDEODRIVER=wayland
export XDG_CURRENT_DESKTOP=sway
export XDG_DATA_DIRS=${datadir}:$XDG_DATA_DIRS
export XDG_SESSION_TYPE=wayland
${pkgs.dbus}/bin/dbus-run-session ${pkgs.sway}/bin/sway
'';
}
)
${pkgs.dbus}/bin/dbus-run-session ${pkgs.sway}/bin/sway
'';
})
];
hardware.bluetooth.enable = true;
@ -233,14 +221,9 @@ key_bindings:
};
services.printing.enable = true;
services.printing.drivers = [
pkgs.gutenprint
];
services.printing.drivers = [ pkgs.gutenprint ];
services.avahi.enable = true;
services.avahi.nssmdns = true;
hardware.opengl = {
enable = true;
};
hardware.opengl = { enable = true; };
}

View file

@ -1,7 +1,6 @@
{ config, lib, pkgs, ... }:
let
unstable = import <nixos-unstable> {};
let unstable = import <nixos-unstable> { };
in {
environment.systemPackages = with pkgs; [
@ -15,12 +14,8 @@ in {
#unstable.esphome
nodePackages.pyright
(python39.withPackages(python-packages: with python-packages; [
black
pyyaml
requests
black
]))
(python39.withPackages
(python-packages: with python-packages; [ black pyyaml requests black ]))
mariadb-client
musl
@ -35,6 +30,12 @@ in {
tig
unstable.bazel
openssl pkg-config nasm cmake zlib gcc binutils-unwrapped
openssl
pkg-config
nasm
cmake
zlib
gcc
binutils-unwrapped
];
}

View file

@ -2,7 +2,7 @@
let
unstable = import <nixos-unstable> { config.allowUnfree = true; };
notcoal = pkgs.callPackage (import ../packages/notcoal) {};
notcoal = pkgs.callPackage (import ../packages/notcoal) { };
in {
environment.systemPackages = with pkgs; [
unstable.astroid

View file

@ -1,7 +1,6 @@
{ config, lib, pkgs, ... }:
let
unstable = import <nixos-unstable> { config.allowUnfree = true; };
let unstable = import <nixos-unstable> { config.allowUnfree = true; };
in {
networking.networkmanager.enable = true;

View file

@ -1,30 +1,30 @@
{ config, lib, pkgs, ... }:
let
unstable = import <nixos-unstable> {};
let unstable = import <nixos-unstable> { };
in {
environment.systemPackages = with pkgs; [
# embedded
#arduino
#avrdude
#gcc-arm-embedded
#openocd
#pkgsCross.avr.avrlibc
#pkgsCross.avr.buildPackages.binutils
#pkgsCross.avr.buildPackages.gcc8
#pkgsCross.avr.libcCross
environment.systemPackages = with pkgs;
[
# embedded
#arduino
#avrdude
#gcc-arm-embedded
#openocd
#pkgsCross.avr.avrlibc
#pkgsCross.avr.buildPackages.binutils
#pkgsCross.avr.buildPackages.gcc8
#pkgsCross.avr.libcCross
#cura
#candle
openscad
#kicad
#blender
#python3Packages.numpy
#python3Packages.shapely
#cura
#candle
openscad
#kicad
#blender
#python3Packages.numpy
#python3Packages.shapely
#steam
#unstable.obs-studio
];
#steam
#unstable.obs-studio
];
# stm32 debugger
users.extraGroups.plugdev = { };

View file

@ -2,7 +2,5 @@
{
networking.wireguard.enable = true;
environment.systemPackages = with pkgs; [
wireguard
];
environment.systemPackages = with pkgs; [ wireguard ];
}

View file

@ -2,8 +2,9 @@
let
unstable = import <nixos-unstable> { config.allowUnfree = true; };
cloudstation = pkgs.callPackage (import ../packages/cloudstation.nix) {};
nagstamon = pkgs.libsForQt5.callPackage (import ../packages/nagstamon.nix) {};
cloudstation = pkgs.callPackage (import ../packages/cloudstation.nix) { };
nagstamon =
pkgs.libsForQt5.callPackage (import ../packages/nagstamon.nix) { };
in {
security.pki.certificateFiles = [