• Stars
    star
    117
  • Rank 301,828 (Top 6 %)
  • Language
    Python
  • Created over 13 years ago
  • Updated over 1 year ago

Reviews

There are no reviews yet. Be the first to send feedback to the community and the maintainers!

Repository Details

Mon script de post installation d'Ubuntu Desktop

=============================== Ubuntu post-installation script

With this Python script you will avoid wasting time to install and configure your Ubuntu operating system. Just download this script, run it with your favorite configuration file and ... envoy !

The script can:

  • Install Ubuntu repositories (deb repos, PPA, ...)
  • Install packages
  • Configure dots files (.bashrc, .vimrc, ...)
  • Configure the user interface (support Unity and Gnome Shell)
  • Run every command line

How to use this script ?

Just download and run it with the following command lines:

$ wget https://raw.github.com/nicolargo/ubuntupostinstall/master/ubuntu-13.04-postinstall.py
$ chmod a+x ubuntu-13.04-postinstall.py
$ sudo ./ubuntu-13.04-postinstall.py

By default, the script will download and use this configuration file. https://github.com/nicolargo/ubuntupostinstall/blob/master/ubuntu-13.04-unity-postinstall.cfg

Use anothers configurations files

Using the -c option, you can select an alternative configuration file.

For example, you can configure Ubuntu for Gnome Shell using:

$ sudo ./ubuntu-13.04-postinstall.py -c https://raw.github.com/nicolargo/ubuntupostinstall/master/ubuntu-13.04-gnomeshell-postinstall.cfg

If you want to use a local configuration file (adapted to yours needs):

$ sudo ./ubuntu-13.04-postinstall.py -c mycfg.cfg

Create your own configuration file

The configuration files is organized into sections, and each section can contain name-value pairs for configuration data.

preactions section

This is the first section of the configuration file.

A line starting with the action_ string (following by the action name) defines a action (command line) to be executed.

The action name will be displayed during the script execution.

The lines will be executed before all the others steps.

Example:

[preactions]
action_dummy = dpkg -l > /tmp/pkg-before.txt

The dummy action will create a /tmp/pkg-before.txt with a listing of all the packages installed on your system.

repos section

In this section, user can install the repositories (deb repository or PPA).

  • ppa_xxx = ppa:ppauser/ppaname > Add the ppa:ppauser/ppaname to the system
  • pkg_xxx = pkglist > Add the package list (space separed) to the system
  • url_xxx = http://reposurl > Add the repository URL to the system
  • key_xxx = key > Add the repository key to the system

xxx define the name of the action and will be displayed during the script execution.

Example:

[repos]
ppa_glances = ppa:arnaud-hartmann/glances-stable
pkg_glances = glances

Install the Glances PPA on the system and install the glances software.

packages section

From this section, you can install all your softwares, gathered by function, needs...

If the item starts with remove_ then packets are uninstalled.

Example:

[packages]
network = iftop ifstat
dev = vim git 

Install iftop, ifstat, vim and git. Display "Install network packages" and "Install dev packages" during the script execution.

Example:

[packages]
remove_unuse = eclipse

Remove eclipse. Display "Remove unuse" during the script execution.

dotfiles section

This section is dedicated to the dot files (.bash, .vimrc...) installed in your home folder.

The script can install the following dot files from URL:

  • bashrc: BASH main configuration file
  • bashrc_prompt: BASH prompt configuration
  • bashrc_aliases: BASH aliases
  • vimrc: VIM main configuration file
  • htoprc: HTOP main configuration file

Example:

[dotfiles]
bashrc = https://raw.github.com/nicolargo/dotfiles/master/bashrc

Create the ~/.bashrc from the https://raw.github.com/nicolargo/dotfiles/master/bashrc

unity and gnome3 sections

Configure Unity or Gnome Shell:

  • theme: Configure the GTK theme (name)
  • icons: Configure the icons theme (name)
  • cursors: Configure the cursors theme (name)
  • conky: Conky main configuration file (URL)

For the themes, packages have to be installed in the repos or packages sections.

[gnome3]
theme = Boomerang
icons = Faenza
cursors = DMZ-White
conky = https://raw.github.com/nicolargo/ubuntupostinstall/master/conkyrc

Configure Gnome Shell with the Boomerang GTK theme, Faenza icons and DMZ-White cursors. Configure Conky with the https://raw.github.com/nicolargo/ubuntupostinstall/master/conkyrc configuration file.

You can NOT use both unity and gnome3 section in the same .cfg file.

postactions section

This is the last section of the configuration file.

A line starting with the action_ string (following by the action name) defines a action (command line) to be executed.

The action name will be displayed during the script execution.

The lines will be executed after all the others steps.

Example:

[postactions]
action_dummy = dpkg -l > /tmp/pkg-after.txt

The dummy action will create a /tmp/pkg-before.txt with a listing of all the packages installed on your system after the script execution.

Contribute ?

Need a new function ?

Found a bug ?

Please fill an issue here: https://github.com/nicolargo/ubuntupostinstall/issues/new

More Repositories

1

glances

Glances an Eye on your system. A top/htop alternative for GNU/Linux, BSD, Mac OS and Windows operating systems.
Python
26,632
star
2

docker-influxdb-grafana

