first try

This commit is contained in:
twoneis 2023-11-12 19:38:02 +01:00
parent 9a43edcd92
commit 3f28ff67e3
26 changed files with 664 additions and 33 deletions

View file

@ -1,6 +1,7 @@
{ config, pkgs }: { { config, ... }: {
imports = [ imports = [
../../modules/system ../../modules/system
../../modules/games
./hardware-config.nix ./hardware-config.nix
]; ];

View file

@ -1,4 +1,4 @@
{ config, pkgs }: { { ... }: {
imports = [ imports = [
../../modules/system ../../modules/system

View file

@ -12,7 +12,7 @@
}; };
}; };
outputs = { nixpkgs, home-manager }: outputs = { nixpkgs, home-manager, ... }:
let let
x86 = "x86_64-linux"; x86 = "x86_64-linux";
in { in {

View file

@ -0,0 +1,7 @@
{ pkgs, ... }: {
home.packages = with pkgs; [
steam
prismlauncher-qt5
lutris
];
}

View file

@ -0,0 +1,6 @@
{ pkgs, ... }: {
home.packages = with pkgs; [
calibre
krita
];
}

View file

@ -0,0 +1,5 @@
{ ... }: {
programs.firefox = {
enable = true;
};
}

View file

@ -0,0 +1,5 @@
{ pkgs, ... }: {
home.packages = with pkgs; [
signal-desktop
];
}

View file

@ -1,5 +1,25 @@
{ config, pkgs }: { { ... }: {
imports = [ imports = [
./art
./browser
./chat
./discord
./editor
./email
./gdb
./git
./gnome
./media
./terminal
./utils
]; ];
home = {
username = "twoneis";
homeDirectory = "/home/twoneis";
stateVersion = "22.11";
};
programs.home-manager.enable = true;
} }

View file

@ -0,0 +1,6 @@
{ ... }: {
programs.discoss = {
enable = true;
css = import ./rosepine.css;
};
}

View file

@ -0,0 +1,117 @@
"
/**
* @name Rosé Pine
* @author blueb
* @authorId 403390454273409028
* @version 3.0.9
* @description All natural pine, faux fur and a bit of soho vibes for the classy minimalist.
* @source https://github.com/rose-pine/discord
* @updateUrl https://github.com/rose-pine/discord/blob/rose-pine.theme.css
*/
@import url('https://fonts.googleapis.com/css2?family=Fira+Code:wght@300;400;500;600;700&display=swap');
.theme-dark {
--background-primary: #26233a;
--background-secondary: #1f1d2e;
--background-secondary-alt: #26233a;
--channeltextarea-background: #2c2842;
--background-tertiary: #191724;
--background-accent: #ebbcba;
--text-normal: #dad7fd;
--text-spotify: #9ccfd8;
--text-muted: #4f4c58;
--text-link: #31748f;
--background-floating: #1f1d2e;
--header-primary: #e0def4;
--header-secondary: #9ccfd8;
--header-spotify: #9ccfd8;
--interactive-normal: #e0def4;
--interactive-hover: #c4a7e7;
--interactive-active: #e0def4;
--ping: #eb6f92;
--background-modifier-selected: #26233ab4;
--scrollbar-thin-thumb: #191724;
--scrollbar-thin-track: transparent;
--scrollbar-auto-thumb: #191724;
--scrollbar-auto-track: transparent;
}
.theme-light {
--background-primary: #faf4ed;
--background-secondary: #fffaf3;
--background-secondary-alt: #f2e9de;
--channeltextarea-background: #f2e9de;
--background-tertiary: #f2e9de;
--background-accent: #d7827e;
--text-normal: #575279;
--text-spotify: #575279;
--text-muted: #6e6a86;
--text-link: #286983;
--background-floating: #f2e9de;
--header-primary: #575279;
--header-secondary: #575279;
--header-spotify: #56949f;
--interactive-normal: #575279;
--interactive-hover: #6e6a86;
--interactive-active: #575279;
}
body {
--font-display: Fira Code;
}
.body-2wLx-E, .headerTop-3GPUSF, .bodyInnerWrapper-2bQs1k, .footer-3naVBw {
background-color: var(--background-tertiary);
}
.title-17SveM, .name-3Uvkvr{
font-size: 14px;
}
.panels-3wFtMD {
background-color: var(--background-secondary);
}
.username-h_Y3Us {
font-family: var(--font-display);
font-size: 14px;
}
.peopleColumn-1wMU14, .panels-j1Uci_, .peopleColumn-29fq28, .peopleList-2VBrVI, .content-2hZxGK, .header-1zd7se, .root-g14mjS .small-23Atuv .fullscreenOnMobile-ixj0e3{
background-color: var(--background-secondary);
}
.textArea-12jD-V, .lookBlank-3eh9lL, .threadSidebar-1o3BTy, .scrollableContainer-2NUZem, .perksModalContentWrapper-3RHugb, .theme-dark .footer-31IekZ, .theme-light .footer-31IekZ{
background-color: var(--background-tertiary);
}
.numberBadge-2s8kKX, .base-PmTxvP, .baseShapeRound-1Mm1YW, .bar-30k2ka, .unreadMentionsBar-1Bu1dC, .mention-1f5kbO, .active-1SSsBb, .disableButton-220a9y {
background-color: var(--ping) !important;
}
.lookOutlined-3sRXeN.colorRed-1TFJan, .lookOutlined-3sRXeN.colorRed-1TFJan {
color: var(--ping) !important;
}
.header-3OsQeK, .container-ZMc96U {
box-shadow: none!important;
border: none!important;
}
.content-1gYQeQ, .layout-1qmrhw, .inputDefault-3FGxgL, .input-2g-os5, .input-2z42oC, .role-2TIOKu, .searchBar-jGtisZ {
border-radius: 6px;
}
.layout-1qmrhw:hover, .content-1gYQeQ:hover {
background-color: var(--background-modifier-selected)!important;
}
.container-3wLKDe {
background-color: var(--background-secondary) !important;
}
.title-31SJ6t {
background-color: var(--background-primary) !important;
}
"

View file

@ -0,0 +1,13 @@
{ pkgs, ... }: {
home.packages = with pkgs; [
nil
marksman
];
programs.helix = {
enable = true;
defaultEditor = true;
settings = import ./helix-config.nix;
themes = ./helix-theme.nix;
};
}

View file

@ -0,0 +1,26 @@
{
theme = "rosepine";
editor = {
line-number = "relative";
cursorline = true;
auto-format = true;
soft-wrap.enable = true;
whitespace.render = "all";
cursor-shape = {
insert = "bar";
normal = "block";
select = "underline";
};
};
keys.normal = {
h = "move_char_left";
t = "move_line_up";
n = "move_line_down";
s = "move_char_right";
};
}

View file

@ -0,0 +1,193 @@
# Author: Rosé Pine <hi@rosepinetheme.com>
# Upstream: https://github.com/rose-pine/helix
# Contributing:
# Please submit changes to https://github.com/rose-pine/helix.
# The Rosé Pine team will update Helix, including you as a co-author.
{
rosepine = let
base = "#191724";
surface = "#1f1d2e";
overlay = "#26233a";
muted = "#6e6a86";
subtle = "#908caa";
text = "#e0def4";
love = "#eb6f92";
love_10 = "#311f30";
gold = "#f6c177";
gold_10 = "#30282c";
rose = "#ebbcba";
rose_10 = "#2f2834";
pine = "#31748f";
pine_10 = "#1a2030";
foam = "#9ccfd8";
foam_10 = "#252937";
iris = "#c4a7e7";
iris_10 = "#2b2539";
highlight_low = "#21202e";
highlight_med = "#403d52";
highlight_high = "#524f67";
in {
"ui.background" = { bg = base; };
"ui.background.separator" = { bg = base; };
"ui.cursor" = { fg = text; bg = highlight_high; };
# "ui.cursor.select" = {};
"ui.cursor.match" = { fg = text; bg = highlight_med; };
"ui.cursor.primary" = { fg = text; bg = muted; };
# "ui.gutter" = {};
# "ui.gutter.selected" = {};
"ui.linenr" = { fg = muted; };
"ui.linenr.selected" = { fg = text; };
"ui.statusline" = { fg = subtle; bg = surface; };
"ui.statusline.inactive" = { fg = muted; bg = surface; };
"ui.statusline.normal" = { fg = rose; bg = rose_10; };
"ui.statusline.insert" = { fg = foam; bg = foam_10; };
"ui.statusline.select" = { fg = iris; bg = iris_10; };
# "ui.statusline.separator" = {};
"ui.popup" = { bg = surface; };
"ui.popup.info" = { bg = surface; };
"ui.window" = { fg = overlay; bg = base; };
"ui.help" = { fg = subtle; bg = overlay; };
"ui.text" = { fg = text; };
"ui.text.focus" = { bg = overlay; };
"ui.text.info" = { fg = subtle; };
"ui.virtual.ruler" = { bg = overlay; };
"ui.virtual.whitespace" = { fg = highlight_high; };
"ui.virtual.indent-guide" = { fg = muted; };
"ui.virtual.inlay-hint" = { fg = subtle; };
"ui.menu" = { fg = subtle; bg = surface; };
"ui.menu.selected" = { fg = text; };
"ui.menu.scroll" = { fg = muted; bg = highlight_med; };
"ui.selection" = { bg = overlay; };
"ui.selection.primary" = { bg = highlight_med; };
"ui.cursorline.primary" = { bg = highlight_low; };
"ui.cursorline.secondary" = { bg = surface; };
"warning" = gold;
"error" = love;
"info" = foam;
"hint" = iris;
"debug" = rose;
"diagnostic" = { underline = { color = subtle; style = "curl"; }; };
"diagnostic.hint" = { underline = { color = iris; style = "curl"; }; };
"diagnostic.info" = { underline = { color = foam; style = "curl"; }; };
"diagnostic.warning" = { underline = { color = gold; style = "curl"; }; };
"diagnostic.error" = { underline = { color = love; style = "curl"; }; };
"special" = rose;
"attribute" = "iris";
"type" = foam;
# "type.builtin" = "";
"constructor" = foam;
"constant" = foam;
"constant.builtin" = rose;
# "constant.builtin.boolean" = "";
"constant.character" = gold;
"constant.character.escape" = pine;
"constant.numeric" = gold;
# "constant.numeric.integer" = "";
# "constant.numeric.float" = "";
"string" = gold;
# "string.regexp" = "";
# "string.special" = "";
# "string.special.path" = "";
# "string.special.url" = "";
# "string.special.symbol" = "";
"comment" = { fg = muted; modifiers = ["italic"];};
# "comment.line" = "";
# "comment.block" = "";
# "comment.block.documenation" = "";
"variable" = text;
"variable.builtin" = love;
"variable.parameter" = iris;
# "variable.other" = "";
# "variable.other.member" = "";
"label" = foam;
"punctuation" = subtle;
# "punctuation.delimiter" = "";
# "punctuation.bracket" = "";
# "punctuation.special" = "";
"keyword" = pine;
# "keyword.control" = "";
# "keyword.control.conditional" = "";
# "keyword.control.repeat" = "";
# "keyword.control.import" = "";
# "keyword.control.return" = "";
# "keyword.control.exception" = "";
"keyword.operator" = subtle;
# "keyword.directive" = "";
# "keyword.function" = "";
# "keyword.storage" = "";
# "keyword.storage.type" = "";
# "keyword.storage.modifier" = "";
"operator" = subtle;
"function" = rose; # maybe pine;
"function.builtin" = love;
# "function.method" = "";
# "function.macro" = "";
# "function.special" = "";
"tag" = foam;
"namespace" = iris;
"markup.heading.marker" = muted;
"markup.heading" = { fg = iris; modifiers = ["bold"]; };
"markup.heading.1" = { fg = "iris"; modifiers = ["bold"]; };
"markup.heading.2" = { fg = foam; modifiers = ["bold"]; };
"markup.heading.3" = { fg = rose; modifiers = ["bold"]; };
"markup.heading.4" = { fg = gold; modifiers = ["bold"]; };
"markup.heading.5" = { fg = pine; modifiers = ["bold"]; };
"markup.heading.6" = { fg = foam; modifiers = ["bold"]; };
# "markup.heading.completion" = "";
# "markup.heading.hover" = "";
"markup.list" = muted;
# "markup.list.unnumbered" = "";
# "markup.list.numbered" = "";
"markup.bold" = { modifiers = ["bold"]; };
"markup.italic" = { modifiers = ["italic"]; };
"markup.link" = iris;
"markup.link.url" = { fg = iris; underline = { color = iris; style = "line"; }; } ;
"markup.link.label" = subtle;
"markup.link.text" = text;
"markup.quote" = subtle;
"markup.raw" = subtle;
# "markup.raw.inline" = {};
# "markup.raw.inline.completion" = {};
# "markup.raw.inline.hover" = {};
# "markup.raw.block" = {};
# "markup.normal" = "";
# "markup.normal.completion" = "";
# "markup.normal.hover" = "";
"diff" = overlay;
"diff.plus" = foam;
"diff.minus" = love;
"diff.delta" = highlight_high;
# "diff.delta.moved" = "";
};
}

View file

@ -0,0 +1,5 @@
{ ... }: {
programs.thunderbird = {
enable = true;
};
}

View file

@ -0,0 +1,12 @@
{ ... }: {
home.file = {
".gef.rc" = {
source = ./gef-for-c;
# source = ./gef-for-asm;
};
".gdbinit" = {
source = ./gdb-for-c;
# source = ./gdb-for-asm;
};
};
}

View file

@ -0,0 +1,4 @@
source /usr/share/gef/gef.py
set debuginfod enabled off
set disassembly-flavor att

View file

@ -0,0 +1,5 @@
source /usr/share/gef/gef.py
set debuginfod enabled off
set disassembly-flavor intel
set detach-on-fork off
set follow-fork-mode child

126
modules/home/gdb/gef-for-c Normal file
View file

@ -0,0 +1,126 @@
[context]
clear_screen = True
enable = True
grow_stack_down = False
ignore_registers =
layout = source args extra
libc_args = False
libc_args_path =
nb_lines_backtrace = 10
nb_lines_backtrace_before = 2
nb_lines_code = 6
nb_lines_code_prev = 3
nb_lines_stack = 10
nb_lines_threads = -1
peek_calls = True
peek_ret = True
redirect =
show_opcodes_size = 0
show_registers_raw = False
show_source_code_variable_values = True
show_stack_raw = False
[dereference]
max_recursion = 7
[entry-break]
entrypoint_symbols = main _main __libc_start_main __uClibc_main start _start
[gef]
autosave_breakpoints_file =
debug = False
disable_color = False
extra_plugins_dir =
follow_child = True
readline_compat = False
show_deprecation_warnings = True
tempdir = /tmp/gef
[got]
function_not_resolved = yellow
function_resolved = green
[heap-analysis-helper]
check_double_free = True
check_free_null = False
check_heap_overlap = True
check_uaf = True
check_weird_free = True
[heap-chunks]
peek_nb_byte = 16
[hexdump]
always_show_ascii = False
[highlight]
regex = False
[pattern]
length = 1024
[pcustom]
max_depth = 4
struct_path = /tmp/gef/structs
structure_name = bold blue
structure_size = green
structure_type = bold red
[process-search]
ps_command = /usr/bin/ps auxww
[syscall-args]
path = /tmp/gef/syscall-tables
[theme]
address_code = red
address_heap = green
address_stack = pink
context_title_line = gray
context_title_message = cyan
default_title_line = gray
default_title_message = cyan
dereference_base_address = cyan
dereference_code = gray
dereference_register_value = bold blue
dereference_string = yellow
disassemble_current_instruction = green
old_context = gray
registers_register_name = blue
registers_value_changed = bold red
source_current_line = green
table_heading = blue
[trace-run]
max_tracing_recursion = 1
tracefile_prefix = ./gef-trace-
[aliases]
ctx = context
telescope = dereference
flags = edit-flags
start = entry-break
fmtstr-helper = format-string-helper
hl = highlight
highlight set = highlight add
hla = highlight add
hlc = highlight clear
highlight ls = highlight list
hll = highlight list
highlight delete = highlight remove
highlight del = highlight remove
highlight unset = highlight remove
highlight rm = highlight remove
hlr = highlight remove
nb = name-break
pattern offset = pattern search
pf = print-format
ps = process-search
status = process-status
lookup = scan
grep = search-pattern
xref = search-pattern
sc-get = shellcode get
sc-search = shellcode search
screen-setup = tmux-setup

View file

@ -0,0 +1,9 @@
{ pkgs, ... }: {
home.packages = [ pkgs.gh ];
programs.git = {
enable = true;
userName = "twoneis";
userEmail = "sanjay29@sapura.de";
};
}

View file

@ -0,0 +1,13 @@
{ pkgs, ... }: {
# Enable the GNOME Desktop Environment.
services.xserver.displayManager.gdm.enable = true;
services.xserver.desktopManager.gnome.enable = true;
# Don't pull unnecessary packages
services.gnome.core-utilities.enable = false;
environment.gnome.excludePackages = [ pkgs.gnome-tour ];
home.packages = with pkgs; [
gnomeExtensions.paperwm
gnome.gnome-characters
];
}

View file

@ -0,0 +1,7 @@
{ pkgs, ... }: {
home.packages = with pkgs; [
vlc
spotify
image-roll
];
}

View file

@ -0,0 +1,56 @@
{
colors = {
primary = {
background = "0x191724";
foreground = "0xe0def4";
};
cursor = {
text = "0xe0def4";
cursor = "0x524f67";
};
vi_mode_cursor = {
text = "0xe0def4";
cursor = "0x524f67";
};
line_indicator = {
foreground = "None";
background = "None";
};
selection = {
text = "0xe0def4";
background = "0x403d52";
};
normal = {
black = "0x26233a";
red = "0xeb6f92";
green = "0x31748f";
yellow = "0xf6c177";
blue = "0x9ccfd8";
magenta = "0xc4a7e7";
cyan = "0xebbcba";
white = "0xe0def4";
};
bright = {
black = "0x6e6a86";
red = "0xeb6f92";
green = "0x31748f";
yellow = "0xf6c177";
blue = "0x9ccfd8";
magenta = "0xc4a7e7";
cyan = "0xebbcba";
white = "0xe0def4";
};
hints = {
start = {
foreground = "#908caa";
background = "#1f1d2e";
};
end = {
foreground = "#6e6a86";
background = "#1f1d2e";
};
};
};
window.decorations = "None";
}

View file

@ -0,0 +1,11 @@
{ pkgs, ... }: {
home.packages = with pkgs; [
man-pages
man-pages-posix
];
programs.alacritty = {
enable = true;
settings = import ./alacritty-config.nix;
};
}

View file

@ -0,0 +1,11 @@
{ pkgs, ... }: {
home.packages = with pkgs; [
man-pages
man-pages-posix
gnome.nautilus
];
programs.bottom = {
enable = true;
};
}

View file

@ -2,13 +2,7 @@
# your system. Help is available in the configuration.nix(5) man page # your system. Help is available in the configuration.nix(5) man page
# and in the NixOS manual (accessible by running nixos-help). # and in the NixOS manual (accessible by running nixos-help).
{ pkgs }: { { pkgs, ... }: {
imports =
[ # Include the results of the hardware scan.
./packages.nix
];
# Enable nix flakes # Enable nix flakes
nix.settings.experimental-features = [ "nix-command" "flakes" ]; nix.settings.experimental-features = [ "nix-command" "flakes" ];
@ -49,13 +43,6 @@
# Remove XTerm # Remove XTerm
services.xserver.excludePackages = [ pkgs.xterm ]; services.xserver.excludePackages = [ pkgs.xterm ];
# Enable the GNOME Desktop Environment.
services.xserver.displayManager.gdm.enable = true;
services.xserver.desktopManager.gnome.enable = true;
# Don't pull unnecessary packages
services.gnome.core-utilities.enable = false;
environment.gnome.excludePackages = [ pkgs.gnome-tour ];
# Configure keymap in X11 # Configure keymap in X11
services.xserver = { services.xserver = {
layout = "us"; layout = "us";

View file

@ -1,14 +0,0 @@
{ pkgs }: {
environment.systemPackages = with pkgs; [
alacritty
git
gh
man-pages
man-pages-posix
bottom
firefox
gnome.nautilus
vlc
image-roll
];
}