Move overlays up so that systempackages can also access them; use a mongodb package from bryanasdev000
diff --git a/src/apps/personal/overlays/anytype.nix b/src/apps/personal/overlays/anytype.nix
deleted file mode 100644
index 7106f27..0000000
--- a/src/apps/personal/overlays/anytype.nix
+++ /dev/null
@@ -1,39 +0,0 @@
-final: prev: let
-  build = "57693545";
-  sha = "sha256-QyexUZNn7QGHjXYO/+1kUebTmAzdVpwG9Ile8Uh3i8Q=";
-
-  pname = "anytype";
-  name = "${pname}-${build}";
-
-  src = final.fetchurl {
-    url = "https://download.anytype.io/?action=download&key=desktop&id=${build}";
-    sha256 = sha;
-    name = "AnyType-${build}.AppImage";
-  };
-
-  appimageContents = final.appimageTools.extractType2 { inherit name src; };
-in {
-  anytype = prev.appimageTools.wrapType2 {
-    inherit name src;
-
-    extraPkgs = pkgs: (prev.appimageTools.defaultFhsEnvArgs.multiPkgs pkgs)
-      ++ [ pkgs.libsecret ];
-
-    extraInstallCommands = ''
-      mv $out/bin/${name} $out/bin/${pname}
-      install -m 444 -D ${appimageContents}/anytype2.desktop -t $out/share/applications
-      substituteInPlace $out/share/applications/anytype2.desktop \
-      --replace 'Exec=AppRun' 'Exec=${pname}'
-      install -m 444 -D ${appimageContents}/usr/share/icons/hicolor/0x0/apps/anytype2.png \
-        $out/share/icons/hicolor/512x512/apps/anytype2.png
-    '';
-
-    meta = with prev.lib; {
-      description = "P2P note-taking tool";
-      homepage = "https://anytype.io/";
-      license = licenses.unfree;
-      maintainers = with maintainers; [ bbigras ];
-      platforms = [ "x86_64-linux" ];
-    };
-  };
-}
diff --git a/src/apps/personal/overlays/electron-screenshare.nix b/src/apps/personal/overlays/electron-screenshare.nix
deleted file mode 100644
index 372342f..0000000
--- a/src/apps/personal/overlays/electron-screenshare.nix
+++ /dev/null
@@ -1,51 +0,0 @@
-# Modified from https://github.com/gytis-ivaskevicius/nixfiles/blob/5439c8f4d7ccaeed57150846b1ed8afa0b7063ed/overlays/default.nix, which is licensed under the MIT license
-# Below is a copy of that license:
-/*
-MIT License
-
-Copyright (c) 2021 Gytis Ivaskevicius
-
-Permission is hereby granted, free of charge, to any person obtaining a copy
-of this software and associated documentation files (the "Software"), to deal
-in the Software without restriction, including without limitation the rights
-to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
-copies of the Software, and to permit persons to whom the Software is
-furnished to do so, subject to the following conditions:
-
-The above copyright notice and this permission notice shall be included in all
-copies or substantial portions of the Software.
-
-THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
-IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
-FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
-AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
-LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
-OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
-SOFTWARE.
-*/
-# Therefore, this file is also copyable under MIT as it represents a "substantial portion" of the original code
-
-final: prev: {
-  discord = final.makeDesktopItem {
-    name = "Discord";
-    desktopName = "Discord";
-    genericName = "All-in-one cross-platform voice and text chat for gamers";
-    exec = "${final.chromium}/bin/chromium --app=\"https://discord.com/channels/@me\" --autoplay-policy=no-user-gesture-required --enable-features=WebUIDarkMode --force-dark-mode";
-    icon = "discord";
-    type = "Application";
-    categories = [ "Network" "InstantMessaging" ];
-    terminal = false;
-    mimeTypes=["x-scheme-handler/discord"];
-  };
-
-  element-desktop-wayland = final.makeDesktopItem {
-    name = "Element";
-    desktopName = "Element";
-    genericName = "Secure and independent communication, connected via Matrix";
-    exec = "${final.chromium}/bin/chromium --app=\"https://app.element.io/#/home\" --autoplay-policy=no-user-gesture-required --enable-features=WebUIDarkMode --force-dark-mode";
-    icon = "element";
-    type = "Application";
-    categories = [ "Network" "InstantMessaging" ];
-    terminal = false;
-  };
-}
diff --git a/src/apps/personal/overlays/hollywood.nix b/src/apps/personal/overlays/hollywood.nix
deleted file mode 100644
index 1da1d8f..0000000
--- a/src/apps/personal/overlays/hollywood.nix
+++ /dev/null
@@ -1,43 +0,0 @@
-final: prev: let
-  hollywood = final.stdenv.mkDerivation {
-    name = "hollywood-1.7";
-
-    src = final.fetchgit {
-      url = https://github.com/dustinkirkland/hollywood.git;
-      rev = "58e1e15e6f02cb05c2cad8163c27dabc98e3f19f";
-      sha256 = "4a0e4d499bd00da76f17c35518dee56c5eecd6c9a582f26bd52d119505e3f61a";
-    };
-
-    buildInputs = [ final.makeWrapper ];
-
-    patchPhase = ''
-      substituteInPlace bin/hollywood \
-        --replace /bin/bash ${final.bash}/bin/bash
-    '';
-
-    installPhase = ''
-      # Create the output directory and copy the core files into that
-      # directory.
-      mkdir -p $out
-      cp -R bin share $out
-      # Only install the supported plugins.
-      mkdir -p $out/lib/hollywood
-      cp lib/hollywood/apg $out/lib/hollywood
-      cp lib/hollywood/bmon $out/lib/hollywood
-      cp lib/hollywood/cmatrix $out/lib/hollywood
-      cp lib/hollywood/hexdump $out/lib/hollywood
-      cp lib/hollywood/htop $out/lib/hollywood
-      cp lib/hollywood/logs $out/lib/hollywood
-      cp lib/hollywood/mplayer $out/lib/hollywood
-      cp lib/hollywood/sshart $out/lib/hollywood
-      cp lib/hollywood/stat $out/lib/hollywood
-      cp lib/hollywood/tree $out/lib/hollywood
-      # Wrap `hollywood` so that it has the paths to all of the tools
-      # required by the plugins (and hollywood itself).
-      wrapProgram $out/bin/hollywood \
-        --suffix-each PATH : "${final.apg}/bin ${final.bmon}/bin ${final.byobu}/bin ${final.ccze}/bin ${final.cmatrix}/bin ${final.htop}/bin ${final.mplayer}/bin ${final.openssh}/bin ${final.tmux}/bin ${final.tree}/bin"
-    '';
-  };
-in {
-  hollywood = hollywood;
-}
diff --git a/src/apps/personal/overlays/hubfs.nix b/src/apps/personal/overlays/hubfs.nix
deleted file mode 100644
index 6dc41b7..0000000
--- a/src/apps/personal/overlays/hubfs.nix
+++ /dev/null
@@ -1,49 +0,0 @@
-final: prev: let
-  version = "1ba013d3fe54de01c52bd74d98037fe4c0029d6e";
-
-  src = final.fetchFromGitHub {
-    owner = "winfsp";
-    repo = "hubfs";
-    rev = version;
-    hash = "sha256-R1nCdua0gacXrglQ4AZfxnO3ngVECCKKiUOgp3dWRGg=";
-  } + "/src";
-in {
-  hubfs = final.buildGoModule {
-    inherit src version;
-
-    name = "hubfs";
-
-    buildInputs = with final; [
-        fuse3
-        fuse
-        fuse-common
-        makeWrapper
-    ];
-
-    checkPhase = ":"; # Bit of a hack here; we need to disable tests as we can't get FUSE inside the build derivation to test the package
-
-    vendorSha256 = "sha256-sT3H1iFSakLHWKhzRcJz2RXf2Owm+8DQy3h3O8MO2nY=";
-
-    proxyVendor = true;
-
-    ldflags = [
-      "-X main.GitVersion=${version}"
-      "-X main.GitVersionFuse=[vendored]"
-      "-X main.BuildDate=unknown"
-    ];
-
-    postInstall = ''
-      wrapProgram $out/bin/hubfs \
-        --suffix PATH : ${final.lib.makeBinPath [ final.fuse final.fuse3 ]}
-      ln -s $out/bin/hubfs $out/bin/mount.fuse.hubfs
-    '';
-
-    meta = with final.lib; {
-      description = "GitHub as a FUSE mount";
-      license = licenses.agpl3;
-      homepage = "https://github.com/winfsp/hubfs";
-      maintainers = with maintainers; [ minion3665 ];
-      platforms = platforms.unix;
-    };
-  };
-}
diff --git a/src/apps/personal/overlays/maintainers.nix b/src/apps/personal/overlays/maintainers.nix
deleted file mode 100644
index 46d40f3..0000000
--- a/src/apps/personal/overlays/maintainers.nix
+++ /dev/null
@@ -1,10 +0,0 @@
-final: prev:  {
-  lib = prev.lib.recursiveUpdate prev.lib {
-    maintainers.minion3665 = {
-      email = "skyler3665@gmail.com";
-      github = "minion3665";
-      githubId = 34243578;
-      name = "Skyler Grey";
-    };
-  };
-}
diff --git a/src/apps/personal/packages/figma-linux.nix b/src/apps/personal/packages/figma-linux.nix
deleted file mode 100644
index 6ebff8a..0000000
--- a/src/apps/personal/packages/figma-linux.nix
+++ /dev/null
@@ -1,132 +0,0 @@
-{ pkgs, lib, stdenv, unzip, fetchurl, makeDesktopItem, buildFHSUserEnv 
-# Specify any font packages to include
-# e.g. figma.override { fonts = [ noto-fonts fira-code ]; }
-, fonts ? [ ]
-}:
-
-let
-  version = "0.10.0";
-  # Figma executable.
-  # Currently won't run outside of FHS even with autopatching - needs help.
-  figma-exec = stdenv.mkDerivation rec {
-    inherit version;
-    pname = "figma-exec";
-    src = fetchurl {
-      url = "https://github.com/Figma-Linux/figma-linux/releases/download/v${version}/figma-linux_${version}_linux_amd64.zip";
-      sha256 = "sha256-1jdaa/oZu5io/sHHkNzdrCgWWfqW0AMqUGx6amJJpyU=";
-    };
-    buildInputs = [ unzip ];
-    unpackPhase = ''
-      runHook preUnpack
-      mkdir output
-      unzip $src -d output
-      runHook postUnpack
-    '';
-    installPhase = ''
-      APPDIR=$out/etc/figma-linux
-      # Copy application to etc
-      mkdir -p $out/etc/figma-linux
-      cp -r output/. $APPDIR
-
-      # Add icons
-      for size in 24 36 48 64 72 96 128 192 256 384 512; do
-        mkdir -p "$out/share/icons/hicolor/''${size}x''${size}/apps"
-        cp -rf "$APPDIR/icons/''${size}x''${size}.png" "$out/share/icons/hicolor/''${size}x''${size}/apps/figma-linux.png"
-      done
-      mkdir -p "$out/share/icons/hicolor/scalable/apps"
-      cp -rf "$APPDIR/icons/scalable.svg" "$out/share/icons/hicolor/scalable/apps/figma-linux.svg"
-
-      # Copy fonts
-      mkdir -p $out/share/fonts
-      ${lib.concatMapStringsSep "\n"
-      (f: "cp -r ${f}/share/fonts/. $out/share/fonts/") fonts}
-
-      # Link binary
-      mkdir -p $out/bin
-      ln -s $out/etc/figma-linux/figma-linux $out/bin/figma
-
-      # Link desktop item
-      mkdir -p $out/share/applications
-      ln -s ${desktopItem}/share/applications/* $out/share/applications
-    '';
-    desktopItem = makeDesktopItem {
-      name = "Figma";
-      exec = "figma";
-      icon = "figma-linux";
-      desktopName = "Figma";
-      genericName = "Vector Graphics Designer";
-      comment = "Unofficial desktop application for linux";
-      type = "Application";
-      categories = [ "Graphics" ];
-      mimeTypes = [ "application/figma" "x-scheme-handler/figma" ];
-      extraConfig = { StartupWMClass = "figma-linux"; };
-    };
-  };
-  figma-fhs = buildFHSUserEnv {
-    name = "figma-fhs";
-    targetPkgs = pkgs: with pkgs; [
-      figma-exec
-      alsaLib
-      at-spi2-atk
-      at-spi2-core
-      atk
-      avahi
-      brotli
-      cairo
-      cups
-      dbus
-      expat
-      freetype
-      pango
-      gcc
-      glib
-      glibc
-      gdk-pixbuf
-      gtk3
-      icu
-      libxkbcommon
-      mesa
-      ffmpeg
-      libdrm
-      libGL
-      nss
-      nspr
-      udev
-      xorg.libXdamage
-      xorg.libXext
-      xorg.libX11
-      xorg.libXau
-      xorg.libxcb
-      xorg.libXcomposite
-      xorg.libXdmcp
-      xorg.libXfixes
-      xorg.libXrender
-      xorg.libXrandr
-      xorg.libxshmfence
-      wayland
-    ];
-    runScript = "figma";
-  };
-
-in stdenv.mkDerivation {
-  pname = "figma";
-  inherit version;
-  src = builtins.path { path = ./.; };
-  nativeBuildInputs = [ figma-fhs ];
-  installPhase = ''
-    # Add binary link
-    mkdir -p $out/bin
-    cp -r ${figma-fhs}/bin/figma-fhs $out/bin/figma
-
-    # Link icons + desktop items
-    mkdir -p $out/share
-    cp -r ${figma-exec}/share/. $out/share
-  '';
-  meta = with lib; {
-    description = "unofficial Electron-based Figma desktop app for Linux";
-    homepage = "https://github.com/Figma-Linux/figma-linux";
-    # While the container application is GPL-2.0,
-    # Figma itself (running in the application) is nonFree.
-    license = licenses.unfree;
-  };
-}
diff --git a/src/apps/personal/packages/oneshot-game.nix b/src/apps/personal/packages/oneshot-game.nix
deleted file mode 100644
index ca2c589..0000000
--- a/src/apps/personal/packages/oneshot-game.nix
+++ /dev/null
@@ -1,5 +0,0 @@
-{ pkgs, ... }: pkgs.appimageTools.wrapType1 {
-  name = "OneShot";
-  src = "./oneshot-game/OneShot.AppImage";
-  extraPkgs = pkgs: with pkgs; [ ];
-}
diff --git a/src/apps/system/mongo.nix b/src/apps/system/mongo.nix
new file mode 100644
index 0000000..e95f8b5
--- /dev/null
+++ b/src/apps/system/mongo.nix
@@ -0,0 +1,7 @@
+{ nixpkgs-mongodb-fix, ... }: {
+  services.mongodb = {
+    package = (import nixpkgs-mongodb-fix { inherit system; config = { allowUnfree = true; }; }).mongodb-4_4;
+    enable = true;
+    dbpath = "/tmp/mongodb";
+  };
+}