cosmic checkpoint

This commit is contained in:
atagen 2024-08-14 01:01:53 +10:00
parent 4031a614a8
commit f623faa0ef
26 changed files with 1163 additions and 538 deletions

View file

@ -6,14 +6,14 @@
programs.firefox.webapps = {
"Microsoft-Teams" = {
url = "https://teams.microsoft.com";
id = 1;
# id = 1;
extraSettings = config.programs.firefox.profiles.default.settings;
name = "Microsoft Teams";
icon = ../icons/ms_teams.png;
};
"Facebook-Messenger" = {
url = "https://www.messenger.com";
id = 2;
# id = 2;
extraSettings = config.programs.firefox.profiles.default.settings;
name = "Facebook Messenger";
icon = ../icons/fb_msg.png;

163
home/modules/cosmic.nix Normal file
View file

@ -0,0 +1,163 @@
{
pkgs,
lib,
...
}: let
inherit (lib) range mapAttrsToList;
inherit (builtins) toString;
workspaceRange = range 1 6;
makeWorkspaceBinding = modifiers: action:
map (i: {
inherit modifiers;
key = toString i;
action = {
type = action;
data = i;
};
})
workspaceRange;
focusWsBindings = makeWorkspaceBinding ["Super"] "Workspace";
moveWsBindings = makeWorkspaceBinding ["Super" "Shift"] "SendToWorkspace";
hjkl = {
"h" = "Left";
"j" = "Down";
"k" = "Up";
"l" = "Right";
# "i" = "In";
# "u" = "Out";
};
makeDirBinding = modifiers: action:
mapAttrsToList (
key: dir: {
inherit key modifiers;
action = {
type = action;
data = dir;
};
}
)
hjkl;
focusBindings = makeDirBinding ["Super"] "Focus";
moveBindings = makeDirBinding ["Super" "Shift"] "Move";
winManagementBindings =
focusWsBindings
++ moveWsBindings
++ focusBindings
++ moveBindings;
binding = key: modifiers: action: {
inherit key modifiers action;
};
spawnBinding = key: modifiers: app: {
inherit key modifiers;
action = {
type = "Spawn";
data = app;
};
};
systemBinding = key: modifiers: action: {
inherit key modifiers;
action = {
type = "System";
data = action;
};
};
in {
imports = [
../util/cosmic.nix
];
config.cosmic = {
enable = true;
defaultKeybindings = false;
# otherSettings = {
# "com.system76.CosmicPanel.Dock" = {
# option.opacity = 0.8;
# };
# };
keybindings =
winManagementBindings
++ [
# System bindings appear broken?
(binding "q" ["Super" "Shift"] "Close")
(binding "w" ["Super"] "ToggleStacking")
(binding "s" ["Super"] "ToggleOrientation")
(binding "space" ["Super"] "ToggleWindowFloating")
(binding "space" ["Super" "Shift"] "Maximize")
(binding "minus" ["Super"] "Minimize")
(binding "r" ["Super"] {
type = "Resizing";
data = "Outwards";
})
(binding "r" ["Super" "Shift"] {
type = "Resizing";
data = "Inwards";
})
(binding "tab" ["Super"] "NextOutput")
(binding "tab" ["Super" "Shift"] "MoveToNextOutput")
(binding "grave" ["Super"] "PreviousOutput")
(binding "grave" ["Super" "Shift"] "MoveToPreviousOutput")
(spawnBinding "equal" ["Super"] "keepassxc")
(systemBinding "f" ["Super"] "WebBrowser")
(systemBinding "e" ["Super"] "HomeFolder")
# broken at the moment
# (systemBinding "return" ["Super"] "Terminal")
(spawnBinding "return" ["Super"] "kitty")
(systemBinding "s" ["Super" "Shift"] "Screenshot")
(systemBinding null ["Super"] "Launcher")
(systemBinding "d" ["Super"] "AppLibrary")
(systemBinding "XF86AudioRaiseVolume" [] "VolumeRaise")
(systemBinding "XF86AudioLowerVolume" [] "VolumeLower")
(systemBinding "XF86AudioMute" [] "Mute")
(spawnBinding "XF86AudioNext" [] "playerctl next")
(spawnBinding "XF86AudioPrev" [] "playerctl previous")
(spawnBinding "XF86AudioPlay" [] "playerctl play-pause")
(spawnBinding "XF86AudioStop" [] "playerctl stop")
(systemBinding "XF86MonBrightnessUp" [] "BrightnessUp")
(systemBinding "XF86MonBrightnessDown" [] "BrightnessDown")
(spawnBinding "e" ["Super" "Shift"] "wlogout")
# old, pre-System bindings
# (binding "q" ["Super" "Shift"] "Close")
# (binding "w" ["Super"] "ToggleStacking")
# (binding "s" ["Super"] "ToggleOrientation")
# (binding "space" ["Super"] "ToggleWindowFloating")
# (binding "space" ["Super" "Shift"] "Maximize")
# (binding "minus" ["Super"] "Minimize")
# (binding "r" ["Super"] {
# type = "Resizing";
# data = "Outwards";
# })
# (binding "r" ["Super" "Shift"] {
# type = "Resizing";
# data = "Inwards";
# })
# (binding "tab" ["Super"] "NextOutput")
# (binding "tab" ["Super" "Shift"] "MoveToNextOutput")
# (binding "grave" ["Super"] "PreviousOutput")
# (binding "grave" ["Super" "Shift"] "MoveToPreviousOutput")
# (spawnBinding "f" ["Super"] "firefox")
# (spawnBinding "e" ["Super"] "nautilus")
# (spawnBinding "equal" ["Super"] "keepassxc")
# (spawnBinding "return" ["Super"] "kitty")
# (spawnBinding "s" ["Super" "Shift"] "cosmic-screenshot")
# (spawnBinding null ["Super"] "cosmic-launcher")
# (spawnBinding "d" ["Super"] "cosmic-app-library")
# (spawnBinding "XF86AudioRaiseVolume" [] "amixer sset Master 5%+")
# (spawnBinding "XF86AudioLowerVolume" [] "amixer sset Master 5%-")
# (spawnBinding "XF86AudioMute" [] "amixer sset Master toggle")
# (spawnBinding "XF86AudioNext" [] "playerctl next")
# (spawnBinding "XF86AudioPrev" [] "playerctl previous")
# (spawnBinding "XF86AudioPlay" [] "playerctl play-pause")
# (spawnBinding "XF86AudioStop" [] "playerctl stop")
# (
# spawnBinding "XF86MonBrightnessUp" []
# "busctl --user call com.system76.CosmicSettingsDaemon /com/system76/CosmicSettingsDaemon com.system76.CosmicSettingsDaemon IncreaseDisplayBrightness"
# )
# (
# spawnBinding "XF86MonBrightnessDown" []
# "busctl --user call com.system76.CosmicSettingsDaemon /com/system76/CosmicSettingsDaemon com.system76.CosmicSettingsDaemon DecreaseDisplayBrightness"
# )
# (spawnBinding "e" ["Super" "Shift"] "wlogout")
];
};
}

View file

@ -1,5 +1,6 @@
{pkgs, ...}: {
imports = [
./cosmic.nix
./media-players.nix
./webapps.nix
./documents.nix
@ -9,8 +10,8 @@
../programs/wlogout.nix
];
home.packages = with pkgs; [
gnome.file-roller
gnome.nautilus
file-roller
nautilus
thunderbird
keepassxc
];

View file

@ -3,15 +3,8 @@
../util/flatpak.nix
];
flatpaks = [
{
name = "md.obsidian.Obsidian";
overrides = {
Environment = {
OBSIDIAN_DISABLE_GPU = "1";
};
};
}
"org.onlyoffice.desktopeditors"
"md.obsidian.Obsidian"
"com.logseq.Logseq"
"org.libreoffice.LibreOffice"
"com.jgraph.drawio.desktop"
];

7
home/modules/niri.nix Normal file
View file

@ -0,0 +1,7 @@
{...}: {
programs.niri = {
enable = true;
settings = {
};
};
}

View file

@ -5,14 +5,14 @@
programs.firefox.webapps = {
"Syncthing" = {
url = "http://127.0.0.1:8384";
id = 3;
# id = 3;
extraSettings = config.programs.firefox.profiles.default.settings;
name = "Syncthing";
icon = ../icons/syncthing.png;
};
"StudyTAFE" = {
url = "https://www.studytafensw.edu.au";
id = 4;
# id = 4;
extraSettings = config.programs.firefox.profiles.default.settings;
name = "TAFE Study";
icon = ../icons/tafe.jpg;