Back again to unstable channels because why not

This commit is contained in:
Gabriel Arazas 2020-08-24 23:56:31 +08:00
parent b9785fed44
commit 5eaf0ac0ed
26 changed files with 87 additions and 65 deletions

View File

@ -35,3 +35,6 @@ install: channels update
upgrade: update switch upgrade: update switch
rollback:
@sudo nix-env --rollback

View File

@ -9,6 +9,9 @@ path = .gnupg
# The password store of gopass # The password store of gopass
path = .password-store path = .password-store
# My SSH keys
path = .ssh
# Some regexps specifying names and paths to ignore # Some regexps specifying names and paths to ignore
ignore = Name temp.* ignore = Name temp.*
ignore = Name *~ ignore = Name *~
@ -16,8 +19,14 @@ ignore = Name .*~
ignore = Name *.o ignore = Name *.o
ignore = Name *.tmp ignore = Name *.tmp
# Use this command for displaying diffs # Node cache
diff = diff -y -W 79 --suppress-common-lines ignore = Name node_modules
# Rust build caches
ignore = Name target
# The diff command with the unified style (the same style Git uses for showing diffs)
diff = diff --unified
# Log actions to the terminal # Log actions to the terminal
log = true log = true

View File

@ -13,7 +13,6 @@
boot.loader.systemd-boot.enable = true; boot.loader.systemd-boot.enable = true;
boot.loader.efi.canTouchEfiVariables = true; boot.loader.efi.canTouchEfiVariables = true;
networking.hostName = "nixos"; # Define your hostname.
# networking.wireless.enable = true; # Enables wireless support via wpa_supplicant. # networking.wireless.enable = true; # Enables wireless support via wpa_supplicant.
# The global useDHCP flag is deprecated, therefore explicitly set to false here. # The global useDHCP flag is deprecated, therefore explicitly set to false here.
@ -31,6 +30,16 @@
XDG_BIN_HOME = "$HOME/.local/bin"; XDG_BIN_HOME = "$HOME/.local/bin";
}; };
# Moving all of the host-specific configurations into its appropriate place.
my.home.xdg.dataFile =
let insertXDGDataFolder = name: {
source = ./config + "/${name}";
recursive = true;
}; in {
"recoll" = insertXDGDataFolder "recoll";
"unison" = insertXDGDataFolder "unison";
};
# Install documentations for tools and whatnot. # Install documentations for tools and whatnot.
documentation = { documentation = {
enable = true; enable = true;
@ -75,7 +84,6 @@
base.enable = true; base.enable = true;
documentation = { documentation = {
enable = true; enable = true;
jupyter.enable = true;
latex.enable = true; latex.enable = true;
}; };
game-dev = { game-dev = {
@ -102,7 +110,16 @@
services = { services = {
recoll.enable = true; recoll.enable = true;
unison.enable = true; unison = {
enable = true;
flags =
let
homeDirectory = "/home/${config.my.username}";
backupDrive = "/run/media/${config.my.username}/Seagate Backup Plus Drive";
in ''
-root ${homeDirectory} -root ${backupDrive} -auto -batch -fat -force ${homeDirectory} -mountpoint ${backupDrive} -ignorearchives
'';
};
}; };
shell = { shell = {
@ -124,12 +141,12 @@
my.packages = with pkgs; [ my.packages = with pkgs; [
# Muh games. # Muh games.
unstable.dwarf-fortress # Losing is fun! dwarf-fortress # Losing is fun!
unstable.endless-sky # Losing is meh! endless-sky # Losing is meh!
unstable.minetest # Losing?! What's that? minetest # Losing?! What's that?
unstable.openmw # Losing is even more meh1 openmw # Losing is even more meh1
unstable.wesnoth # Losing is frustrating! wesnoth # Losing is frustrating!
unstable.zeroad # Losing is fun and frustrating! zeroad # Losing is fun and frustrating!
# Installing some of the dependencies required for my scripts. # Installing some of the dependencies required for my scripts.
ffcast ffcast
@ -173,7 +190,8 @@
hardware.pulseaudio.enable = true; hardware.pulseaudio.enable = true;
# Additional host-specific program configurations. # Additional host-specific program configurations.
my.home.programs = { my.home = {
programs = {
# My personal Git config. # My personal Git config.
git = { git = {
enable = true; enable = true;
@ -188,14 +206,5 @@
userEmail = "${config.my.email}"; userEmail = "${config.my.email}";
}; };
}; };
# Moving all of the host-specific configurations into its appropriate place.
my.home.xdg.dataFile =
let insertXDGDataFolder = name: {
source = ./config + "/${name}";
recursive = true;
}; in {
"recoll" = insertXDGDataFolder "recoll";
"unison" = insertXDGDataFolder "unison";
}; };
} }

View File

@ -19,9 +19,7 @@ in {
(recoll.override { (recoll.override {
withGui = false; withGui = false;
}) # Bring the search engine to the desktop! }) # Bring the search engine to the desktop!
(unison.override { unison
enableX11 = false;
}) # Bridge the gap between your storage.
magic-wormhole # Magically transfer stuff between your wormholes! magic-wormhole # Magically transfer stuff between your wormholes!
transmission # One of the components for sailing the high seas. transmission # One of the components for sailing the high seas.
syncthing # A peer-to-peer synchro summoning. syncthing # A peer-to-peer synchro summoning.

View File

@ -13,11 +13,11 @@ with lib;
config = mkIf config.modules.desktop.multimedia.enable { config = mkIf config.modules.desktop.multimedia.enable {
my.packages = with pkgs; [ my.packages = with pkgs; [
hexchat # The ultimate IRC client for neckbeards. hexchat # The ultimate IRC client for neckbeards.
kdenlive # A decent free and open source video editor.
mpv # The ultimate media player for hipsters. mpv # The ultimate media player for hipsters.
newsboat # The ultimate RSS aggregator for some person. newsboat # The ultimate RSS aggregator for some person.
obs-studio # Open Broadcasting Studio Studio, the reliable recording workflow. obs-studio # Open Broadcasting Studio Studio, the reliable recording workflow.
obs-linuxbrowser # OBS plugin for browser source. obs-linuxbrowser # OBS plugin for browser source.
openshot-qt # A decent video editor.
thunderbird # The ultimate email client for dumbasses like me. thunderbird # The ultimate email client for dumbasses like me.
zathura # The ultimate PDF viewer for run-of-the-mill ricing. zathura # The ultimate PDF viewer for run-of-the-mill ricing.
]; ];

View File

@ -31,7 +31,7 @@ in {
fluidsynth # Synth for fluid sounds. fluidsynth # Synth for fluid sounds.
helm # A great synthesizer plugin. helm # A great synthesizer plugin.
hydrogen # Them drum beats composition will get good. hydrogen # Them drum beats composition will get good.
unstable.polyphone # Edit your fonts for sound. polyphone # Edit your fonts for sound.
zynaddsubfx # Ze most advanced synthesizer I've seen so far (aside from the upcoming Vital syntehsizer). zynaddsubfx # Ze most advanced synthesizer I've seen so far (aside from the upcoming Vital syntehsizer).
# As of 2020-07-03, lmms has some trouble regarding Qt or something so at least use the "unstable" channel just to be safe. # As of 2020-07-03, lmms has some trouble regarding Qt or something so at least use the "unstable" channel just to be safe.

View File

@ -14,8 +14,8 @@ with lib;
my.packages = with pkgs; [ my.packages = with pkgs; [
android-studio # The apartment for Android development. android-studio # The apartment for Android development.
dart # It's JavaScript except saner and slimmer. dart # It's JavaScript except saner and slimmer.
unstable.flutter # It's Electron except saner and slimmer. flutter # It's Electron except saner and slimmer.
unstable.kotlin # It's Java except saner and slimmer. kotlin # It's Java except saner and slimmer.
]; ];
# Enable Android Debug Bridge for some device debugging. # Enable Android Debug Bridge for some device debugging.

View File

@ -42,7 +42,7 @@ in
(if cfg.jupyter.enable then [ (if cfg.jupyter.enable then [
jupyter # The interactive notebook. jupyter # The interactive notebook.
unstable.iruby # The Ruby kernel for Jupyter. iruby # The Ruby kernel for Jupyter.
] else []) ++ ] else []) ++
(if cfg.latex.enable then [ (if cfg.latex.enable then [

View File

@ -20,12 +20,12 @@ in
config = { config = {
my.packages = with pkgs; my.packages = with pkgs;
(if cfg.godot.enable then [ (if cfg.godot.enable then [
unstable.godot # The Godot, not to be confused with a certain prosecutor. godot # The Godot, not to be confused with a certain prosecutor.
] else []) ++ ] else []) ++
(if cfg.unity3d.enable then [ (if cfg.unity3d.enable then [
unstable.unity3d # The Unity, not to be confused with a certain ideal. unity3d # The Unity, not to be confused with a certain ideal.
unstable.unityhub # The ideal hub for your Unity projects. unityhub # The ideal hub for your Unity projects.
] else []); ] else []);
}; };
} }

View File

@ -21,7 +21,7 @@ in
config = { config = {
my.packages = with pkgs; my.packages = with pkgs;
(if cfg.deno.enable then [ (if cfg.deno.enable then [
unstable.deno # The Deltarune of Node. deno # The Deltarune of Node.
] else []) ++ ] else []) ++
(if cfg.node.enable then [ (if cfg.node.enable then [

View File

@ -15,7 +15,7 @@ with lib;
# Just make sure the unstable version of Emacs is available as a package by creating an overlay. # Just make sure the unstable version of Emacs is available as a package by creating an overlay.
pkg = mkOption { pkg = mkOption {
type = types.package; type = types.package;
default = pkgs.unstable.emacs; default = pkgs.emacs;
}; };
}; };

View File

@ -30,7 +30,7 @@ in
Service = { Service = {
ExecStart = "${(pkgs.unison.override { enableX11 = false; })}/bin/unison ${cfg.flags}"; ExecStart = "${(pkgs.unison.override { enableX11 = false; })}/bin/unison ${cfg.flags}";
Environment = [ "UNISON=\"$XDG_DATA_HOME/unison\"" ]; Environment = [ "UNISON=\"$XDG_DATA_HOME/unison\"" ];
RestartSec = "5mins"; RestartSec = "2h";
}; };
Install = { Install = {

View File

@ -38,16 +38,16 @@ with lib;
}; };
}; };
# Enable QT configuration to style with the GTK theme.
qt5 = {
style = "gtk2";
platformTheme = "gtk2";
};
my.env.TERMINAL = "alacritty"; my.env.TERMINAL = "alacritty";
my.home = { my.home = {
# Enable GTK configuration.
gtk.enable = true;
# Enable QT configuration.
qt.enable = true;
qt.platformTheme = "gtk";
# Install all of the configurations in the XDG config home. # Install all of the configurations in the XDG config home.
xdg.configFile = mkMerge [ xdg.configFile = mkMerge [
(let recursiveXdgConfig = name: { (let recursiveXdgConfig = name: {
@ -66,7 +66,7 @@ with lib;
}; };
}) })
(mkIf config.services.xserver.enable { {
"gtk-3.0/settings.ini".text = '' "gtk-3.0/settings.ini".text = ''
[Settings] [Settings]
gtk-theme-name=Arc gtk-theme-name=Arc
@ -78,15 +78,18 @@ with lib;
gtk-xft-hintstyle=hintfull gtk-xft-hintstyle=hintfull
gtk-xft-rgba=none gtk-xft-rgba=none
''; '';
}
];
"gtk-2.0/gtkrc".text = '' # Except for the GTK2 config which still needs to be in `$HOME/.gtkrc-2.0`.
home.file = {
".gtkrc-2.0".text = ''
gtk-theme-name="Arc" gtk-theme-name="Arc"
gtk-icon-theme-name="Arc" gtk-icon-theme-name="Arc"
gtk-font-name="Sans 10" gtk-font-name="Sans 10"
gtk-cursor-theme-name="Adwaita" gtk-cursor-theme-name="Adwaita"
''; '';
}) };
];
}; };
my.packages = with pkgs; [ my.packages = with pkgs; [

View File

@ -3,7 +3,7 @@
# defold = (callPackage ./defold.nix {}); # defold = (callPackage ./defold.nix {});
# Add packages from the unstable channel with `pkgs.unstable.$PKG`. # Add packages from the unstable channel with `pkgs.unstable.$PKG`.
unstable = import <nixpkgs-unstable> { inherit config; }; # unstable = import <nixpkgs-unstable> { inherit config; };
}) })
# The unstable branch of Emacs. # The unstable branch of Emacs.