adding automatic flatpak management
This commit is contained in:
@@ -6,7 +6,6 @@
|
|||||||
homeDirectory = "/home/autumn";
|
homeDirectory = "/home/autumn";
|
||||||
stateVersion = "25.11";
|
stateVersion = "25.11";
|
||||||
packages = with pkgs; [
|
packages = with pkgs; [
|
||||||
eza
|
|
||||||
fm
|
fm
|
||||||
felix
|
felix
|
||||||
gnumake
|
gnumake
|
||||||
@@ -26,14 +25,13 @@
|
|||||||
htop.enable = true;
|
htop.enable = true;
|
||||||
pls = {
|
pls = {
|
||||||
enable = true;
|
enable = true;
|
||||||
enableFishIntegration = true;
|
enableZshIntegration = true;
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
nixpkgs.config = {
|
nixpkgs.config = {
|
||||||
alowUnfree = true;
|
alowUnfree = true;
|
||||||
allowUnfreePredicate = (_: true);
|
allowUnfreePredicate = (_: true);
|
||||||
};
|
};
|
||||||
# wayland.windowManager.river.enable = true;
|
|
||||||
imports = [
|
imports = [
|
||||||
|
|
||||||
## Themeing
|
## Themeing
|
||||||
|
|||||||
@@ -15,7 +15,7 @@
|
|||||||
};
|
};
|
||||||
};
|
};
|
||||||
imports = [
|
imports = [
|
||||||
../../packages/fish/fish.nix
|
# ../../packages/fish/fish.nix
|
||||||
../../packages/river/river.nix
|
../../packages/river/river.nix
|
||||||
../../packages/waybar/waybar.nix
|
../../packages/waybar/waybar.nix
|
||||||
../../packages/twmn/twmn.nix
|
../../packages/twmn/twmn.nix
|
||||||
|
|||||||
@@ -30,9 +30,9 @@ $docker_context\
|
|||||||
[](fg:#83c092 bg:#7fbbb3)\
|
[](fg:#83c092 bg:#7fbbb3)\
|
||||||
$time\
|
$time\
|
||||||
[](fg:#7fbbb3 bg:#d699B6)\
|
[](fg:#7fbbb3 bg:#d699B6)\
|
||||||
|
$direnv\
|
||||||
[ ](fg:#d699B6)\
|
[ ](fg:#d699B6)\
|
||||||
\n\
|
\n\
|
||||||
$direnv\
|
|
||||||
$status\
|
$status\
|
||||||
$cmd_duration\
|
$cmd_duration\
|
||||||
[ ](fg:#E67380)
|
[ ](fg:#E67380)
|
||||||
@@ -134,8 +134,7 @@ format = '[[ $symbol ($version) ](fg:#434f55 bg:#a7c080 )]($style)'
|
|||||||
|
|
||||||
[rust]
|
[rust]
|
||||||
symbol = " "
|
symbol = " "
|
||||||
style = "fg:#434f55 bg:#a7c080 "
|
format = '[ $symbol ($version) ](fg:#434f55 bg:#a7c080 )'
|
||||||
format = '[[ $symbol ($version) ](fg:#434f55 bg:#a7c080 )]($style)'
|
|
||||||
|
|
||||||
[ruby]
|
[ruby]
|
||||||
symbol = " "
|
symbol = " "
|
||||||
@@ -163,8 +162,8 @@ loaded_msg = " "
|
|||||||
unloaded_msg = " "
|
unloaded_msg = " "
|
||||||
allowed_msg = " "
|
allowed_msg = " "
|
||||||
not_allowed_msg = " "
|
not_allowed_msg = " "
|
||||||
style = "fg:#434f55 bg:#E67380"
|
style = "fg:#434f55 bg:#d699B6"
|
||||||
format = '[$loaded_msg$not_loaded_msg$allowed_msg$not_allowed_msg]($style)'
|
format = '[ $loaded]($style)'
|
||||||
|
|
||||||
[time]
|
[time]
|
||||||
disabled = false
|
disabled = false
|
||||||
|
|||||||
@@ -17,8 +17,6 @@
|
|||||||
"river/tags"
|
"river/tags"
|
||||||
];
|
];
|
||||||
modules-center = [
|
modules-center = [
|
||||||
#"river/mode"
|
|
||||||
# "river/layout"
|
|
||||||
"river/window"
|
"river/window"
|
||||||
];
|
];
|
||||||
modules-right = [
|
modules-right = [
|
||||||
@@ -158,7 +156,6 @@
|
|||||||
};
|
};
|
||||||
};
|
};
|
||||||
|
|
||||||
# Waybar styling inspired by the referenced swayhome configuration
|
|
||||||
style = ''
|
style = ''
|
||||||
* {
|
* {
|
||||||
font-family: "Hack Nerd Font Mono";
|
font-family: "Hack Nerd Font Mono";
|
||||||
@@ -234,22 +231,22 @@
|
|||||||
|
|
||||||
#backlight {
|
#backlight {
|
||||||
background-color: transparent;
|
background-color: transparent;
|
||||||
border-bottom: 3px solid #cba6f7;
|
border-bottom: 3px solid #7fbbb3;
|
||||||
}
|
}
|
||||||
|
|
||||||
#battery {
|
#battery {
|
||||||
background-color: transparent;
|
background-color: transparent;
|
||||||
border-bottom: 3px solid #a6e3a1;
|
border-bottom: 3px solid #a7c080;
|
||||||
}
|
}
|
||||||
|
|
||||||
#battery.critical.discharging {
|
#battery.critical.discharging {
|
||||||
background-color: #f38ba8;
|
background-color: #e67e80;
|
||||||
animation: blink 1s infinite;
|
animation: blink 5s infinite;
|
||||||
}
|
}
|
||||||
|
|
||||||
#battery.warning.discharging {
|
#battery.warning.discharging {
|
||||||
background-color: #f9e2af;
|
background-color: #dbbc7f;
|
||||||
animation: blink 1s infinite;
|
animation: blink 10s infinite;
|
||||||
}
|
}
|
||||||
|
|
||||||
@keyframes blink {
|
@keyframes blink {
|
||||||
@@ -260,28 +257,22 @@
|
|||||||
|
|
||||||
#clock {
|
#clock {
|
||||||
background-color: transparent;
|
background-color: transparent;
|
||||||
border-bottom: 3px solid #a6e3a1;
|
border-bottom: 3px solid #a7c080;
|
||||||
}
|
}
|
||||||
|
|
||||||
#cpu {
|
#cpu {
|
||||||
background-color: transparent;
|
background-color: transparent;
|
||||||
border-bottom: 3px solid #cba6f7;
|
border-bottom: 3px solid #7fbbb3;
|
||||||
}
|
}
|
||||||
|
|
||||||
#memory {
|
#memory {
|
||||||
background-color: transparent;
|
background-color: transparent;
|
||||||
border-bottom: 3px solid #f9e2af;
|
border-bottom: 3px solid #dbbc7f;
|
||||||
}
|
|
||||||
|
|
||||||
#mode {
|
|
||||||
color: #ffffff;
|
|
||||||
background-color: #6e3a6d;
|
|
||||||
border-bottom: 3px solid #ffffff;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
#network {
|
#network {
|
||||||
background-color: transparent;
|
background-color: transparent;
|
||||||
border-bottom: 3px solid #a6e3a1;
|
border-bottom: 3px solid #a7c080;
|
||||||
}
|
}
|
||||||
|
|
||||||
#network.disconnected {
|
#network.disconnected {
|
||||||
@@ -291,31 +282,27 @@
|
|||||||
|
|
||||||
#pulseaudio {
|
#pulseaudio {
|
||||||
background-color: transparent;
|
background-color: transparent;
|
||||||
border-bottom: 3px solid #a6e3a1;
|
border-bottom: 3px solid #7fbbb3;
|
||||||
}
|
}
|
||||||
|
|
||||||
#pulseaudio.muted {
|
#pulseaudio.muted {
|
||||||
background-color: transparent;
|
background-color: transparent;
|
||||||
border-bottom: 3px solid #f38ba8;
|
border-bottom: 3px solid #e67e80;
|
||||||
}
|
}
|
||||||
|
|
||||||
#temperature {
|
#temperature {
|
||||||
background-color: transparent;
|
background-color: transparent;
|
||||||
border-bottom: 3px solid #a6e3a1;
|
border-bottom: 3px solid #a7c080;
|
||||||
}
|
}
|
||||||
|
|
||||||
#temperature.critical {
|
#temperature.critical {
|
||||||
background-color: transparent;
|
background-color: transparent;
|
||||||
border-bottom: 3px solid #f38ba8;
|
border-bottom: 3px solid #e67e80;
|
||||||
}
|
}
|
||||||
|
|
||||||
#tray {
|
#tray {
|
||||||
background-color: transparent;
|
background-color: transparent;
|
||||||
border-bottom: 3px solid #6e3a6d;
|
border-bottom: 3px solid #7fbbb3;
|
||||||
}
|
|
||||||
#power-profiles-daemon {
|
|
||||||
background-color: transparent;
|
|
||||||
border-bottom: 3px solid #94e2d5;
|
|
||||||
}
|
}
|
||||||
'';
|
'';
|
||||||
};
|
};
|
||||||
|
|||||||
@@ -9,10 +9,10 @@
|
|||||||
programs ={
|
programs ={
|
||||||
zsh = {
|
zsh = {
|
||||||
enable = true;
|
enable = true;
|
||||||
initContent = lib.mkOrder 1200 ''
|
# initContent = lib.mkOrder 1200 ''
|
||||||
eval "$(ssh-agent -s)"
|
# eval "$(ssh-agent -s)"
|
||||||
ssh-add ~/.ssh/id_ed25519
|
# ssh-add ~/.ssh/id_ed25519
|
||||||
'';
|
# '';
|
||||||
antidote = {
|
antidote = {
|
||||||
enable = true;
|
enable = true;
|
||||||
plugins = [
|
plugins = [
|
||||||
|
|||||||
33
system/extras/flatpak.nix
Normal file
33
system/extras/flatpak.nix
Normal file
@@ -0,0 +1,33 @@
|
|||||||
|
{ config, pkgs, ... }:
|
||||||
|
let
|
||||||
|
grep = pkgs.gnugrep;
|
||||||
|
desiredFlatpaks = [
|
||||||
|
"com.spotify.Client"
|
||||||
|
"io.github.huderlem.porymap"
|
||||||
|
];
|
||||||
|
in {
|
||||||
|
system.userActivationScripts.flatpakManagement = {
|
||||||
|
text = ''
|
||||||
|
${pkgs.flatpak}/bin/flatpak remote-add --if-not-exists flathub \
|
||||||
|
https://flathub.org/repo/flathub.flatpakrepo
|
||||||
|
|
||||||
|
installedFlatpaks=$(${pkgs.flatpak}/bin/flatpak list --app --columns=application)
|
||||||
|
|
||||||
|
for installed in $installedFlatpaks; do
|
||||||
|
if ! echo ${toString desiredFlatpaks} | ${grep}/bin/grep -q $installed; then
|
||||||
|
echo "Removing $installed because it's not in the desiredFlatpaks list."
|
||||||
|
${pkgs.flatpak}/bin/flatpak uninstall -y --noninteractive $installed
|
||||||
|
fi
|
||||||
|
done
|
||||||
|
|
||||||
|
for app in ${toString desiredFlatpaks}; do
|
||||||
|
echo "Ensuring $app is installed."
|
||||||
|
${pkgs.flatpak}/bin/flatpak install -y flathub $app
|
||||||
|
done
|
||||||
|
|
||||||
|
${pkgs.flatpak}/bin/flatpak uninstall --unused -y
|
||||||
|
|
||||||
|
${pkgs.flatpak}/bin/flatpak update -y
|
||||||
|
'';
|
||||||
|
};
|
||||||
|
}
|
||||||
@@ -17,6 +17,7 @@
|
|||||||
wsl.enable = true;
|
wsl.enable = true;
|
||||||
wsl.defaultUser = "autumn";
|
wsl.defaultUser = "autumn";
|
||||||
networking.hostName = "wsl-hive";
|
networking.hostName = "wsl-hive";
|
||||||
|
networking.extraHosts = "10.0.0.217 hoardfrost";
|
||||||
environment.systemPackages = [pkgs.git];
|
environment.systemPackages = [pkgs.git];
|
||||||
programs.zsh.enable = true;
|
programs.zsh.enable = true;
|
||||||
nix.settings.experimental-features = ["nix-command" "flakes"];
|
nix.settings.experimental-features = ["nix-command" "flakes"];
|
||||||
|
|||||||
@@ -18,12 +18,17 @@
|
|||||||
|
|
||||||
#system packages
|
#system packages
|
||||||
../packages/sddm/sddm.nix
|
../packages/sddm/sddm.nix
|
||||||
|
|
||||||
|
#flatpaks
|
||||||
|
../extras/flatpak.nix
|
||||||
];
|
];
|
||||||
|
|
||||||
networking.hostName = "yukigekko"; # Define your hostname.
|
networking.hostName = "yukigekko"; # Define your hostname.
|
||||||
networking.networkmanager.enable = true;
|
networking.networkmanager.enable = true;
|
||||||
|
networking.extraHosts = "10.0.0.217 hoardfrost";
|
||||||
|
|
||||||
services.logind.lidSwitchExternalPower = "ignore";
|
services.logind.lidSwitchExternalPower = "ignore";
|
||||||
|
services.blueman.enable = true;
|
||||||
|
|
||||||
time.timeZone = "${timezone}";
|
time.timeZone = "${timezone}";
|
||||||
|
|
||||||
|
|||||||
@@ -33,7 +33,7 @@
|
|||||||
networking.useDHCP = lib.mkDefault true;
|
networking.useDHCP = lib.mkDefault true;
|
||||||
# networking.interfaces.enp3s0f1.useDHCP = lib.mkDefault true;
|
# networking.interfaces.enp3s0f1.useDHCP = lib.mkDefault true;
|
||||||
# networking.interfaces.wlp2s0.useDHCP = lib.mkDefault true;
|
# networking.interfaces.wlp2s0.useDHCP = lib.mkDefault true;
|
||||||
|
hardware.bluetooth.enable = true;
|
||||||
nixpkgs.hostPlatform = lib.mkDefault "x86_64-linux";
|
nixpkgs.hostPlatform = lib.mkDefault "x86_64-linux";
|
||||||
hardware.cpu.intel.updateMicrocode = lib.mkDefault config.hardware.enableRedistributableFirmware;
|
hardware.cpu.intel.updateMicrocode = lib.mkDefault config.hardware.enableRedistributableFirmware;
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user