2025-01-20 21:29:11 -05:00
|
|
|
|
{ config, pkgs, hyprland, nixgl, hyprpicker-git, wpaperd, hyprlock, ... }:
|
2024-11-14 14:53:44 -05:00
|
|
|
|
let
|
|
|
|
|
lock-false = {
|
|
|
|
|
Value = false;
|
|
|
|
|
Status = "locked";
|
|
|
|
|
};
|
|
|
|
|
lock-true = {
|
|
|
|
|
Value = true;
|
|
|
|
|
Status = "locked";
|
|
|
|
|
};
|
|
|
|
|
in
|
2023-05-18 18:52:05 -04:00
|
|
|
|
{
|
|
|
|
|
# Home Manager needs a bit of information about you and the paths it should
|
|
|
|
|
# manage.
|
|
|
|
|
home.username = "ryan";
|
|
|
|
|
home.homeDirectory = "/home/ryan";
|
|
|
|
|
|
2025-01-20 20:49:03 -05:00
|
|
|
|
# Ignore news
|
|
|
|
|
news.display = "silent";
|
|
|
|
|
|
2023-05-18 18:52:05 -04:00
|
|
|
|
# This value determines the Home Manager release that your configuration is
|
|
|
|
|
# compatible with. This helps avoid breakage when a new Home Manager release
|
|
|
|
|
# introduces backwards incompatible changes.
|
|
|
|
|
#
|
|
|
|
|
# You should not change this value, even if you update Home Manager. If you do
|
|
|
|
|
# want to update the value, then make sure to first check the Home Manager
|
|
|
|
|
# release notes.
|
2024-02-16 20:10:31 -05:00
|
|
|
|
home.stateVersion = "23.11"; # Please read the comment before changing.
|
2024-02-15 13:22:50 -05:00
|
|
|
|
|
2023-05-18 18:52:05 -04:00
|
|
|
|
# This value will set some environment variables to allow home-manager to
|
|
|
|
|
# function better outside of NixOS
|
|
|
|
|
nixpkgs.config.allowUnfree = true;
|
2024-02-16 20:10:31 -05:00
|
|
|
|
#targets.genericLinux.enable = true;
|
2023-05-18 18:52:05 -04:00
|
|
|
|
fonts.fontconfig.enable = true;
|
2024-10-28 22:55:28 -04:00
|
|
|
|
fonts.fontconfig.defaultFonts = {
|
|
|
|
|
monospace = [ "DejaVu Sans Mono" ];
|
|
|
|
|
sansSerif = [ "DejaVu Sans" ];
|
|
|
|
|
serif = [ "DejaVu Serif" ];
|
|
|
|
|
};
|
2023-05-18 18:52:05 -04:00
|
|
|
|
|
2024-10-11 16:54:40 -04:00
|
|
|
|
# wayland.windowManager.hyprland.enable = true;
|
|
|
|
|
|
2024-11-14 14:53:44 -05:00
|
|
|
|
# Install firefox and add some customizations
|
|
|
|
|
programs.firefox = {
|
|
|
|
|
enable = true;
|
|
|
|
|
policies = {
|
|
|
|
|
EnableTrackingProtection = {
|
|
|
|
|
Value = true;
|
|
|
|
|
Locked = true;
|
|
|
|
|
Cryptomining = true;
|
|
|
|
|
Fingerprinting = true;
|
|
|
|
|
EmailTracking = true;
|
|
|
|
|
};
|
|
|
|
|
UserMessaging = {
|
|
|
|
|
WhatsNew = false;
|
|
|
|
|
ExtensionRecommendations = false;
|
|
|
|
|
FeatureRecommendations = false;
|
|
|
|
|
UrlbarInterventions = false;
|
|
|
|
|
SkipOnboarding = true;
|
|
|
|
|
MoreFromMozilla = false;
|
|
|
|
|
Labs = false;
|
|
|
|
|
Locked = true;
|
|
|
|
|
};
|
|
|
|
|
DisableAppUpdate = true;
|
|
|
|
|
DisableAccounts = true;
|
|
|
|
|
DisableFirefoxAccounts = true;
|
|
|
|
|
DisableFirefoxStudies = true;
|
|
|
|
|
DisablePocket = true;
|
|
|
|
|
DisableTelemetry = true;
|
|
|
|
|
AutofillAddressEnabled = false;
|
|
|
|
|
AutofillCreditCardEnabled = false;
|
|
|
|
|
DisableMasterPasswordCreation = true;
|
|
|
|
|
PasswordManagerEnabled = false;
|
|
|
|
|
PrimaryPassword = false;
|
|
|
|
|
OfferToSaveLogins = false;
|
|
|
|
|
NoDefaultBookmarks = true;
|
|
|
|
|
OverrideFirstRunPage = "";
|
|
|
|
|
OverridePostUpdatePage = "";
|
|
|
|
|
FirefoxHome = {
|
|
|
|
|
Search = true;
|
|
|
|
|
TopSites = true;
|
|
|
|
|
SponsoredTopSites = false;
|
|
|
|
|
Highlights = false;
|
|
|
|
|
Pocket = false;
|
|
|
|
|
SponsoredPocket = false;
|
|
|
|
|
Snippets = false;
|
|
|
|
|
Locked = true;
|
|
|
|
|
};
|
|
|
|
|
SearchSuggestEnabled = true;
|
|
|
|
|
FirefoxSuggest = {
|
|
|
|
|
WebSuggestions = true;
|
|
|
|
|
SponsoredSuggestions = false;
|
|
|
|
|
ImproveSuggest = false;
|
|
|
|
|
Locked = true;
|
|
|
|
|
};
|
|
|
|
|
PictureInPicture = lock-true;
|
|
|
|
|
HardwareAcceleration = true;
|
|
|
|
|
Certificates = {
|
|
|
|
|
ImportEnterpriseRoots = true;
|
|
|
|
|
};
|
|
|
|
|
ExtensionSettings = {
|
|
|
|
|
#"*".installation_mode = "blocked";
|
|
|
|
|
# uBlock Origin
|
|
|
|
|
"uBlock0@raymondhill.net" = {
|
|
|
|
|
install_url = "https://addons.mozilla.org/firefox/downloads/latest/ublock-origin/latest.xpi";
|
|
|
|
|
installation_mode = "force_installed";
|
|
|
|
|
};
|
|
|
|
|
# Bitwarden
|
|
|
|
|
"{446900e4-71c2-419f-a6a7-df9c091e268b}" = {
|
|
|
|
|
install_url = "https://addons.mozilla.org/firefox/downloads/latest/bitwarden-password-manager/latest.xpi";
|
2024-12-29 21:45:59 -05:00
|
|
|
|
installation_mode = "normal_installed";
|
2024-11-14 14:53:44 -05:00
|
|
|
|
};
|
|
|
|
|
# SponsorBlock
|
|
|
|
|
"sponsorBlocker@ajay.app" = {
|
|
|
|
|
install_url = "https://addons.mozilla.org/firefox/downloads/latest/sponsorblock/latest.xpi";
|
|
|
|
|
installation_mode = "force_installed";
|
|
|
|
|
};
|
|
|
|
|
# DeArrow
|
|
|
|
|
"deArrow@ajay.app" = {
|
|
|
|
|
install_url = "https://addons.mozilla.org/firefox/downloads/latest/dearrow/latest.xpi";
|
|
|
|
|
installation_mode = "force_installed";
|
|
|
|
|
};
|
|
|
|
|
# Return Youtube Dislike
|
|
|
|
|
"{762f9885-5a13-4abd-9c77-433dcd38b8fd}" = {
|
|
|
|
|
install_url = "https://addons.mozilla.org/firefox/downloads/latest/return-youtube-dislikes/latest.xpi";
|
|
|
|
|
installation_mode = "force_installed";
|
|
|
|
|
};
|
|
|
|
|
# Youtube Nonstop
|
|
|
|
|
"{0d7cafdd-501c-49ca-8ebb-e3341caaa55e}" = {
|
|
|
|
|
install_url = "https://addons.mozilla.org/firefox/downloads/latest/youtube-nonstop/latest.xpi";
|
|
|
|
|
installation_mode = "force_installed";
|
|
|
|
|
};
|
|
|
|
|
# Sidebery
|
|
|
|
|
"{3c078156-979c-498b-8990-85f7987dd929}" = {
|
|
|
|
|
install_url = "https://addons.mozilla.org/firefox/downloads/latest/sidebery/latest.xpi";
|
|
|
|
|
installation_mode = "normal_installed";
|
|
|
|
|
};
|
|
|
|
|
# TamperMonkey
|
|
|
|
|
"firefox@tampermonkey.net" = {
|
|
|
|
|
install_url = "https://addons.mozilla.org/firefox/downloads/latest/tampermonkey/latest.xpi";
|
|
|
|
|
installation_mode = "force_installed";
|
|
|
|
|
};
|
|
|
|
|
# Floccus
|
|
|
|
|
"floccus@handmadeideas.org" = {
|
|
|
|
|
install_url = "https://addons.mozilla.org/firefox/downloads/latest/floccus/latest.xpi";
|
|
|
|
|
installation_mode = "force_installed";
|
|
|
|
|
};
|
|
|
|
|
};
|
|
|
|
|
Preferences = {
|
|
|
|
|
"browser.startup.homepage" = "https://d.in.rschanz.org";
|
|
|
|
|
"extensions.activeThemeID" = {
|
|
|
|
|
Value = "firefox-compact-dark@mozilla.org";
|
|
|
|
|
Status = "locked";
|
|
|
|
|
};
|
|
|
|
|
"toolkit.legacyUserProfileCustomizations.stylesheets" = lock-true;
|
|
|
|
|
"xpinstall.whitelist.required" = lock-true;
|
|
|
|
|
"dom.webgpu.enabled" = lock-true;
|
|
|
|
|
"media.eme.enabled" = lock-true;
|
|
|
|
|
"general.autoScroll" = lock-true;
|
|
|
|
|
"general.smoothScroll" = lock-true;
|
|
|
|
|
"browser.crashReports.unsubmittedCheck.autoSubmit2" = lock-false;
|
|
|
|
|
"browser.aboutConfig.showWarning" = lock-false;
|
|
|
|
|
};
|
|
|
|
|
};
|
|
|
|
|
profiles.${config.home.username} = {
|
|
|
|
|
name = "${config.home.username}";
|
|
|
|
|
isDefault = true;
|
|
|
|
|
containersForce = true;
|
|
|
|
|
containers = {
|
|
|
|
|
rit = {
|
|
|
|
|
name = "RIT";
|
|
|
|
|
color = "orange";
|
|
|
|
|
icon = "dollar";
|
|
|
|
|
id = 1;
|
|
|
|
|
};
|
|
|
|
|
ritwork = {
|
|
|
|
|
name = "RIT Work";
|
|
|
|
|
color = "green";
|
|
|
|
|
icon = "briefcase";
|
|
|
|
|
id = 2;
|
|
|
|
|
};
|
|
|
|
|
other = {
|
|
|
|
|
name = "Other";
|
|
|
|
|
color = "blue";
|
|
|
|
|
icon = "fingerprint";
|
|
|
|
|
id = 3;
|
|
|
|
|
};
|
|
|
|
|
};
|
|
|
|
|
search = {
|
|
|
|
|
force = true;
|
|
|
|
|
default = "DuckDuckGo";
|
|
|
|
|
order = ["DuckDuckGo" "Google"];
|
|
|
|
|
engines = {
|
|
|
|
|
"Nix Packages" = {
|
|
|
|
|
urls = [
|
|
|
|
|
{
|
|
|
|
|
template = "https://search.nixos.org/packages";
|
|
|
|
|
params = [
|
|
|
|
|
{
|
|
|
|
|
name = "type";
|
|
|
|
|
value = "packages";
|
|
|
|
|
}
|
|
|
|
|
{
|
|
|
|
|
name = "channel";
|
|
|
|
|
value = "unstable";
|
|
|
|
|
}
|
|
|
|
|
{
|
|
|
|
|
name = "query";
|
|
|
|
|
value = "{searchTerms}";
|
|
|
|
|
}
|
|
|
|
|
];
|
|
|
|
|
}
|
|
|
|
|
];
|
|
|
|
|
icon = "${pkgs.nixos-icons}/share/icons/hicolor/scalable/apps/nix-snowflake.svg";
|
|
|
|
|
definedAliases = ["@np"];
|
|
|
|
|
};
|
|
|
|
|
};
|
|
|
|
|
};
|
|
|
|
|
userChrome = "
|
2024-12-29 21:45:59 -05:00
|
|
|
|
#main-window .toolbar-items {
|
2024-11-14 14:53:44 -05:00
|
|
|
|
overflow: hidden;
|
|
|
|
|
transition: height 0.3s 0.3s !important;
|
|
|
|
|
}
|
|
|
|
|
/* Default state: Set initial height to enable animation */
|
2024-12-29 21:45:59 -05:00
|
|
|
|
#main-window .toolbar-items { height: 3em !important; }
|
|
|
|
|
#main-window .titlebar-button { height: 3em !important; }
|
|
|
|
|
#main-window[uidensity=\"touch\"] .toolbar-items { height: 3.35em !important; }
|
|
|
|
|
#main-window[uidensity=\"compact\"] .toolbar-items { height: 2.7em !important; }
|
2024-11-14 14:53:44 -05:00
|
|
|
|
/* Hidden state: Hide native tabs strip */
|
2024-12-29 21:45:59 -05:00
|
|
|
|
#main-window[titlepreface*=\"\"] .toolbar-items { height: 0 !important; }
|
|
|
|
|
#main-window[titlepreface*=\"\"] .titlebar-button { height: 0 !important; }
|
2024-11-14 14:53:44 -05:00
|
|
|
|
/* Hidden state: Fix z-index of active pinned tabs */
|
|
|
|
|
#main-window[titlepreface*=\"\"] #tabbrowser-tabs { z-index: 0 !important; }
|
|
|
|
|
|
|
|
|
|
/* Sidebery expand on mouse-over and hide otherwise */
|
|
|
|
|
|
|
|
|
|
/* Source file https://github.com/MrOtherGuy/firefox-csshacks/tree/master/chrome/autohide_sidebar.css made available under Mozilla Public License v. 2.0
|
|
|
|
|
See the above repository for updates as well as full license text. */
|
|
|
|
|
|
|
|
|
|
/* Show sidebar only when the cursor is over it */
|
|
|
|
|
/* The border controlling sidebar width will be removed so you'll need to modify these values to change width */
|
|
|
|
|
|
|
|
|
|
#sidebar-box{
|
|
|
|
|
--uc-sidebar-width: 60px;
|
|
|
|
|
--uc-sidebar-hover-width: 230px;
|
|
|
|
|
--uc-autohide-sidebar-delay: 200ms; /* Wait 0.2s before hiding sidebar */
|
|
|
|
|
--uc-autohide-transition-duration: 115ms;
|
|
|
|
|
--uc-autohide-transition-type: linear;
|
|
|
|
|
--browser-area-z-index-sidebar: 3;
|
|
|
|
|
position: relative;
|
|
|
|
|
min-width: var(--uc-sidebar-width) !important;
|
|
|
|
|
width: var(--uc-sidebar-width) !important;
|
|
|
|
|
max-width: var(--uc-sidebar-width) !important;
|
|
|
|
|
z-index: var(--browser-area-z-index-sidebar,3);
|
|
|
|
|
}
|
|
|
|
|
#sidebar-box[positionend]{ direction: rtl }
|
|
|
|
|
#sidebar-box[positionend] > *{ direction: ltr }
|
|
|
|
|
|
|
|
|
|
#sidebar-box[positionend]:-moz-locale-dir(rtl){ direction: ltr }
|
|
|
|
|
#sidebar-box[positionend]:-moz-locale-dir(rtl) > *{ direction: rtl }
|
|
|
|
|
|
|
|
|
|
#main-window[sizemode=\"fullscreen\"] #sidebar-box{ --uc-sidebar-width: 1px; }
|
|
|
|
|
|
|
|
|
|
#sidebar-splitter{ display: none }
|
|
|
|
|
|
|
|
|
|
#sidebar-header{
|
|
|
|
|
overflow: hidden;
|
|
|
|
|
color: var(--chrome-color, inherit) !important;
|
|
|
|
|
padding-inline: 0 !important;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
#sidebar-header::before,
|
|
|
|
|
#sidebar-header::after{
|
|
|
|
|
content: \"\";
|
|
|
|
|
display: flex;
|
|
|
|
|
padding-left: 8px;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
#sidebar-header,
|
|
|
|
|
#sidebar{
|
|
|
|
|
transition: min-width var(--uc-autohide-transition-duration) var(--uc-autohide-transition-type) var(--uc-autohide-sidebar-delay) !important;
|
|
|
|
|
min-width: var(--uc-sidebar-width) !important;
|
|
|
|
|
will-change: min-width;
|
|
|
|
|
}
|
|
|
|
|
#sidebar-box:hover > #sidebar-header,
|
|
|
|
|
#sidebar-box:hover > #sidebar{
|
|
|
|
|
min-width: var(--uc-sidebar-hover-width) !important;
|
|
|
|
|
transition-delay: 0ms !important;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
.sidebar-panel{
|
|
|
|
|
background-color: transparent !important;
|
|
|
|
|
color: var(--newtab-text-primary-color) !important;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
.sidebar-panel #search-box{
|
|
|
|
|
-moz-appearance: none !important;
|
|
|
|
|
background-color: rgba(249,249,250,0.1) !important;
|
|
|
|
|
color: inherit !important;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
/* Add sidebar divider and give it background */
|
|
|
|
|
|
|
|
|
|
#sidebar,
|
|
|
|
|
#sidebar-header{
|
|
|
|
|
background-color: inherit !important;
|
|
|
|
|
border-inline: 1px solid rgb(80,80,80);
|
|
|
|
|
border-inline-width: 0px 1px;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
#sidebar-box:not([positionend]) > :-moz-locale-dir(rtl),
|
|
|
|
|
#sidebar-box[positionend] > *{
|
|
|
|
|
border-inline-width: 1px 0px;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
/* Move statuspanel to the other side when sidebar is hovered so it doesn't get covered by sidebar */
|
|
|
|
|
|
|
|
|
|
#sidebar-box:not([positionend]):hover ~ #appcontent #statuspanel{
|
|
|
|
|
inset-inline: auto 0px !important;
|
|
|
|
|
}
|
|
|
|
|
#sidebar-box:not([positionend]):hover ~ #appcontent #statuspanel-label{
|
|
|
|
|
margin-inline: 0px !important;
|
|
|
|
|
border-left-style: solid !important;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
/* Remove the tabs label and move the Sidebary icon to the center of the box */
|
|
|
|
|
#sidebar-box:hover [id=\"sidebar-icon\"] {
|
|
|
|
|
transform: translateX(0px) !important;
|
|
|
|
|
transition-delay: 0ms !important;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
#sidebar-box [id=\"sidebar-icon\"] {
|
|
|
|
|
transform: translateX(9px);
|
|
|
|
|
transition: transform var(--uc-autohide-transition-duration) var(--uc-autohide-transition-type) var(--uc-autohide-sidebar-delay) !important;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
#sidebar-box [id=\"sidebar-title\"] {
|
|
|
|
|
visibility: hidden !important;
|
|
|
|
|
transition: visibility var(--uc-autohide-transition-duration) var(--uc-autohide-transition-type) var(--uc-autohide-sidebar-delay) !important;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
#sidebar-box:hover [id=\"sidebar-title\"] {
|
|
|
|
|
visibility: visible !important;
|
|
|
|
|
transition-delay: 0ms !important;
|
|
|
|
|
}
|
|
|
|
|
";
|
|
|
|
|
};
|
|
|
|
|
};
|
|
|
|
|
|
2025-01-20 20:49:03 -05:00
|
|
|
|
programs.starship = {
|
|
|
|
|
enable = true;
|
|
|
|
|
settings = {
|
|
|
|
|
add_newline = false;
|
|
|
|
|
character = {
|
|
|
|
|
success_symbol = "[➜](bold green)";
|
|
|
|
|
error_symbol = "[➜](bold red)";
|
|
|
|
|
};
|
|
|
|
|
time = {
|
|
|
|
|
disabled = false;
|
|
|
|
|
format = "\[ $time \]($style)";
|
|
|
|
|
time_format = "%T";
|
|
|
|
|
};
|
|
|
|
|
};
|
|
|
|
|
};
|
|
|
|
|
|
2023-05-18 18:52:05 -04:00
|
|
|
|
# The home.packages option allows you to install Nix packages into your
|
|
|
|
|
# environment.
|
|
|
|
|
home.packages = with pkgs; [
|
|
|
|
|
# # Adds the 'hello' command to your environment. It prints a friendly
|
|
|
|
|
# # "Hello, world!" when run.
|
|
|
|
|
# pkgs.hello
|
2023-05-29 01:32:56 -04:00
|
|
|
|
yt-dlp
|
2023-10-03 10:36:12 -04:00
|
|
|
|
#pass
|
2023-09-21 17:08:39 -04:00
|
|
|
|
rustup
|
2024-02-15 13:22:50 -05:00
|
|
|
|
zoxide
|
2023-10-26 14:55:39 -04:00
|
|
|
|
nodePackages.pnpm
|
2023-09-21 17:08:39 -04:00
|
|
|
|
gcc
|
2024-03-29 15:19:07 -04:00
|
|
|
|
aerc
|
2023-09-21 17:08:39 -04:00
|
|
|
|
pkg-config
|
2023-10-12 10:40:43 -04:00
|
|
|
|
wttrbar
|
2023-11-06 20:00:12 -05:00
|
|
|
|
wl-clip-persist
|
2023-11-06 22:33:10 -05:00
|
|
|
|
gifski
|
2023-11-08 01:16:39 -05:00
|
|
|
|
waypaper
|
2023-11-18 00:03:46 -05:00
|
|
|
|
gdu
|
2024-01-13 23:55:15 -05:00
|
|
|
|
spotify-player
|
2025-01-20 21:29:11 -05:00
|
|
|
|
#hyprpicker
|
2024-10-19 20:53:35 -04:00
|
|
|
|
xwayland
|
|
|
|
|
xdg-desktop-portal
|
|
|
|
|
xdg-desktop-portal-gtk
|
2024-10-19 21:55:55 -04:00
|
|
|
|
mpv
|
|
|
|
|
imv
|
|
|
|
|
libva
|
|
|
|
|
libvdpau
|
2024-11-14 14:53:44 -05:00
|
|
|
|
#wpaperd
|
2024-10-21 14:48:05 -04:00
|
|
|
|
hypridle
|
2024-11-14 14:53:44 -05:00
|
|
|
|
#latest.firefox-nightly-bin
|
2024-10-28 22:55:28 -04:00
|
|
|
|
eza
|
2024-12-29 21:45:59 -05:00
|
|
|
|
wl-mirror
|
2025-01-20 20:49:03 -05:00
|
|
|
|
starship
|
2025-01-22 12:02:54 -05:00
|
|
|
|
taskwarrior3
|
2024-10-21 14:48:05 -04:00
|
|
|
|
|
|
|
|
|
# Wrapped programs for some env variables
|
2025-01-20 21:29:11 -05:00
|
|
|
|
(pkgs.writeScriptBin "hyprlock" ''
|
|
|
|
|
#! ${pkgs.bash}/bin/bash
|
|
|
|
|
export LD_PRELOAD="/run/current-system/profile/lib/libpam.so.0:/run/current-system/profile/lib/libfontconfig.so:$LD_PRELOAD"
|
|
|
|
|
exec ${hyprlock.packages.${pkgs.system}.hyprlock}/bin/hyprlock "$@"
|
|
|
|
|
'')
|
2023-05-18 18:52:05 -04:00
|
|
|
|
|
2024-10-19 00:11:58 -04:00
|
|
|
|
# Flakes specific things defined in flake.nix
|
|
|
|
|
hyprland.packages.${pkgs.system}.default
|
2024-10-19 20:53:35 -04:00
|
|
|
|
hyprland.packages.${pkgs.system}.xdg-desktop-portal-hyprland
|
2024-10-19 00:11:58 -04:00
|
|
|
|
nixgl.packages.${pkgs.system}.nixGLIntel
|
2024-11-14 14:53:44 -05:00
|
|
|
|
wpaperd.packages.${pkgs.system}.wpaperd
|
2025-01-20 21:29:11 -05:00
|
|
|
|
hyprpicker-git.packages.${pkgs.system}.hyprpicker
|
2024-10-19 00:11:58 -04:00
|
|
|
|
|
|
|
|
|
# Fonts!
|
|
|
|
|
noto-fonts
|
2024-10-21 16:10:27 -04:00
|
|
|
|
dejavu_fonts
|
2024-10-19 00:11:58 -04:00
|
|
|
|
liberation_ttf
|
2024-10-19 21:55:55 -04:00
|
|
|
|
noto-fonts-cjk-sans
|
2024-10-19 00:11:58 -04:00
|
|
|
|
noto-fonts-emoji
|
|
|
|
|
|
2023-05-18 18:52:05 -04:00
|
|
|
|
# # It is sometimes useful to fine-tune packages, for example, by applying
|
|
|
|
|
# # overrides. You can do that directly here, just don't forget the
|
|
|
|
|
# # parentheses. Maybe you want to install Nerd Fonts with a limited number of
|
|
|
|
|
# # fonts?
|
|
|
|
|
# (pkgs.nerdfonts.override { fonts = [ "FantasqueSansMono" ]; })
|
|
|
|
|
|
|
|
|
|
# # You can also create simple shell scripts directly inside your
|
|
|
|
|
# # configuration. For example, this adds a command 'my-hello' to your
|
|
|
|
|
# # environment:
|
|
|
|
|
# (pkgs.writeShellScriptBin "my-hello" ''
|
|
|
|
|
# echo "Hello, ${config.home.username}!"
|
|
|
|
|
# '')
|
|
|
|
|
];
|
|
|
|
|
|
|
|
|
|
# Home Manager is pretty good at managing dotfiles. The primary way to manage
|
|
|
|
|
# plain files is through 'home.file'.
|
|
|
|
|
home.file = {
|
|
|
|
|
# # Building this configuration will create a copy of 'dotfiles/screenrc' in
|
|
|
|
|
# # the Nix store. Activating the configuration will then make '~/.screenrc' a
|
|
|
|
|
# # symlink to the Nix store copy.
|
|
|
|
|
# ".screenrc".source = dotfiles/screenrc;
|
|
|
|
|
|
|
|
|
|
# # You can also set the file content immediately.
|
|
|
|
|
# ".gradle/gradle.properties".text = ''
|
|
|
|
|
# org.gradle.console=verbose
|
|
|
|
|
# org.gradle.daemon.idletimeout=3600000
|
|
|
|
|
# '';
|
|
|
|
|
};
|
|
|
|
|
|
|
|
|
|
# You can also manage environment variables but you will have to manually
|
|
|
|
|
# source
|
|
|
|
|
#
|
|
|
|
|
# ~/.nix-profile/etc/profile.d/hm-session-vars.sh
|
|
|
|
|
#
|
|
|
|
|
# or
|
|
|
|
|
#
|
|
|
|
|
# /etc/profiles/per-user/ryan/etc/profile.d/hm-session-vars.sh
|
|
|
|
|
#
|
|
|
|
|
# if you don't want to manage your shell through Home Manager.
|
|
|
|
|
home.sessionVariables = {
|
|
|
|
|
# EDITOR = "emacs";
|
|
|
|
|
};
|
|
|
|
|
|
|
|
|
|
# Let Home Manager install and manage itself.
|
|
|
|
|
programs.home-manager.enable = true;
|
|
|
|
|
}
|