Skip to content
This repository has been archived by the owner on Sep 30, 2022. It is now read-only.
/ powercord-overlay Public archive

A Nix flake to install Discord with Powercord

License

Notifications You must be signed in to change notification settings

LavaDesu/powercord-overlay

Repository files navigation

Deprecation notice

This overlay is no longer being maintained. Powercord is EOL and Discord has released breaking changes affecting most client mods.

See https://github.com/LunNova/replugged-nix-flake for a flake for Replugged, the community fork/successor of Powercord. As of 2022/09/30, it is yet to support the breaking changes, but has plans to do so.

powercord-overlay

An overlay to easily install Discord with Powercord

Installation

With flakes

# flake.nix
{
  inputs.powercord-overlay.url = "github:LavaDesu/powercord-overlay";
}
# system config
{
  nixpkgs.overlays = [ inputs.powercord-overlay.overlay ];
}

Without flakes

let
  powercord-overlay = import (builtins.fetchTarball "https://github.com/LavaDesu/powercord-overlay/archive/master.tar.gz");
in
{
  nixpkgs.overlays = [ powercord-overlay.overlay ];
}

Usage

Install discord-plugged

{
  # or home.packages
  environment.systemPackages = [
    ...
    pkgs.discord-plugged
  ];
}

Plugins/Themes

For plugins and/or themes, override discord-plugged

Example:

# where you put your packages
discord-plugged.override {
  plugins = [
    (builtins.fetchTarball "https://github.com/NurMarvin/discord-tweaks/archive/master.tar.gz")
  ];
  themes = [
    (builtins.fetchTarball "https://github.com/Dyzean/Tokyo-Night/archive/master.tar.gz")
  ];
}

If you're using flakes, you can instead use inputs to fetch them

# flake.nix
{
  inputs = {
    discord-tweaks = { url = "github:NurMarvin/discord-tweaks"; flake = false; };
    discord-tokyonight = { url = "github:Dyzean/Tokyo-Night"; flake = false; };
  };
}
# where you put your packages
discord-plugged.override {
  plugins = [
    inputs.discord-tweaks
  ];
  themes = [
    inputs.discord-tokyonight
  ];
}

Additional notes

  • The updater should be disabled, it doesn't work for obvious reasons :)
  • Settings are stored imperatively in $XDG_CONFIG_HOME/powercord (and cache in $XDG_CACHE_HOME/powercord)
    • This unforunately is not perfect. If you notice some plugin's settings just disappear after a restart (as it tried to write to the store), please open an issue here about it

Some disclaimers

Powercord is against Discord's Terms of Service. However, at the time of writing, Discord isn't currently hunting down modded client users and punishing them or anything.

While you should be safe, you are at your own risk when using this overlay, and I am not responsible for any damages that may happen as a result of using Powercord.