diff --git a/.DS_Store b/.DS_Store index 2ffb110..7669376 100644 Binary files a/.DS_Store and b/.DS_Store differ diff --git a/core/boot.nix b/core/boot.nix index bf148b9..fb9c51d 100644 --- a/core/boot.nix +++ b/core/boot.nix @@ -9,7 +9,12 @@ #services.journald.extraConfig = "Storage=volatile"; boot = { - kernelParams = [ "fsck.mode=skip" ]; + #kernel.sysctl = { + # "vm.max_map_count" = 16777216; + # "fs.file-max" = 524288; + #}; + + kernelParams = [ "fsck.mode=skip" "nvidia_drm.fbdev=1" "nvidia-drm.modeset=1" ]; initrd.checkJournalingFS = false; diff --git a/core/core.nix b/core/core.nix index e212cb4..6983e4b 100644 --- a/core/core.nix +++ b/core/core.nix @@ -11,5 +11,6 @@ ./network.nix ./boot.nix ./security.nix + # ./swap.nix ]; } diff --git a/core/graphics.nix b/core/graphics.nix index 2317ec5..60adacf 100644 --- a/core/graphics.nix +++ b/core/graphics.nix @@ -1,4 +1,4 @@ -{ config, ... }: +{ config, pkgs, ... }: { services.xserver.videoDrivers = ["nvidia"]; @@ -12,9 +12,9 @@ modesetting.enable = true; powerManagement.enable = false; powerManagement.finegrained = false; - open = false; + open = true; nvidiaSettings = true; - package = config.boot.kernelPackages.nvidiaPackages.beta; + package = config.boot.kernelPackages.nvidiaPackages.stable; }; }; } diff --git a/core/network.nix b/core/network.nix index 86c68ff..0093750 100644 --- a/core/network.nix +++ b/core/network.nix @@ -3,6 +3,29 @@ { services.openssh.enable = true; + networking.firewall.enable = true; + + networking.nameservers = [ "8.8.8.8" "8.8.4.4" ]; + + services.dnscrypt-proxy2 = { + enable = true; + + settings = { + ipv6_servers = true; + require_dnssec = true; + + sources.public-resolvers = { + urls = [ + "https://raw.githubusercontent.com/DNSCrypt/dnscrypt-resolvers/master/v3/public-resolvers.md" + "https://download.dnscrypt.info/resolvers-list/v3/public-resolvers.md" + ]; + + cache_file = "/var/cache/dnscrypt-proxy/public-resolvers.md"; + minisign_key = "RWQf6LRCGA9i53mlYecO4IzT51TGPpvWucNSCh1CBM0QTaLn73Y7GFO3"; + }; + }; + }; + networking = { hostName = "nix"; useNetworkd = true; diff --git a/core/swap.nix b/core/swap.nix new file mode 100644 index 0000000..10a3e81 --- /dev/null +++ b/core/swap.nix @@ -0,0 +1,15 @@ +{ ... }: + +{ + swapDevices = [ + { + device = "/var/lib/swapfile"; + size = 16 * 1024; + } + ]; + + zramSwap = { + enable = true; + memoryMax = 64 * 1024 * 1024 * 1024; + }; +} diff --git a/core/user.nix b/core/user.nix index da693dd..52920fa 100644 --- a/core/user.nix +++ b/core/user.nix @@ -4,6 +4,6 @@ users.users.bug = { isNormalUser = true; description = "Bug"; - extraGroups = [ "networkmanager" "wheel" ]; + extraGroups = [ "networkmanager" "wheel" "audio" "video" "docker" ]; }; } diff --git a/etc/.DS_Store b/etc/.DS_Store index 052ed95..1e073e3 100644 Binary files a/etc/.DS_Store and b/etc/.DS_Store differ diff --git a/etc/nixos/flake.nix b/etc/nixos/flake.nix index d59a5f4..a3bfa57 100644 --- a/etc/nixos/flake.nix +++ b/etc/nixos/flake.nix @@ -7,6 +7,11 @@ flatpaks.url = "github:gmodena/nix-flatpak/?ref=latest"; nixos-cosmic.url = "github:lilyinstarlight/nixos-cosmic"; + + nix-citizen.url = "github:LovingMelody/nix-citizen"; + + nix-gaming.url = "github:fufexan/nix-gaming"; + nix-citizen.inputs.nix-gaming.follows = "nix-gaming"; }; outputs = inputs@{ self, nixpkgs, home-manager, flatpaks, ... }: @@ -16,6 +21,9 @@ { nixosConfigurations.nix = nixpkgs.lib.nixosSystem { inherit system; + + specialArgs = { inherit inputs; }; + modules = [ { nix.settings = { @@ -24,10 +32,12 @@ }; } - nixos-cosmic.nixosModules.default + #nixos-cosmic.nixosModules.default flatpaks.nixosModules.nix-flatpak + nix-citizen.nixosModules.default + ./configuration.nix ]; }; diff --git a/gnome.nix b/gnome.nix index 17ac53d..932a474 100644 --- a/gnome.nix +++ b/gnome.nix @@ -2,10 +2,10 @@ { environment.systemPackages = with pkgs.gnomeExtensions; [ - arcmenu - rounded-window-corners-reborn - just-perfection - clipboard-history + #arcmenu + #rounded-window-corners-reborn + #just-perfection + #clipboard-history #pano ]; @@ -21,8 +21,14 @@ desktopManager.cosmic.enable = true; - displayManager.gdm.enable = true; - desktopManager.gnome.enable = true; + #desktopManager.plasma6.enable = true; + + displayManager.sddm.enable = true; + + displayManager.sddm.wayland.enable = true; + + #displayManager.gdm.enable = true; + #desktopManager.gnome.enable = true; xserver = { enable = true; @@ -46,3 +52,7 @@ }; }; } + + + + diff --git a/gtk.lua b/gtk.lua deleted file mode 100644 index 34bd83b..0000000 --- a/gtk.lua +++ /dev/null @@ -1,5 +0,0 @@ - -local gtk = require("lgi").require("Gtk", "3.0") -local dialog = gtk.MessageDialog { text = 'This is a text message.' } -dialog:show_all() -gtk.main() \ No newline at end of file diff --git a/packages/flatpak.nix b/packages/flatpak.nix index 4a3c04c..2b5dd33 100644 --- a/packages/flatpak.nix +++ b/packages/flatpak.nix @@ -6,14 +6,10 @@ "org.vinegarhq.Sober" "org.vinegarhq.Vinegar" { flatpakref = "https://dl.flathub.org/repo/appstream/org.gimp.GIMP.flatpakref"; sha256 = "1xw8vwpgmyjf5xhh101gqffpwa8x41pysfdl3glx2xv7ydhpc3bj"; } - #"dev.qwery.AddWater" - #"io.github.Foldex.AdwSteamGtk" - #"com.jeffser.Alpaca" - "com.bambulab.BambuStudio" - #"org.gabmus.gfeeds" + #"com.bambulab.BambuStudio" "org.gnome.Decibels" "org.pipewire.Helvum" #"io.github.giantpinkrobots.flatsweep" - "io.missioncenter.MissionCenter" + "net.codelogistics.clicker" ]; } diff --git a/packages/packages.nix b/packages/packages.nix index b292ffe..db1fca0 100644 --- a/packages/packages.nix +++ b/packages/packages.nix @@ -12,11 +12,11 @@ allowUnfree = true; #cudaSupport = true; }; - + overlays = [ - #(self: super: { - # plasticity = self.callPackage ./plasticity.nix { }; - #}) + (self: super: { + plasticity-beta = self.callPackage ./plasticity.nix { }; + }) ]; }; @@ -32,6 +32,10 @@ uninstallUnmanaged = true; }; + environment.sessionVariables = { + WEBKIT_DISABLE_COMPOSITING_MODE = "1"; + }; + programs.virt-manager.enable = true; users.groups.libvirtd.members = ["bug"]; @@ -40,6 +44,11 @@ virtualisation.spiceUSBRedirection.enable = true; + virtualisation.docker.enable = true; + + programs.appimage.enable = true; + programs.appimage.binfmt = true; + programs = { bash.shellAliases = { fetch = "fastfetch --file ~/Pictures/Ansi/nix.ans"; @@ -62,6 +71,8 @@ ssh -R \"$\{name}:80:localhost:$\{port}\" tuns.sh'\'' _"; # pgs name directory pgs = "bash -c '\''if [ \"$#\" -ne 2 ]; then echo \"Usage: pgs NAME DIRECTORY\"; exit 1; fi; rsync -rv \"$2\" pgs.sh:/\"$1\"'\'' _"; + + bambu = "env -u WAYLAND_DISPLAY XDG_SESSION_TYPE=x11 WEBKIT_FORCE_COMPOSITING_MODE=1 WEBKIT_DISABLE_COMPOSITING_MODE=1 GBM_BACKEND=dri bambu-studio"; }; dconf.enable = lib.mkDefault true; @@ -79,29 +90,71 @@ ssh -R \"$\{name}:80:localhost:$\{port}\" tuns.sh'\'' _"; enable = true; libraries = with pkgs; [ gtk3 - glib - libgbinder - pcre2 - gtk4 - libadwaita - lxc - dnsmasq - alsa-lib - libGL - - libGLU - mesa - gcc - zlib xorg.libX11 - fontconfig - pcre2 - xorg.libXext + #glib + #libgbinder + #pcre2 + #gtk4 + #libadwaita + #lxc + #dnsmasq + #alsa-lib + #libGL + + #libGLU + mesa + #gcc + zlib + #xorg.libX11 + #fontconfig + #pcre2 + #xorg.libXext + #gcc + #xorg.libxcb + #pkgs.qt5.full pkgs.freetype pkgs.fontconfig + #pkgs.xorg.libX11 pkgs.xorg.libxcb pkgs.xorg.libXext + #pkgs.xorg.libXrender + + + cmake + clang + zulu + jdk + openjdk + mesa + libGL + libGLU + zlib + glfw + gtkmm4 + pangomm_2_48 + #glibmm_2_68 + cairomm_1_16 + libsigcxx30 + gtk4 + pango + gdk-pixbuf + cairo + harfbuzz + graphene + glib + vulkan-loader + glew + freeglut gcc - xorg.libxcb - pkgs.qt5.full pkgs.freetype pkgs.fontconfig - pkgs.xorg.libX11 pkgs.xorg.libxcb pkgs.xorg.libXext - pkgs.xorg.libXrender + + brotli + libpng + + libunwind + + jdk17_headless + libunwind + gcc + mesa + glew + glfw + zlib ]; }; }; diff --git a/packages/plasticity.nix b/packages/plasticity.nix index afe289c..b9ed9a9 100644 --- a/packages/plasticity.nix +++ b/packages/plasticity.nix @@ -34,13 +34,13 @@ }: stdenv.mkDerivation rec { pname = "plasticity"; - version = "25.2.0.beta.13"; + version = "25.3.0.beta.3"; src = fetchurl { #url = "https://github.com/nkallen/plasticity/releases/download/v${version}/Plasticity-${version}-1.x86_64.rpm"; #hash = "sha256:166f8hvgdgr5lpkff28ms5qb425b2w7ckskchsabr1nwq49f7y74"; - url = "https://github.com/4DBug/plasticity/releases/download/${version}/plasticity-beta-${version}-1.x86_64-2.rpm"; - hash = "sha256:0hqy7gw7fq49bvvpch5k5j5ax9y0z1a1wxm3jhg2w2dxlh79jrl5"; + url = "https://github.com/4DBug/plasticity/releases/download/${version}/plasticity-beta-${version}-1.x86_64.rpm"; + hash = "sha256:03a3q07knqi3bdipxkp2igqpd3ngbrdj1bw9cdbzkhihdllgmba4"; }; passthru.updateScript = ./update.sh; @@ -117,6 +117,11 @@ stdenv.mkDerivation rec { runHook postInstall ''; + postInstall = '' + # Remove dangling symlinks created by the rpm + find $out -xtype l -delete + ''; + preFixup = '' gappsWrapperArgs+=(--add-flags "--use-gl=egl") ''; diff --git a/packages/system.nix b/packages/system.nix index f7eb7c4..55091fc 100644 --- a/packages/system.nix +++ b/packages/system.nix @@ -1,4 +1,4 @@ -{ pkgs, ... }: +{ pkgs, inputs, ... }: { environment.systemPackages = with pkgs; [ @@ -25,28 +25,74 @@ nixd nil - gtk3 - gobject-introspection + #gtk3 + #gobject-introspection - libadwaita + #libadwaita - appimage-run + #appimage-run - nimble - clang - gnumake - nim - pkg-config - mimalloc + #nimble + #clang + #gnumake + #nim + #pkg-config + #mimalloc gnome-boxes - glib - libgbinder - pcre2 - gtk4 - libadwaita - lxc - dnsmasq + #glib + #libgbinder + #pcre2 + #gtk4 + #libadwaita + #lxc + #dnsmasq + + #cmake + #clang + #zulu + jdk + openjdk + #mesa + #libGLU + zlib + glfw + #gtkmm4 + #pangomm_2_48 + #glibmm_2_68 + #cairomm + #libsigcxx + #gtk4 + #pango + #gdk-pixbuf + #cairo + #harfbuzz + #graphene + #glib + #vulkan-loader + glew + #freeglut + #gcc + + #gparted + #polkit + + #dxvk + #vkd3d + #wine + wine64 + wineWow64Packages.full + + #lug-helper + + #inputs.nix-citizen.packages.${system}.star-citizen-git + #nix-citizen.packages.${system}.star-citizen + #nix-citizen.packages.${system}.wine-astral + + docker + freerdp + appimage-run + gamemode ]; } diff --git a/packages/user.nix b/packages/user.nix index aa73c5b..be647a5 100644 --- a/packages/user.nix +++ b/packages/user.nix @@ -1,10 +1,13 @@ -{ pkgs, ... }: +{ config, pkgs, ... }: +let + unstable = import { config = config.nixpkgs.config or {}; }; +in { users.users.bug.packages = with pkgs; [ # ide vscode - zed-editor + #zed-editor # languages luau @@ -30,6 +33,7 @@ pynput python-uinput + mido # ninja # pybind11 @@ -85,12 +89,14 @@ numpy scipy imageio + + evdev ])) nodejs # 3D - (blender.withPackages (ps: with ps; [ + (unstable.blender.withPackages (ps: with ps; [ libGLU gcc zlib @@ -103,7 +109,8 @@ glib ])) - #plasticity + plasticity + plasticity-beta # video # kdenlive @@ -116,20 +123,18 @@ # music nicotine-plus - furnace + #furnace pulseaudio # utilties #mapscii cloudflared - base16-schemes + #base16-schemes ptyxis - rpi-imager + #rpi-imager fastfetch tree - gnome-tweaks - wine - wine64 + #gnome-tweaks xclicker gh scanmem @@ -137,15 +142,25 @@ samrewritten #testdisk impression - bambu-studio - sushi + #bambu-studio + orca-slicer + #sushi #lutris resources #discord + dissent + authenticator - eyedropper + #eyedropper #turtle #xonotic buffer + + steamtinkerlaunch + protonup-qt + + obs-studio + + prismlauncher ]; }