*: fs restructure
This commit is contained in:
parent
08d0f5453a
commit
43c92a7340
15 changed files with 0 additions and 0 deletions
89
environments/dev/cross.nix
Normal file
89
environments/dev/cross.nix
Normal file
|
@ -0,0 +1,89 @@
|
|||
import /home/steveej/src/github/NixOS/nixpkgs/default.nix {
|
||||
crossSystem = rec {
|
||||
config = "armv7l-unknown-linux-gnueabi";
|
||||
bigEndian = false;
|
||||
arch = "arm";
|
||||
float = "hard";
|
||||
fpu = "vfpv3-d16";
|
||||
withTLS = true;
|
||||
libc = "glibc";
|
||||
platform = {
|
||||
name = "armv7l-hf-multiplatform";
|
||||
gcc = {
|
||||
arch = "armv7-a";
|
||||
fpu = "neon";
|
||||
float = "hard";
|
||||
};
|
||||
kernelMajor = "2.6"; # Using "2.6" enables 2.6 kernel syscalls in glibc.
|
||||
kernelHeadersBaseConfig = "multi_v7_defconfig";
|
||||
kernelBaseConfig = "multi_v7_defconfig";
|
||||
kernelArch = "arm";
|
||||
kernelDTB = true;
|
||||
kernelAutoModules = false;
|
||||
kernelExtraConfig = ''
|
||||
NAMESPACES y
|
||||
BTRFS_FS y
|
||||
BTRFS_FS_POSIX_ACL y
|
||||
OVERLAY_FS y
|
||||
FUSE_FS y
|
||||
'';
|
||||
kernelTarget = "zImage";
|
||||
uboot = null;
|
||||
};
|
||||
openssl.system = "linux-generic32";
|
||||
gcc = {
|
||||
arch = "armv7-a";
|
||||
fpu = "neon";
|
||||
float = "hard";
|
||||
};
|
||||
};
|
||||
}
|
||||
# pkgs.config = {
|
||||
# packageOverrides = super: let self = super.pkgs; in {
|
||||
# linux_4_0 = super.linux_3_18.override {
|
||||
# kernelPatches = super.linux_3_18.kernelPatches ++ [
|
||||
# # we'll also add one of our own patches
|
||||
# { patch = ./dts.patch; name = "dts-fix"; }
|
||||
# ];
|
||||
#
|
||||
# # add "CONFIG_PPP_FILTER y" option to the set of kernel options
|
||||
# extraConfig = ''
|
||||
# HAVE_IMX_ANATOP y
|
||||
# HAVE_IMX_GPC y
|
||||
# HAVE_IMX_MMDC y
|
||||
# HAVE_IMX_SRC y
|
||||
# SOC_IMX6 y
|
||||
# SOC_IMX6Q y
|
||||
# SOC_IMX6SL y
|
||||
# PCI_IMX6 y
|
||||
# ARM_IMX6Q_CPUFREQ y
|
||||
# IMX_WEIM y
|
||||
# AHCI_IMX y
|
||||
# SERIAL_IMX y
|
||||
# SERIAL_IMX_CONSOLE y
|
||||
# I2C_IMX y
|
||||
# SPI_IMX y
|
||||
# PINCTRL_IMX y
|
||||
# PINCTRL_IMX6Q y
|
||||
# PINCTRL_IMX6SL y
|
||||
# POWER_RESET_IMX y
|
||||
# IMX_THERMAL y
|
||||
# IMX2_WDT y
|
||||
# IMX_IPUV3_CORE y
|
||||
# DRM_IMX y
|
||||
# DRM_IMX_FB_HELPER y
|
||||
# DRM_IMX_PARALLEL_DISPLAY y
|
||||
# DRM_IMX_TVE y
|
||||
# DRM_IMX_LDB y
|
||||
# DRM_IMX_IPUV3 y
|
||||
# DRM_IMX_HDMI y
|
||||
# MMC_SDHCI_ESDHC_IMX y
|
||||
# IMX_SDMA y
|
||||
# PWM_IMX y
|
||||
# DEBUG_IMX6Q_UART y
|
||||
#
|
||||
# PPP_FILTER y
|
||||
# '';
|
||||
# };
|
||||
# };
|
||||
# };
|
98
environments/dev/go.nix
Normal file
98
environments/dev/go.nix
Normal file
|
@ -0,0 +1,98 @@
|
|||
{ gitpkgs ? import /home/steveej/src/github/NixOS/nixpkgs {}
|
||||
, pkgs ? gitpkgs
|
||||
, name ? "generic"
|
||||
, version
|
||||
, extraBuildInputs ? []
|
||||
, extraShellHook ? ""
|
||||
}:
|
||||
let
|
||||
go = builtins.getAttr "go_${version}" pkgs;
|
||||
commonVimRC = ''
|
||||
let g:tagbar_type_go = {
|
||||
\ 'ctagstype' : 'go',
|
||||
\ 'kinds' : [
|
||||
\ 'p:package',
|
||||
\ 'i:imports:1',
|
||||
\ 'c:constants',
|
||||
\ 'v:variables',
|
||||
\ 't:types',
|
||||
\ 'n:interfaces',
|
||||
\ 'w:fields',
|
||||
\ 'e:embedded',
|
||||
\ 'm:methods',
|
||||
\ 'r:constructor',
|
||||
\ 'f:functions'
|
||||
\ ],
|
||||
\ 'sro' : '.',
|
||||
\ 'kind2scope' : {
|
||||
\ 't' : 'ctype',
|
||||
\ 'n' : 'ntype'
|
||||
\ },
|
||||
\ 'scope2kind' : {
|
||||
\ 'ctype' : 't',
|
||||
\ 'ntype' : 'n'
|
||||
\ },
|
||||
\ 'ctagsbin' : 'gotags',
|
||||
\ 'ctagsargs' : '-sort -silent'
|
||||
\ }
|
||||
|
||||
" vim-go {
|
||||
let g:go_highlight_functions = 1
|
||||
let g:go_highlight_methods = 1
|
||||
let g:go_highlight_structs = 1
|
||||
let g:go_highlight_interfaces = 1
|
||||
let g:go_highlight_operators = 1
|
||||
let g:go_highlight_build_constraints = 1
|
||||
let g:go_fmt_command = 'gofmt'
|
||||
let g:go_fmt_options= '-s'
|
||||
let g:go_def_mode = 'godef'
|
||||
let g:go_def_reuse_buffer = 0
|
||||
|
||||
au FileType go nmap <Leader>gds <Plug>(go-def-split)
|
||||
au FileType go nmap <Leader>gdv <Plug>(go-def-vertical)
|
||||
au FileType go nmap <Leader>gdt <Plug>(go-def-tab)
|
||||
au FileType go nmap <Leader>gi <Plug>(go-imports)
|
||||
" }
|
||||
'';
|
||||
buildInputs = with pkgs; [
|
||||
glibc.out
|
||||
glibc.static
|
||||
|
||||
go
|
||||
gotools
|
||||
#gotools.bin
|
||||
#gocode.bin
|
||||
#godef godef.bin
|
||||
godep
|
||||
#godep.bin
|
||||
gox.bin
|
||||
#ginkgo ginkgo.bin
|
||||
#gomega
|
||||
( import ./vim-go.nix { pkgs=gitpkgs; commonRC=commonVimRC; } )
|
||||
# ( import ./neovim-go.nix { pkgs=gitpkgs; commonRC=commonVimRC; } )
|
||||
];
|
||||
|
||||
in pkgs.stdenv.mkDerivation {
|
||||
inherit name;
|
||||
buildInputs = extraBuildInputs ++ buildInputs;
|
||||
shellHook = ''
|
||||
goname=${go.version}_$name
|
||||
setPS1 $goname
|
||||
export GOROOT=${go}/share/go
|
||||
export GOPATH="$HOME/.gopath_$goname"
|
||||
export PATH="$HOME/.gopath_$goname/bin:$PATH"
|
||||
unset name
|
||||
unset SSL_CERT_FILE
|
||||
|
||||
go get -u github.com/Masterminds/glide
|
||||
go get -u github.com/sgotti/glide-vc
|
||||
go get -u github.com/alecthomas/gometalinter
|
||||
go get -u github.com/golang/lint/golint
|
||||
go get -u github.com/rogpeppe/godef
|
||||
go get -u github.com/kisielk/errcheck
|
||||
go get -u github.com/jstemmer/gotags
|
||||
go get -u github.com/klauspost/asmfmt/cmd/asmfmt
|
||||
go get -u github.com/nsf/gocode
|
||||
${extraShellHook}
|
||||
'';
|
||||
}
|
15
environments/dev/neovim-go.nix
Normal file
15
environments/dev/neovim-go.nix
Normal file
|
@ -0,0 +1,15 @@
|
|||
{ commonRC, ... } @ args :
|
||||
|
||||
(import ../../pkg-configuration/vim-derivates/neovim.nix args // {
|
||||
additionalRC = commonRC + ''
|
||||
" deoplete {
|
||||
let g:deoplete#enable_at_startup = 1
|
||||
let g:deoplete#enable_smart_case = 1
|
||||
" }
|
||||
'';
|
||||
additionalPlugins = [
|
||||
"deoplete-go"
|
||||
"deoplete-nvim"
|
||||
"vim-go"
|
||||
];
|
||||
})
|
26
environments/dev/pandoc.nix
Normal file
26
environments/dev/pandoc.nix
Normal file
|
@ -0,0 +1,26 @@
|
|||
{ gitpkgs ? import /home/steveej/src/github/NixOS/nixpkgs {}
|
||||
, pkgs ? gitpkgs
|
||||
, name ? "generic"
|
||||
, version ? "Stable"
|
||||
, extraBuildInputs ? []
|
||||
}:
|
||||
let
|
||||
commonVimRC = ''
|
||||
'';
|
||||
in pkgs.stdenv.mkDerivation {
|
||||
inherit name;
|
||||
buildInputs = with pkgs; [
|
||||
( import ./vim-pandoc.nix { pkgs=gitpkgs; commonRC=commonVimRC; })
|
||||
pandoc
|
||||
texlive.combined.scheme-medium
|
||||
python27Packages.pandocfilters
|
||||
python27Packages.htmltreediff
|
||||
python27Packages.html5lib
|
||||
python27Packages.dbus-python
|
||||
] ++ extraBuildInputs;
|
||||
shellHook = ''
|
||||
pandocname=pandoc_${pkgs.pandoc.version}
|
||||
setPS1 $pandocname
|
||||
unset name
|
||||
'';
|
||||
}
|
72
environments/dev/rkt.nix
Normal file
72
environments/dev/rkt.nix
Normal file
|
@ -0,0 +1,72 @@
|
|||
{
|
||||
pkgs ? import /home/steveej/src/github/NixOS/nixpkgs {},
|
||||
mkGoEnv ? import ./go.nix,
|
||||
rktPath,
|
||||
}:
|
||||
let
|
||||
rktBasebuildInputs = with pkgs; [
|
||||
glibc.out
|
||||
glibc.static
|
||||
autoreconfHook
|
||||
gnupg1
|
||||
squashfsTools
|
||||
cpio
|
||||
tree
|
||||
intltool
|
||||
libtool
|
||||
pkgconfig
|
||||
libgcrypt
|
||||
gperf
|
||||
libcap
|
||||
libseccomp
|
||||
libzip
|
||||
eject
|
||||
iptables
|
||||
bc
|
||||
acl
|
||||
trousers
|
||||
systemd
|
||||
];
|
||||
extraShellHook = ''
|
||||
TARGET=$GOPATH/src/github.com/coreos/rkt
|
||||
if [[ -e ${rktPath}/rkt/rkt.go ]]; then
|
||||
pushd ${rktPath}
|
||||
else
|
||||
echo rktPath must be run the rkt repository clone, but got '${rktPath}'
|
||||
exit 1
|
||||
fi
|
||||
if ! [[ -e $TARGET/rkt/rkt.go ]]; then
|
||||
mkdir -p $TARGET
|
||||
echo $PWD
|
||||
sudo -E mount -o bind $PWD $TARGET
|
||||
fi
|
||||
pushd $TARGET
|
||||
'';
|
||||
in {
|
||||
go15 = mkGoEnv {
|
||||
inherit pkgs;
|
||||
|
||||
name = "rktGo15";
|
||||
version = "1_5";
|
||||
extraBuildInputs = rktBasebuildInputs;
|
||||
inherit extraShellHook;
|
||||
};
|
||||
|
||||
go16 = mkGoEnv {
|
||||
inherit pkgs;
|
||||
|
||||
name = "rktGo16";
|
||||
version = "1_6";
|
||||
extraBuildInputs = rktBasebuildInputs;
|
||||
inherit extraShellHook;
|
||||
};
|
||||
|
||||
go17 = mkGoEnv {
|
||||
inherit pkgs;
|
||||
|
||||
name = "rktGo17";
|
||||
version = "1_7";
|
||||
extraBuildInputs = rktBasebuildInputs;
|
||||
inherit extraShellHook;
|
||||
};
|
||||
}
|
32
environments/dev/rust.nix
Normal file
32
environments/dev/rust.nix
Normal file
|
@ -0,0 +1,32 @@
|
|||
{ gitpkgs ? import /home/steveej/src/github/NixOS/nixpkgs {}
|
||||
, pkgs ? gitpkgs
|
||||
, name ? "generic"
|
||||
, version ? "Stable"
|
||||
, extraBuildInputs ? []
|
||||
}:
|
||||
let
|
||||
rustPackages = builtins.getAttr "rust${version}" pkgs;
|
||||
rustc = rustPackages.rustc;
|
||||
rustShellHook = { rustc, name }: ''
|
||||
rustname=rust_${rustc.version}_${name}
|
||||
setPS1 $rustname
|
||||
unset name
|
||||
'';
|
||||
commonVimRC = ''
|
||||
'';
|
||||
in pkgs.stdenv.mkDerivation {
|
||||
inherit name;
|
||||
buildInputs = with rustPackages;[
|
||||
( import ./vim-rust.nix { pkgs=gitpkgs; commonRC=commonVimRC;
|
||||
inherit rustc;
|
||||
racerd=pkgs.rustracerd;
|
||||
})
|
||||
rustc cargo
|
||||
] ++ [
|
||||
pkgs.rustfmt
|
||||
] ++ extraBuildInputs;
|
||||
shellHook = (rustShellHook){
|
||||
inherit name;
|
||||
inherit rustc;
|
||||
};
|
||||
}
|
20
environments/dev/vim-go.nix
Normal file
20
environments/dev/vim-go.nix
Normal file
|
@ -0,0 +1,20 @@
|
|||
{ commonRC, ... } @ args :
|
||||
|
||||
import ../../pkg-configuration/vim-derivates/vim.nix (args // {
|
||||
name = "vim-for-go";
|
||||
additionalRC = commonRC + ''
|
||||
" Disable AutoComplPop.
|
||||
let g:acp_enableAtStartup = 0
|
||||
" Use neocomplete.
|
||||
let g:neocomplete#enable_at_startup = 1
|
||||
" Use smartcase.
|
||||
let g:neocomplete#enable_smart_case = 1
|
||||
if !exists('g:neocomplete#sources#omni#input_patterns')
|
||||
let g:neocomplete#sources#omni#input_patterns = {}
|
||||
endif
|
||||
'';
|
||||
additionalPlugins = [
|
||||
"neocomplete"
|
||||
"vim-go"
|
||||
];
|
||||
})
|
22
environments/dev/vim-pandoc.nix
Normal file
22
environments/dev/vim-pandoc.nix
Normal file
|
@ -0,0 +1,22 @@
|
|||
{ commonRC
|
||||
,
|
||||
... } @ args :
|
||||
|
||||
import ../../pkg-configuration/vim-derivates/vim.nix (args // {
|
||||
name = "vim-for-pandoc";
|
||||
additionalRC = commonRC + ''
|
||||
set statusline+=%#warningmsg#
|
||||
set statusline+=%{SyntasticStatuslineFlag()}
|
||||
set statusline+=%*
|
||||
|
||||
let g:syntastic_always_populate_loc_list = 1
|
||||
let g:syntastic_auto_loc_list = 1
|
||||
let g:syntastic_check_on_open = 1
|
||||
let g:syntastic_check_on_wq = 0
|
||||
'';
|
||||
additionalPlugins = [
|
||||
"vim-pandoc"
|
||||
"vim-pandoc-syntax"
|
||||
"vimpreviewpandoc"
|
||||
];
|
||||
})
|
46
environments/dev/vim-rust.nix
Normal file
46
environments/dev/vim-rust.nix
Normal file
|
@ -0,0 +1,46 @@
|
|||
{ commonRC
|
||||
, rustc
|
||||
, racerd,
|
||||
... } @ args :
|
||||
|
||||
import ../../pkg-configuration/vim-derivates/vim.nix (args // {
|
||||
name = "vim-for-rust";
|
||||
additionalRC = commonRC + ''
|
||||
set statusline+=%#warningmsg#
|
||||
set statusline+=%{SyntasticStatuslineFlag()}
|
||||
set statusline+=%*
|
||||
|
||||
let g:syntastic_always_populate_loc_list = 1
|
||||
let g:syntastic_auto_loc_list = 1
|
||||
let g:syntastic_check_on_open = 1
|
||||
let g:syntastic_check_on_wq = 0
|
||||
|
||||
" tagbar
|
||||
let g:tagbar_type_rust = {
|
||||
\ 'ctagstype' : 'rust',
|
||||
\ 'kinds' : [
|
||||
\'T:types,type definitions',
|
||||
\'f:functions,function definitions',
|
||||
\'g:enum,enumeration names',
|
||||
\'s:structure names',
|
||||
\'m:modules,module names',
|
||||
\'c:consts,static constants',
|
||||
\'t:traits,traits',
|
||||
\'i:impls,trait implementations',
|
||||
\]
|
||||
\}
|
||||
|
||||
let g:syntastic_rust_checkers = ["rustc"]
|
||||
|
||||
"rustfmt
|
||||
let g:rustfmt_autosave = 1
|
||||
|
||||
let g:ycm_auto_trigger = 1
|
||||
let g:ycm_rust_src_path = '${rustc.src}/src'
|
||||
let g:ycm_racerd_binary_path = '${racerd.out}/bin/racerd'
|
||||
|
||||
'';
|
||||
additionalPlugins = [
|
||||
"rust-vim"
|
||||
];
|
||||
})
|
42
environments/fhs/android.nix
Normal file
42
environments/fhs/android.nix
Normal file
|
@ -0,0 +1,42 @@
|
|||
{ pkgs ? import <nixpkgs> {} }:
|
||||
|
||||
(pkgs.buildFHSUserEnv {
|
||||
name = "devfhs";
|
||||
multiPkgs = pkgs: (with pkgs; [
|
||||
android-udev-rules
|
||||
sudo
|
||||
gawk
|
||||
bzip2
|
||||
file
|
||||
gcc
|
||||
getopt
|
||||
git
|
||||
gnumake
|
||||
ncurses
|
||||
openssl
|
||||
patch
|
||||
perl
|
||||
pkgconfig
|
||||
python
|
||||
openssh
|
||||
subversion
|
||||
unzip
|
||||
wget
|
||||
which
|
||||
vim
|
||||
zlib
|
||||
libusb
|
||||
libusb1
|
||||
systemd
|
||||
strace
|
||||
swt
|
||||
xorg.libXtst
|
||||
glib
|
||||
gtk2
|
||||
gnome.gtk
|
||||
]);
|
||||
profile = ''
|
||||
export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/lib:/lib64:/lib32:/usr/lib32:/usr/lib64:${pkgs.xorg.libXtst}/lib:${pkgs.glib}/lib:${pkgs.gtk2}/lib
|
||||
'';
|
||||
runScript = "bash";
|
||||
}).env
|
38
environments/fhs/vscode.nix
Normal file
38
environments/fhs/vscode.nix
Normal file
|
@ -0,0 +1,38 @@
|
|||
{ pkgs ? import <nixpkgs> {} }:
|
||||
|
||||
(pkgs.buildFHSUserEnv {
|
||||
name = "everydayFHS";
|
||||
targetPkgs = pkgs: (with pkgs;
|
||||
[ which
|
||||
gitFull
|
||||
zsh
|
||||
file
|
||||
direnv
|
||||
|
||||
xdg_utils
|
||||
xsel
|
||||
|
||||
vscode
|
||||
|
||||
# vscode live share
|
||||
gnome3.gcr
|
||||
libgnome_keyring3
|
||||
liburcu
|
||||
libunwind
|
||||
lttng-ust
|
||||
curl
|
||||
openssl
|
||||
libkrb5
|
||||
libuuid
|
||||
icu
|
||||
zlib
|
||||
libsecret
|
||||
]);
|
||||
multiPkgs = pkgs: (with pkgs;
|
||||
[
|
||||
]);
|
||||
profile = ''
|
||||
export SHELL=/bin/zsh
|
||||
'';
|
||||
# FIXME runScript = "$SHELL";
|
||||
}).env
|
Loading…
Add table
Add a link
Reference in a new issue