helm/profiles/music/default.nix

69 lines
1.9 KiB
Nix
Raw Normal View History

2021-11-29 04:11:58 -08:00
{ pkgs, lib, ... }:
{
environment.systemPackages = with pkgs; [
2021-11-29 04:11:58 -08:00
qjackctl
2022-04-01 18:54:10 -07:00
libjack2
jack2
helm
surge
distrho
orca-c
carla
2021-11-29 04:11:58 -08:00
supercollider
dirt
#calf
sunvox
vcv-rack
2021-11-29 04:11:58 -08:00
lmms
2022-04-01 18:54:10 -07:00
bespokesynth
lsp-plugins # needed for overtone with pipewire
helio-workstation
projectm # milkdrop visualizer
# TODO
# i think this needs a nix-shell with
# ghci packages with tidal installed
# and then also create the script file that runs tidalvim
# https://github.com/tidalcycles/vim-tidal/blob/1.4.8/bin/tidalvim
# nix-shell -p "haskellPackages.ghcWithPackages (pkgs: [pkgs.tidal])" --run ghci
# https://github.com/tidalcycles/Tidal/issues/637
#haskellPackages.tidal
# sc3 plugins
# https://gist.github.com/gosub/a42e265ec38d9df203d6
2021-11-29 04:11:58 -08:00
#ardour
#reaper
#renoise
];
2021-11-29 04:11:58 -08:00
hardware.pulseaudio.enable = lib.mkForce false;
security.rtkit.enable = true;
services.pipewire = {
enable = true;
alsa.enable = true;
alsa.support32Bit = true;
pulse.enable = true;
2021-11-29 04:11:58 -08:00
jack.enable = true;
config = {
2021-11-29 04:11:58 -08:00
pipewire."context.properties"."default.clock.rate" = "48000";
pipewire-pulse."stream.properties"."resample.quality" = 15;
client."stream.properties"."resample.quality" = 15;
client-rt."stream.properties"."resample.quality" = 15;
2022-04-01 18:54:10 -07:00
#jack."context.modules" = [];
};
2021-11-29 04:11:58 -08:00
#media-session.config.bluez-monitor.properties = {
# "bluez5.headset-roles" = [ "hsp_hs" "hsp_ag" ];
# "bluez5.codecs" = [ "aac" "ldac" "aptx_hd" ];
#};
};
2021-11-29 04:11:58 -08:00
#systemd.services.bluethoot.serviceConfig.ExecStart = [
# ""
# "${config.hardware.bluetooth.package}/libexec/bluetooth/bluetoothd --noplugin=sap"
#];
2022-04-01 18:54:10 -07:00
boot.kernelModules = [ "snd-seq" "snd-rawmidi" ]; # midi sequence kernel mods
hardware.pulseaudio.package = pkgs.pulseaudio.override { jackaudioSupport = true; };
}