Prototyping a Gentoo section of the desktop role

God help me.
This commit is contained in:
Salt 2020-12-04 09:07:56 -06:00
parent 07a28018b0
commit 21c1b1254e
22 changed files with 174 additions and 0 deletions

View File

@ -0,0 +1,30 @@
#
# make.conf
# Configuration for Portage
# vim:ft=bash
#
# NOTE: DO NOT REMOVE ANY LINES STARTING WITH ansible:
# ANSIBLE USES THOSE TO INSERT MODIFICATIONS PROGRAMATICALLY
#
# USE
USE="curl ffmpeg gstreamer networkmanager pulseaudio systemd vulkan webp xinerama -elogind -test"
#ansible:use
# Compilation configuration
# ABI_X86 is used to control multilib support
ABI_X86="64 32"
COMMON_FLAGS="-march=native -O2 -pipe"
CFLAGS="${COMMON_FLAGS}"
CXXFLAGS="${COMMON_FLAGS}"
MAKEOPTS="-j16"
# Portage configuration
ACCEPT_LICENSE="*"
EMERGE_DEFAULT_OPTS="--jobs 10"
FEATURES="-network-sandbox"
GENTOO_MIRRORS="http://distfiles.gentoo.org"
VIDEO_CARDS="i915 amdgpu qxl radeon -nouveau"
# Package configuration
GRUB_PLATFORMS="emu efi-32 efi-64 pc"

View File

@ -0,0 +1 @@
games-emulation/dolphin ~amd64

View File

@ -0,0 +1 @@
games-util/lutris ~amd64

View File

@ -0,0 +1 @@
media-sound/spotify ~amd64

View File

@ -0,0 +1,2 @@
net-im/element-desktop-bin ~amd64
net-im/slack ~amd64

View File

@ -0,0 +1,2 @@
app-admin/conky curl ical imlib iostats math rss vim-syntax wifi
app-admin/sudo offensive

View File

@ -0,0 +1 @@
app-emulation/libvirt libssh lxc

View File

@ -0,0 +1 @@
dev-java/openjdk -jbootstrap

View File

@ -0,0 +1 @@
dev-lang/python -bluetooth -sqlite

View File

@ -0,0 +1 @@
dev-vcs/git highlight

View File

@ -0,0 +1 @@
games-emulation/dolphin discord-presence

View File

@ -0,0 +1 @@
media-libs/mesa d3d9 vulkan

View File

@ -0,0 +1 @@
media-video/mpv archive bluray libmpv tools

View File

@ -0,0 +1 @@
net-misc/networkmanager dhclient

View File

@ -0,0 +1 @@
sys-libs/ncurses -gpm

View File

@ -0,0 +1,2 @@
www-client/chromium -hangouts vaapi widevine
www-client/firefox hwaccel wifi

View File

@ -0,0 +1 @@
x11-misc/polybar ipc network

View File

@ -0,0 +1 @@
x11-wm/bspwm examples

View File

@ -0,0 +1,11 @@
# vim:ft=dosini
[DEFAULT]
main-repo = gentoo
[gentoo]
location = /usr/portage
#sync-depth = 1
sync-type = git
sync-uri = https://github.com/gentoo-mirror/gentoo.git
sync-git-verify-commit-signature = true
auto-sync = yes

View File

@ -0,0 +1,10 @@
[steam-overlay]
# Gentoo overlay for Valve's Steam client and Steam-based games.
# Maintainer: anyc (https://github.com/anyc)
location = /usr/local/portage/steam-overlay
sync-type = git
sync-uri = https://github.com/anyc/steam-overlay.git
priority = 50
auto-sync = Yes

View File

@ -0,0 +1,93 @@
# DO NOT EDIT THIS FILE
# This file is managed via ansible and WILL be overwritten!
# System apps
app-admin/pwgen
app-admin/sudo
app-editors/vim
app-emulation/libvirt
app-emulation/virt-manager
app-emulation/wine-vanilla
app-emulation/winetricks
app-portage/gentoolkit
app-text/highlight
app-text/tree
dev-java/openjdk:8
dev-lang/mono
dev-python/pip
dev-python/pyusb
dev-python/virtualenv
dev-util/vulkan-tools
dev-vcs/git
media-fonts/fontawesome
media-fonts/ibm-plex
media-fonts/inconsolata
media-fonts/noto
media-fonts/roboto
media-libs/mesa
net-analyzer/nmap
net-misc/networkmanager
net-p2p/syncthing
net-vpn/networkmanager-openconnect
net-vpn/networkmanager-openvpn
sys-boot/grub:2
sys-fs/dosfstools
sys-fs/e2fsprogs
sys-fs/ncdu
sys-fs/xfsprogs
sys-kernel/gentoo-kernel
sys-kernel/installkernel-gentoo
sys-kernel/linux-firmware
sys-process/cronie
# User apps
app-admin/keepassxc
app-misc/joy2key
dev-lua/luacheck
dev-util/android-tools
games-emulation/dolphin
games-util/lutris
games-util/steam-meta
kde-apps/filelight
kde-apps/kcolorchooser
media-gfx/gimp
media-gfx/imagemagick
media-sound/spotify
media-video/ffmpeg
media-video/mpv
net-im/element-desktop-bin
net-im/slack
net-im/telegram-desktop
net-misc/nextcloud-client
net-p2p/qbittorrent-4.2.5-r2
www-client/chromium
www-client/firefox
x11-misc/zim
# Desktop environment
app-admin/conky
media-sound/pavucontrol-qt
x11-apps/xbacklight
x11-misc/dunst
x11-misc/nitrogen
x11-misc/picom
x11-misc/polybar
x11-misc/qt5ct
x11-misc/redshift
x11-misc/rofi
x11-misc/xdotool
x11-themes/papirus-icon-theme
x11-wm/bspwm

View File

@ -44,5 +44,15 @@
- system76-power
when: ansible_system_vendor == "System76"
when: ansible_pkg_mgr == "apt"
- name: configure portage
block:
# Portage is very complex, so we sync an entire known good configuration tree
# Note that this also syncs over the @ansible package set
- name: sync portage configs
synchronize: src="portage/" dest="/etc/portage/"
# This is my bootstrap script, which can cause damage if invoked by root again, so we remove it
- name: remove gentoostrap
file: path="/gentoostrap.sh" state=absent
when: ansible_os_family == "Gentoo"
- name: configure pip3 packages
pip: executable=/usr/bin/pip3 state=latest name="{{ desktop_pip3_packages + desktop_pip3_packages_extra }}"