Merge remote-tracking branch 'lass/master'
This commit is contained in:
commit
9c516e9504
@ -9,6 +9,8 @@
|
|||||||
<stockholm/jeschli/2configs/emacs.nix>
|
<stockholm/jeschli/2configs/emacs.nix>
|
||||||
<stockholm/jeschli/2configs/xdg.nix>
|
<stockholm/jeschli/2configs/xdg.nix>
|
||||||
<stockholm/jeschli/2configs/xserver>
|
<stockholm/jeschli/2configs/xserver>
|
||||||
|
# <stockholm/jeschli/1systems/bln/dcso-vpn.nix>
|
||||||
|
<stockholm/jeschli/2configs/officevpn.nix>
|
||||||
];
|
];
|
||||||
|
|
||||||
# boot.loader.systemd-boot.enable = true;
|
# boot.loader.systemd-boot.enable = true;
|
||||||
@ -94,6 +96,8 @@
|
|||||||
vagrant
|
vagrant
|
||||||
# document viewer
|
# document viewer
|
||||||
zathura
|
zathura
|
||||||
|
|
||||||
|
samba
|
||||||
];
|
];
|
||||||
|
|
||||||
|
|
||||||
@ -161,4 +165,9 @@
|
|||||||
|
|
||||||
hardware.bluetooth.enable = true;
|
hardware.bluetooth.enable = true;
|
||||||
krebs.build.host = config.krebs.hosts.bln;
|
krebs.build.host = config.krebs.hosts.bln;
|
||||||
|
|
||||||
|
networking.interfaces.enp0s31f6.ipv4.addresses = [
|
||||||
|
{ address = "10.99.23.2"; prefixLength = 24; }
|
||||||
|
];
|
||||||
|
|
||||||
}
|
}
|
||||||
|
@ -25,21 +25,11 @@
|
|||||||
preLVM = true;
|
preLVM = true;
|
||||||
allowDiscards = true;
|
allowDiscards = true;
|
||||||
} ];
|
} ];
|
||||||
# networking.hostName = "brauerei";
|
|
||||||
# Define your hostname.
|
|
||||||
# networking.wireless.enable = true;
|
|
||||||
networking.networkmanager.enable = true;
|
networking.networkmanager.enable = true;
|
||||||
# Enables wireless support via wpa_supplicant.
|
|
||||||
# Select internationalisation properties.
|
|
||||||
# i18n = {
|
|
||||||
# consoleFont = "Lat2-Terminus16";
|
|
||||||
# consoleKeyMap = "us";
|
|
||||||
# defaultLocale = "en_US.UTF-8";
|
|
||||||
# };
|
|
||||||
# Set your time zone. #
|
|
||||||
time.timeZone = "Europe/Amsterdam";
|
time.timeZone = "Europe/Amsterdam";
|
||||||
|
|
||||||
nixpkgs.config.allowUnfree = true;
|
nixpkgs.config.allowUnfree = true;
|
||||||
# List packages installed in system profile. To search by name, run: # $ nix-env -qaP | grep wget
|
|
||||||
environment.shellAliases = {
|
environment.shellAliases = {
|
||||||
n = "nix-shell";
|
n = "nix-shell";
|
||||||
stocki = pkgs.writeDash "deploy" ''
|
stocki = pkgs.writeDash "deploy" ''
|
||||||
@ -47,6 +37,7 @@
|
|||||||
exec nix-shell -I stockholm="$PWD" --run 'deploy --system="brauerei"'
|
exec nix-shell -I stockholm="$PWD" --run 'deploy --system="brauerei"'
|
||||||
'';
|
'';
|
||||||
};
|
};
|
||||||
|
|
||||||
environment.systemPackages = with pkgs; [
|
environment.systemPackages = with pkgs; [
|
||||||
# system helper
|
# system helper
|
||||||
ag
|
ag
|
||||||
@ -103,6 +94,7 @@
|
|||||||
zathura
|
zathura
|
||||||
# xorg
|
# xorg
|
||||||
xorg.xbacklight
|
xorg.xbacklight
|
||||||
|
taskwarrior
|
||||||
];
|
];
|
||||||
|
|
||||||
# Some programs need SUID wrappers, can be configured further or are
|
# Some programs need SUID wrappers, can be configured further or are
|
||||||
@ -126,7 +118,7 @@
|
|||||||
display = 11;
|
display = 11;
|
||||||
tty = 11;
|
tty = 11;
|
||||||
|
|
||||||
dpi = 96;
|
dpi = 144;
|
||||||
|
|
||||||
# videoDrivers = [ "nvidia" ];
|
# videoDrivers = [ "nvidia" ];
|
||||||
synaptics = {
|
synaptics = {
|
||||||
@ -138,7 +130,7 @@
|
|||||||
|
|
||||||
users.extraUsers.jeschli = { # TODO: define as krebs.users
|
users.extraUsers.jeschli = { # TODO: define as krebs.users
|
||||||
isNormalUser = true;
|
isNormalUser = true;
|
||||||
extraGroups = ["docker" "vboxusers"];
|
extraGroups = ["docker" "vboxusers" "audio"];
|
||||||
uid = 1000;
|
uid = 1000;
|
||||||
};
|
};
|
||||||
users.extraUsers.jamie = {
|
users.extraUsers.jamie = {
|
||||||
|
@ -29,5 +29,6 @@
|
|||||||
|
|
||||||
swapDevices = [ ];
|
swapDevices = [ ];
|
||||||
|
|
||||||
|
hardware.pulseaudio.enable = true;
|
||||||
nix.maxJobs = lib.mkDefault 4;
|
nix.maxJobs = lib.mkDefault 4;
|
||||||
}
|
}
|
||||||
|
@ -17,18 +17,19 @@ let
|
|||||||
'';
|
'';
|
||||||
evilMode = ''
|
evilMode = ''
|
||||||
;; Evil Mode
|
;; Evil Mode
|
||||||
(add-to-list 'load-path "~/.emacs.d/evil")
|
|
||||||
(require 'evil)
|
(require 'evil)
|
||||||
(evil-mode 1)
|
(evil-mode 1)
|
||||||
(require 'evil-org)
|
;; (require 'evil-org)
|
||||||
(add-hook 'org-mode-hook 'evil-org-mode)
|
;; (add-hook 'org-mode-hook 'evil-org-mode)
|
||||||
(evil-org-set-key-theme '(navigation insert textobjects additional calendar))
|
;; (evil-org-set-key-theme '(navigation insert textobjects additional calendar))
|
||||||
(require 'evil-org-agenda)
|
;; (require 'evil-org-agenda)
|
||||||
(evil-org-agenda-set-keys)
|
;; (evil-org-agenda-set-keys)
|
||||||
'';
|
'';
|
||||||
windowCosmetics = ''
|
windowCosmetics = ''
|
||||||
|
(menu-bar-mode -1)
|
||||||
(tool-bar-mode -1) ; Disable the button bar atop screen
|
(tool-bar-mode -1) ; Disable the button bar atop screen
|
||||||
(scroll-bar-mode -1) ; Disable scroll bar
|
(scroll-bar-mode -1) ; Disable scroll bar
|
||||||
|
(toggle-scroll-bar -1)
|
||||||
(setq inhibit-startup-screen t) ; Disable startup screen with graphics
|
(setq inhibit-startup-screen t) ; Disable startup screen with graphics
|
||||||
(setq-default indent-tabs-mode nil) ; Use spaces instead of tabs
|
(setq-default indent-tabs-mode nil) ; Use spaces instead of tabs
|
||||||
(setq default-tab-width 2) ; Two spaces is a tab
|
(setq default-tab-width 2) ; Two spaces is a tab
|
||||||
@ -41,28 +42,36 @@ let
|
|||||||
(global-set-key "\C-cl" 'org-store-link)
|
(global-set-key "\C-cl" 'org-store-link)
|
||||||
(global-set-key "\C-ca" 'org-agenda)
|
(global-set-key "\C-ca" 'org-agenda)
|
||||||
(global-set-key "\C-cb" 'org-iswitchb)
|
(global-set-key "\C-cb" 'org-iswitchb)
|
||||||
|
(setq org-link-frame-setup '((file . find-file))) ; open link in same frame.
|
||||||
(if (boundp 'org-user-agenda-files)
|
(if (boundp 'org-user-agenda-files)
|
||||||
(setq org-agenda-files org-user-agenda-files)
|
(setq org-agenda-files org-user-agenda-files)
|
||||||
(setq org-agenda-files (quote ("~/projects/notes")))
|
(setq org-agenda-files (quote ("~/projects/notes")))
|
||||||
)
|
)
|
||||||
'';
|
'';
|
||||||
|
theme = ''
|
||||||
|
(load-theme 'monokai-alt)
|
||||||
|
'';
|
||||||
recentFiles = ''
|
recentFiles = ''
|
||||||
(recentf-mode 1)
|
(recentf-mode 1)
|
||||||
(setq recentf-max-menu-items 25)
|
(setq recentf-max-menu-items 25)
|
||||||
(global-set-key "\C-x\ \C-r" 'recentf-open-files)
|
(global-set-key "\C-x\ \C-r" 'recentf-open-files)
|
||||||
'';
|
'';
|
||||||
dotEmacs = pkgs.writeText "dot-emacs" ''
|
dotEmacs = pkgs.writeText "dot-emacs" ''
|
||||||
|
${evilMode}
|
||||||
${packageRepos}
|
${packageRepos}
|
||||||
${orgMode}
|
${orgMode}
|
||||||
${recentFiles}
|
${recentFiles}
|
||||||
|
${theme}
|
||||||
${windowCosmetics}
|
${windowCosmetics}
|
||||||
'';
|
'';
|
||||||
emacsWithCustomPackages = (pkgs.emacsPackagesNgGen pkgs.emacs).emacsWithPackages (epkgs: [
|
emacsWithCustomPackages = (pkgs.emacsPackagesNgGen pkgs.emacs).emacsWithPackages (epkgs: [
|
||||||
|
epkgs.melpaPackages.evil
|
||||||
epkgs.melpaStablePackages.magit
|
epkgs.melpaStablePackages.magit
|
||||||
epkgs.melpaPackages.mmm-mode
|
epkgs.melpaPackages.mmm-mode
|
||||||
epkgs.melpaPackages.nix-mode
|
epkgs.melpaPackages.nix-mode
|
||||||
epkgs.melpaPackages.go-mode
|
epkgs.melpaPackages.go-mode
|
||||||
epkgs.melpaPackages.google-this
|
epkgs.melpaPackages.google-this
|
||||||
|
epkgs.melpaPackages.monokai-alt-theme
|
||||||
]);
|
]);
|
||||||
myEmacs = pkgs.writeDashBin "my-emacs" ''
|
myEmacs = pkgs.writeDashBin "my-emacs" ''
|
||||||
exec ${emacsWithCustomPackages}/bin/emacs -q -l ${dotEmacs} "$@"
|
exec ${emacsWithCustomPackages}/bin/emacs -q -l ${dotEmacs} "$@"
|
||||||
|
19
jeschli/2configs/officevpn.nix
Normal file
19
jeschli/2configs/officevpn.nix
Normal file
@ -0,0 +1,19 @@
|
|||||||
|
{ config, pkgs, ... }:
|
||||||
|
|
||||||
|
{
|
||||||
|
nixpkgs.config.packageOverrides = pkgs: {
|
||||||
|
openvpn = pkgs.openvpn.override { pkcs11Support = true; useSystemd = false;};
|
||||||
|
};
|
||||||
|
|
||||||
|
environment.systemPackages = with pkgs; [
|
||||||
|
opensc
|
||||||
|
openvpn
|
||||||
|
yubikey-manager
|
||||||
|
];
|
||||||
|
|
||||||
|
services.pcscd.enable = true;
|
||||||
|
|
||||||
|
# To start the vpn manually execute
|
||||||
|
# $ openvpn --config clien.ovpn
|
||||||
|
}
|
||||||
|
|
@ -5,7 +5,6 @@ with import <stockholm/lib>;
|
|||||||
pkgs.writeText "Xresources" /* xdefaults */ ''
|
pkgs.writeText "Xresources" /* xdefaults */ ''
|
||||||
Xcursor.theme: aero-large-drop
|
Xcursor.theme: aero-large-drop
|
||||||
Xcursor.size: 128
|
Xcursor.size: 128
|
||||||
Xft.dpi: 144
|
|
||||||
|
|
||||||
URxvt*cutchars: "\\`\"'&()*,;<=>?@[]^{|}‘’"
|
URxvt*cutchars: "\\`\"'&()*,;<=>?@[]^{|}‘’"
|
||||||
URxvt*eightBitInput: false
|
URxvt*eightBitInput: false
|
||||||
@ -22,7 +21,8 @@ pkgs.writeText "Xresources" /* xdefaults */ ''
|
|||||||
URxvt*charClass: 33:48,37:48,45-47:48,64:48,38:48,61:48,63:48
|
URxvt*charClass: 33:48,37:48,45-47:48,64:48,38:48,61:48,63:48
|
||||||
URxvt*cutNewline: False
|
URxvt*cutNewline: False
|
||||||
URxvt*cutToBeginningOfLine: False
|
URxvt*cutToBeginningOfLine: False
|
||||||
|
URxvt*font: xft:Monospace:size=12
|
||||||
|
URxvt*font: xft:Monospace:size=12:bold
|
||||||
URxvt*color0: #232342
|
URxvt*color0: #232342
|
||||||
URxvt*color3: #c07000
|
URxvt*color3: #c07000
|
||||||
URxvt*color4: #4040c0
|
URxvt*color4: #4040c0
|
||||||
|
@ -15,6 +15,7 @@
|
|||||||
<stockholm/krebs/2configs/ircd.nix>
|
<stockholm/krebs/2configs/ircd.nix>
|
||||||
<stockholm/krebs/2configs/reaktor-retiolum.nix>
|
<stockholm/krebs/2configs/reaktor-retiolum.nix>
|
||||||
<stockholm/krebs/2configs/reaktor-krebs.nix>
|
<stockholm/krebs/2configs/reaktor-krebs.nix>
|
||||||
|
<stockholm/krebs/2configs/repo-sync.nix>
|
||||||
];
|
];
|
||||||
|
|
||||||
krebs.build.host = config.krebs.hosts.hotdog;
|
krebs.build.host = config.krebs.hosts.hotdog;
|
||||||
|
@ -7,7 +7,6 @@
|
|||||||
[SPAM]aje|http://www.aljazeera.com/Services/Rss/?PostingId=2007731105943979989|#snews
|
[SPAM]aje|http://www.aljazeera.com/Services/Rss/?PostingId=2007731105943979989|#snews
|
||||||
[SPAM]allafrica|http://allafrica.com/tools/headlines/rdf/latest/headlines.rdf|#snews
|
[SPAM]allafrica|http://allafrica.com/tools/headlines/rdf/latest/headlines.rdf|#snews
|
||||||
[SPAM]antirez|http://antirez.com/rss|#snews
|
[SPAM]antirez|http://antirez.com/rss|#snews
|
||||||
[SPAM]arbor|http://feeds2.feedburner.com/asert/|#snews
|
|
||||||
[SPAM]archlinux|http://www.archlinux.org/feeds/news/|#snews
|
[SPAM]archlinux|http://www.archlinux.org/feeds/news/|#snews
|
||||||
[SPAM]ars|http://feeds.arstechnica.com/arstechnica/index?format=xml|#snews
|
[SPAM]ars|http://feeds.arstechnica.com/arstechnica/index?format=xml|#snews
|
||||||
[SPAM]augustl|http://augustl.com/atom.xml|#snews
|
[SPAM]augustl|http://augustl.com/atom.xml|#snews
|
||||||
@ -131,7 +130,6 @@
|
|||||||
[SPAM]slashdot|http://rss.slashdot.org/Slashdot/slashdot|#snews
|
[SPAM]slashdot|http://rss.slashdot.org/Slashdot/slashdot|#snews
|
||||||
[SPAM]slate|http://feeds.slate.com/slate|#snews
|
[SPAM]slate|http://feeds.slate.com/slate|#snews
|
||||||
[SPAM]spiegel_eil|http://www.spiegel.de/schlagzeilen/eilmeldungen/index.rss|#snews
|
[SPAM]spiegel_eil|http://www.spiegel.de/schlagzeilen/eilmeldungen/index.rss|#snews
|
||||||
[SPAM]spiegelfechter|http://feeds.feedburner.com/DerSpiegelfechter?format=xml|#snews
|
|
||||||
[SPAM]spiegel_top|http://www.spiegel.de/schlagzeilen/tops/index.rss|#snews
|
[SPAM]spiegel_top|http://www.spiegel.de/schlagzeilen/tops/index.rss|#snews
|
||||||
[SPAM]standardmedia_ke|http://www.standardmedia.co.ke/rss/headlines.php|#snews
|
[SPAM]standardmedia_ke|http://www.standardmedia.co.ke/rss/headlines.php|#snews
|
||||||
[SPAM]stern|http://www.stern.de/feed/standard/all/|#snews
|
[SPAM]stern|http://www.stern.de/feed/standard/all/|#snews
|
||||||
@ -146,7 +144,6 @@
|
|||||||
[SPAM]the_insider|http://www.theinsider.org/rss/news/headlines-xml.asp|#snews
|
[SPAM]the_insider|http://www.theinsider.org/rss/news/headlines-xml.asp|#snews
|
||||||
[SPAM]tigsource|http://www.tigsource.com/feed/|#snews
|
[SPAM]tigsource|http://www.tigsource.com/feed/|#snews
|
||||||
[SPAM]tinc|http://tinc-vpn.org/news/index.rss|#snews
|
[SPAM]tinc|http://tinc-vpn.org/news/index.rss|#snews
|
||||||
[SPAM]topix_b|http://www.topix.com/rss/wire/de/berlin|#snews
|
|
||||||
[SPAM]torr_bits|http://feeds.feedburner.com/TorrentfreakBits|#snews
|
[SPAM]torr_bits|http://feeds.feedburner.com/TorrentfreakBits|#snews
|
||||||
[SPAM]torrentfreak|http://feeds.feedburner.com/Torrentfreak|#snews
|
[SPAM]torrentfreak|http://feeds.feedburner.com/Torrentfreak|#snews
|
||||||
[SPAM]torr_news|http://feed.torrentfreak.com/Torrentfreak/|#snews
|
[SPAM]torr_news|http://feed.torrentfreak.com/Torrentfreak/|#snews
|
||||||
@ -160,7 +157,6 @@
|
|||||||
[SPAM]us_math_society|http://www.ams.org/cgi-bin/content/news_items.cgi?rss=1|#snews
|
[SPAM]us_math_society|http://www.ams.org/cgi-bin/content/news_items.cgi?rss=1|#snews
|
||||||
[SPAM]vimperator|https://sites.google.com/a/vimperator.org/www/blog/posts.xml|#snews
|
[SPAM]vimperator|https://sites.google.com/a/vimperator.org/www/blog/posts.xml|#snews
|
||||||
[SPAM]weechat|http://dev.weechat.org/feed/atom|#snews
|
[SPAM]weechat|http://dev.weechat.org/feed/atom|#snews
|
||||||
[SPAM]wp_world|http://feeds.washingtonpost.com/rss/rss_blogpost|#snews
|
|
||||||
[SPAM]xkcd|https://xkcd.com/rss.xml|#snews
|
[SPAM]xkcd|https://xkcd.com/rss.xml|#snews
|
||||||
[SPAM]zdnet|http://www.zdnet.com/news/rss.xml|#snews
|
[SPAM]zdnet|http://www.zdnet.com/news/rss.xml|#snews
|
||||||
'';
|
'';
|
||||||
|
@ -5,76 +5,156 @@ with import <stockholm/lib>;
|
|||||||
let
|
let
|
||||||
mirror = "git@${config.networking.hostName}:";
|
mirror = "git@${config.networking.hostName}:";
|
||||||
|
|
||||||
defineRepo = name: announce: let
|
defineRepo = {
|
||||||
|
name, desc, section
|
||||||
|
}:
|
||||||
|
let
|
||||||
repo = {
|
repo = {
|
||||||
public = true;
|
public = true;
|
||||||
name = mkDefault "${name}";
|
name = mkDefault "${name}";
|
||||||
cgit.desc = mkDefault "mirror for ${name}";
|
cgit.desc = desc;
|
||||||
cgit.section = mkDefault "mirror";
|
cgit.section = section;
|
||||||
hooks = mkIf announce (mkDefault {
|
hooks = mkDefault {
|
||||||
post-receive = pkgs.git-hooks.irc-announce {
|
post-receive = pkgs.git-hooks.irc-announce {
|
||||||
nick = config.networking.hostName;
|
nick = config.networking.hostName;
|
||||||
verbose = false;
|
verbose = false;
|
||||||
channel = "#xxx";
|
channel = "#xxx";
|
||||||
server = "irc.r";
|
server = "irc.r";
|
||||||
branches = [ "master" ];
|
branches = [ "newest" ];
|
||||||
};
|
};
|
||||||
});
|
};
|
||||||
};
|
};
|
||||||
in {
|
in {
|
||||||
rules = with git; singleton {
|
rules = with git; [
|
||||||
user = with config.krebs.users; [
|
{
|
||||||
config.krebs.users."${config.networking.hostName}-repo-sync"
|
user = with config.krebs.users; [
|
||||||
];
|
config.krebs.users."${config.networking.hostName}-repo-sync"
|
||||||
repo = [ repo ];
|
jeschli
|
||||||
perm = push ''refs/*'' [ non-fast-forward create delete merge ];
|
lass
|
||||||
};
|
makefu
|
||||||
|
tv
|
||||||
|
];
|
||||||
|
repo = [ repo ];
|
||||||
|
perm = push ''refs/*'' [ non-fast-forward create delete merge ];
|
||||||
|
}
|
||||||
|
{
|
||||||
|
user = attrValues config.krebs.users;
|
||||||
|
repo = [ repo ];
|
||||||
|
perm = fetch;
|
||||||
|
}
|
||||||
|
];
|
||||||
repos."${name}" = repo;
|
repos."${name}" = repo;
|
||||||
};
|
};
|
||||||
|
|
||||||
sync-retiolum = name:
|
sync-retiolum = {
|
||||||
|
name,
|
||||||
|
desc ? "mirror for ${name}",
|
||||||
|
section ? "mirror"
|
||||||
|
}:
|
||||||
{
|
{
|
||||||
krebs.repo-sync.repos.${name} = {
|
krebs.repo-sync.repos.${name} = {
|
||||||
branches = {
|
branches = {
|
||||||
makefu = {
|
lassulus = {
|
||||||
origin.url = "http://cgit.gum/${name}";
|
origin.url = "http://cgit.lassul.us/${name}";
|
||||||
mirror.url = "${mirror}${name}";
|
mirror.url = "${mirror}${name}";
|
||||||
};
|
};
|
||||||
tv = {
|
makefu = {
|
||||||
origin.url = "http://cgit.ni.r/${name}";
|
origin.url = "http://cgit.gum/${name}";
|
||||||
mirror.url = "${mirror}${name}";
|
mirror.url = "${mirror}${name}";
|
||||||
};
|
};
|
||||||
nin = {
|
nin = {
|
||||||
origin.url = "http://cgit.onondaga.r/${name}";
|
origin.url = "http://cgit.onondaga.r/${name}";
|
||||||
mirror.url = "${mirror}${name}";
|
mirror.url = "${mirror}${name}";
|
||||||
};
|
};
|
||||||
lassulus = {
|
tv = {
|
||||||
origin.url = "http://cgit.lassul.us/${name}";
|
origin.url = "http://cgit.ni.r/${name}";
|
||||||
mirror.url = "${mirror}${name}";
|
mirror.url = "${mirror}${name}";
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
latest = {
|
latest = {
|
||||||
url = "${mirror}${name}";
|
url = "${mirror}${name}";
|
||||||
ref = "heads/master";
|
ref = "heads/newest";
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
krebs.git = defineRepo name false;
|
krebs.git = defineRepo { inherit name desc section; };
|
||||||
|
};
|
||||||
|
|
||||||
|
sync-remote = {
|
||||||
|
name,
|
||||||
|
url,
|
||||||
|
desc ? "mirror for ${name}",
|
||||||
|
section ? "mirror"
|
||||||
|
}:
|
||||||
|
{
|
||||||
|
krebs.repo-sync.repos.${name} = {
|
||||||
|
branches = {
|
||||||
|
remote = {
|
||||||
|
origin.url = url;
|
||||||
|
mirror.url = "${mirror}${name}";
|
||||||
|
};
|
||||||
|
};
|
||||||
|
};
|
||||||
|
krebs.git = defineRepo { inherit name desc section; };
|
||||||
};
|
};
|
||||||
|
|
||||||
in {
|
in {
|
||||||
|
krebs.git = {
|
||||||
|
enable = true;
|
||||||
|
cgit.settings = {
|
||||||
|
root-title = "krebs repos";
|
||||||
|
root-desc = "keep calm and engage";
|
||||||
|
};
|
||||||
|
};
|
||||||
krebs.repo-sync = {
|
krebs.repo-sync = {
|
||||||
enable = true;
|
enable = true;
|
||||||
};
|
};
|
||||||
krebs.git = {
|
|
||||||
enable = mkDefault true;
|
|
||||||
cgit = {
|
|
||||||
settings = {
|
|
||||||
root-title = "Shared Repos";
|
|
||||||
root-desc = "keep on krebsing";
|
|
||||||
};
|
|
||||||
};
|
|
||||||
};
|
|
||||||
imports = [
|
imports = [
|
||||||
(sync-retiolum "stockholm")
|
(sync-retiolum { name = "the_playlist"; desc = "Good Music collection + tools"; section = "art"; })
|
||||||
|
|
||||||
|
(sync-retiolum { name = "stockholm"; desc = "take all computers hostage, they love it"; section = "configuration"; })
|
||||||
|
|
||||||
|
(sync-retiolum { name = "cholerab"; desc = "krebs thesauron & enterprise-patterns"; section = "documentation"; })
|
||||||
|
|
||||||
|
(sync-retiolum { name = "disko"; desc = "take a description of your disk layout and produce a format script"; section = "software"; })
|
||||||
|
(sync-retiolum { name = "news"; desc = "take a rss feed and a timeout and print it to stdout"; section = "software"; })
|
||||||
|
(sync-retiolum { name = "krops"; desc = "krebs ops"; section = "software"; })
|
||||||
|
(sync-retiolum { name = "go"; desc = "url shortener"; section = "software"; })
|
||||||
|
(sync-retiolum { name = "much"; desc = "curses email client"; section = "software"; })
|
||||||
|
(sync-retiolum { name = "newsbot-js"; desc = "irc rss/atom bot"; section = "software"; })
|
||||||
|
(sync-retiolum { name = "nix-writers"; desc = "high level writers for nix"; section = "software"; })
|
||||||
|
|
||||||
|
(sync-retiolum { name = "cac-api"; desc = "CloudAtCost API command line interface"; section = "miscellaneous"; })
|
||||||
|
(sync-retiolum { name = "dic"; desc = "dict.leo.org command line interface"; section = "miscellaneous"; })
|
||||||
|
(sync-retiolum { name = "get"; section = "miscellaneous"; })
|
||||||
|
(sync-retiolum { name = "hstool"; desc = "Haskell Development Environment ^_^"; section = "miscellaneous"; })
|
||||||
|
(sync-retiolum { name = "htgen"; desc = "toy HTTP server"; section = "miscellaneous"; })
|
||||||
|
(sync-retiolum { name = "kirk"; desc = "IRC tools"; section = "miscellaneous"; })
|
||||||
|
(sync-retiolum { name = "load-env"; section = "miscellaneous"; })
|
||||||
|
(sync-retiolum { name = "loldns"; desc = "toy DNS server"; section = "miscellaneous"; })
|
||||||
|
(sync-retiolum { name = "netcup"; desc = "netcup command line interface"; section = "miscellaneous"; })
|
||||||
|
(sync-retiolum { name = "populate"; desc = "source code installer"; section = "miscellaneous"; })
|
||||||
|
(sync-retiolum { name = "q"; section = "miscellaneous"; })
|
||||||
|
(sync-retiolum { name = "regfish"; section = "miscellaneous"; })
|
||||||
|
(sync-retiolum { name = "soundcloud"; desc = "SoundCloud command line interface"; section = "miscellaneous"; })
|
||||||
|
|
||||||
|
(sync-retiolum { name = "blessings"; section = "Haskell libraries"; })
|
||||||
|
(sync-retiolum { name = "mime"; section = "Haskell libraries"; })
|
||||||
|
(sync-retiolum { name = "quipper"; section = "Haskell libraries"; })
|
||||||
|
(sync-retiolum { name = "scanner"; section = "Haskell libraries"; })
|
||||||
|
(sync-retiolum { name = "wai-middleware-time"; section = "Haskell libraries"; })
|
||||||
|
(sync-retiolum { name = "web-routes-wai-custom"; section = "Haskell libraries"; })
|
||||||
|
(sync-retiolum { name = "xintmap"; section = "Haskell libraries"; })
|
||||||
|
(sync-retiolum { name = "xmonad-stockholm"; desc = "krebs xmonad modules"; section = "Haskell libraries"; })
|
||||||
|
|
||||||
|
(sync-remote { name = "array"; url = "https://github.com/makefu/array"; })
|
||||||
|
(sync-remote { name = "email-header"; url = "https://github.com/4z3/email-header"; })
|
||||||
|
(sync-remote { name = "mycube-flask"; url = "https://github.com/makefu/mycube-flask"; })
|
||||||
|
(sync-remote { name = "reaktor-titlebot"; url = "https://github.com/makefu/reaktor-titlebot"; })
|
||||||
|
(sync-remote { name = "repo-sync"; url = "https://github.com/makefu/repo-sync"; })
|
||||||
|
(sync-remote { name = "skytraq-datalogger"; url = "https://github.com/makefu/skytraq-datalogger"; })
|
||||||
|
(sync-remote { name = "realwallpaper"; url = "https://github.com/lassulus/realwallpaper"; })
|
||||||
|
(sync-remote { name = "painload"; url = "https://github.com/krebs/painload"; })
|
||||||
|
(sync-remote { name = "Reaktor"; url = "https://github.com/krebs/Reaktor"; })
|
||||||
|
(sync-remote { name = "nixos-wiki"; url = "https://github.com/Mic92/nixos-wiki.wiki.git"; })
|
||||||
];
|
];
|
||||||
}
|
}
|
||||||
|
@ -301,37 +301,6 @@ with import <stockholm/lib>;
|
|||||||
ssh.privkey.path = <secrets/ssh.id_ed25519>;
|
ssh.privkey.path = <secrets/ssh.id_ed25519>;
|
||||||
ssh.pubkey = "ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIEB/MmASvx3i09DY1xFVM5jOhZRZA8rMRqtf8bCIkC+t";
|
ssh.pubkey = "ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIEB/MmASvx3i09DY1xFVM5jOhZRZA8rMRqtf8bCIkC+t";
|
||||||
};
|
};
|
||||||
helios = {
|
|
||||||
cores = 8;
|
|
||||||
nets = {
|
|
||||||
retiolum = {
|
|
||||||
ip4.addr = "10.243.133.117";
|
|
||||||
ip6.addr = "42:0:0:0:0:0:3:7105";
|
|
||||||
aliases = [
|
|
||||||
"helios.r"
|
|
||||||
"cgit.helios.r"
|
|
||||||
];
|
|
||||||
tinc.pubkey = ''
|
|
||||||
-----BEGIN RSA PUBLIC KEY-----
|
|
||||||
MIICCgKCAgEAp+SRmP5MoCSYInx4Dm5MLZzNyXVgfo/CDoeUlUT35X0yE7WHGWsG
|
|
||||||
wHPCu+3RWfBUjuqNdb0qiGtRi3Q/LwznwBROPOX8gMXia/DgCLbIjn5Rx081pTIo
|
|
||||||
3epbUCFtNgyDWg8IHF87ZnVBXTYAy5g4tz9u8kw82D8mR18o595TuZ9t5pDc/Kvi
|
|
||||||
fPHZenT6cd6FtL9uankX/jan1PRP9xTrhpE8dAQ6g+7XH7knMK3cno/Ztis5YzHt
|
|
||||||
Ith0bsIjk5of7hhITj0MXtTikjDqWxkpF5mfOK1cG/rC1goTmB9AfcENUBnu9iAM
|
|
||||||
I/alzqk3CEczznLyaOckfx2fRuar912LAdiJ5v7VPztfvN1p3gIxq5M0Rgkq+98B
|
|
||||||
H/s32xNRBPvqoIleKnhwE9gfrCLaAVqpaMkgKRvgsTkSDNYNhh4smQ3eAKKwwDH/
|
|
||||||
QG3sfP8xyNyDFhBtCiDGkf9hNqBBMaKjZoh8DasZNtcfOop3fGw7jmUUbB6cG8cp
|
|
||||||
+EfYbcb5mVpmrIyXgOTwwYcp7tn+zkd4Wa8C9Q98eFTs0HGVGxGX9Hj6PM/kXK4C
|
|
||||||
aIqIQVNpnJ/9cOwT8JFIriG1MWTOXbamUusKTLs8SRp3ZkyM7XUEcLL5HMh09rUw
|
|
||||||
rzEAmE7TywXVhd7j2IaEy+bx2dfGQH2bFoh6Drm6Olo+ySi1utB5dGkCAwEAAQ==
|
|
||||||
-----END RSA PUBLIC KEY-----
|
|
||||||
'';
|
|
||||||
};
|
|
||||||
};
|
|
||||||
secure = true;
|
|
||||||
ssh.privkey.path = <secrets/ssh.id_ed25519>;
|
|
||||||
ssh.pubkey = "ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIIqpx9jJnn4QMGO8BOrGOLRN1rgpIkR14sQb8S+otWEL";
|
|
||||||
};
|
|
||||||
littleT = {
|
littleT = {
|
||||||
cores = 2;
|
cores = 2;
|
||||||
nets = {
|
nets = {
|
||||||
|
@ -1 +1 @@
|
|||||||
ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAAEZgGgImN/9D4yJBjYlkAvT3X45kzt4n8hmgsqPcdcHWNC7fofWG4fZe8NNrTLdKsK+xYxTstj49l8Vb3YDvw4fAyyyhms/eFRlD2BRqAISwc39EIeTC4g3PXNeUtUGdczXKxsJf5iWf4kxUrUOuZ3FeKxeYXDMSqzzk1oKalhWNl4PmgRc5FzjeRJ2WziilwFq7ntLswoeTBW3c53fbcp3XuPza3M1/sN3NHJx9ZMpWVfJhZ/CXr+nqpc25ZIr5HZVZbgDTyJQimlTF5JCfU0NiiBIh7ep7x4o93tARmilit7+mWUkkxk6ba+zG6nr+s+zyd85AFAYRioOEczbC6mI44UZUB11KkEzOon5JWSA8pK+DPqsqhFkwWYMHLXZp8zemdp9kushRZ6nuI9MzBwacngro1vAvDL6jrS5MR7zf7rMAo6wexovWoEowvZz629mjC3OAt9iOm4VJdvEmq+rHLfjjznVEY6llF7DUu2QNEazaXhxZH9V9N1gyubIE97SQVqmwDrf8BGC0Hq+hC4OOweqfo4XP0etbqAfDozZbqcqyE1m9Bj8DpjrSXka1PuJf5fgEtoxPadd2qdiHMfIx9sM+4uu2nI5aFvWO3OlJmhF80QzNdFzZWjsyvJ24C1/a2FAyzoab1Sg9ljstQThseTtvlXcX8jfFn0U3RbgXgCgOWad3Oy9vA0OCdsHut0nzv3UO+T5+wv2+lvE3QSSKOlmVtdKMhCFb+Rg+FliKxyd820h9yR3wDYmkurVkAxaj8Kx5MaY/7aypOi8fRAV2FSDtCKkuMyPv4xEtdPi/4lj55pRBEO8lJkeb+WurCzZ7ZeaPdrW1YIQtToPpiz3dXeRhkts6jq8247xIplzHh9Iu18gOrnZ+ygn70g19x842vvcfLQNAghDPS93msJdSe+EtulMCwNTjUaF9LyzhW9ptLG9NmwgbT5kGsFiRw3BFdyfcQVWVzDhuP3hPPx+hjiZtFfpIKpxV9MjO1xQ830Ngk3JpSphMZTQ432yfvu9yEsUWmAa8ax1jxJ361AiIp0U2xioJmdVd3E2sxkpOUYqE89IR9X6hS3fH38Gc5IL5+BnhuZvRgXuA+nrqdU4pMB3TIoC5oXlOMRXpxaS91YiO4ERx2t6WkBRCoaDuRWnLpewV6lhjwi1+4Emlrs2q1R0K64emZTv7O1MKwWRHOlBJD3HLyCCS763OzYW4mEQcfBAQtbm6sTooJ+D/zbmYgbnZt0z/nP9R/n25pzlSPpZ49fCiRV7QN6D9mksISTz8qIiCzNBn1F7DUewXqkrdPopl4npeNVcOyyo7P1lFFGde+jq/7REdzD+vno1h9+17WZbyzQtlOyipQYzb6l4QuXq/zejJrELJAQdN4yRQq5NJzIh0HXaPnPC083T791moBflyqiwPEIWsSMfILqSqL1jVVNgvV4fHnMixgH2zK9f0EyE3fG9PnuRribPR2DlESqpHZTcBixgh660EPKh0gCLYoWKgU= lass-android@XperiaXCompact
|
ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIOPH4c2zQCaCmus4T9GvaY1lrgVR9CKV3Fx1vRn1K1XB u0_a194@android
|
||||||
|
@ -1,16 +1,16 @@
|
|||||||
{ mkDerivation, base, containers, fetchgit, stdenv, X11, X11-xshape
|
{ mkDerivation, base, containers, fetchgit, stdenv, X11, X11-xft, X11-xshape
|
||||||
, xmonad, xmonad-contrib
|
, xmonad, xmonad-contrib
|
||||||
}:
|
}:
|
||||||
mkDerivation rec {
|
mkDerivation rec {
|
||||||
pname = "xmonad-stockholm";
|
pname = "xmonad-stockholm";
|
||||||
version = "1.1.1";
|
version = "1.2.0";
|
||||||
src = fetchgit {
|
src = fetchgit {
|
||||||
url = http://cgit.ni.krebsco.de/xmonad-stockholm;
|
url = http://cgit.ni.krebsco.de/xmonad-stockholm;
|
||||||
rev = "refs/tags/v${version}";
|
rev = "refs/tags/v${version}";
|
||||||
sha256 = "05nnfg6q35z3qgf507qa80bz32jl4k719dl5phlmchplp3769585";
|
sha256 = "13mvmh3kk9a79l1nii028p0n7l95pb78wz9c4j42l90m02mg6cis";
|
||||||
};
|
};
|
||||||
libraryHaskellDepends = [
|
libraryHaskellDepends = [
|
||||||
base containers X11 X11-xshape xmonad xmonad-contrib
|
base containers X11 X11-xft X11-xshape xmonad xmonad-contrib
|
||||||
];
|
];
|
||||||
license = stdenv.lib.licenses.mit;
|
license = stdenv.lib.licenses.mit;
|
||||||
}
|
}
|
||||||
|
@ -165,7 +165,7 @@ rec {
|
|||||||
};
|
};
|
||||||
|
|
||||||
task-delete = buildSimpleReaktorPlugin "task-delete" {
|
task-delete = buildSimpleReaktorPlugin "task-delete" {
|
||||||
pattern = "^task-remove: (?P<args>.*)$$";
|
pattern = "^task-delete: (?P<args>.*)$$";
|
||||||
script = pkgs.writeDash "task-delete" ''
|
script = pkgs.writeDash "task-delete" ''
|
||||||
${pkgs.taskwarrior}/bin/task rc:${taskrcFile} delete "$*"
|
${pkgs.taskwarrior}/bin/task rc:${taskrcFile} delete "$*"
|
||||||
'';
|
'';
|
||||||
|
@ -12,7 +12,7 @@
|
|||||||
|
|
||||||
krebs-source = {
|
krebs-source = {
|
||||||
nixpkgs.git = {
|
nixpkgs.git = {
|
||||||
ref = "56fad146a12a6f934d1d5ef875eb729be1b19129";
|
ref = (lib.importJSON ./nixpkgs.json).rev;
|
||||||
url = https://github.com/NixOS/nixpkgs;
|
url = https://github.com/NixOS/nixpkgs;
|
||||||
};
|
};
|
||||||
stockholm.file = toString ../.;
|
stockholm.file = toString ../.;
|
||||||
|
7
krebs/nixpkgs.json
Normal file
7
krebs/nixpkgs.json
Normal file
@ -0,0 +1,7 @@
|
|||||||
|
{
|
||||||
|
"url": "https://github.com/NixOS/nixpkgs-channels",
|
||||||
|
"rev": "4df3426f5a5e78cef4835897a43abd9e2a092b74",
|
||||||
|
"date": "2018-08-19T09:20:40+02:00",
|
||||||
|
"sha256": "05k5mssiqxffxi45mss9wjns6k76i248rpasa48akdcriry1mp63",
|
||||||
|
"fetchSubmodules": true
|
||||||
|
}
|
9
krebs/update-channel.sh
Executable file
9
krebs/update-channel.sh
Executable file
@ -0,0 +1,9 @@
|
|||||||
|
#!/bin/sh
|
||||||
|
dir=$(dirname $0)
|
||||||
|
oldrev=$(cat $dir/nixpkgs.json | jq -r .rev | sed 's/\(.\{7\}\).*/\1/')
|
||||||
|
nix-shell -p nix-prefetch-git --run 'nix-prefetch-git \
|
||||||
|
--url https://github.com/NixOS/nixpkgs-channels \
|
||||||
|
--rev refs/heads/nixos-18.03' \
|
||||||
|
> $dir/nixpkgs.json
|
||||||
|
newrev=$(cat $dir/nixpkgs.json | jq -r .rev | sed 's/\(.\{7\}\).*/\1/')
|
||||||
|
git commit $dir/nixpkgs.json -m "nixpkgs: $oldrev -> $newrev"
|
@ -30,7 +30,8 @@ with import <stockholm/lib>;
|
|||||||
};
|
};
|
||||||
environment.systemPackages = with pkgs; [
|
environment.systemPackages = with pkgs; [
|
||||||
pavucontrol
|
pavucontrol
|
||||||
firefox
|
#firefox
|
||||||
|
chromium
|
||||||
hexchat
|
hexchat
|
||||||
networkmanagerapplet
|
networkmanagerapplet
|
||||||
libreoffice
|
libreoffice
|
||||||
|
@ -1,110 +1,7 @@
|
|||||||
with import <stockholm/lib>;
|
with import <stockholm/lib>;
|
||||||
{ config, lib, pkgs, ... }:
|
{ pkgs, ... }:
|
||||||
|
|
||||||
{
|
{
|
||||||
imports = [
|
|
||||||
<stockholm/lass>
|
|
||||||
<stockholm/lass/2configs/baseX.nix>
|
|
||||||
<stockholm/lass/2configs/browsers.nix>
|
|
||||||
<stockholm/lass/2configs/mouse.nix>
|
|
||||||
<stockholm/lass/2configs/pass.nix>
|
|
||||||
<stockholm/lass/2configs/retiolum.nix>
|
|
||||||
<stockholm/lass/2configs/otp-ssh.nix>
|
|
||||||
# TODO fix krebs.git.rules.[definition 2-entry 2].lass not defined
|
|
||||||
#<stockholm/lass/2configs/git.nix>
|
|
||||||
#<stockholm/lass/2configs/dcso-vpn.nix>
|
|
||||||
<stockholm/lass/2configs/virtualbox.nix>
|
|
||||||
<stockholm/lass/2configs/dcso-dev.nix>
|
|
||||||
<stockholm/lass/2configs/steam.nix>
|
|
||||||
<stockholm/lass/2configs/rtl-sdr.nix>
|
|
||||||
<stockholm/lass/2configs/backup.nix>
|
|
||||||
{
|
|
||||||
services.xserver.dpi = 200;
|
|
||||||
fonts.fontconfig.dpi = 200;
|
|
||||||
lass.fonts.regular = "xft:Hack-Regular:pixelsize=22,xft:Symbola";
|
|
||||||
lass.fonts.bold = "xft:Hack-Bold:pixelsize=22,xft:Symbola";
|
|
||||||
lass.fonts.italic = "xft:Hack-RegularOblique:pixelsize=22,xft:Symbol";
|
|
||||||
}
|
|
||||||
{ #TAPIR, AGATIS, sentral, a3 - foo
|
|
||||||
services.redis.enable = true;
|
|
||||||
}
|
|
||||||
{
|
|
||||||
krebs.fetchWallpaper = {
|
|
||||||
enable = true;
|
|
||||||
url = "http://i.imgur.com/0ktqxSg.png";
|
|
||||||
maxTime = 9001;
|
|
||||||
};
|
|
||||||
}
|
|
||||||
{
|
|
||||||
#urban terror port
|
|
||||||
krebs.iptables.tables.filter.INPUT.rules = [
|
|
||||||
{ predicate = "-p tcp --dport 27960"; target = "ACCEPT"; }
|
|
||||||
{ predicate = "-p udp --dport 27960"; target = "ACCEPT"; }
|
|
||||||
];
|
|
||||||
}
|
|
||||||
];
|
|
||||||
krebs.build.host = config.krebs.hosts.helios;
|
|
||||||
|
|
||||||
krebs.git.rules = [
|
|
||||||
{
|
|
||||||
user = [ config.krebs.users.lass-helios ];
|
|
||||||
repo = [ config.krebs.git.repos.stockholm ];
|
|
||||||
perm = with git; push "refs/heads/*" [ fast-forward non-fast-forward create delete merge ];
|
|
||||||
}
|
|
||||||
{
|
|
||||||
lass.umts = {
|
|
||||||
enable = true;
|
|
||||||
modem = "/dev/serial/by-id/usb-Lenovo_F5521gw_2C7D8D7C35FC7040-if09";
|
|
||||||
initstrings = ''
|
|
||||||
Init1 = AT+CFUN=1
|
|
||||||
Init2 = AT+CGDCONT=1,"IP","pinternet.interkom.de","",0,0
|
|
||||||
'';
|
|
||||||
};
|
|
||||||
}
|
|
||||||
];
|
|
||||||
|
|
||||||
environment.systemPackages = with pkgs; [
|
environment.systemPackages = with pkgs; [
|
||||||
ag
|
|
||||||
vim
|
|
||||||
git
|
|
||||||
rsync
|
|
||||||
hashPassword
|
|
||||||
thunderbird
|
|
||||||
dpass
|
dpass
|
||||||
|
|
||||||
# we want tensorflow! (with GPU acceleration)
|
|
||||||
python3Packages.tensorflowWithCuda
|
|
||||||
];
|
];
|
||||||
|
|
||||||
users.users = {
|
|
||||||
root.openssh.authorizedKeys.keys = [
|
|
||||||
config.krebs.users.lass-helios.pubkey
|
|
||||||
];
|
|
||||||
};
|
|
||||||
|
|
||||||
services.tlp.enable = true;
|
|
||||||
|
|
||||||
networking.hostName = lib.mkForce "BLN02NB0162";
|
|
||||||
|
|
||||||
security.pki.certificateFiles = [
|
|
||||||
(pkgs.fetchurl { url = "http://pki.dcso.de/ca/PEM/DCSOCAROOTC1G1.pem"; sha256 = "006j61q2z44z6d92638iin6r46r4cj82ipwm37784h34i5x4mp0d"; })
|
|
||||||
(pkgs.fetchurl { url = "http://pki.dcso.de/ca/PEM/DCSOCAROOTC2G1.pem"; sha256 = "1nkd1rjcn02q9xxjg7sw79lbwy08i7hb4v4pn98djknvcmplpz5m"; })
|
|
||||||
(pkgs.fetchurl { url = "http://pki.dcso.de/ca/PEM/DCSOCAROOTC3G1.pem"; sha256 = "094m12npglnnv1nf1ijcv70p8l15l00id44qq7rwynhcgxi5539i"; })
|
|
||||||
|
|
||||||
(pkgs.fetchurl { url = "http://pki.dcso.de/ca/PEM/DCSOCACOMPC2G1.pem"; sha256 = "1anfncdf5xsp219kryncv21ra87flpzcjwcc85hzvlwbxhid3g4x"; })
|
|
||||||
(pkgs.fetchurl { url = "http://pki.dcso.de/ca/PEM/DCSOCACOMPC3G1.pem"; sha256 = "035kkfizyl5dndj7rhvmy91rr75lakqbqgjx4dpiw0kqq369mz8r"; })
|
|
||||||
(pkgs.fetchurl { url = "http://pki.dcso.de/ca/PEM/DCSOCAIDENC2G1.pem"; sha256 = "14fpzx1qjs9ws9sz0y7pb6j40336xlckkqcm2rc5j86yn7r22lp7"; })
|
|
||||||
(pkgs.fetchurl { url = "http://pki.dcso.de/ca/PEM/DCSOCAIDENC3G1.pem"; sha256 = "1yjl3kyw4chc8vw7bnqac2h9vn8dxryw7lr7i03lqi9sdvs4108s"; })
|
|
||||||
];
|
|
||||||
|
|
||||||
programs.adb.enable = true;
|
|
||||||
users.users.mainUser.extraGroups = [ "adbusers" "docker" ];
|
|
||||||
|
|
||||||
services.printing.drivers = [ pkgs.postscript-lexmark ];
|
|
||||||
|
|
||||||
services.logind.extraConfig = ''
|
|
||||||
HandleLidSwitch=ignore
|
|
||||||
'';
|
|
||||||
|
|
||||||
virtualisation.docker.enable = true;
|
|
||||||
}
|
}
|
||||||
|
@ -1,64 +0,0 @@
|
|||||||
{ pkgs, ... }:
|
|
||||||
{
|
|
||||||
imports = [
|
|
||||||
./config.nix
|
|
||||||
{ # automatic hardware detection
|
|
||||||
boot.initrd.availableKernelModules = [ "xhci_pci" "nvme" "usb_storage" "sd_mod" "rtsx_pci_sdmmc" ];
|
|
||||||
boot.kernelModules = [ "kvm-intel" ];
|
|
||||||
|
|
||||||
fileSystems."/" = {
|
|
||||||
device = "/dev/pool/root";
|
|
||||||
fsType = "btrfs";
|
|
||||||
};
|
|
||||||
|
|
||||||
fileSystems."/boot" = {
|
|
||||||
device = "/dev/disk/by-uuid/1F60-17C6";
|
|
||||||
fsType = "vfat";
|
|
||||||
};
|
|
||||||
|
|
||||||
fileSystems."/home" = {
|
|
||||||
device = "/dev/pool/home";
|
|
||||||
fsType = "btrfs";
|
|
||||||
};
|
|
||||||
|
|
||||||
fileSystems."/tmp" = {
|
|
||||||
device = "tmpfs";
|
|
||||||
fsType = "tmpfs";
|
|
||||||
options = ["nosuid" "nodev" "noatime"];
|
|
||||||
};
|
|
||||||
}
|
|
||||||
{ # crypto stuff
|
|
||||||
boot.initrd.luks = {
|
|
||||||
cryptoModules = [ "aes" "sha512" "sha1" "xts" ];
|
|
||||||
devices = [{
|
|
||||||
name = "luksroot";
|
|
||||||
device = "/dev/nvme0n1p3";
|
|
||||||
}];
|
|
||||||
};
|
|
||||||
}
|
|
||||||
];
|
|
||||||
|
|
||||||
# Use the systemd-boot EFI boot loader.
|
|
||||||
boot.loader.systemd-boot.enable = true;
|
|
||||||
boot.loader.efi.canTouchEfiVariables = true;
|
|
||||||
|
|
||||||
networking.wireless.enable = true;
|
|
||||||
hardware.enableRedistributableFirmware = true;
|
|
||||||
|
|
||||||
|
|
||||||
services.udev.extraRules = ''
|
|
||||||
SUBSYSTEM=="net", ATTR{address}=="f8:59:71:a9:05:65", NAME="wl0"
|
|
||||||
SUBSYSTEM=="net", ATTR{address}=="54:e1:ad:4f:06:83", NAME="et0"
|
|
||||||
'';
|
|
||||||
|
|
||||||
services.xserver.videoDrivers = [ "nvidia" ];
|
|
||||||
services.xserver.xrandrHeads = [
|
|
||||||
{ output = "DP-2"; primary = true; }
|
|
||||||
{ output = "DP-4"; monitorConfig = ''Option "Rotate" "left"''; }
|
|
||||||
{ output = "DP-0"; }
|
|
||||||
];
|
|
||||||
|
|
||||||
services.xserver.displayManager.sessionCommands = ''
|
|
||||||
${pkgs.xorg.xrandr}/bin/xrandr --output DP-6 --off --output DP-5 --off --output DP-4 --mode 2560x1440 --pos 3840x0 --rotate left --output DP-3 --off --output DP-2 --primary --mode 3840x2160 --scale 0.5x0.5 --pos 0x400 --rotate normal --output DP-1 --off --output DP-0 --mode 2560x1440 --pos 5280x1120 --rotate normal
|
|
||||||
'';
|
|
||||||
}
|
|
@ -1,4 +0,0 @@
|
|||||||
import <stockholm/lass/source.nix> {
|
|
||||||
name = "helios";
|
|
||||||
secure = true;
|
|
||||||
}
|
|
@ -33,6 +33,7 @@ with import <stockholm/lib>;
|
|||||||
<stockholm/lass/2configs/dunst.nix>
|
<stockholm/lass/2configs/dunst.nix>
|
||||||
<stockholm/lass/2configs/rtl-sdr.nix>
|
<stockholm/lass/2configs/rtl-sdr.nix>
|
||||||
<stockholm/lass/2configs/backup.nix>
|
<stockholm/lass/2configs/backup.nix>
|
||||||
|
<stockholm/lass/2configs/print.nix>
|
||||||
{
|
{
|
||||||
krebs.iptables.tables.filter.INPUT.rules = [
|
krebs.iptables.tables.filter.INPUT.rules = [
|
||||||
#risk of rain
|
#risk of rain
|
||||||
|
@ -175,7 +175,6 @@ with import <stockholm/lib>;
|
|||||||
alias /var/realwallpaper/realwallpaper.png;
|
alias /var/realwallpaper/realwallpaper.png;
|
||||||
'';
|
'';
|
||||||
}
|
}
|
||||||
<stockholm/lass/2configs/dcso-dev.nix>
|
|
||||||
{
|
{
|
||||||
users.users.jeschli = {
|
users.users.jeschli = {
|
||||||
uid = genid "jeschli";
|
uid = genid "jeschli";
|
||||||
@ -288,6 +287,8 @@ with import <stockholm/lib>;
|
|||||||
{
|
{
|
||||||
users.users.download.openssh.authorizedKeys.keys = [
|
users.users.download.openssh.authorizedKeys.keys = [
|
||||||
"ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAACAQDB0d0JA20Vqn7I4lCte6Ne2EOmLZyMJyS9yIKJYXNLjbLwkQ4AYoQKantPBkTxR75M09E7d3j5heuWnCjWH45TrfQfe1EOSSC3ppCI6C6aIVlaNs+KhAYZS0m2Y8WkKn+TT5JLEa8yybYVN/RlZPOilpj/1QgjU6CQK+eJ1k/kK+QFXcwN82GDVh5kbTVcKUNp2tiyxFA+z9LY0xFDg/JHif2ROpjJVLQBJ+YPuOXZN5LDnVcuyLWKThjxy5srQ8iDjoxBg7dwLHjby5Mv41K4W61Gq6xM53gDEgfXk4cQhJnmx7jA/pUnsn2ZQDeww3hcc7vRf8soogXXz2KC9maiq0M/svaATsa9Ul4hrKnqPZP9Q8ScSEAUX+VI+x54iWrnW0p/yqBiRAzwsczdPzaQroUFTBxrq8R/n5TFdSHRMX7fYNOeVMjhfNca/gtfw9dYBVquCvuqUuFiRc0I7yK44rrMjjVQRcAbw6F8O7+04qWCmaJ8MPlmApwu2c05VMv9hiJo5p6PnzterRSLCqF6rIdhSnuOwrUIt1s/V+EEZXHCwSaNLaQJnYL0H9YjaIuGz4c8kVzxw4c0B6nl+hqW5y5/B2cuHiumnlRIDKOIzlv8ufhh21iN7QpIsPizahPezGoT1XqvzeXfH4qryo8O4yTN/PWoA+f7o9POU7L6hQ== lhebendanz@nixos"
|
"ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAACAQDB0d0JA20Vqn7I4lCte6Ne2EOmLZyMJyS9yIKJYXNLjbLwkQ4AYoQKantPBkTxR75M09E7d3j5heuWnCjWH45TrfQfe1EOSSC3ppCI6C6aIVlaNs+KhAYZS0m2Y8WkKn+TT5JLEa8yybYVN/RlZPOilpj/1QgjU6CQK+eJ1k/kK+QFXcwN82GDVh5kbTVcKUNp2tiyxFA+z9LY0xFDg/JHif2ROpjJVLQBJ+YPuOXZN5LDnVcuyLWKThjxy5srQ8iDjoxBg7dwLHjby5Mv41K4W61Gq6xM53gDEgfXk4cQhJnmx7jA/pUnsn2ZQDeww3hcc7vRf8soogXXz2KC9maiq0M/svaATsa9Ul4hrKnqPZP9Q8ScSEAUX+VI+x54iWrnW0p/yqBiRAzwsczdPzaQroUFTBxrq8R/n5TFdSHRMX7fYNOeVMjhfNca/gtfw9dYBVquCvuqUuFiRc0I7yK44rrMjjVQRcAbw6F8O7+04qWCmaJ8MPlmApwu2c05VMv9hiJo5p6PnzterRSLCqF6rIdhSnuOwrUIt1s/V+EEZXHCwSaNLaQJnYL0H9YjaIuGz4c8kVzxw4c0B6nl+hqW5y5/B2cuHiumnlRIDKOIzlv8ufhh21iN7QpIsPizahPezGoT1XqvzeXfH4qryo8O4yTN/PWoA+f7o9POU7L6hQ== lhebendanz@nixos"
|
||||||
|
"ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAACADLPxtB2f2tocXHxD3ul9D1537hTht6/un87JYZNnoYABveasyIcdFIfp5lPJmj3PjwqXNTA4M/3V+ufrpZ91dxFeXWI5mOI4YB3xRu+Elja8g7nfvCz1HrH3sD1equos/7ltQ1GZYvHGw40qD1/ZtOODwRwrYJ7l/DUBrjk/tzXRjm0+ZgyQsb3G9a80cA8d3fiuQDxbAzdoJF46wt36ZfuSMpJ/Td8CbCoLlV/uL9QZemOglyxNxR607qGfRNXF1An+P+fFq24GmdHpMJ00DfjZ/dJRL9QSs7vd07uyB4Qty4VHwRhc46XH6KL7VTF1D3INF/BeBZx90GBxOvpgEji7Zrf7O5eSAjM2Do1+t+Ev2IIuiltB+QqTir4rZcrCBrJ2+zD3DDymKffVi8sz15AvdrFkIplzZxpOcgm9Ns2w/uh8sxeV6J58aoLEVmd2KRUfJFYiS1EuEjYo2OHlj8ltIh3VlfYdWksGpQc71IT0iEWvzvjYcfCda9uzFLKdLfBy4GB8+s4zR2CX9aGDyJaIY1kt/xqDeztnYwW1owG+fLMrDJlq3Mu+KmJljb30jzrOPhFYVZgWenmMFgH2RBzVEmnsR0f2LFVLj6N/a9fpEJ3WhxMOc5Ybdpgg/l9KUdgvWLk6KOtba+z9fuYT1YgwtZBoMgHAdZLmZ/DGtff palo@pepe"
|
||||||
|
"ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAACAQDGMjbYFmmvpF60YBShyFISbjN+O3e4GPkfsre6xFqz20joi8YqpD/5PtrMsGrPd1ZoZ9qSwXJtbb1WBomFg0xzRSNa1/FliKiE1ilcaB3aUZRtP0OWHIvWD3/YL/0h+/YXDGTfb8FNvpgJmnbN3Q0gw8cwWw+eve5BMyqDhzFvycxO4qDuP2JXkGpdhJqjaYZhP5rPH2mgv1oU1RnOA3A7APZVGf1m6JSmV7FZR514aGlFV+NpsvS29Mib8fcswgpoGhMN6jeh/nf49tp01LUAOmXSqdHIWNOTt3Mt7S4rU7RZwEhswdSRbKdKFRMj+uRkhJ4CPcNuuGtSY3id0Ja7IvrvxNaQUk1L8nBcza709jvSBYWSY5/aGL1ocA/PNWXDpOTp2PWwxkh39aPMqZXPTH3KC4IkRp5SiKibEhdmjnToV7nUAJe4IWn1b7QdoqS03ib0X87DnHWIbvi8UZlImM7pn0rs+rwnOo4lQwrTz7kbBHPaa6XOZAuDYND2728vtcrhwzVrKgiXWbyF6VzvwxPeeStmn1gENvozbj1hl9gbQ1cH/a4pZFBV/OFl/ryzDnB2ghM4acNJazXx/6/us9hX+np1YxIzJaxENj677MLc6HitM2g6XJGaixBQ0U2NNjcjIuQT0ZaeKXsSLnu1Y7+uslbVAwsQ4pJmSxxMMQ== palo@workhorse"
|
||||||
];
|
];
|
||||||
}
|
}
|
||||||
{
|
{
|
||||||
@ -338,7 +339,7 @@ with import <stockholm/lib>;
|
|||||||
{
|
{
|
||||||
# lass-android
|
# lass-android
|
||||||
allowedIPs = [ "10.244.1.2/32" ];
|
allowedIPs = [ "10.244.1.2/32" ];
|
||||||
publicKey = "63+ns9AGv6e6a8WgxiZNFEt1xQT0YKFlEHzRaYJWtmk=";
|
publicKey = "zVunBVOxsMETlnHkgjfH71HaZjjNUOeYNveAVv5z3jw=";
|
||||||
}
|
}
|
||||||
];
|
];
|
||||||
};
|
};
|
||||||
|
@ -8,7 +8,6 @@ in {
|
|||||||
./mpv.nix
|
./mpv.nix
|
||||||
./power-action.nix
|
./power-action.nix
|
||||||
./copyq.nix
|
./copyq.nix
|
||||||
./livestream.nix
|
|
||||||
./urxvt.nix
|
./urxvt.nix
|
||||||
./network-manager.nix
|
./network-manager.nix
|
||||||
{
|
{
|
||||||
@ -58,30 +57,18 @@ in {
|
|||||||
programs.ssh.startAgent = true;
|
programs.ssh.startAgent = true;
|
||||||
services.openssh.forwardX11 = true;
|
services.openssh.forwardX11 = true;
|
||||||
|
|
||||||
services.printing = {
|
|
||||||
enable = true;
|
|
||||||
drivers = [
|
|
||||||
pkgs.foomatic_filters
|
|
||||||
pkgs.gutenprint
|
|
||||||
];
|
|
||||||
};
|
|
||||||
|
|
||||||
environment.systemPackages = with pkgs; [
|
environment.systemPackages = with pkgs; [
|
||||||
acpi
|
acpi
|
||||||
ag
|
ag
|
||||||
bank
|
|
||||||
cabal2nix
|
cabal2nix
|
||||||
cholerab
|
cholerab
|
||||||
dic
|
dic
|
||||||
dmenu
|
dmenu
|
||||||
font-size
|
font-size
|
||||||
gi
|
|
||||||
gitAndTools.qgit
|
gitAndTools.qgit
|
||||||
git-preview
|
git-preview
|
||||||
gnome3.dconf
|
gnome3.dconf
|
||||||
lm_sensors
|
lm_sensors
|
||||||
mpv-poll
|
|
||||||
much
|
|
||||||
ncdu
|
ncdu
|
||||||
nix-index
|
nix-index
|
||||||
nix-repl
|
nix-repl
|
||||||
@ -90,18 +77,14 @@ in {
|
|||||||
powertop
|
powertop
|
||||||
push
|
push
|
||||||
rxvt_unicode_with-plugins
|
rxvt_unicode_with-plugins
|
||||||
slock
|
|
||||||
sxiv
|
sxiv
|
||||||
taskwarrior
|
taskwarrior
|
||||||
termite
|
termite
|
||||||
timewarrior
|
|
||||||
xclip
|
xclip
|
||||||
xephyrify
|
xephyrify
|
||||||
xorg.xbacklight
|
xorg.xbacklight
|
||||||
xorg.xhost
|
xorg.xhost
|
||||||
xsel
|
xsel
|
||||||
youtube-tools
|
|
||||||
yt-next
|
|
||||||
zathura
|
zathura
|
||||||
];
|
];
|
||||||
|
|
||||||
@ -112,7 +95,6 @@ in {
|
|||||||
xlibs.fontschumachermisc
|
xlibs.fontschumachermisc
|
||||||
];
|
];
|
||||||
|
|
||||||
#lass.xserver.enable = true;
|
|
||||||
services.xserver = {
|
services.xserver = {
|
||||||
enable = true;
|
enable = true;
|
||||||
layout = "us";
|
layout = "us";
|
||||||
|
@ -12,6 +12,7 @@ with (import <stockholm/lib>);
|
|||||||
environment.systemPackages = with pkgs; [
|
environment.systemPackages = with pkgs; [
|
||||||
ag
|
ag
|
||||||
nmap
|
nmap
|
||||||
|
git-preview
|
||||||
];
|
];
|
||||||
|
|
||||||
services.tor.enable = true;
|
services.tor.enable = true;
|
||||||
|
@ -29,7 +29,7 @@ let
|
|||||||
environment.systemPackages = [
|
environment.systemPackages = [
|
||||||
config.lass.xjail-bins.${name}
|
config.lass.xjail-bins.${name}
|
||||||
(pkgs.writeDashBin "cx-${name}" ''
|
(pkgs.writeDashBin "cx-${name}" ''
|
||||||
DISPLAY=:${toString (genid_signed name)} ${pkgs.xclip}/bin/xclip -o | DISPLAY=:0 ${pkgs.xclip}/bin/xclip
|
DISPLAY=:${toString (genid_uint31 name)} ${pkgs.xclip}/bin/xclip -o | DISPLAY=:0 ${pkgs.xclip}/bin/xclip
|
||||||
'')
|
'')
|
||||||
];
|
];
|
||||||
lass.browser.paths.${name} = {
|
lass.browser.paths.${name} = {
|
||||||
@ -66,6 +66,7 @@ in {
|
|||||||
extensions = [
|
extensions = [
|
||||||
"cjpalhdlnbpafiamejdnhcphjbkeiagm" # ublock origin
|
"cjpalhdlnbpafiamejdnhcphjbkeiagm" # ublock origin
|
||||||
"dbepggeogbaibhgnhhndojpepiihcmeb" # vimium
|
"dbepggeogbaibhgnhhndojpepiihcmeb" # vimium
|
||||||
|
"liloimnbhkghhdhlamdjipkmadhpcjmn" # krebsgold
|
||||||
];
|
];
|
||||||
};
|
};
|
||||||
|
|
||||||
|
@ -2,7 +2,7 @@
|
|||||||
with import <stockholm/lib>;
|
with import <stockholm/lib>;
|
||||||
{
|
{
|
||||||
users.users.ciko = {
|
users.users.ciko = {
|
||||||
uid = genid_signed "ciko";
|
uid = genid_uint31 "ciko";
|
||||||
description = "acc for ciko";
|
description = "acc for ciko";
|
||||||
home = "/home/ciko";
|
home = "/home/ciko";
|
||||||
useDefaultShell = true;
|
useDefaultShell = true;
|
||||||
|
@ -1,75 +0,0 @@
|
|||||||
{ config, lib, pkgs, ... }:
|
|
||||||
|
|
||||||
let
|
|
||||||
mainUser = config.users.extraUsers.mainUser;
|
|
||||||
inherit (import <stockholm/lib>) genid;
|
|
||||||
|
|
||||||
in {
|
|
||||||
users.extraUsers = {
|
|
||||||
dev = {
|
|
||||||
name = "dev";
|
|
||||||
uid = genid "dev";
|
|
||||||
extraGroups = [ "docker" "vboxusers" ];
|
|
||||||
description = "user for collaborative development";
|
|
||||||
home = "/home/dev";
|
|
||||||
useDefaultShell = true;
|
|
||||||
createHome = true;
|
|
||||||
openssh.authorizedKeys.keys = [
|
|
||||||
config.krebs.users.lass.pubkey
|
|
||||||
config.krebs.users.lass-android.pubkey
|
|
||||||
config.krebs.users.lass-mors.pubkey
|
|
||||||
config.krebs.users.jeschli-bln.pubkey
|
|
||||||
config.krebs.users.jeschli-brauerei.pubkey
|
|
||||||
"ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAACAQC1T5+2epslFARSnETdr4wdolA6ocJaD4H9tmz6BZFQKXlwIq+OMp+sSEdwYwW3Lu9+mNbBHPxVVJDWg/We9DXB0ezXPM5Bs1+FcehmkoGwkmgKaFCDt0sL+CfSnog/3wEkN21O/rQxVFqMmiJ7WUDGci6IKCFZ5ZjOsmmfHg5p3LYxU9xv33fNr2v+XauhrGbFtQ7eDz4kSywxN/aw73LN4d8em0V0UV8VPI3Qkw7MamDFwefA+K1TfK8pBzMeruU6N7HLuNkpkAp7kS+K4Zzd72aQtR37a5qMiFUbOxQ9B7iFypuPx0iu6ZwY1s/sM8t3kLmcDJ9O4FOTzlbpneet3as6iJ+Ckr/TlfKor2Tl5pWcXh2FXHoG8VUu5bYmIViJBrKihAlAQfQN0mJ9fdFTnCXVTtbYTy11s4eEVHgUlb7oSpgBnx5bnBONgApbsOX9zyoo8wz8KkZBcf1SQpkV5br8uUAHCcZtHuY6I3kKlv+8lJmgUipiYzMdTi7+dHa49gVEcEKL4ZnJ0msQkl4XT7JjKETLvumC4/TIqVuRu48wuYalkCR9OzxCsTXQ/msBJBztPdYLrEOXVb2HfzuCT+43UuMQ5rP/EoPy0TWQO9BaqfEXqvbOvWjVxj/GMvglQ2ChZTwHxwwTKB8qRVvJLnbZQwizQiSrkzjb6hRJfQ== u0_a165@localhost"
|
|
||||||
"ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAACAQCjtdqRxD0+UU7O8xogSqAQYd/Hrc79CTTKnvbhKy7jp2TVfxQpl81ndSH6DN6Cz90mu65C+DFGq43YtKTPqXmTn1+2wru71C2UOl6ZR0tmU7UELkRt4SJuFQLEgQCt3BWvXJPye6cKRRIlb+XZHWyVyCDxHo9EYO2GWI1wIP8mHMltKj65mobHY+R0CJNhhwlFURzTto8C30ejfVg2OW81qkNWqYtpdC9txLUlQ9/LBVKrafHGprmcBEp9qtecVgx8kxHpS7cuQNYoFcfljug4IyFO+uBfdbKqnGM5mra3huNhX3+AcQxKbLMlRgZD+jc47Xs+s5qSvWBou2ygd5T413k/SDOTCxDjidA+dcwzRo0qUWcGL201a5g+F0EvWv8rjre9m0lii6QKEoPyj60y3yfaIHeafels1Ia1FItjkBe8XydiXf7rKq8nmVRlpo8vl+vKwVuJY783tObHjUgBtXJdmnyYGiXxkxSrXa2mQhPz3KodK/QrnqCP27dURcMlp1hFF3LxFz7WtMCLW0yvDuUsuI2pdq0+zdt702wuwXVNIvbq/ssvX/CL8ryBLAogaxN9DN0vpjk+aXQLn11Zt99MgmnnqUgvOKQi1Quog/SxnSBiloKqB6aA10a28Uxoxkr0KAfhWhX3XPpfGMlbVj4GJuevLp0sGDVQT2biUQ== rhaist@RH-NB"
|
|
||||||
];
|
|
||||||
packages = with pkgs; [
|
|
||||||
emacs25-nox
|
|
||||||
|
|
||||||
(pkgs.symlinkJoin {
|
|
||||||
name = "tmux";
|
|
||||||
paths = [
|
|
||||||
(pkgs.writeDashBin "tmux" ''
|
|
||||||
exec ${pkgs.tmux}/bin/tmux -f ${pkgs.writeText "tmux.conf" ''
|
|
||||||
set-option -g default-terminal screen-256color
|
|
||||||
|
|
||||||
#use session instead of windows
|
|
||||||
bind-key c new-session
|
|
||||||
bind-key p switch-client -p
|
|
||||||
bind-key n switch-client -n
|
|
||||||
bind-key C-s switch-client -l
|
|
||||||
''} "$@"
|
|
||||||
'')
|
|
||||||
pkgs.tmux
|
|
||||||
];
|
|
||||||
})
|
|
||||||
];
|
|
||||||
};
|
|
||||||
};
|
|
||||||
|
|
||||||
krebs.iptables.tables.filter.INPUT.rules = [
|
|
||||||
{ predicate = "-p tcp --dport 8000"; target = "ACCEPT";}
|
|
||||||
{ predicate = "-p tcp --dport 9000"; target = "ACCEPT";}
|
|
||||||
];
|
|
||||||
|
|
||||||
krebs.per-user.dev.packages = [
|
|
||||||
pkgs.go
|
|
||||||
];
|
|
||||||
environment.variables.GOPATH = "$HOME/go";
|
|
||||||
|
|
||||||
security.sudo.extraConfig = ''
|
|
||||||
${mainUser.name} ALL=(dev) NOPASSWD: ALL
|
|
||||||
'';
|
|
||||||
|
|
||||||
networking.interfaces.et0.ipv4.addresses = [
|
|
||||||
{ address = "10.99.23.1"; prefixLength = 24; }
|
|
||||||
];
|
|
||||||
virtualisation.docker.enable = true;
|
|
||||||
environment.etc."docker/daemon.json".source = pkgs.writeText "daemon.json" ''
|
|
||||||
{
|
|
||||||
"bip": "172.25.0.1/16"
|
|
||||||
}
|
|
||||||
'';
|
|
||||||
services.rabbitmq.enable = true;
|
|
||||||
services.postgresql.enable = true;
|
|
||||||
}
|
|
@ -84,6 +84,9 @@ with import <stockholm/lib>;
|
|||||||
{ from = "boardgamegeek@lassul.us"; to = lass.mail; }
|
{ from = "boardgamegeek@lassul.us"; to = lass.mail; }
|
||||||
{ from = "qwertee@lassul.us"; to = lass.mail; }
|
{ from = "qwertee@lassul.us"; to = lass.mail; }
|
||||||
{ from = "zazzle@lassul.us"; to = lass.mail; }
|
{ from = "zazzle@lassul.us"; to = lass.mail; }
|
||||||
|
{ from = "hackbeach@lassul.us"; to = lass.mail; }
|
||||||
|
{ from = "transferwise@lassul.us"; to = lass.mail; }
|
||||||
|
{ from = "cis@lassul.us"; to = lass.mail; }
|
||||||
];
|
];
|
||||||
system-aliases = [
|
system-aliases = [
|
||||||
{ from = "mailer-daemon"; to = "postmaster"; }
|
{ from = "mailer-daemon"; to = "postmaster"; }
|
||||||
|
10
lass/2configs/print.nix
Normal file
10
lass/2configs/print.nix
Normal file
@ -0,0 +1,10 @@
|
|||||||
|
{ pkgs, ... }:
|
||||||
|
{
|
||||||
|
services.printing = {
|
||||||
|
enable = true;
|
||||||
|
drivers = [
|
||||||
|
pkgs.foomatic_filters
|
||||||
|
pkgs.gutenprint
|
||||||
|
];
|
||||||
|
};
|
||||||
|
}
|
@ -19,9 +19,9 @@ with import <stockholm/lib>;
|
|||||||
URxvt.keysym.M-Escape: perl:keyboard-select:activate
|
URxvt.keysym.M-Escape: perl:keyboard-select:activate
|
||||||
URxvt.keysym.M-s: perl:keyboard-select:search
|
URxvt.keysym.M-s: perl:keyboard-select:search
|
||||||
|
|
||||||
URxvt.keysym.M-F1: command:\033]710;-*-clean-*-*-*-*-*-*-*-*-*-*-iso10646-1\007\033]711;-*-clean-*-*-*-*-*-*-*-*-*-*-iso10646-1\007
|
URxvt.keysym.M-F1: command:\033]710;${config.lass.fonts.regular}\007\033]711;${config.lass.fonts.bold}\007
|
||||||
URxvt.keysym.M-F2: command:\033]710;xft:Monospace:size=15\007\033]711;xft:Monospace:size=15:bold\007
|
URxvt.keysym.M-F2: command:\033]710;xft:Monospace:size=12\007\033]711;xft:Monospace:size=15:bold\007
|
||||||
URxvt.keysym.M-F3: command:\033]710;xft:Monospace:size=20\007\033]711;xft:Monospace:size=20:bold\007
|
URxvt.keysym.M-F3: command:\033]710;xft:Monospace:size=18\007\033]711;xft:Monospace:size=20:bold\007
|
||||||
URxvt.keysym.M-F4: command:\033]710;xft:Monospace:size=25\007\033]711;xft:Monospace:size=25:bold\007
|
URxvt.keysym.M-F4: command:\033]710;xft:Monospace:size=25\007\033]711;xft:Monospace:size=25:bold\007
|
||||||
URxvt.keysym.M-F5: command:\033]710;xft:Monospace:size=30\007\033]711;xft:Monospace:size=30:bold\007
|
URxvt.keysym.M-F5: command:\033]710;xft:Monospace:size=30\007\033]711;xft:Monospace:size=30:bold\007
|
||||||
|
|
||||||
|
@ -4,7 +4,7 @@ let
|
|||||||
|
|
||||||
inherit (import <stockholm/lib>)
|
inherit (import <stockholm/lib>)
|
||||||
genid
|
genid
|
||||||
genid_signed
|
genid_uint31
|
||||||
;
|
;
|
||||||
inherit (import <stockholm/lass/2configs/websites/util.nix> {inherit lib pkgs;})
|
inherit (import <stockholm/lass/2configs/websites/util.nix> {inherit lib pkgs;})
|
||||||
servePage
|
servePage
|
||||||
@ -134,7 +134,7 @@ in {
|
|||||||
};
|
};
|
||||||
|
|
||||||
users.users.domsen = {
|
users.users.domsen = {
|
||||||
uid = genid_signed "domsen";
|
uid = genid_uint31 "domsen";
|
||||||
description = "maintenance acc for domsen";
|
description = "maintenance acc for domsen";
|
||||||
home = "/home/domsen";
|
home = "/home/domsen";
|
||||||
useDefaultShell = true;
|
useDefaultShell = true;
|
||||||
@ -143,49 +143,49 @@ in {
|
|||||||
};
|
};
|
||||||
|
|
||||||
users.users.bruno = {
|
users.users.bruno = {
|
||||||
uid = genid_signed "bruno";
|
uid = genid_uint31 "bruno";
|
||||||
home = "/home/bruno";
|
home = "/home/bruno";
|
||||||
useDefaultShell = true;
|
useDefaultShell = true;
|
||||||
createHome = true;
|
createHome = true;
|
||||||
};
|
};
|
||||||
|
|
||||||
users.users.jla-trading = {
|
users.users.jla-trading = {
|
||||||
uid = genid_signed "jla-trading";
|
uid = genid_uint31 "jla-trading";
|
||||||
home = "/home/jla-trading";
|
home = "/home/jla-trading";
|
||||||
useDefaultShell = true;
|
useDefaultShell = true;
|
||||||
createHome = true;
|
createHome = true;
|
||||||
};
|
};
|
||||||
|
|
||||||
users.users.jms = {
|
users.users.jms = {
|
||||||
uid = genid_signed "jms";
|
uid = genid_uint31 "jms";
|
||||||
home = "/home/jms";
|
home = "/home/jms";
|
||||||
useDefaultShell = true;
|
useDefaultShell = true;
|
||||||
createHome = true;
|
createHome = true;
|
||||||
};
|
};
|
||||||
|
|
||||||
users.users.ms = {
|
users.users.ms = {
|
||||||
uid = genid_signed "ms";
|
uid = genid_uint31 "ms";
|
||||||
home = "/home/ms";
|
home = "/home/ms";
|
||||||
useDefaultShell = true;
|
useDefaultShell = true;
|
||||||
createHome = true;
|
createHome = true;
|
||||||
};
|
};
|
||||||
|
|
||||||
users.users.testuser = {
|
users.users.testuser = {
|
||||||
uid = genid_signed "testuser";
|
uid = genid_uint31 "testuser";
|
||||||
home = "/home/testuser";
|
home = "/home/testuser";
|
||||||
useDefaultShell = true;
|
useDefaultShell = true;
|
||||||
createHome = true;
|
createHome = true;
|
||||||
};
|
};
|
||||||
|
|
||||||
users.users.akayguen = {
|
users.users.akayguen = {
|
||||||
uid = genid_signed "akayguen";
|
uid = genid_uint31 "akayguen";
|
||||||
home = "/home/akayguen";
|
home = "/home/akayguen";
|
||||||
useDefaultShell = true;
|
useDefaultShell = true;
|
||||||
createHome = true;
|
createHome = true;
|
||||||
};
|
};
|
||||||
|
|
||||||
users.users.bui = {
|
users.users.bui = {
|
||||||
uid = genid_signed "bui";
|
uid = genid_uint31 "bui";
|
||||||
home = "/home/bui";
|
home = "/home/bui";
|
||||||
useDefaultShell = true;
|
useDefaultShell = true;
|
||||||
createHome = true;
|
createHome = true;
|
||||||
|
@ -23,7 +23,7 @@ with import <stockholm/lib>;
|
|||||||
};
|
};
|
||||||
display = mkOption {
|
display = mkOption {
|
||||||
type = types.string;
|
type = types.string;
|
||||||
default = toString (genid_signed config._module.args.name);
|
default = toString (genid_uint31 config._module.args.name);
|
||||||
};
|
};
|
||||||
dpi = mkOption {
|
dpi = mkOption {
|
||||||
type = types.int;
|
type = types.int;
|
||||||
|
@ -64,7 +64,7 @@ myTerm :: FilePath
|
|||||||
myTerm = "${pkgs.rxvt_unicode_with-plugins}/bin/urxvtc"
|
myTerm = "${pkgs.rxvt_unicode_with-plugins}/bin/urxvtc"
|
||||||
|
|
||||||
myFont :: String
|
myFont :: String
|
||||||
myFont = "${config.lass.fonts.regular}"
|
myFont = "-*-clean-*-*-*-*-*-*-*-*-*-*-iso10646-1"
|
||||||
|
|
||||||
main :: IO ()
|
main :: IO ()
|
||||||
main = getArgs >>= \case
|
main = getArgs >>= \case
|
||||||
@ -160,6 +160,8 @@ myKeyMap =
|
|||||||
|
|
||||||
, ("<Pause>", spawn "${pkgs.xcalib}/bin/xcalib -invert -alter")
|
, ("<Pause>", spawn "${pkgs.xcalib}/bin/xcalib -invert -alter")
|
||||||
|
|
||||||
|
, ("M4-s", spawn "${pkgs.knav}/bin/knav")
|
||||||
|
|
||||||
--, ("M4-w", screenWorkspace 0 >>= (windows . W.greedyView))
|
--, ("M4-w", screenWorkspace 0 >>= (windows . W.greedyView))
|
||||||
--, ("M4-e", screenWorkspace 1 >>= (windows . W.greedyView))
|
--, ("M4-e", screenWorkspace 1 >>= (windows . W.greedyView))
|
||||||
--, ("M4-r", screenWorkspace 2 >>= (windows . W.greedyView))
|
--, ("M4-r", screenWorkspace 2 >>= (windows . W.greedyView))
|
||||||
|
26
lass/5pkgs/knav/default.nix
Normal file
26
lass/5pkgs/knav/default.nix
Normal file
@ -0,0 +1,26 @@
|
|||||||
|
{ pkgs, ... }: let
|
||||||
|
|
||||||
|
keynavrc = pkgs.writeText "keynavrc" ''
|
||||||
|
clear
|
||||||
|
Escape quit
|
||||||
|
q record ~/.keynav_macros
|
||||||
|
shift+at playback
|
||||||
|
u history-back
|
||||||
|
a cut-left
|
||||||
|
s cut-down
|
||||||
|
w cut-up
|
||||||
|
d cut-right
|
||||||
|
shift+a move-left
|
||||||
|
shift+s move-down
|
||||||
|
shift+w move-up
|
||||||
|
shift+d move-right
|
||||||
|
t windowzoom
|
||||||
|
c cursorzoom 300 300
|
||||||
|
e warp
|
||||||
|
1 click 1
|
||||||
|
2 click 2
|
||||||
|
3 click 3
|
||||||
|
'';
|
||||||
|
in pkgs.writeScriptBin "knav" ''
|
||||||
|
${pkgs.keynav}/bin/keynav "loadconfig ${keynavrc}, start"
|
||||||
|
''
|
@ -13,7 +13,7 @@ let
|
|||||||
mod = x: y: x - y * (x / y);
|
mod = x: y: x - y * (x / y);
|
||||||
|
|
||||||
genid = import ./genid.nix { inherit lib; };
|
genid = import ./genid.nix { inherit lib; };
|
||||||
genid_signed = x: ((lib.genid x) + 16777216) / 2;
|
genid_uint31 = x: ((lib.genid x) + 16777216) / 2;
|
||||||
|
|
||||||
lpad = n: c: s:
|
lpad = n: c: s:
|
||||||
if lib.stringLength s < n
|
if lib.stringLength s < n
|
||||||
|
Loading…
Reference in New Issue
Block a user