Compare commits

...

5 commits

7 changed files with 125 additions and 36 deletions

View file

@ -3,4 +3,4 @@
HOST := $(shell hostname)
build:
nix build --keep-going .#nixosConfigurations.$(HOST).config.system.build.toplevel
nix build -j 1 --keep-going .#nixosConfigurations.$(HOST).config.system.build.toplevel

View file

@ -4,8 +4,5 @@
./work.nix
./desktop/plasma/default.nix
];
xdg.configFile = {
"autostart/twinkle.desktop".source = "${pkgs.twinkle}/share/applications/twinkle.desktop";
"autostart/teams-for-linux.desktop".source = "${pkgs.teams-for-linux}/share/applications/teams-for-linux.desktop";
};
xdg.configFile."autostart/twinkle.desktop".source = "${pkgs.twinkle}/share/applications/twinkle.desktop";
}

85
home/config/ferdium.nix Normal file
View file

@ -0,0 +1,85 @@
{ accentColor, progressbarAccentColor }:
{
inherit accentColor progressbarAccentColor;
adaptableDarkMode = true;
alwaysShowWorkspaces = false;
autoLaunchInBackground = false;
autoLaunchOnStart = false;
autohideMenuBar = false;
automaticUpdates = false;
beta = false;
clipboardNotifications = true;
closeToSystemTray = false;
confirmOnQuit = false;
customTodoServer = "";
darkMode = false;
downloadFolderPath = "/home/pixelifytica/Downloads";
enableGPUAcceleration = true;
enableGlobalHideShortcut = false;
enableLongPressServiceHint = false;
enableSpellchecking = true;
enableSystemTray = true;
enableTranslator = true;
fallbackLocale = "en-US";
grayscaleServicesDim = 50;
hibernateOnStartup = true;
hibernationStrategy = 300;
hideAllServicesWorkspace = false;
hideCollapseButton = false;
hideDownloadButton = false;
hideNotificationsButton = false;
hideRecipesButton = false;
hideSettingsButton = false;
hideSplitModeButton = true;
hideWorkspacesButton = false;
iconSize = 20;
inactivityLock = 0;
isAppMuted = false;
isLockingFeatureEnabled = false;
isMenuCollapsed = false;
isTodosFeatureEnabled = true;
isTwoFactorAutoCatcherEnabled = false;
keepAllWorkspacesLoaded = false;
liftSingleInstanceLock = false;
locale = "en-US";
locked = false;
lockedPassword = "";
minimizeToSystemTray = false;
navigationBarBehaviour = "custom";
navigationBarManualActive = false;
notifyTaskBarOnMessage = false;
predefinedTodoServer = "https://todoist.com/app";
privateNotifications = false;
reloadAfterResume = true;
reloadAfterResumeTime = 10;
runInBackground = true;
scheduledDNDEnabled = false;
scheduledDNDEnd = "09:00";
scheduledDNDStart = "17:00";
searchEngine = "duckDuckGo";
sentry = false;
server = "You are using Ferdium without a server";
serviceRibbonWidth = 68;
showDisabledServices = true;
showDragArea = false;
showMessageBadgeWhenMuted = true;
showServiceName = false;
sidebarServicesLocation = 0;
spellcheckerLanguage = "en-GB";
splitColumns = 3;
splitMode = false;
startMinimized = true;
translatorEngine = "LibreTranslate";
translatorLanguage = "en";
twoFactorAutoCatcherMatcher = "token, code, sms, verify";
universalDarkMode = true;
useGrayscaleServices = false;
useHorizontalStyle = false;
useSelfSignedCertificates = false;
useTouchIdToUnlock = true;
userAgentPref = "";
wakeUpHibernationSplay = true;
wakeUpHibernationStrategy = 0;
wakeUpStrategy = 300;
webRTCIPHandlingPolicy = "disable_non_proxied_udp";
}

View file

@ -1,4 +1,9 @@
{ pkgs, ... }:
{
config,
pkgs,
accentColourName,
...
}:
{
imports = [
# Programs
@ -14,27 +19,26 @@
./scripts/default.nix
];
home.packages = with pkgs; [
libreoffice-fresh
libreoffice-qt-fresh
krdc
krita
inkscape
tokodon
webcord
signal-desktop
whatsapp-for-linux
teams-for-linux
ferdium
];
xdg.configFile = {
"autostart/org.kde.yakuake.desktop".source = "${pkgs.yakuake}/share/applications/org.kde.yakuake.desktop";
"autostart/signal-desktop.desktop".source = "${pkgs.signal-desktop}/share/applications/signal-desktop.desktop";
"autostart/com.github.eneshecan.WhatsAppForLinux.desktop".source = "${pkgs.whatsapp-for-linux}/share/applications/com.github.eneshecan.WhatsAppForLinux.desktop";
"teams-for-linux/config.json".text = builtins.toJSON {
awayOnSystemIdle = true;
closeAppOnCross = true;
followSystemTheme = true;
notificationMethod = "electron";
optInTeamsV2 = true;
spellCheckerLanguages = [ "en_GB" ];
};
"autostart/ferdium.desktop".source = "${pkgs.ferdium}/share/applications/ferdium.desktop";
"Ferdium/config/settings.json".text =
let
accentColor = config.scheme.${accentColourName};
in
builtins.toJSON (
import ./config/ferdium.nix {
inherit accentColor;
progressbarAccentColor = accentColor;
}
);
};
}

View file

@ -2,18 +2,14 @@
{
home = {
packages = [
(pkgs.writeShellScriptBin "esync" (builtins.readFile ./shell/esync.sh))
(pkgs.writeShellScriptBin "git-sync-all" (builtins.readFile ./shell/git-sync-all.sh))
(pkgs.writeShellScriptBin "rsync-local-config" (builtins.readFile ./shell/rsync-local-config.sh))
(pkgs.writeShellScriptBin "xdg-query-program" (builtins.readFile ./shell/xdg-query-program.sh))
];
shellAliases =
let
sync = "sudo systemctl start nixos-upgrade.service && git-sync-all";
in
{
gsa = "git-sync-all";
sync-and-shutdown = sync + " && shutdown now";
sync-and-reboot = sync + " && reboot";
};
shellAliases = {
gsa = "git-sync-all";
sync-and-shutdown = "sudo systemctl start nixos-upgrade.service && git-sync-all && shutdown now";
};
};
}

14
home/scripts/shell/esync.sh Executable file
View file

@ -0,0 +1,14 @@
# Clone ~/.emacs.d/ if it doesn't exist
EMACS_DIR="$HOME/.emacs.d/"
if [ ! -d "$EMACS_DIR" ]; then
git clone "https://git.xenia.me.uk/pixelifytica/emacs.git" "$EMACS_DIR"
fi
(
cd "$EMACS_DIR" || exit 1
# Pull changes by fast-forwarding only
git pull --ff --ff-only
# Update submodules for local packages
git submodule update --init --recursive
# Install and update extensions
make install
)

View file

@ -1,10 +1,3 @@
# Clone ~/.emacs.d/ if it doesn't exist, fast-forward pull
EMACS_DIR="$HOME/.emacs.d/"
if [ ! -d "$EMACS_DIR" ]; then
git clone "https://git.xenia.me.uk/pixelifytica/emacs.git" "$EMACS_DIR"
fi
git -C "$EMACS_DIR" pull --ff --ff-only
# Sync common directories, setting url to ensure it's up-to-date first
SYNC_DIRS=(
"$HOME/.password-store/"