Skip to content
/ pkgs Public

πŸ“¦ | Collection of personal packages to use with my configurations

License

Notifications You must be signed in to change notification settings

orzklv/pkgs

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

20 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Orzklv's {Pack}

Set of helpful packages written by & for Orzklv.

Top Used Language Telegram Channel Test CI

About

This repository actually used to be within my nix configuration. Later, I decided to move all exportable packages, overlays and libs to other repository for lighter input result and more community use. Feel free to use them, feel free to send PR and add your own packages if you feel like.

Adding repository

This is certainly easiest and yet the very beginning of using my repository with your nix configurations! In order to do that, open your flake configuration in your favorite editor of choice, and then locate for inputs. You may have either called each inputs seperately like that:

  inputs.nixpkgs.url = "...";
  inputs.nixpkgs-unstable.url = "...";
  ...

or nested it like that:

  inputs = {
    nixpkgs.url = "...";
    nixpkgs-unstable.url = "...";
  };

If you used seperate calls, please, go with nested one, because it will you more convenience when it comes to aligning nixpkgs dependencies to avoid having multiple nixpkgs instances, in a few words, it will be more readable. So, now inside your inputs, do it like that:

  inputs = {
    nixpkgs.url = "...";
    nixpkgs-unstable.url = "...";
    ...

    # You may copy/paste the code below!
    orzklv = {
      url = "github:orzklv/pkgs";
      inputs = {
        # For everything
        nixpkgs.follows = "nixpkgs";
        # For `unstable` overlay
        # If you have unstable in your inputs!!!
        nixpkgs-unstable.follows = "nixpkgs-unstable";
      };
    };

  };

Packages

  • Dev Clean: clean your developer directory from builds & temporary files
  • Force Push: do force push using your github bearer token
  • Google: start googling right from your terminal
  • Krisper: discord krisp patcher for nixos
  • Org Location: change "location" of a github organization

Packages can be used via nix run by calling it's names. You can refer to this example shown below:

# Names are always lowercase spaced with '-'
nix run github:orzklv/pkgs#<name-here>

Or, simply use my additions overlay (refer to this for more) in your nixpkgs configuration and then feel free to add my packages to your nix configs like that:

  environment.systemPackages = with pkgs; [
    google
    krisper
  ];

Lib

I have a few useful functions initially created for myself to abstract certain things in my nix configurations. However, later I decided to ship it as a library which you can easily add to lib just by mergeng my lib to your nixpkgs lib as following:

  # Nixpkgs, Home-Manager and orzklv's helpful functions
  lib = nixpkgs.lib // home-manager.lib // orzklv.lib;

Overlays

Repository includes many useful overlays which enables you to manipulate your pkgs instance delivered from nixpkgs. You may call & use them something like that:

# First, localte where you defined nixpkgs configurations
{
  # Alright, this starts like that...
  nixpkgs = {
    # If there's no overlays array, define it yourself!
    overlays = [
      # If you already have overlays, there will be some here
      ...
      # Then, from new line, call my overlays
      inputs.orzklv.overlays.additions
      inputs.orzklv.overlays.<name>
    ];
  };
}

You may obtain list of available overlays either from overlays/default.nix or refer to this list (might be outdated):

  • Additions: merging my packages to your pkgs instance, so you can call them within pkgs right away.
  • Modifications: some modifications for pre-existing pkgs delivered from your inputs.nixpkgs.
  • Unstable: Binding unstable nixpkgs channel to pkgs.unstable variable for calling unstable packages.

Thanks

  • Template - Started with this template
  • Nix - Masterpiece of package management

License

This project is licensed under the MIT License - see the LICENSE file for details.

Orzklv's {Pack}

About

πŸ“¦ | Collection of personal packages to use with my configurations

Resources

License

Stars

Watchers

Forks

Packages

No packages published