Compare commits

..

1 commit

Author SHA1 Message Date
746f658c95
treewide: add custom packages + mcuxpesso IDE 2024-10-30 23:34:28 +01:00
30 changed files with 166 additions and 423 deletions

View file

@ -1,4 +1,4 @@
# ❄️ flocon
# ❄️ nix
My NixOS configurations, using flakes.
@ -20,7 +20,6 @@ Additionally using a lot of other software you can find in the configuration fil
| [hosts](hosts/) | Host-specific |
| [lib](lib/) | Helper functions |
| [modules](modules/) | NixOS modules |
| [pkgs](pkgs/) | Custom packages |
| [system](system/) | NixOS configuration |
My configuration is structured based on the following principles:

View file

@ -134,11 +134,11 @@
},
"locked": {
"dir": "pkgs/firefox-addons",
"lastModified": 1730865784,
"narHash": "sha256-6kJYNjVCyf1tYgpqm7QOYcMkkD/RsaSfrsC2+ojmFAI=",
"lastModified": 1730013417,
"narHash": "sha256-nZ6ylS3/FAjsi9wwdZJpzIV0+bgJDAurZAi0w9q1Nxw=",
"owner": "rycee",
"repo": "nur-expressions",
"rev": "b8d22442e09a02eb8b830d41726ac371be21b7cd",
"rev": "e9ec8d2766bbe4d242c9255247197372ac64f885",
"type": "gitlab"
},
"original": {
@ -240,11 +240,11 @@
"nixpkgs-lib": "nixpkgs-lib_2"
},
"locked": {
"lastModified": 1730504689,
"narHash": "sha256-hgmguH29K2fvs9szpq2r3pz2/8cJd2LPS+b4tfNFCwE=",
"lastModified": 1727826117,
"narHash": "sha256-K5ZLCyfO/Zj9mPFldf3iwS6oZStJcU4tSpiXTMYaaL0=",
"owner": "hercules-ci",
"repo": "flake-parts",
"rev": "506278e768c2a08bec68eb62932193e341f55c90",
"rev": "3d04084d54bedc3d6b8b736c70ef449225c361b1",
"type": "github"
},
"original": {
@ -327,11 +327,11 @@
"systems": "systems_8"
},
"locked": {
"lastModified": 1726560853,
"narHash": "sha256-X6rJYSESBVr3hBoH0WbKE5KvhPU5bloyZ2L4K60/fPQ=",
"lastModified": 1710146030,
"narHash": "sha256-SZ5L6eA7HJ/nmkzGG7/ISclqe6oZdOZTNoesiInkXPQ=",
"owner": "numtide",
"repo": "flake-utils",
"rev": "c1dfcf08411b08f6b8615f7d8971a2bfa81d5e8a",
"rev": "b1d9ab70662946ef0850d488da1c9019f3a9752a",
"type": "github"
},
"original": {
@ -424,11 +424,11 @@
]
},
"locked": {
"lastModified": 1730837930,
"narHash": "sha256-0kZL4m+bKBJUBQse0HanewWO0g8hDdCvBhudzxgehqc=",
"lastModified": 1730016908,
"narHash": "sha256-bFCxJco7d8IgmjfNExNz9knP8wvwbXU4s/d53KOK6U0=",
"owner": "nix-community",
"repo": "home-manager",
"rev": "2f607e07f3ac7e53541120536708e824acccfaa8",
"rev": "e83414058edd339148dc142a8437edb9450574c8",
"type": "github"
},
"original": {
@ -555,11 +555,11 @@
"xwayland-satellite-unstable": "xwayland-satellite-unstable"
},
"locked": {
"lastModified": 1730875971,
"narHash": "sha256-VpTY0Urm0tebIndEP3qCsfAEjh8IB0d9j7XRZkNLRrw=",
"lastModified": 1730021052,
"narHash": "sha256-AnCitOqPs+gCGEUKl2lBX2cfd59aUKOz592Bs2pAw1A=",
"owner": "sodiboo",
"repo": "niri-flake",
"rev": "563b10c27839d0b08353d4cd3563e0f9beb3468d",
"rev": "ac40d2eb544d4e3a4d601a265533ecdf0e946305",
"type": "github"
},
"original": {
@ -588,11 +588,11 @@
"niri-unstable": {
"flake": false,
"locked": {
"lastModified": 1730871742,
"narHash": "sha256-wK7UD90LxLr8oELIYPhUS6+IPU32JGESaHd/tny5/ig=",
"lastModified": 1729744939,
"narHash": "sha256-QbfaNQa93yt4KKg5XNi1tUIfGoDIohxFp/PmHi8sruU=",
"owner": "YaLTeR",
"repo": "niri",
"rev": "8867a4f84c4bd07235abd37828b0d724321facbe",
"rev": "c8044a9b5dbdb3e0648c86a00bfb63acfc06a559",
"type": "github"
},
"original": {
@ -608,11 +608,11 @@
]
},
"locked": {
"lastModified": 1730604744,
"narHash": "sha256-/MK6QU4iOozJ4oHTfZipGtOgaT/uy/Jm4foCqHQeYR4=",
"lastModified": 1729999765,
"narHash": "sha256-LYsavZXitFjjyETZoij8usXjTa7fa9AIF3Sk3MJSX+Y=",
"owner": "nix-community",
"repo": "nix-index-database",
"rev": "cc2ddbf2df8ef7cc933543b1b42b845ee4772318",
"rev": "0e3a8778c2ee218eff8de6aacf3d2fa6c33b2d4f",
"type": "github"
},
"original": {
@ -623,11 +623,11 @@
},
"nixos-hardware": {
"locked": {
"lastModified": 1730886862,
"narHash": "sha256-wCZtRGM1NGxq6VG4+TMzfsa4cuG2VJVtowtYuWW5W3g=",
"lastModified": 1729742320,
"narHash": "sha256-u3Of8xRkN//me8PU+RucKA59/6RNy4B2jcGAF36P4jI=",
"owner": "NixOS",
"repo": "nixos-hardware",
"rev": "90642a0deae927fa911d49d4f7c5616257105141",
"rev": "e8a2f6d5513fe7b7d15701b2d05404ffdc3b6dda",
"type": "github"
},
"original": {
@ -666,14 +666,14 @@
},
"nixpkgs-lib_2": {
"locked": {
"lastModified": 1730504152,
"narHash": "sha256-lXvH/vOfb4aGYyvFmZK/HlsNsr/0CVWlwYvo2rxJk3s=",
"lastModified": 1727825735,
"narHash": "sha256-0xHYkMkeLVQAMa7gvkddbPqpxph+hDzdu1XdGPJR+Os=",
"type": "tarball",
"url": "https://github.com/NixOS/nixpkgs/archive/cc2f28000298e1269cea6612cd06ec9979dd5d7f.tar.gz"
"url": "https://github.com/NixOS/nixpkgs/archive/fb192fec7cc7a4c26d51779e9bab07ce6fa5597a.tar.gz"
},
"original": {
"type": "tarball",
"url": "https://github.com/NixOS/nixpkgs/archive/cc2f28000298e1269cea6612cd06ec9979dd5d7f.tar.gz"
"url": "https://github.com/NixOS/nixpkgs/archive/fb192fec7cc7a4c26d51779e9bab07ce6fa5597a.tar.gz"
}
},
"nixpkgs-lib_3": {
@ -706,11 +706,11 @@
},
"nixpkgs-stable_2": {
"locked": {
"lastModified": 1730741070,
"narHash": "sha256-edm8WG19kWozJ/GqyYx2VjW99EdhjKwbY3ZwdlPAAlo=",
"lastModified": 1729973466,
"narHash": "sha256-knnVBGfTCZlQgxY1SgH0vn2OyehH9ykfF8geZgS95bk=",
"owner": "NixOS",
"repo": "nixpkgs",
"rev": "d063c1dd113c91ab27959ba540c0d9753409edf3",
"rev": "cd3e8833d70618c4eea8df06f95b364b016d4950",
"type": "github"
},
"original": {
@ -754,11 +754,11 @@
},
"nixpkgs_4": {
"locked": {
"lastModified": 1730785428,
"narHash": "sha256-Zwl8YgTVJTEum+L+0zVAWvXAGbWAuXHax3KzuejaDyo=",
"lastModified": 1729880355,
"narHash": "sha256-RP+OQ6koQQLX5nw0NmcDrzvGL8HDLnyXt/jHhL1jwjM=",
"owner": "NixOS",
"repo": "nixpkgs",
"rev": "4aa36568d413aca0ea84a1684d2d46f55dbabad7",
"rev": "18536bf04cd71abd345f9579158841376fdd0c5a",
"type": "github"
},
"original": {
@ -770,11 +770,11 @@
},
"nixpkgs_5": {
"locked": {
"lastModified": 1730785428,
"narHash": "sha256-Zwl8YgTVJTEum+L+0zVAWvXAGbWAuXHax3KzuejaDyo=",
"lastModified": 1729880355,
"narHash": "sha256-RP+OQ6koQQLX5nw0NmcDrzvGL8HDLnyXt/jHhL1jwjM=",
"owner": "NixOS",
"repo": "nixpkgs",
"rev": "4aa36568d413aca0ea84a1684d2d46f55dbabad7",
"rev": "18536bf04cd71abd345f9579158841376fdd0c5a",
"type": "github"
},
"original": {
@ -977,11 +977,11 @@
"systems": "systems_6"
},
"locked": {
"lastModified": 1730289819,
"narHash": "sha256-GYEgdCLzNODbMNEeYbMa5EWgEwTEMxdSSPTz8uEwZdQ=",
"lastModified": 1728378979,
"narHash": "sha256-CW/5Cs9m8HupL+6iRMpdHE88OmK9MXH2h3BcXCQw440=",
"owner": "notashelf",
"repo": "nvf",
"rev": "8ff50562d7203a2b87bc6409e806f13b115d6b48",
"rev": "0947ab38c0bc79780eec599161306157b8de74a3",
"type": "github"
},
"original": {
@ -1000,11 +1000,11 @@
]
},
"locked": {
"lastModified": 1730635861,
"narHash": "sha256-Npp3pl9aeAiq+wZPDbw2ZxybNuZWyuN7AY6fik56DCo=",
"lastModified": 1729710171,
"narHash": "sha256-2sVt2hbL+G0FzEESm/EZBewPOmNtZ6MTnYhsvHJW6Rs=",
"owner": "nix-community",
"repo": "plasma-manager",
"rev": "293668587937daae1df085ee36d2b2d0792b7a0f",
"rev": "247a8e677b51f053ca89dcf67059e24f85e47391",
"type": "github"
},
"original": {
@ -2635,11 +2635,11 @@
"nixpkgs": "nixpkgs_8"
},
"locked": {
"lastModified": 1730891412,
"narHash": "sha256-EEXp1jQMoA7off1ioqB5aJM1a5ZfGS6KQVsYSZ/ub78=",
"lastModified": 1730026346,
"narHash": "sha256-MUcE2ccqegmpBCHZMpqjBbBkqL+jAJ2dFjPfdtQh7B4=",
"owner": "nezia1",
"repo": "portfolio",
"rev": "082cc68c67deead967bf177d048995c6a27ef84e",
"rev": "0fbb087b837066ab916798a8ac5b51b5f3d25a59",
"type": "github"
},
"original": {
@ -2776,11 +2776,11 @@
]
},
"locked": {
"lastModified": 1729477859,
"narHash": "sha256-r0VyeJxy4O4CgTB/PNtfQft9fPfN1VuGvnZiCxDArvg=",
"lastModified": 1726280639,
"narHash": "sha256-YfLRPlFZWrT2oRLNAoqf7G3+NnUTDdlIJk6tmBU7kXM=",
"owner": "oxalica",
"repo": "rust-overlay",
"rev": "ada8266712449c4c0e6ee6fcbc442b3c217c79e1",
"rev": "e9f8641c92f26fd1e076e705edb12147c384171d",
"type": "github"
},
"original": {
@ -2914,11 +2914,11 @@
"nixpkgs": "nixpkgs_9"
},
"locked": {
"lastModified": 1730321837,
"narHash": "sha256-vK+a09qq19QNu2MlLcvN4qcRctJbqWkX7ahgPZ/+maI=",
"lastModified": 1730025913,
"narHash": "sha256-Y9NtFmP8ciLyRsopcCx1tyoaaStKeq+EndwtGCgww7I=",
"owner": "numtide",
"repo": "treefmt-nix",
"rev": "746901bb8dba96d154b66492a29f5db0693dbfcc",
"rev": "bae131e525cc8718da22fbeb8d8c7c43c4ea502a",
"type": "github"
},
"original": {
@ -2974,11 +2974,11 @@
},
"locked": {
"dir": "nix",
"lastModified": 1730734444,
"narHash": "sha256-lNgCAphrq3/bYGjgDxEl2rVcer6GnmfWXDhxc+kdYOk=",
"lastModified": 1729006311,
"narHash": "sha256-1xtKJHu6CFnOhp4snof+WSTwcdPgwIaD6mBODP/cv3w=",
"owner": "wez",
"repo": "wezterm",
"rev": "51c794ac500a2033b9dc570c71810518bfa667a9",
"rev": "9ddca7bde92090792dbcdc65c1e9897c362196d7",
"type": "github"
},
"original": {
@ -2992,16 +2992,16 @@
"xwayland-satellite-stable": {
"flake": false,
"locked": {
"lastModified": 1730166465,
"narHash": "sha256-nq7bouXQXaaPPo/E+Jbq+wNHnatD4dY8OxSrRqzvy6s=",
"lastModified": 1718165778,
"narHash": "sha256-dwF9nI54a6Fo9XU5s4qmvMXSgCid3YQVGxch00qEMvI=",
"owner": "Supreeeme",
"repo": "xwayland-satellite",
"rev": "a713cf46cb7db84a0d1b57c3a397c610cad3cf98",
"rev": "b6d281967cb0b7bf1dfdb8d0f597b517dc4aa5c5",
"type": "github"
},
"original": {
"owner": "Supreeeme",
"ref": "v0.5",
"ref": "v0.4",
"repo": "xwayland-satellite",
"type": "github"
}
@ -3009,11 +3009,11 @@
"xwayland-satellite-unstable": {
"flake": false,
"locked": {
"lastModified": 1730258684,
"narHash": "sha256-E+69sdxUhPSNI8+JlTL6KKbNv5qVD3L1y8hdVO37A44=",
"lastModified": 1729838433,
"narHash": "sha256-o9D859STqawTSe6mkXpm3xR/gitYgOHy32xOhOfT3vw=",
"owner": "Supreeeme",
"repo": "xwayland-satellite",
"rev": "b0ee6db9fa9901c675b3c7e952c2a8ce987a0f58",
"rev": "67efa2c559b53d3ca90c131c06c247278783880d",
"type": "github"
},
"original": {

View file

@ -25,11 +25,8 @@
});
formatter = eachSystem (pkgs: treefmtEval.${pkgs.system}.config.build.wrapper);
nixosModules = import ./modules;
nixosConfigurations = let
lib' = import ./lib {inherit inputs lib';};
in
import ./hosts {inherit inputs lib';};
packages = eachSystem (pkgs: import ./pkgs {inherit inputs pkgs;});
nixosConfigurations = import ./hosts {inherit self inputs;};
packages = eachSystem (pkgs: import ./pkgs pkgs);
deploy.nodes = import ./nodes {inherit self inputs;};
};
inputs = {

View file

@ -1,4 +1,8 @@
{pkgs, ...}: {
{
inputs,
pkgs,
...
}: {
imports = [
./browsers
./media
@ -35,9 +39,9 @@
nautilus
simple-scan
entr
# inputs.self.packages.${pkgs.system}.mcuxpresso.ide
# dfu-util
# segger-jlink
inputs.self.packages.${pkgs.system}.mcuxpresso.ide
dfu-util
segger-jlink
# inputs.self.packages.${pkgs.system}.mcuxpresso.config-tools
];
}

View file

@ -2,7 +2,9 @@
lib,
pkgs,
...
}: {
}: let
inherit (lib) getExe;
in {
programs.helix = {
enable = true;
settings = {

View file

@ -1,21 +1,15 @@
{
pkgs,
inputs,
...
}: {
home.packages = [
pkgs.bottles
pkgs.lutris
pkgs.mangohud
pkgs.path-of-building
pkgs.protonplus
pkgs.r2modman
{pkgs, ...}: {
home.packages = with pkgs; [
bottles
lutris
mangohud
path-of-building
protonplus
r2modman
# steamtinkerlaunch dependencies
pkgs.xdotool
pkgs.xorg.xwininfo
pkgs.yad
inputs.self.packages.${pkgs.system}.bolt-launcher
xdotool
xorg.xwininfo
yad
];
}

View file

@ -1,3 +1,3 @@
{
_: {
services.udiskie.enable = true;
}

View file

@ -1,4 +1,5 @@
{
lib,
config,
inputs,
pkgs,

View file

@ -1,4 +1,4 @@
{
_: {
programs.wezterm = {
enable = true;
# package = inputs.wezterm.packages.${pkgs.system}.default;

View file

@ -1,4 +1,4 @@
{
_: {
programs = {
direnv = {
enable = true;

View file

@ -1,4 +1,4 @@
{
_: {
programs.zellij = {
enable = true;
settings = {

View file

@ -14,10 +14,6 @@
name = "fzf";
inherit (pkgs.fishPlugins.fzf) src;
}
{
name = "autopair";
inherit (pkgs.fishPlugins.autopair) src;
}
];
};

View file

@ -1,4 +1,4 @@
{
_: {
programs.starship = {
enable = true;
enableTransience = true;

View file

@ -1,4 +1,4 @@
{
_: {
programs.zoxide = {
enable = true;
enableBashIntegration = false;

View file

@ -1,10 +1,8 @@
{modulesPath, ...}: {
imports = [(modulesPath + "/profiles/qemu-guest.nix")];
boot = {
loader.grub.device = "/dev/sda";
initrd.availableKernelModules = ["ata_piix" "uhci_hcd" "xen_blkfront" "vmw_pvscsi"];
initrd.kernelModules = ["nvme"];
};
boot.loader.grub.device = "/dev/sda";
boot.initrd.availableKernelModules = ["ata_piix" "uhci_hcd" "xen_blkfront" "vmw_pvscsi"];
boot.initrd.kernelModules = ["nvme"];
fileSystems."/" = {
device = "/dev/sda1";
fsType = "ext4";

View file

@ -1,31 +1,37 @@
{
self,
inputs,
lib',
...
}: let
inherit (lib') mkSystem;
inherit (inputs.nixpkgs.lib) nixosSystem;
specialArgs = {
inherit inputs self;
};
in {
vamos = mkSystem {
vamos = nixosSystem {
system = "x86_64-linux";
inherit specialArgs;
modules = [
./vamos
inputs.self.nixosModules.theme
self.nixosModules.theme
inputs.nixos-hardware.nixosModules.framework-13-7040-amd
];
};
solaire = mkSystem {
solaire = nixosSystem {
system = "x86_64-linux";
inherit specialArgs;
modules = [
./solaire
inputs.self.nixosModules.theme
self.nixosModules.theme
];
};
anastacia = mkSystem {
anastacia = nixosSystem {
system = "x86_64-linux";
inherit specialArgs;
modules = [
./anastacia
];

View file

@ -1,25 +1,28 @@
{specialArgs, ...}: let
system = ../../system;
home = ../../home;
{
self,
specialArgs,
...
}: let
mod = "${self}/system";
in {
imports = [
./hardware-configuration.nix
./modules
system
"${system}/hardware/uni-sync.nix"
"${mod}"
"${mod}/hardware/uni-sync.nix"
"${system}/programs/gnome.nix"
"${system}/programs/games.nix"
"${system}/hardware/nvidia.nix"
"${mod}/programs/gnome.nix"
"${mod}/programs/games.nix"
"${mod}/hardware/nvidia.nix"
];
home-manager = {
users.nezia.imports = [
home
"${home}/programs/games"
"${self}/home"
"${self}/home/programs/games"
"${home}/terminal/emulators/foot.nix"
"${self}/home/terminal/emulators/foot.nix"
];
extraSpecialArgs = specialArgs;
};

View file

@ -15,10 +15,10 @@ in {
"${mod}/hardware/fprintd.nix"
"${mod}/services/power.nix"
"${mod}/services/brightness.nix"
"${mod}/services/keyd.nix"
"${mod}/services/logind.nix"
"${mod}/services/greetd.nix"
"${mod}/services/kanata.nix"
"${mod}/programs/niri"
"${mod}/services/gnome.nix"

View file

@ -1,9 +1,8 @@
{
inputs,
lib',
pkgs,
lib,
...
}: let
inherit (inputs.nixpkgs) lib;
# convert rrggbb hex to rgba(r, g, b, a)
rgba = c: let
r = toString (hexToDec (builtins.substring 0 2 c));
@ -87,25 +86,8 @@
];
# Create a KDE konsole color scheme from base16 colors
mkKonsoleColorScheme = pkgs: scheme:
mkKonsoleColorScheme = scheme:
pkgs.writeText "${scheme.name}.colorscheme" (schemeToKonsole scheme);
# https://github.com/diniamo/niqs/blob/caf396bb470619fa06936a379eec6e283c3c3d95/lib/default.nix#L13-L35C7
mkSystem = {system, ...} @ args:
lib.nixosSystem {
system = null;
specialArgs = {inherit inputs;};
modules =
[
{
_module.args = {
inherit system lib';
};
nixpkgs = {inherit system;};
}
]
++ args.modules or [];
};
in {
inherit mkKonsoleColorScheme rgba mkSystem;
inherit mkKonsoleColorScheme rgba;
}

View file

@ -1,208 +0,0 @@
{
lib,
stdenv,
fetchFromGitHub,
makeWrapper,
cmake,
ninja,
libarchive,
libz,
jdk17,
libcef,
luajit,
xorg,
mesa,
glib,
nss,
nspr,
atk,
at-spi2-atk,
libdrm,
expat,
libxkbcommon,
gtk3,
pango,
cairo,
alsa-lib,
dbus,
at-spi2-core,
cups,
systemd,
buildFHSEnv,
copyDesktopItems,
makeDesktopItem,
}: let
cef = libcef.overrideAttrs (_: {
installPhase = let
gl_rpath = lib.makeLibraryPath [
stdenv.cc.cc.lib
];
rpath = lib.makeLibraryPath [
glib
nss
nspr
atk
at-spi2-atk
libdrm
expat
xorg.libxcb
libxkbcommon
xorg.libX11
xorg.libXcomposite
xorg.libXdamage
xorg.libXext
xorg.libXfixes
xorg.libXrandr
mesa
gtk3
pango
cairo
alsa-lib
dbus
at-spi2-core
cups
xorg.libxshmfence
systemd
];
in ''
mkdir -p $out/lib/ $out/share/cef/
cp libcef_dll_wrapper/libcef_dll_wrapper.a $out/lib/
cp -r ../Resources/* $out/lib/
cp -r ../Release/* $out/lib/
patchelf --set-rpath "${rpath}" $out/lib/libcef.so
patchelf --set-rpath "${gl_rpath}" $out/lib/libEGL.so
patchelf --set-rpath "${gl_rpath}" $out/lib/libGLESv2.so
cp ../Release/*.bin $out/share/cef/
cp -r ../Resources/* $out/share/cef/
cp -r ../include $out
cp -r ../libcef_dll $out
cp -r ../cmake $out
'';
});
bolt = stdenv.mkDerivation (finalAttrs: {
pname = "bolt-launcher";
version = "0.10.0";
src = fetchFromGitHub {
owner = "AdamCake";
repo = "bolt";
rev = finalAttrs.version;
fetchSubmodules = true;
hash = "sha256-2IoFzD+yhQv1Y7D+abeNUT23BC4P1xZTALF8Y+Zsg44=";
};
nativeBuildInputs = [
cmake
ninja
luajit
makeWrapper
copyDesktopItems
];
buildInputs = [
mesa
xorg.libX11
xorg.libxcb
libarchive
libz
cef
jdk17
];
desktopItems = [
(makeDesktopItem {
inherit (bolt) name;
desktopName = "Bolt Launcher";
keywords = [
"Game"
];
exec = "${bolt.name}";
terminal = false;
categories = ["Game"];
icon = "bolt-launcher";
})
];
cmakeFlags = [
"-D CMAKE_BUILD_TYPE=Release"
"-D BOLT_LUAJIT_INCLUDE_DIR=${luajit}/include"
"-G Ninja"
];
preConfigure = ''
ls -al
mkdir -p cef/dist/Release cef/dist/Resources cef/dist/include
ln -s ${cef}/lib/* cef/dist/Release
ln -s ${cef}/share/cef/*.pak cef/dist/Resources
ln -s ${cef}/share/cef/icudtl.dat cef/dist/Resources
ln -s ${cef}/share/cef/locales cef/dist/Resources
ln -s ${cef}/include/* cef/dist/include
ln -s ${cef}/libcef_dll cef/dist/libcef_dll
ln -s ${cef}/cmake cef/dist/cmake
ln -s ${cef}/CMakeLists.txt cef/dist
'';
postInstall = ''
for size in 16 32 64 128 256; do
size_dir="''${size}x''${size}"
ls -al $src/icon
mkdir -p $out/share/icons/hicolor/''${size_dir}/apps
cp $src/icon/$size.png $out/share/icons/hicolor/''${size_dir}/apps/bolt-launcher.png
done
mkdir -p $out/share/icons/hicolor/scalable/apps/
cp $src/icon/bolt.svg $out/share/icons/hicolor/scalable/apps/bolt-launcher.svg
'';
postFixup = ''
makeWrapper "$out/opt/bolt-launcher/bolt" "$out/bin/${finalAttrs.pname}-${finalAttrs.version}" \
--set JAVA_HOME "${jdk17}"
ls -al $out/bin
mkdir -p $out/lib
cp $out/usr/local/lib/libbolt-plugin.so $out/lib
'';
});
in
buildFHSEnv {
inherit (bolt) name version;
targetPkgs = pkgs:
[bolt]
++ (with pkgs; [
xorg.libSM
xorg.libXxf86vm
xorg.libX11
glib
pango
cairo
gdk-pixbuf
gtk2-x11
libz
libcap
libsecret
openssl_1_1
SDL2
libGL
]);
extraInstallCommands = ''
mkdir -p $out/share/applications $out/share/icons
ln -s ${bolt}/share/applications/*.desktop \
$out/share/applications/
ln -s ${bolt}/share/icons/hicolor \
$out/share/icons/hicolor
'';
runScript = "${bolt.name}";
meta = {
homepage = "https://github.com/Adamcake/Bolt";
description = "An alternative launcher for RuneScape";
license = lib.licenses.agpl3Plus;
maintainers = with lib.maintainers; [nezia];
platforms = lib.platforms.linux;
mainProgram = "${bolt.name}";
};
}

View file

@ -1,15 +1,3 @@
{
inputs,
pkgs,
...
}: {
pkgs: {
mcuxpresso = import ./mcuxpresso pkgs;
# this is unfortunately needed since bolt-launcher makes use of openssl-1.1.1w, and since it is not part of hosts, we have to add it this way
bolt-launcher =
(import inputs.nixpkgs {
inherit (pkgs) system;
config.permittedInsecurePackages = ["openssl-1.1.1w"];
})
.callPackage
./bolt-launcher.nix {};
}

View file

@ -4,6 +4,7 @@
version = "24.9.25";
description = "MCUXpresso IDE";
filename = "${name}-${version}.x86_64.deb";
mcuxpressoideSrc = pkgs.stdenv.mkDerivation {
inherit version description;
name = "${name}-src";
@ -19,6 +20,7 @@
ar -xv deb/${filename}
tar xfvz data.tar.gz -C .
mkdir -p ./final/eclipse
find . -type f -iname "*mcuxpresso*" -o -iname "*.png" -o -iname "*.svg"
mv ./usr/local/${name}-${version}/ide/* ./usr/local/${name}-${version}/ide/.* final/eclipse
mv final/eclipse/mcuxpressoide final/eclipse/eclipse
mv final/eclipse/mcuxpressoide.ini final/eclipse/eclipse.ini
@ -37,6 +39,7 @@
tar -czf $out ./
'';
};
mcuxpressoide = pkgs.eclipses.buildEclipse {
name = "mcuxpresso-eclipse";
inherit description;
@ -79,6 +82,7 @@ in
dontUnpack = true;
dontConfigure = true;
dontBuild = true;
nativeBuildInputs = [pkgs.copyDesktopItems];
desktopItems = [
(pkgs.makeDesktopItem {
@ -88,6 +92,7 @@ in
exec = "mcuxpresso";
})
];
installPhase = ''
runHook preInstall
mkdir -p $out/bin $out/lib/udev/rules.d $out/eclipse $out/mcu_data

View file

@ -4,6 +4,7 @@
./users.nix
./security.nix
./networking.nix
../nix
];
i18n = {
defaultLocale = "en_US.UTF-8";

View file

@ -1,7 +1,6 @@
{
imports = [
./core
./nix
./hardware/printing.nix
./hardware/fwupd.nix

View file

@ -1,12 +1,18 @@
{
{pkgs, ...}: {
nixpkgs = {
overlays = [
(_: prev: {
lib =
prev.lib
// import ../../lib {
inherit (prev) lib pkgs;
};
})
];
config = {
allowUnfree = true;
permittedInsecurePackages = [
"cinny-4.2.2"
"cinny-unwrapped-4.2.2"
"segger-jlink-qt4-796s"
];
permittedInsecurePackages = ["cinny-4.2.2" "cinny-unwrapped-4.2.2" "segger-jlink-qt4-796s"];
segger-jlink.acceptLicense = true;
};
};

View file

@ -1,4 +1,4 @@
{
{pkgs, ...}: {
programs = {
steam.enable = true;
gamemode.enable = true;

View file

@ -1,9 +1,11 @@
{pkgs, ...}: {
imports = [
./docker.nix
./gnupg.nix
./pipewire.nix
./kmscon.nix
];
services.udev.packages = [pkgs.segger-jlink];
{
inputs,
pkgs,
...
}: {
imports = [./docker.nix ./gnupg.nix ./pipewire.nix ./kmscon.nix];
services.udev.packages = [pkgs.segger-jlink inputs.self.packages.${pkgs.system}.mcuxpresso.ide];
services.udev.extraRules = ''
SUBSYSTEM=="usb", ATTR{idVendor}=="1fc9", ATTR{idProduct}=="0132", MODE="0666"
'';
}

View file

@ -1,8 +1,9 @@
{pkgs, ...}: {
virtualisation.podman = {
_: {
virtualisation.docker = {
enable = true;
dockerCompat = true;
rootless = {
enable = true;
setSocketVariable = true;
};
};
environment.systemPackages = [pkgs.distrobox];
}

View file

@ -1,33 +0,0 @@
{
services.kanata = {
enable = true;
keyboards.default = {
extraDefCfg = "process-unmapped-keys yes";
config = ''
(defsrc
caps a s d f j k l ;
)
(defvar
tap-time 150
hold-time 200
)
(defalias
escctrl (tap-hold 100 100 esc lctl)
a (tap-hold $tap-time $hold-time a lmet)
s (tap-hold $tap-time $hold-time s lalt)
d (tap-hold $tap-time $hold-time d lsft)
f (tap-hold $tap-time $hold-time f lctl)
j (tap-hold $tap-time $hold-time j rctl)
k (tap-hold $tap-time $hold-time k rsft)
l (tap-hold $tap-time $hold-time l ralt)
; (tap-hold $tap-time $hold-time ; rmet)
)
(deflayer base
@escctrl @a @s @d @f @j @k @l @;
)
'';
};
};
}

View file

@ -1,4 +1,4 @@
{
_: {
hardware.pulseaudio.enable = false;
# rtkit is optional but recommended
security.rtkit.enable = true;