Docker-compose files for a simple InfluxDB + Grafana stack
Shell
397
star
3

varnish-nginx-wordpress

A "simple" Varnish ang NGinx configuration for a Wordpress blog
VCL
307
star
4

nvidia-ml-py3

Python 3 Bindings for the NVIDIA Management Library
Python
130
star
5

debianpostinstall

Script pour automatiser l'installation de machine sous Debian
Shell
80
star
6

glancesautoinstall

Glances Auto Install script
Shell
59
star
7

chromium-on-mac

Install/Update Chromium on Mac OS X
Shell
48
star
8

gstpipelinearena

GStreamer pipeline arena
Shell
42
star
9

sxxexx

A command line tool to search (and download) series from the Piracy Bay.
Python
31
star
10

pyadl

A Python wrapper for the AMD/ATI ADL library
Python
25
star
11

openvpnscripts

Shell scripts to control an OpenVPN server
Shell
24
star
12

witsub

Where Is The Subtitle
Python
23
star
13

vnstat.js

A Node.js Web based interface for VnStat
CSS
23
star
14

batinfo

A Python lib to grab batteries' informations on Linux operating system
Python
21
star
15

nagiosautoinstall

Installation automatique de Nagios depuis les sources
Shell
20
star
16

shinkenautoinstall

Script d'installation automatique de Shinken/Thruk
Shell
18
star
17

nagisk

Nagisk is a simple tool to monitor Asterisk from a Nagios server.
Perl
17
star
18

loicinstaller

This script installs, updates and runs LOIC on Linux.
Shell
16
star
19

checkglances

CheckGlances, a Nagios|Shinken plugin for Glances
Python
14
star
20

pymdstat

A pythonic library to parse /proc/mdstat file
Python
12
star
21

dotfiles

My "dotfiles" for Bash, Vim...
Lua
10
star
22

docker-influxdb2-grafana-glances

A sandbox with InfluxDB2 + Grafana + Glances
10
star
23

myscreencast

Shell script based on GStreamer to build screencast in H.264/AAC, WebM and Vorbis/Theora format)
Shell
10
star
24

fail2banarena

My configuration files for Fail2Ban
8
star
25

simulwan

WAN simulator script for Linux kernel
Shell
8
star
26

sjitter

Sjitter is a command line client/server to measure jitter (based on RFC 1889), one way UDP delay and bandwidth.
Shell
8
star
27

pythonarena

Python repos for my test
Jupyter Notebook
8
star
28

winks

A Glances server with minimal footprint
Go
7
star
29

ciscosteeringwheel

Some stupids Shell Script to talk with Cisco equipment
Perl
6
star
30

muninplugins

Munin Plugins
6
star
31

isittor

IsItTor is a script to check if an IP address is a Tor exit node
Python
6
star
32

nodeautoinstall

NodeJS and NPM auto installation script for Debian Stable
Python
6
star
33

tcptweak

A TCP tweak shell script for GNU/Linux
Perl
5
star
34

yagits

Yet Another GIT Sheet
5
star
35

fedorapostinstall

A tiny Fedora post install Script
Shell
5
star
36

pydecom

Python
4
star
37

cactiplug

Integrate Cacti in the Nagios GUI
PHP
4
star
38

dockersfiles

My own and almost private dockers files
4
star
39

iperfit

Automaticaly run Iperf on both server and client
Perl
4
star
40

scriptit

A simple Python skeleton to speed up "post installation" script development
Python
3
star
41

showtuxperf

Show Linux performance
Shell
3
star
42

pycket

Extract data from packet of bits
Python
3
star
43

glances-webui

Glances WebUI
3
star
44

rtpshow

Perl script showing RTP packets
Perl
3
star
45

testvideo

Test video Quality using QPSNR (compare 2 videos)
Shell
3
star
46

hing

A pure Python HTTP ping
3
star
47

glancesautopkg

Glances autopackage builder
Shell
3
star
48

pythoncliskeleton

Skeleton for Python CLI oriented module
Python
3
star
49

glancesarena

A sandbox for Glances
Python
2
star
50

kissetl

A keep it simple stupid ETL (Extract, Transform and Load)
2
star
51

Aptana-Install-Script

Automatically Installs Aptana Studio 3 on Ubuntu 12.04 Precise Pangolin
Shell
2
star
52

pygpustats

A Python wrapper to grab GPU's stats
2
star
53

springarena

Spring testbed
Shell
2
star
54

gazes

Gazes on your system
2
star
55

geolocip

Automatically exported from code.google.com/p/geolocip
2
star
56

puppet

My Puppet Master configuration files
Puppet
2
star
57

docker-graphite-grafana

Shell
2
star
58

diagramsarana

A place for my diagrams.net
2
star
59

mandelbrot

Python Mandelbrot image generator
Python
2
star
60

systemintegrity

A very simple system integrity script based on SHA-2
Python
2
star
61

klances

Glances for Kubernetes
Python
2
star
62

grafanaarena

Sandbox for Grafana
2
star
63

pysat

Satellite protocol stack implementation in Python
2
star
64

blogostat

Quelques scripts pour obtenir des stats sur la blogosphรจre FR
Shell
1
star
65

rustarena

Rust sandbox
Rust
1
star
66

twitpicit

Script to send image to Twitpic
Perl
1
star