├── .gitignore ├── README.md ├── config.sh.dist ├── install.sh ├── lib_installer.sh ├── templates ├── jessie │ ├── alternc-easy-install-nightly.list │ ├── alternc-easy-install.list │ ├── backports-easy-install.list │ └── nightly.key ├── phpmyadmin.conf ├── stretch │ ├── alternc-easy-install-nightly.list │ ├── alternc-easy-install.list │ ├── alternc.key │ ├── backports-easy-install.list │ └── nightly.key └── wheezy │ ├── alternc-easy-install-nightly.list │ ├── alternc-easy-install.list │ ├── alternc.key │ ├── backports-easy-install.list │ └── nightly.key └── translations ├── Makefile ├── en └── LC_MESSAGES │ ├── alternc-easy-install.mo │ └── alternc-easy-install.po └── fr └── LC_MESSAGES ├── alternc-easy-install.mo └── alternc-easy-install.po /.gitignore: -------------------------------------------------------------------------------- 1 | config.sh 2 | *~ 3 | translations/alternc-easy-install.pot 4 | test.sh 5 | /nbproject 6 | *.swp 7 | -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- 1 | easy-install 2 | ============ 3 | 4 | Tool for beginners to install alternc on their server 5 | 6 | Requisites : 7 | 8 | * Debian Wheezy system 9 | * A root shell is mandatory (either physical or network/ssh) 10 | * Internet access (for packages download) 11 | 12 | 1. Clone this repository ex: 13 | 14 | git clone https://www.github.com/AlternC/easy-install.git 15 | 16 | 2. cd easy-install 17 | 18 | 3. ./install.sh 19 | 20 | 4. Follow questions and wait for install to occur 21 | 22 | 5. Profit! 23 | -------------------------------------------------------------------------------- /config.sh.dist: -------------------------------------------------------------------------------- 1 | # Configure these parameters according to your needs 2 | 3 | # Do you want to see verbose information during installation? 4 | DEBUG=1 5 | # Do you want to simulate all operations to test the process? 6 | DRY_RUN=0 7 | # Do you want to run in strict mode where any error causes exit? 8 | STRICT=0 9 | # Do you want to run in silent mode and not get any questions asked? 10 | SILENT=0 11 | # Do you want to use nightly packets - for developers only - 12 | NIGHTLY=0 13 | 14 | ## if SILENT is equal to 1, you MUST set these variables 15 | 16 | # string 17 | ALTERNC_PUBLIC_IP="%ALTERNC_PUBLIC_IP%" 18 | # 0/1 19 | VAR_USE_ALTERNC_SUBDOMAIN="%VAR_USE_ALTERNC_SUBDOMAIN%" 20 | # string 21 | ALTERNC_DESKTOPNAME="%ALTERNC_DESKTOPNAME%" 22 | # 0/1 23 | VAR_USE_ALTERNC_NS="%VAR_USE_ALTERNC_NS%" 24 | # string 25 | ALTERNC_NS1="%ALTERNC_NS1%" 26 | # string 27 | ALTERNC_NS2="%ALTERNC_NS2%" 28 | # 0/1 29 | INSTALL_ROUNDCUBE="%INSTALL_ROUNDCUBE%" 30 | # 0/1 31 | INSTALL_MAILMAN="%INSTALL_MAILMAN%" 32 | 33 | -------------------------------------------------------------------------------- /install.sh: -------------------------------------------------------------------------------- 1 | #!/bin/bash 2 | 3 | 4 | ### Configuration 5 | 6 | # Exit if any error occurs 7 | if [[ $STRICT == 1 ]] ; then 8 | set -e 9 | fi; 10 | 11 | # Gettext is a hard dependancy, install it "raw style" 12 | echo "Installing gettext for translations" 13 | which gettext &>/dev/null || apt-get install --force-yes -y gettext || { echo "[!] Exit: Failed to install gettext"; exit 1; } 14 | 15 | # Functions 16 | . "lib_installer.sh" 17 | 18 | # Local config 19 | if [ ! -f "config.sh" ] ; then 20 | cp config.sh.dist config.sh; 21 | fi; 22 | source "config.sh" 23 | 24 | ### Disclaimer 25 | 26 | misc "===== Licence ===== 27 | 28 | This script is licenced under the Gnu Public Licence v3. 29 | You should have received a copy of the Licence, otherwise it is available 30 | on https://www.gnu.org/copyleft/gpl.html. 31 | This script is provided without warranty of any kind, either expressed 32 | or implied. In no event shall our juridical person be liable for any 33 | damages incsluding, but not limited to, direct, indirect, special, 34 | incidental or consequential damages or other losses arising out of the 35 | use of or inability to use our products. 36 | ... yada yada yada ..." 37 | 38 | spacer 39 | 40 | warn "===== Warning ===== 41 | 42 | This installation script helps to test or install AlternC for 43 | the first time and / or don't know so much about Linux, network etc. 44 | 45 | Using this script will provide a working installation, but if you need 46 | something more specific you might prefer a custom installation. 47 | 48 | To learn more about the choices made for this installer, please read 49 | http://www.alternc.org/simpleInstaller" 50 | 51 | try_exit 52 | 53 | spacer 54 | 55 | ### Environment info 56 | 57 | # Is debug mode ON? 58 | if [[ $DEBUG == 1 ]] ; then 59 | misc "Debug mode activated." 60 | fi; 61 | 62 | # Is dry run mode ON? 63 | if [[ $DRY_RUN == 1 ]] ; then 64 | misc "Dry run mode activated." 65 | fi; 66 | 67 | # Is silent mode ON? 68 | if [[ "$SILENT" == 1 ]] ; then 69 | misc "Silent mode activated." 70 | export DEBIAN_FRONTEND=noninteractive 71 | fi; 72 | 73 | ### Installer prequisites 74 | 75 | ## Mandatory packets 76 | misc "Installing mandatory packages" 77 | 78 | # Installs various packages required to work 79 | apt_get dnsutils lsb-release inetutils-ping pwgen 80 | 81 | ## Checks debian / net / uid / etc. 82 | 83 | # Exits if user is not root 84 | if [ $EUID != 0 ] ; then 85 | alert "You must be root, please authentificate with your user password or run as root"; 86 | fi; 87 | 88 | # Exits if not debian 89 | if [ ! -f /etc/debian_version ] ; then 90 | alert "Not a DEBIAN system (missing /etc/debian_version)" 91 | fi 92 | 93 | DEBIAN_RELEASE=$(lsb_release -cs) 94 | 95 | # Exits if no web access 96 | if ! ping -q -c 1 -W 3 $VAR_TEST_IP 2>&1 > /dev/null; then 97 | alert "This machine is not connected to Internet." 98 | fi 99 | 100 | # Exits if alternc present 101 | 102 | if [[ $(dpkg-query -W -f='${Status}' alternc 2>/dev/null | grep -c "ok installed") == 1 ]] ; then 103 | alert "AlternC already installed, nothing to do." ; 104 | fi; 105 | 106 | 107 | ### User inputs 108 | 109 | ## IP 110 | 111 | spacer 112 | 113 | info "===== Your AlternC server needs a public IP Address ===== 114 | 115 | This makes it available on the web from everywhere in the world." 116 | 117 | misc "For your information, here are the internet addresses of this machine:" 118 | 119 | for ip in $(ip addr show scope global | grep inet | cut -d' ' -f6 | cut -d/ -f1|tr '\n' ' ' ) ; do 120 | warn "$ip" 121 | done; 122 | 123 | ask "Please provide the public IP address" 124 | 125 | if [[ "$SILENT" != 1 ]] ; 126 | then read ALTERNC_PUBLIC_IP 127 | else if [[ -z $ALTERNC_PUBLIC_IP ]] ; then 128 | alert "Missing variable %s for silent install" "ALTERNC_PUBLIC_IP" 129 | fi 130 | fi; 131 | 132 | ALTERNC_INTERNAL_IP=$ALTERNC_PUBLIC_IP 133 | 134 | # Checks if it works 135 | # It is allowed. Maybe only warn @todo 136 | #test_local_ip $ALTERNC_PUBLIC_IP 137 | 138 | 139 | ## FQDN 140 | 141 | spacer 142 | 143 | info "===== Your AlternC needs a domain name ===== 144 | 145 | This domain name will be used to access the panel and send/receive mail. 146 | 147 | You must use an original domain name dedicated for this purpose. 148 | In other words, do not use a domain name intended to be your company or 149 | personal website. 150 | For example, 'example.com' is not good, unless your company is the 151 | hosting service by itself. 'panel.example.com' will work better, 152 | allowing you to still have your website on 'www.example.com' 153 | 154 | If you are unsure, here are a few solutions: 155 | 1. Create a subdomain dedicated to AlternC on a domain name you own 156 | 2. Use the free AlternC.net domain name service 157 | 158 | We recommand using the AlternC.net subdomain name if you are new to this. 159 | You'll only need to request your subdomain on http://www.alternc.net and 160 | point it to the IP address you just provided. 161 | Your AlternC domain name might then look like 'example.alternc.net'" 162 | 163 | ask "Do you want to use AlternC.net domain name service? (Y/n)" 164 | 165 | if [[ "$SILENT" != 1 ]] ; 166 | then read VAR_USE_ALTERNC_SUBDOMAIN 167 | else if [[ -z $VAR_USE_ALTERNC_SUBDOMAIN ]] ; then 168 | alert "Missing variable %s for silent install" "VAR_USE_ALTERNC_SUBDOMAIN" 169 | fi 170 | fi; 171 | 172 | check=$(validate $VAR_USE_ALTERNC_SUBDOMAIN) 173 | 174 | # Wants to use own domain name 175 | if [[ $check=0 ]] ; then 176 | 177 | # Reads the hostname 178 | if [ -f /etc/hostname ] ; then 179 | HOSTNAME=$(cat /etc/hostname) 180 | misc " For your information, this server hostname is : 181 | $HOSTNAME" 182 | fi; 183 | # Reads the mailname 184 | if [ -f /etc/mailname ] ; then 185 | MAILNAME=$(cat /etc/mailname) 186 | misc " For your information, this server mailname is : 187 | $MAILNAME" 188 | fi; 189 | 190 | ask " Please provide your AlternC domain name" 191 | if [[ "$SILENT" != 1 ]] ; 192 | then read ALTERNC_DESKTOPNAME 193 | else if [[ -z $ALTERNC_DESKTOPNAME ]] ; then 194 | alert "Missing variable %s for silent install" "ALTERNC_DESKTOPNAME" 195 | fi 196 | fi; 197 | test_ns "$ALTERNC_DESKTOPNAME" 198 | 199 | 200 | # run the alterc.net api client 201 | else 202 | #todo 203 | alternc_net_get_domain 204 | 205 | ask "Please provide the AlternC.net subdomain name:" 206 | if [[ "$SILENT" != 1 ]] ; 207 | then read ALTERNC_DESKTOPNAME 208 | else if [[ -z $ALTERNC_DESKTOPNAME ]] ; then 209 | alert "Missing variable %s for silent install" "ALTERNC_DESKTOPNAME" 210 | fi 211 | fi; 212 | test_ns "$ALTERNC_DESKTOPNAME" 213 | 214 | fi 215 | 216 | # Sets the mailname 217 | ALTERNC_POSTFIX_MAILNAME="$ALTERNC_DESKTOPNAME" 218 | 219 | # Writes the mailname in file 220 | write "$ALTERNC_DESKTOPNAME" /etc/mailname 0 221 | 222 | # Edit the host file 223 | backup_file "/etc/hosts" 224 | insert /etc/hosts 2 "::1\t$ALTERNC_DESKTOPNAME" 225 | insert /etc/hosts 2 "127.0.0.1\t$ALTERNC_DESKTOPNAME" 226 | 227 | 228 | ## DNS 229 | 230 | # Asks if user wants to use the AlternC services for DNS 231 | 232 | info "===== Your AlternC needs DNS Servers ===== 233 | 234 | Domain Name Servers announce addresses of the domain names on the web. 235 | 236 | If you don't have at least two name servers with minimal redundancy, we 237 | highly recommand you the free service we provide (see http://alternc.net )" 238 | 239 | ask "Do you want to use AlternC.net name servers ?(Y/n)" 240 | 241 | if [[ "$SILENT" != 1 ]] ; 242 | then read VAR_USE_ALTERNC_NS 243 | else if [[ -z $VAR_USE_ALTERNC_NS ]] ; then 244 | alert "Missing variable %s for silent install" "VAR_USE_ALTERNC_NS" 245 | fi 246 | fi; 247 | 248 | check=$(validate $VAR_USE_ALTERNC_NS) 249 | 250 | 251 | # User wants to use own name servers 252 | if [[ "$check" == "0" ]] ; then 253 | info "You need two valid nameservers :" 254 | 255 | ask " Please provide your primary NS server" 256 | if [[ "$SILENT" != 1 ]] ; 257 | then read ALTERNC_NS1 258 | else if [[ -z $ALTERNC_NS1 ]] ; then 259 | alert "Missing variable %s for silent install" "ALTERNC_NS1" 260 | fi 261 | fi; 262 | test_ns $ALTERNC_NS1 263 | 264 | ask " Please provide your secondary NS server" 265 | if [[ "$SILENT" != 1 ]] ; 266 | then read ALTERNC_NS2 267 | else if [[ -z $ALTERNC_NS2 ]] ; then 268 | alert "Missing variable %s for silent install" "ALTERNC_NS2" 269 | fi 270 | fi; 271 | test_ns $ALTERNC_NS2 272 | 273 | # User wants to use AlternC NS 274 | 275 | else 276 | ALTERNC_NS1="ns1.alternc.net" 277 | ALTERNC_NS2="ns2.alternc.net" 278 | fi 279 | 280 | 281 | 282 | 283 | ## AlternC modules 284 | 285 | # Asks if roundcube is required 286 | 287 | spacer 288 | 289 | info " 290 | ===== Optional installation: roundcube webmail ===== 291 | 292 | Roundcube is the webmail software proposed by AlternC. 293 | 294 | We recommand adding it to your installation. 295 | " 296 | 297 | ask "Would you like to install Roundcube? (Y/n)" 298 | 299 | if [[ "$SILENT" != 1 ]] ; 300 | then read INSTALL_ROUNDCUBE 301 | else if [[ -z $INSTALL_ROUNDCUBE ]] ; then 302 | alert "Missing variable %s for silent install" "INSTALL_ROUNDCUBE" 303 | fi 304 | fi; 305 | 306 | check=$(validate $INSTALL_ROUNDCUBE) 307 | 308 | # User wants to add roundcube 309 | if [[ "$check" == 1 ]] ; then 310 | 311 | SOURCES_USE_BACKPORTS=1 312 | ADDITIONAL_PACKAGES="$ADDITIONAL_PACKAGES alternc-roundcube" 313 | info "Roundcube added to your configuration" 314 | 315 | fi 316 | 317 | # Asks if mailman is required 318 | spacer 319 | 320 | info " 321 | ===== Optional installation: mailman mailing list manager ===== 322 | 323 | Mailman is the mailing list software proposed by AlternC. 324 | " 325 | 326 | ask "Would you like to install Mailman? (Y/n)" 327 | 328 | if [[ "$SILENT" != 1 ]] ; 329 | then read INSTALL_MAILMAN 330 | else if [[ -z $INSTALL_MAILMAN ]] ; then 331 | alert "Missing variable %s for silent install" "INSTALL_MAILMAN" 332 | fi 333 | fi; 334 | 335 | check=$(validate $INSTALL_MAILMAN) 336 | 337 | # User wants to add mailman 338 | if [[ "$check" == 1 ]] ; then 339 | 340 | ADDITIONAL_PACKAGES="$ADDITIONAL_PACKAGES alternc-mailman" 341 | 342 | info "Mailman added to your configuration" 343 | 344 | # Asks language 345 | misc "By default mailman is installed with french and english." 346 | ask "Do you want to use french as default language? (Y/n)" 347 | read MAILMAN_USE_FRENCH 348 | check=$(validate $MAILMAN_USE_FRENCH) 349 | 350 | # Switches default mailman language to english 351 | if [[ $check == 0 ]] ; then 352 | ALTERNC_MAILMAN_DEFAULT_SERVER_LANGUAGE="en" 353 | fi; 354 | 355 | fi 356 | 357 | ### Mysql password 358 | 359 | # Generates phpmyadmin user password 360 | ALTERNC_PHPMYADMIN_USERPASSWORD=$(pwgen -s 15) 361 | 362 | # Generates mysql server root password 363 | MYSQL_ROOT_PASSWORD=$(pwgen -s 35) 364 | 365 | # Stores mysql server root password in /root/.my.cnf 366 | write " 367 | [client] 368 | password=$MYSQL_ROOT_PASSWORD 369 | database=alternc" /root/.my.cnf 370 | 371 | ALTERNC_MYSQL_PASSWORD=$MYSQL_ROOT_PASSWORD 372 | 373 | ### Debconf parameters 374 | 375 | 376 | # alternC 377 | debconf alternc/acluninstalled string "$ALTERNC_ACLUNINSTALLED" 378 | debconf alternc/quotauninstalled string "$ALTERNC_QUOTAUNINSTALLED" 379 | debconf alternc/desktopname string "$ALTERNC_DESKTOPNAME" 380 | debconf alternc/hostingname string "$ALTERNC_HOSTINGNAME" 381 | debconf alternc/ns1 string "$ALTERNC_NS1" 382 | debconf alternc/ns2 string "$ALTERNC_NS2" 383 | debconf alternc/alternc_html string "$ALTERNC_ALTERNC_HTML" 384 | debconf alternc/alternc_mail string "$ALTERNC_ALTERNC_MAIL" 385 | debconf alternc/alternc_logs string "$ALTERNC_ALTERNC_LOGS" 386 | debconf alternc/mysql/host string "$ALTERNC_MYSQL_HOST" 387 | debconf alternc/mysql/db string "$ALTERNC_MYSQL_DB" 388 | debconf alternc/mysql/user string "$ALTERNC_MYSQL_USER" 389 | debconf alternc/mysql/remote_user string "$ALTERNC_MYSQL_REMOTE_USER" 390 | debconf alternc/mysql/password string "$MYSQL_ROOT_PASSWORD" 391 | debconf alternc/mysql/remote_password string "$ALTERNC_MYSQL_REMOTE_PASSWORD" 392 | debconf alternc/mysql/alternc_mail_user string "$ALTERNC_MYSQL_ALTERNC_MAIL_USER" 393 | debconf alternc/mysql/alternc_mail_password string "$ALTERNC_MYSQL_ALTERNC_MAIL_PASSWORD" 394 | debconf alternc/mysql/client string "$ALTERNC_MYSQL_CLIENT" 395 | debconf alternc/sql/backup_type string "$ALTERNC_SQL_BACKUP_TYPE" 396 | debconf alternc/sql/backup_overwrite string "$ALTERNC_SQL_BACKUP_OVERWRITE" 397 | debconf alternc/public_ip string "$ALTERNC_PUBLIC_IP" 398 | debconf alternc/internal_ip string "$ALTERNC_INTERNAL_IP" 399 | debconf alternc/default_mx string "$ALTERNC_DEFAULT_MX" 400 | debconf alternc/default_mx2 string "$ALTERNC_DEFAULT_MX2" 401 | debconf alternc/alternc_location string "$ALTERNC_ALTERNC_LOCATION" 402 | debconf alternc/monitor_ip string "$ALTERNC_MONITOR_IP" 403 | debconf alternc/postrm_remove_databases string "$ALTERNC_POSTRM_REMOVE_DATABASES" 404 | debconf alternc/postrm_remove_datafiles string "$ALTERNC_POSTRM_REMOVE_DATAFILES" 405 | debconf alternc/postrm_remove_bind string "$ALTERNC_POSTRM_REMOVE_BIND" 406 | debconf alternc/postrm_remove_mailboxes string "$ALTERNC_POSTRM_REMOVE_MAILBOXES" 407 | debconf alternc/slaves string "$ALTERNC_SLAVES" 408 | debconf alternc/use_local_mysql string "$ALTERNC_USE_LOCAL_MYSQL" 409 | debconf alternc/use_remote_mysql string "$ALTERNC_USE_REMOTE_MYSQL" 410 | debconf alternc/retry_remote_mysql string "$ALTERNC_RETRY_REMOTE_MYSQL" 411 | debconf alternc/use_private_ip string "$ALTERNC_USE_PRIVATE_IP" 412 | debconf alternc/remote_mysql_error string "$ALTERNC_REMOTE_MYSQL_ERROR" 413 | 414 | # mailman 415 | debconf alternc-mailman/patch-mailman string "$ALTERNC_MAILMAN_PATCH_MAILMAN" alternC-mailman 416 | debconf mailman/site_languages string "$ALTERNC_MAILMAN_SITE_LANGUAGES" mailman 417 | debconf mailman/used_languages string "$ALTERNC_MAILMAN_USED_LANGUAGES" mailman 418 | debconf mailman/default_server_language string "$ALTERNC_MAILMAN_DEFAULT_SERVER_LANGUAGE" mailman 419 | debconf mailman/create_site_list string "$ALTERNC_MAILMAN_CREATE_SITE_LIST" mailman 420 | 421 | # phpmyadmin 422 | debconf phpmyadmin/reconfigure-webserver string $ALTERNC_PHPMYADMIN_WEBSERVER phpmyadmin 423 | debconf phpmyadmin/dbconfig-install string "$ALTERNC_PHPMYADMIN_DBCONFIG" phpmyadmin 424 | debconf phpmyadmin/mysql/admin-user string "$ALTERNC_PHPMYADMIN_ADMINUSER" phpmyadmin 425 | debconf phpmyadmin/mysql/admin-pass string "$MYSQL_ROOT_PASSWORD" phpmyadmin 426 | debconf phpmyadmin/setup-username string "$ALTERNC_PHPMYADMIN_USERNAME" phpmyadmin 427 | debconf phpmyadmin/setup-password string "$ALTERNC_PHPMYADMIN_USERPASSWORD" phpmyadmin 428 | debconf phpmyadmin/password-confirm string "$ALTERNC_PHPMYADMIN_USERPASSWORD" phpmyadmin 429 | 430 | # postfix 431 | debconf postfix/mailname string $ALTERNC_POSTFIX_MAILNAME postfix 432 | debconf postfix/main_mailer_type string $ALTERNC_POSTFIX_MAILERTYPE postfix 433 | 434 | # proftpd 435 | debconf shared/proftpd/inetd_or_standalone string $ALTERNC_PROFTPD_STANDALONE proftpd-basic 436 | 437 | # mysql 438 | debconf mysql-server/root_password string "$MYSQL_ROOT_PASSWORD" mysql-server-5.5 439 | debconf mysql-server/root_password_again string "$MYSQL_ROOT_PASSWORD" mysql-server-5.5 440 | 441 | ## dbconfig-commmon 442 | 443 | # We deploy a phpmyadmin conf file 444 | 445 | copy "templates/phpmyadmin.conf" "/etc/dbconfig-common/phpmyadmin.conf" 446 | replace "%ALTERNC_PHPMYADMIN_USERPASSWORD%" "$ALTERNC_PHPMYADMIN_USERPASSWORD" "/etc/dbconfig-common/phpmyadmin.conf" 447 | 448 | 449 | ### Install AlternC prerequisites 450 | 451 | 452 | ## FS 453 | 454 | # Installs acl quota 455 | apt_get acl quota 456 | 457 | # Backups fstab 458 | misc "Editing and backuping your /etc/fstab file" 459 | backup_file /etc/fstab 460 | 461 | # Edits fstab 462 | fstab_quota_and_acl 463 | 464 | # Remounts "/" partition 465 | mount -o remount / 466 | 467 | # Checks if success 468 | 469 | # @todo 470 | 471 | ## postfix 472 | 473 | # Installs postfix 474 | 475 | apt_get postfix postfix-mysql 476 | 477 | 478 | ## Mysql 479 | 480 | 481 | # Installs mysql 482 | apt_get mysql-server mysql-client 483 | 484 | 485 | ## apt sources, allows nightly 486 | ALTERNC_SOURCE_LIST_FILE="/etc/apt/sources.list.d/alternc.list" 487 | # If nightly 488 | if [ "$NIGHTLY" == "1" ]; then 489 | ALTERNC_SOURCE_TEMPLATE="templates/$DEBIAN_RELEASE/alternc-easy-install-nightly.list" 490 | ALTERNC_SOURCE_KEY_FILE="templates/$DEBIAN_RELEASE/nightly.key" 491 | else 492 | ALTERNC_SOURCE_TEMPLATE="templates/$DEBIAN_RELEASE/alternc-easy-install.list" 493 | ALTERNC_SOURCE_KEY_FILE="templates/$DEBIAN_RELEASE/alternc.key" 494 | fi 495 | 496 | # Sets backport source file 497 | BACKPORTS_SOURCE_LIST_FILE="/etc/apt/sources.list.d/backports-easy-install.list" 498 | BACKPORTS_SOURCE_TEMPLATE="templates/$DEBIAN_RELEASE/backports-easy-install.list" 499 | 500 | # Delete source files if exist 501 | delete "$ALTERNC_SOURCE_LIST_FILE" 502 | delete "$BACKPORTS_SOURCE_LIST_FILE" 503 | 504 | # Creates new debian sources file 505 | copy $ALTERNC_SOURCE_TEMPLATE "$ALTERNC_SOURCE_LIST_FILE" 506 | 507 | # Creates new backports sources file if required 508 | if [[ "$SOURCES_USE_BACKPORTS" = 1 ]] ; then 509 | copy "$BACKPORTS_SOURCE_TEMPLATE" $BACKPORTS_SOURCE_LIST_FILE 510 | fi; 511 | 512 | # Downloads key 513 | wget $(cat "$ALTERNC_SOURCE_KEY_FILE") -O - | apt-key add - 514 | 515 | # Updates 516 | apt-get update 517 | 518 | # Checks list success 519 | if [[ -z $(apt-cache search alternc) ]] ; then 520 | alert "Something went wrong, could not find the AlternC package in the sources"; 521 | fi; 522 | 523 | 524 | ### AlternC install 525 | 526 | # Starts the AlternC install 527 | apt_get alternc 528 | 529 | # Adds additional packages if required 530 | if [[ $ADDITIONAL_PACKAGES != "" ]] ; then 531 | apt_get -t ${DEBIAN_RELEASE}-backports $ADDITIONAL_PACKAGES 532 | fi; 533 | 534 | ### Post install 535 | 536 | # Run the alternc.install script 537 | info "Running the alternc.install script" 538 | if [[ ! -f /usr/share/alternc/install/alternc.install ]] ; then 539 | alert "Something went wrong with your installation : alternc.install script not found." 540 | else 541 | alternc.install 542 | fi 543 | 544 | ## mysql 545 | 546 | 547 | # Inform the user 548 | info "An important password has just been generated. 549 | 550 | It is the mysql root (or master) password. 551 | 552 | This password has been stored in the root directory : /root/.my.cnf 553 | 554 | For your information this password is : " 555 | 556 | warn " $MYSQL_ROOT_PASSWORD" 557 | 558 | ## Service checks 559 | 560 | # Checks if success : Apache2 running 561 | check_service apache2 562 | 563 | # Checks if success : Status 200 on panel home + title 564 | 565 | # Checks if success : Postfix service running 566 | check_service master 567 | 568 | # Checks if success : mysql service running 569 | check_service mysqld 570 | 571 | # Checks if success : xxx running 572 | 573 | ## @todo 574 | 575 | # Updates admin password 576 | RND="`echo -n $RANDOM $RANDOM $RANDOM`" 577 | /usr/bin/mysql alternc -e "UPDATE membres SET pass=ENCRYPT('$MYSQL_ROOT_PASSWORD',CONCAT('\$1\$',MD5('$RND'))) WHERE uid='2000'" 578 | if [ $? -eq 0 ] ; then 579 | ALTERNC_ADMIN_PASSWORD=$MYSQL_ROOT_PASSWORD 580 | else 581 | ALTERNC_ADMIN_PASSWORD="admin" 582 | warn "Caution! Failed to update the default password, change it on first login for security reasons!" 583 | fi 584 | 585 | # Prints passwords 586 | 587 | spacer 588 | 589 | info "You can now visit your AlternC on http://%s" $ALTERNC_DESKTOPNAME 590 | 591 | warn "You should authentificate with login: admin/%s" $ALTERNC_ADMIN_PASSWORD 592 | 593 | # Proposes to send passwords by email 594 | 595 | ## @todo 596 | 597 | 598 | -------------------------------------------------------------------------------- /lib_installer.sh: -------------------------------------------------------------------------------- 1 | # Colors 2 | COL_GRAY="\x1b[30;01m" 3 | COL_RED="\x1b[31;01m" 4 | COL_GREEN="\x1b[32;01m" 5 | COL_YELLOW="\x1b[33;01m" 6 | COL_BLUE="\x1b[34;01m" 7 | COL_PURPLE="\x1b[35;01m" 8 | COL_CYAN="\x1b[36;01m" 9 | COL_WHITE="\x1b[37;01m" 10 | COL_RESET="\x1b[39;49;00m" 11 | 12 | E_CDERROR=65 13 | 14 | #AlternC variables 15 | ALTERNC_ACLUNINSTALLED="" 16 | ALTERNC_ALTERNC_HTML=/var/www/alternc 17 | ALTERNC_ALTERNC_LOCATION=/var/alternc 18 | ALTERNC_ALTERNC_LOGS=/var/log/alternc/sites/ 19 | ALTERNC_ALTERNC_MAIL=/var/mail/alternc 20 | ALTERNC_DEFAULT_MX2="" 21 | ALTERNC_DEFAULT_MX="" 22 | ALTERNC_DESKTOPNAME="" 23 | ALTERNC_HOSTINGNAME=AlternC 24 | ALTERNC_INTERNAL_IP="" 25 | ALTERNC_MONITOR_IP="127.0.0.1" 26 | ALTERNC_MYSQL_ALTERNC_MAIL_PASSWORD="" 27 | ALTERNC_MYSQL_ALTERNC_MAIL_USER="" 28 | ALTERNC_MYSQL_CLIENT=localhost 29 | ALTERNC_MYSQL_DB=alternc 30 | ALTERNC_MYSQL_HOST="127.0.0.1" 31 | ALTERNC_MYSQL_PASSWORD="" # Set during install 32 | ALTERNC_MYSQL_REMOTE_PASSWORD="" 33 | ALTERNC_MYSQL_REMOTE_USER="" 34 | ALTERNC_MYSQL_USER=root 35 | ALTERNC_NS1="" 36 | ALTERNC_NS2="" 37 | ALTERNC_POP_BEFORE_SMTP_WARNING="" 38 | ALTERNC_POSTRM_REMOVE_BIND="" 39 | ALTERNC_POSTRM_REMOVE_DATABASES="" 40 | ALTERNC_POSTRM_REMOVE_DATAFILES="" 41 | ALTERNC_POSTRM_REMOVE_MAILBOXES="" 42 | ALTERNC_PUBLIC_IP="" 43 | ALTERNC_QUOTAUNINSTALLED=false 44 | ALTERNC_REMOTE_MYSQL_ERROR="" 45 | ALTERNC_SLAVES="" 46 | ALTERNC_SQL_BACKUP_OVERWRITE=no 47 | ALTERNC_SQL_BACKUP_TYPE=rotate 48 | ALTERNC_USE_LOCAL_MYSQL=true 49 | ALTERNC_USE_PRIVATE_IP="" 50 | ALTERNC_USE_REMOTE_MYSQL="" 51 | ALTERNC_WELCOMECONFIRM=true 52 | 53 | 54 | 55 | # Some variables defined per design for the user 56 | ALTERNC_MAILMAN_SITE_LANGUAGES="fr, en" 57 | ALTERNC_MAILMAN_DEFAULT_SERVER_LANGUAGE="fr" 58 | ALTERNC_MAILMAN_USED_LANGUAGES="fr en" 59 | ALTERNC_MAILMAN_CREATE_SITE_LIST="" 60 | ALTERNC_MAILMAN_PATCH_MAILMAN="true" 61 | ALTERNC_PHPMYADMIN_ADMINUSER="root" 62 | ALTERNC_PHPMYADMIN_DBCONFIG="false" 63 | ALTERNC_PHPMYADMIN_USERNAME="admin" 64 | ALTERNC_PHPMYADMIN_USERPASSWORD="" # Set during install 65 | ALTERNC_PHPMYADMIN_WEBSERVER="apache2" 66 | ALTERNC_POSTFIX_MAILERTYPE="Internet Site" 67 | ALTERNC_PROFTPD_STANDALONE="standalone" 68 | 69 | 70 | ADDITIONAL_PACKAGES="" 71 | VAR_SKIP=0 72 | VAR_TEST_IP=91.194.60.1 73 | VAR_HAS_NET=0 74 | 75 | 76 | # Output & Translations utilities 77 | # @see http://mywiki.wooledge.org/BashFAQ/098 78 | # @see http://www.linuxtopia.org/online_books/advanced_bash_scripting_guide/localization.html 79 | export TEXTDOMAIN=alternc-easy-install 80 | export TEXTDOMAINDIR=$(pwd)/translations 81 | 82 | debug() { 83 | 84 | echo -e $COL_PURPLE; 85 | local format="$1" 86 | shift 87 | printf "$(gettext -d $TEXTDOMAIN -s "$format")" "$@" # >&1 88 | echo -e $COL_RESET; 89 | } 90 | 91 | misc() { 92 | 93 | echo -e $COL_GRAY; 94 | local format="$1" 95 | shift 96 | printf "$(gettext -d $TEXTDOMAIN -s "$format")" "$@" # >&1 97 | echo -e $COL_RESET; 98 | 99 | } 100 | ask() { 101 | echo -e $COL_WHITE; 102 | local format="$1" 103 | shift 104 | printf "$(gettext -d $TEXTDOMAIN -s "$format")" "$@" # >&1 105 | echo -e $COL_RESET; 106 | 107 | } 108 | 109 | info() { 110 | 111 | echo -e $COL_GREEN; 112 | local format="$1" 113 | shift 114 | printf "$(gettext -d $TEXTDOMAIN -s "$format")" "$@" 115 | echo -e $COL_RESET; 116 | 117 | } 118 | 119 | warn() { 120 | 121 | echo -e $COL_RED; 122 | local format="$1" 123 | shift 124 | printf "$(gettext -d $TEXTDOMAIN -s "$format")" "$@" 125 | echo -e $COL_RESET; 126 | 127 | } 128 | 129 | alert() { 130 | 131 | echo -e $COL_RED; 132 | local format="$1" 133 | shift 134 | printf "\n" 135 | printf "$(gettext 'A critical error occured: ' )" 136 | printf "$(gettext -d $TEXTDOMAIN -s "$format")" "$@" 137 | printf "\n" 138 | printf "$(gettext 'Exiting.' )" 139 | printf "\n" 140 | echo -e $COL_RESET; 141 | exit $E_CDERROR 142 | 143 | } 144 | 145 | 146 | spacer() { 147 | 148 | echo -e $COL_GRAY; 149 | echo -e " - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -" 150 | echo -e $COL_RESET; 151 | 152 | } 153 | 154 | ### Various utilities 155 | 156 | ## Exit 157 | try_exit() { 158 | if [[ "$SILENT" == 1 ]] ; 159 | then return 1 160 | fi; 161 | 162 | if [ -z $1 ] ; then 163 | ask "Do you want to continue the installation? (Y/n)" 164 | else 165 | ask $1; 166 | fi; 167 | read VAR_SKIP; 168 | if [[ "n" == ${VAR_SKIP,,} ]] ; 169 | then warn "Exiting"; 170 | exit 1; 171 | fi; 172 | } 173 | 174 | ## wraps apt-get 175 | apt_get() { 176 | package_list="$@" 177 | local cmd="apt-get install -y $package_list" 178 | if [[ $DRY_RUN = 1 ]] ; then 179 | debug "System should execute %s $package_list" 180 | else 181 | if [[ $DEBUG = 1 ]] ; then 182 | debug "$cmd" 183 | fi; 184 | $cmd || alert "Failed to following package(s): [ $package_list ]" 185 | fi; 186 | } 187 | 188 | 189 | # Testing utilities 190 | 191 | test_ns() { 192 | local NS=$1 193 | if [[ -z "$NS" ]] ; then 194 | warn "missing domain name" 195 | return 1 196 | fi; 197 | local cmd="$(dig +short A $NS)" 198 | if [[ $cmd = "" ]] ; then 199 | alert "%s is not a valid domain name" "$NS" 200 | else 201 | info "%s is a valid domain name" "$NS" 202 | fi; 203 | } 204 | 205 | test_local_ip() { 206 | local IP="$1" 207 | local VALID=0 208 | for ip in $(ip addr show | grep inet | cut -d' ' -f6 | cut -d/ -f1|tr '\n' ' ' ) ; do 209 | if [[ "$IP" = "$ip" ]]; then 210 | VALID=1 211 | fi; 212 | done; 213 | if [ $VALID = 0 ] ; then 214 | alert "%s doesn't seem to be a valid local ip" "$IP" 215 | fi; 216 | } 217 | 218 | 219 | # Sets a debconf variable 220 | # @param 1 var 221 | # @param 2 type 222 | # @param 3 value 223 | # @param 4 database default=alternc 224 | debconf() { 225 | local database; 226 | if [ -z $4 ] ; then 227 | database="alternc" 228 | else 229 | database="$4" 230 | fi; 231 | if [[ $DRY_RUN == 1 ]] ; then 232 | debug "System sets debconf $database %s %s %s" "$1" "$2" "$3" 233 | else 234 | if [[ $DEBUG == 1 ]] ; then 235 | debug "[OK] debconf $database %s %s %s" "$1" "$2" "$3" 236 | fi; 237 | # sets the selection 238 | echo "$database $1 $2 $3" | debconf-set-selections 239 | # marks the selection as read 240 | echo "$database $1 seen true" | debconf-set-selections 241 | fi; 242 | } 243 | 244 | 245 | # gateway for all 'y,o' user inputs management 246 | validate() { 247 | local VAR=$1 248 | if [[ "n" == ${VAR,,} ]] ; then 249 | echo 0; 250 | return 0; 251 | fi; 252 | echo 1; 253 | return 1; 254 | } 255 | 256 | # @todo : request a subdomain 257 | alternc_net_get_domain(){ 258 | echo "todo" 259 | } 260 | 261 | # Encapsulates cp 262 | # @param 1 source file 263 | # @param 2 target file 264 | copy(){ 265 | if [[ $DRY_RUN = 1 ]] ; then 266 | debug "System copies %s as %s" "$1" "$2" 267 | else 268 | if [[ $DEBUG = 1 ]] ; then 269 | debug "cp %s %s" "$1" "$2" 270 | fi; 271 | ensure_file_exists "$1" 272 | ensure_file_path_exists "$2" 273 | cp "$1" "$2" 274 | fi; 275 | } 276 | 277 | # Makes sure a necessary file exists, or exits 278 | # @param 1 a file path 279 | ensure_file_exists(){ 280 | if [[ $DRY_RUN = 1 ]] ; then 281 | debug "System makes sure file %s exists" "$1" 282 | else 283 | if [[ $DEBUG = 1 ]] ; then 284 | debug "Checking file %s exists" "$1" 285 | fi; 286 | if [[ ! -f "$1" ]] ; then 287 | alert "File %s does not exist" "$1" 288 | fi; 289 | fi; 290 | } 291 | 292 | # Creates folders path for file if necessary 293 | # @param 1 a file path 294 | ensure_file_path_exists(){ 295 | if [[ $DRY_RUN = 1 ]] ; then 296 | debug "System makes sure path for %s exists" "$1" 297 | else 298 | local dir_path=$(echo "$1" | sed -e "s/\(.*\)\/.*/\1/") 299 | if [[ -d "$dir_path" ]] ; then 300 | return 1 301 | fi 302 | if [[ -f "$dir_path" ]] ; then 303 | warn "Failed to create %s as it is a file already" "$dir_path" 304 | return 0 305 | fi 306 | if [[ $DEBUG = 1 ]] ; then 307 | debug "Creating folder %s for file %s" "$dir_path" "$1" 308 | fi; 309 | mkdir -p "$dir_path" 310 | fi; 311 | } 312 | 313 | # Encapsulates rm 314 | # @param 1 file 315 | delete(){ 316 | if [[ $DRY_RUN = 1 ]] ; then 317 | debug "System deletes %s" "$1" 318 | return 1 319 | fi 320 | # If no file, exit 321 | if [ ! -f "$1" ] ; then 322 | return 1 323 | fi 324 | if [[ $DEBUG = 1 ]] ; then 325 | debug "Deleting %s" "$1" 326 | fi; 327 | rm -f $1 328 | return 1 329 | } 330 | 331 | # Encapsulates echo $1 > $2 332 | # @param 1 content 333 | # @param 2 file 334 | write() { 335 | 336 | if [[ $DRY_RUN == 1 ]] ; then 337 | debug "System writes '%s' \nin %s" "$1" "$2" 338 | else 339 | if [[ $DEBUG == 1 ]] ; then 340 | debug "Writing '%s' \nin %s" "$1" "$2" 341 | fi; 342 | # backups file if exists 343 | backup_file "$2" 344 | # touch file 345 | rm -f "$2" 346 | touch "$2" 347 | # echo each text line 348 | # in a subshell to not mess IFS 349 | $(IFS=" 350 | ";for line in $(echo "$1"); do echo $line >> $2; done;) 351 | fi; 352 | 353 | } 354 | 355 | # inserts a line in file at line number 356 | # @param 1 file path 357 | # @param 2 line # 358 | # @param 3 line 359 | insert(){ 360 | if [[ $DRY_RUN == 1 ]] ; then 361 | debug "Systems inserts '%s' in %s at line #%s" "$3" "$1" "$2" 362 | return 1 363 | fi; 364 | sed -i "$2 i\ 365 | $3" $1 366 | return 1 367 | 368 | } 369 | 370 | # replaces string $1 in by $2 in $3 371 | # @param 1 regexp 372 | # @param 2 replacement 373 | # @param 3 file path 374 | replace(){ 375 | if [[ $DRY_RUN == 1 ]] ; then 376 | debug "Systems replaces '%s' by %s in %s" "$1" "$2" "$3" 377 | return 1 378 | fi; 379 | if [[ $DEBUG == 1 ]] ; then 380 | debug "Replacing '%s' by %s in %s" "$1" "$2" "$3" 381 | fi; 382 | sed -i -e "s/$1/$2/" "$3" 383 | return 1 384 | 385 | } 386 | 387 | # backups file if exists 388 | # @param 1 file path 389 | backup_file(){ 390 | if [[ $DRY_RUN == 1 ]] ; then 391 | debug "Systems makes a backup of %s" "$1" 392 | return 1 393 | fi; 394 | if [ -f "$1" ] ; then 395 | local backed=0 396 | local num=1 397 | while [[ $backed != 1 ]] ; do 398 | if [ -f "$1.$num" ] ; then 399 | num=$(( $num + 1 )) 400 | else 401 | cp "$1" "$1.$num" 402 | touch "$1" 403 | backed=1 404 | fi; 405 | done; 406 | if [[ $DEBUG == 1 ]] ; then 407 | debug "File %s backed as %s.$num" "$1" "$1" 408 | fi; 409 | return 1 410 | fi; 411 | return 0 412 | } 413 | 414 | # Attempts to check if a service is currently running 415 | # @param 1 the service name ex: mysqld 416 | # This must be an /etc/init.d script name 417 | check_service() { 418 | if [ -z $1 ] ; then 419 | alert "Missing service name %s" "$1" 420 | fi; 421 | local service=$1 422 | if [ $(pgrep $1 | wc -l) -eq 0 ] ; then 423 | warn "Service $service is not running" 424 | else 425 | info "Service $service is running OK" 426 | fi; 427 | } 428 | 429 | 430 | # Edits the fstab file to add quota and acl tags to partition mounting 431 | # @param 1 (optional) file name, default = /etc/fstab 432 | fstab_quota_and_acl(){ 433 | 434 | if [[ $DRY_RUN == 1 ]] ; then 435 | debug "System edits the fstab to activate acl and quota " 436 | fi; 437 | local line_num=1; 438 | # Stores the old Internal Field Separator 439 | OLD_IFS=$IFS 440 | # Sets the IFS to new line 441 | IFS=" 442 | " 443 | # Sets the edited file (allows testing) 444 | local file="" 445 | # Default file 446 | if [ -z "$1" ] ; then 447 | file="/etc/fstab" 448 | # Custom file 449 | else 450 | file="$1" 451 | if [ ! -f "$1" ] ; then 452 | warn "%s is not a valid file" "$1" 453 | fi 454 | fi; 455 | # Runs through each line of the fstab file 456 | for line in $(cat "$file"); do 457 | # Identifies mount point if not a comment 458 | mount_point=$( echo "$line"|grep -v "^#"|awk '{print $2}'); 459 | # Edits the identified line for / system 460 | if [[ "$mount_point" == "/" ]] ; then 461 | # The / line with a comment 462 | commented_line="# $line" 463 | # The / line with acl and quota 464 | edited_line=$(echo $line|awk '{print $1"\t"$2"\t"$3"\tacl,quota,"$4"\t"$5"\t"$6}') 465 | # The n+1 line number 466 | new_line_num=$((line_num + 1)) 467 | # Actual sed operation 468 | sed -i -e "${line_num}d" -e "${new_line_num}i\ 469 | # The next line was commented to add quota and acl on the root file system" -e "${new_line_num}i\ 470 | $commented_line" -e "${new_line_num}i\ 471 | $edited_line" $file 472 | fi; 473 | # Not found, keep searching 474 | line_num=$(( $line_num + 1 )); 475 | done 476 | # Resets the IFS 477 | IFS=$OLD_IFS 478 | } 479 | 480 | -------------------------------------------------------------------------------- /templates/jessie/alternc-easy-install-nightly.list: -------------------------------------------------------------------------------- 1 | deb http://stable-3-3.nightly.alternc.org/ latest/ 2 | -------------------------------------------------------------------------------- /templates/jessie/alternc-easy-install.list: -------------------------------------------------------------------------------- 1 | deb http://debian.alternc.org/ jessie main 2 | deb-src http://debian.alternc.org/ jessie main 3 | -------------------------------------------------------------------------------- /templates/jessie/backports-easy-install.list: -------------------------------------------------------------------------------- 1 | deb http://ftp.debian.org/debian jessie-backports main 2 | -------------------------------------------------------------------------------- /templates/jessie/nightly.key: -------------------------------------------------------------------------------- 1 | http://stable-3-3.nightly.alternc.org/key.txt 2 | -------------------------------------------------------------------------------- /templates/phpmyadmin.conf: -------------------------------------------------------------------------------- 1 | # automatically generated by the maintainer scripts of phpmyadmin 2 | # any changes you make will be preserved, though your comments 3 | # will be lost! to change your settings you should edit this 4 | # file and then run "dpkg-reconfigure phpmyadmin" 5 | 6 | # dbc_install: configure database with dbconfig-common? 7 | # set to anything but "true" to opt out of assistance 8 | dbc_install='true' 9 | 10 | # dbc_upgrade: upgrade database with dbconfig-common? 11 | # set to anything but "true" to opt out of assistance 12 | dbc_upgrade='true' 13 | 14 | # dbc_remove: deconfigure database with dbconfig-common? 15 | # set to anything but "true" to opt out of assistance 16 | dbc_remove='' 17 | 18 | # dbc_dbtype: type of underlying database to use 19 | # this exists primarily to let dbconfig-common know what database 20 | # type to use when a package supports multiple database types. 21 | # don't change this value unless you know for certain that this 22 | # package supports multiple database types 23 | dbc_dbtype='mysql' 24 | 25 | # dbc_dbuser: database user 26 | # the name of the user who we will use to connect to the database. 27 | dbc_dbuser='phpmyadmin' 28 | 29 | # dbc_dbpass: database user password 30 | # the password to use with the above username when connecting 31 | # to a database, if one is required 32 | dbc_dbpass='%ALTERNC_PHPMYADMIN_USERPASSWORD%' 33 | 34 | # dbc_dbserver: database host. 35 | # leave unset to use localhost (or a more efficient local method 36 | # if it exists). 37 | dbc_dbserver='' 38 | 39 | # dbc_dbport: remote database port 40 | # leave unset to use the default. only applicable if you are 41 | # using a remote database. 42 | dbc_dbport='' 43 | 44 | # dbc_dbname: name of database 45 | # this is the name of your application's database. 46 | dbc_dbname='phpmyadmin' 47 | 48 | # dbc_dbadmin: name of the administrative user 49 | # this is the administrative user that is used to create all of the above 50 | dbc_dbadmin='root' 51 | 52 | # dbc_basepath: base directory to hold database files 53 | # leave unset to use the default. only applicable if you are 54 | # using a local (filesystem based) database. 55 | dbc_basepath='' 56 | 57 | ## 58 | ## postgresql specific settings. if you don't use postgresql, 59 | ## you can safely ignore all of these 60 | ## 61 | 62 | # dbc_ssl: should we require ssl? 63 | # set to "true" to require that connections use ssl 64 | dbc_ssl='' 65 | 66 | # dbc_authmethod_admin: authentication method for admin 67 | # dbc_authmethod_user: authentication method for dbuser 68 | # see the section titled "AUTHENTICATION METHODS" in 69 | # /usr/share/doc/dbconfig-common/README.pgsql for more info 70 | dbc_authmethod_admin='' 71 | dbc_authmethod_user='' 72 | 73 | ## 74 | ## end postgresql specific settings 75 | ## 76 | 77 | -------------------------------------------------------------------------------- /templates/stretch/alternc-easy-install-nightly.list: -------------------------------------------------------------------------------- 1 | deb http://stable-3-5.nightly.alternc.org/ latest/ 2 | -------------------------------------------------------------------------------- /templates/stretch/alternc-easy-install.list: -------------------------------------------------------------------------------- 1 | deb http://debian.alternc.org/ stretch main 2 | deb-src http://debian.alternc.org/ stretch main 3 | -------------------------------------------------------------------------------- /templates/stretch/alternc.key: -------------------------------------------------------------------------------- 1 | http://debian.alternc.org/key.txt 2 | -------------------------------------------------------------------------------- /templates/stretch/backports-easy-install.list: -------------------------------------------------------------------------------- 1 | deb http://ftp.debian.org/debian stretch-backports main 2 | -------------------------------------------------------------------------------- /templates/stretch/nightly.key: -------------------------------------------------------------------------------- 1 | http://stable-3-5.nightly.alternc.org/key.txt 2 | -------------------------------------------------------------------------------- /templates/wheezy/alternc-easy-install-nightly.list: -------------------------------------------------------------------------------- 1 | deb http://master.nightly.alternc.org/ latest/ 2 | -------------------------------------------------------------------------------- /templates/wheezy/alternc-easy-install.list: -------------------------------------------------------------------------------- 1 | deb http://debian.alternc.org/ wheezy main 2 | deb-src http://debian.alternc.org/ wheezy main 3 | -------------------------------------------------------------------------------- /templates/wheezy/alternc.key: -------------------------------------------------------------------------------- 1 | http://debian.alternc.org/key.txt 2 | -------------------------------------------------------------------------------- /templates/wheezy/backports-easy-install.list: -------------------------------------------------------------------------------- 1 | deb http://http.debian.net/debian wheezy-backports main 2 | -------------------------------------------------------------------------------- /templates/wheezy/nightly.key: -------------------------------------------------------------------------------- 1 | http://master.nightly.alternc.org/nightly.key 2 | -------------------------------------------------------------------------------- /translations/Makefile: -------------------------------------------------------------------------------- 1 | # regenerates the files for translations 2 | 3 | all: locales 4 | 5 | locales: ./en/LC_MESSAGES/alternc-easy-install.mo ./fr/LC_MESSAGES/alternc-easy-install.mo 6 | 7 | ./en/LC_MESSAGES/alternc-easy-install.mo: ./en/LC_MESSAGES/alternc-easy-install.po 8 | [ -r $@ ] || touch $@ 9 | msgfmt ./en/LC_MESSAGES/alternc-easy-install.po -o ./en/LC_MESSAGES/alternc-easy-install.mo 10 | 11 | ./fr/LC_MESSAGES/alternc-easy-install.mo: ./fr/LC_MESSAGES/alternc-easy-install.po 12 | [ -r $@ ] || touch $@ 13 | msgfmt ./fr/LC_MESSAGES/alternc-easy-install.po -o ./fr/LC_MESSAGES/alternc-easy-install.mo 14 | 15 | ./%/LC_MESSAGES/alternc-easy-install.po: ./alternc-easy-install.pot 16 | [ -r $@ ] || touch $@ 17 | msgmerge -s -v -U $@ $^ 18 | 19 | ./alternc-easy-install.pot: ../install.sh ../lib_installer.sh 20 | rm -f $@ 21 | touch $@ 22 | xgettext --from-code=UTF-8 --force-po -j -L Shell -kmisc -k_ -kdebug -ktranslate -kwarn -kinfo -kask -kalert $^ -o $@ 23 | 24 | 25 | -------------------------------------------------------------------------------- /translations/en/LC_MESSAGES/alternc-easy-install.mo: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/AlternC/easy-install/25fd51e10c374bbf1384f8b1e1d2afc1cd0cfc53/translations/en/LC_MESSAGES/alternc-easy-install.mo -------------------------------------------------------------------------------- /translations/en/LC_MESSAGES/alternc-easy-install.po: -------------------------------------------------------------------------------- 1 | #: ../install.sh:299 2 | msgid "" 3 | "\n" 4 | "===== Optional installation: roundcube webmail =====\n" 5 | "\n" 6 | "Roundcube is the webmail software proposed by AlternC.\n" 7 | "\n" 8 | "We recommand adding it to your installation.\n" 9 | msgstr "" 10 | 11 | #: ../install.sh:330 12 | msgid "" 13 | "\n" 14 | "===== Optional installation: mailman mailing list manager =====\n" 15 | "\n" 16 | "Mailman is the mailing list software proposed by AlternC.\n" 17 | msgstr "" 18 | 19 | #: ../install.sh:200 20 | msgid " Please provide your AlternC domain name" 21 | msgstr "" 22 | 23 | #: ../install.sh:265 24 | msgid " Please provide your primary NS server" 25 | msgstr "" 26 | 27 | #: ../install.sh:274 28 | msgid " Please provide your secondary NS server" 29 | msgstr "" 30 | 31 | #: ../lib_installer.sh:218 32 | msgid "%s doesn't seem to be a valid local ip" 33 | msgstr "%s doesn't seem to be a valid IP address" 34 | 35 | #: ../lib_installer.sh:205 36 | msgid "%s is a valid domain name" 37 | msgstr "" 38 | 39 | #: ../lib_installer.sh:203 40 | msgid "%s is not a valid domain name" 41 | msgstr "" 42 | 43 | #: ../lib_installer.sh:454 44 | msgid "%s is not a valid file" 45 | msgstr "" 46 | 47 | #: ../lib_installer.sh:87 ../lib_installer.sh:96 ../lib_installer.sh:104 48 | #: ../lib_installer.sh:114 ../lib_installer.sh:124 ../lib_installer.sh:136 49 | msgid "-d" 50 | msgstr "" 51 | 52 | #: ../install.sh:28 53 | msgid "" 54 | "===== Licence =====\n" 55 | "\n" 56 | "This script is licenced under the Gnu Public Licence v3.\n" 57 | "You should have received a copy of the Licence, otherwise it is available\n" 58 | "on https://www.gnu.org/copyleft/gpl.html. \n" 59 | "This script is provided without warranty of any kind, either expressed \n" 60 | "or implied. In no event shall our juridical person be liable for any \n" 61 | "damages incsluding, but not limited to, direct, indirect, special, \n" 62 | "incidental or consequential damages or other losses arising out of the \n" 63 | "use of or inability to use our products.\n" 64 | "... yada yada yada ..." 65 | msgstr "" 66 | " ---------------------------------------------------------------------- " 67 | "AlternC - Web Hosting System Copyright (C) 2000-2014 by the AlternC " 68 | "Development Team. https://alternc.org/ " 69 | "---------------------------------------------------------------------- " 70 | "LICENSE This program is free software; you can redistribute it and/or " 71 | "modify it under the terms of the GNU General Public License (GPL) as " 72 | "published by the Free Software Foundation; either version 2 of the License, " 73 | "or (at your option) any later version. This program is distributed in the " 74 | "hope that it will be useful, but WITHOUT ANY WARRANTY; without even the " 75 | "implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. " 76 | "See the GNU General Public License for more details. To read the license " 77 | "please visit http://www.gnu.org/copyleft/gpl.html " 78 | "----------------------------------------------------------------------" 79 | 80 | #: ../install.sh:42 81 | msgid "" 82 | "===== Warning =====\n" 83 | "\n" 84 | "This installation script helps to test or install AlternC for \n" 85 | "the first time and / or don't know so much about Linux, network etc.\n" 86 | "\n" 87 | "Using this script will provide a working installation, but if you need \n" 88 | "something more specific you might prefer a custom installation.\n" 89 | "\n" 90 | "To learn more about the choices made for this installer, please read \n" 91 | "http://www.alternc.org/simpleInstaller" 92 | msgstr "" 93 | 94 | #: ../install.sh:242 95 | msgid "" 96 | "===== Your AlternC needs DNS Servers =====\n" 97 | "\n" 98 | "Domain Name Servers announce addresses of the domain names on the web.\n" 99 | "\n" 100 | "If you don't have at least two name servers with minimal redundancy, we\n" 101 | "highly recommand you the free service we provide (see http://alternc.net )" 102 | msgstr "" 103 | 104 | #: ../install.sh:153 105 | msgid "" 106 | "===== Your AlternC needs a domain name =====\n" 107 | "\n" 108 | "This domain name will be used to access the panel and send/receive mail.\n" 109 | " \n" 110 | "You must use an original domain name dedicated for this purpose.\n" 111 | "In other words, do not use a domain name intended to be your company or \n" 112 | "personal website. \n" 113 | "For example, 'example.com' is not good, unless your company is the \n" 114 | "hosting service by itself. 'panel.example.com' will work better, \n" 115 | "allowing you to still have your website on 'www.example.com'\n" 116 | "\n" 117 | "If you are unsure, here are a few solutions: \n" 118 | "1. Create a subdomain dedicated to AlternC on a domain name you own\n" 119 | "2. Use the free AlternC.net domain name service \n" 120 | " \n" 121 | "We recommand using the AlternC.net subdomain name if you are new to this.\n" 122 | "You'll only need to request your subdomain on http://www.alternc.net and \n" 123 | "point it to the IP address you just provided.\n" 124 | "Your AlternC domain name might then look like 'example.alternc.net'" 125 | msgstr "" 126 | 127 | #: ../install.sh:123 128 | msgid "" 129 | "===== Your AlternC server needs a public IP Address =====\n" 130 | "\n" 131 | "This makes it available on the web from everywhere in the world." 132 | msgstr "" 133 | 134 | #: ../lib_installer.sh:135 135 | msgid "A critical error occured: " 136 | msgstr "" 137 | 138 | #: ../install.sh:113 139 | msgid "AlternC already installed, nothing to do." 140 | msgstr "" 141 | 142 | #: ../install.sh:556 143 | msgid "" 144 | "An important password has just been generated.\n" 145 | "\n" 146 | "It is the mysql root (or master) password.\n" 147 | "\n" 148 | "This password has been stored in the root directory : /root/.my.cnf\n" 149 | "\n" 150 | "For your information this password is : " 151 | msgstr "" 152 | 153 | #: ../install.sh:355 154 | msgid "By default mailman is installed with french and english." 155 | msgstr "" 156 | 157 | #: ../install.sh:590 158 | msgid "" 159 | "Caution! Failed to update the default password, change it on first login for " 160 | "security reasons!" 161 | msgstr "" 162 | 163 | #: ../lib_installer.sh:286 164 | msgid "Checking file %s exists" 165 | msgstr "" 166 | 167 | #: ../lib_installer.sh:309 168 | msgid "Creating folder %s for file %s" 169 | msgstr "" 170 | 171 | #: ../install.sh:61 172 | msgid "Debug mode activated." 173 | msgstr "" 174 | 175 | #: ../lib_installer.sh:327 176 | msgid "Deleting %s" 177 | msgstr "" 178 | 179 | #: ../lib_installer.sh:163 180 | msgid "Do you want to continue the installation? (Y/n)" 181 | msgstr "" 182 | 183 | #: ../install.sh:173 184 | msgid "Do you want to use AlternC.net domain name service? (Y/n)" 185 | msgstr "" 186 | 187 | #: ../install.sh:249 188 | msgid "Do you want to use AlternC.net name servers ?(Y/n)" 189 | msgstr "" 190 | 191 | #: ../install.sh:356 192 | msgid "Do you want to use french as default language? (Y/n)" 193 | msgstr "" 194 | 195 | #: ../install.sh:66 196 | msgid "Dry run mode activated." 197 | msgstr "" 198 | 199 | #: ../install.sh:471 200 | msgid "Editing and backuping your /etc/fstab file" 201 | msgstr "" 202 | 203 | #: ../lib_installer.sh:138 204 | msgid "Exiting." 205 | msgstr "" 206 | 207 | #: ../lib_installer.sh:305 208 | msgid "Failed to create %s as it is a file already" 209 | msgstr "" 210 | 211 | #: ../lib_installer.sh:289 212 | msgid "File %s does not exist" 213 | msgstr "" 214 | 215 | #: ../install.sh:127 216 | msgid "For your information, here are the internet addresses of this machine:" 217 | msgstr "" 218 | 219 | #: ../install.sh:80 220 | msgid "Installing mandatory packages" 221 | msgstr "" 222 | 223 | #: ../install.sh:352 224 | msgid "Mailman added to your configuration" 225 | msgstr "" 226 | 227 | #: ../lib_installer.sh:421 228 | msgid "Missing service name %s" 229 | msgstr "" 230 | 231 | #: ../install.sh:138 ../install.sh:178 ../install.sh:204 ../install.sh:219 232 | #: ../install.sh:254 ../install.sh:269 ../install.sh:278 ../install.sh:312 233 | #: ../install.sh:341 234 | msgid "Missing variable %s for silent install" 235 | msgstr "" 236 | 237 | #: ../install.sh:101 238 | msgid "Not a DEBIAN system (missing /etc/debian_version)" 239 | msgstr "" 240 | 241 | #: ../install.sh:215 242 | msgid "Please provide the AlternC.net subdomain name:" 243 | msgstr "" 244 | 245 | #: ../install.sh:133 246 | msgid "Please provide the public IP address" 247 | msgstr "" 248 | 249 | #: ../lib_installer.sh:382 250 | msgid "Replacing '%s' by %s in %s" 251 | msgstr "" 252 | 253 | #: ../install.sh:323 254 | msgid "Roundcube added to your configuration" 255 | msgstr "" 256 | 257 | #: ../install.sh:546 258 | msgid "Running the alternc.install script" 259 | msgstr "" 260 | 261 | #: ../install.sh:71 262 | msgid "Silent mode activated." 263 | msgstr "" 264 | 265 | #: ../install.sh:548 266 | msgid "" 267 | "Something went wrong with your installation : alternc.install script not " 268 | "found." 269 | msgstr "" 270 | 271 | #: ../install.sh:529 272 | msgid "Something went wrong, could not find the AlternC package in the sources" 273 | msgstr "" 274 | 275 | #: ../lib_installer.sh:268 276 | msgid "System copies %s as %s" 277 | msgstr "" 278 | 279 | #: ../lib_installer.sh:319 280 | msgid "System deletes %s" 281 | msgstr "" 282 | 283 | #: ../lib_installer.sh:437 284 | msgid "System edits the fstab to activate acl and quota " 285 | msgstr "" 286 | 287 | #: ../lib_installer.sh:283 288 | msgid "System makes sure file %s exists" 289 | msgstr "" 290 | 291 | #: ../lib_installer.sh:298 292 | msgid "System makes sure path for %s exists" 293 | msgstr "" 294 | 295 | #: ../lib_installer.sh:183 296 | msgid "System should execute %s" 297 | msgstr "" 298 | 299 | #: ../lib_installer.sh:339 300 | msgid "System writes '%s' \\nin %s" 301 | msgstr "" 302 | 303 | #: ../lib_installer.sh:363 304 | msgid "Systems inserts '%s' in %s at line #%s" 305 | msgstr "" 306 | 307 | #: ../lib_installer.sh:393 308 | msgid "Systems makes a backup of %s" 309 | msgstr "" 310 | 311 | #: ../lib_installer.sh:378 312 | msgid "Systems replaces '%s' by %s in %s" 313 | msgstr "" 314 | 315 | #: ../install.sh:107 316 | msgid "This machine is not connected to Internet." 317 | msgstr "" 318 | 319 | #: ../install.sh:336 320 | msgid "Would you like to install Mailman? (Y/n)" 321 | msgstr "" 322 | 323 | #: ../install.sh:307 324 | msgid "Would you like to install Roundcube? (Y/n)" 325 | msgstr "" 326 | 327 | #: ../lib_installer.sh:342 328 | msgid "Writing '%s' \\nin %s" 329 | msgstr "" 330 | 331 | #: ../install.sh:597 332 | msgid "You can now visit your AlternC on http://%s" 333 | msgstr "" 334 | 335 | #: ../install.sh:96 336 | msgid "" 337 | "You must be root, please authentificate with your user password or run as " 338 | "root" 339 | msgstr "" 340 | 341 | #: ../install.sh:263 342 | msgid "You need two valid nameservers :" 343 | msgstr "" 344 | 345 | #: ../install.sh:599 346 | msgid "You should authentificate with login: admin/%s" 347 | msgstr "" 348 | 349 | #: ../lib_installer.sh:271 350 | msgid "cp %s %s" 351 | msgstr "" 352 | 353 | #: ../lib_installer.sh:198 354 | msgid "missing domain name" 355 | msgstr "" 356 | -------------------------------------------------------------------------------- /translations/fr/LC_MESSAGES/alternc-easy-install.mo: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/AlternC/easy-install/25fd51e10c374bbf1384f8b1e1d2afc1cd0cfc53/translations/fr/LC_MESSAGES/alternc-easy-install.mo -------------------------------------------------------------------------------- /translations/fr/LC_MESSAGES/alternc-easy-install.po: -------------------------------------------------------------------------------- 1 | msgid "" 2 | msgstr "" 3 | "Report-Msgid-Bugs-To: \n" 4 | "POT-Creation-Date: 2016-02-26 14:02+0100\n" 5 | "Content-Type: text/plain; charset=UTF-8\n" 6 | 7 | #: ../install.sh:299 8 | msgid "" 9 | "\n" 10 | "===== Optional installation: roundcube webmail =====\n" 11 | "\n" 12 | "Roundcube is the webmail software proposed by AlternC.\n" 13 | "\n" 14 | "We recommand adding it to your installation.\n" 15 | msgstr "" 16 | "\n" 17 | "===== Installation optionnelle : Webmail Roundcube =====\n" 18 | "\n" 19 | "Roundcube est la solution de webmail utilisée par AlternC.\n" 20 | "\n" 21 | "Nous recommandons de l'ajouter à votre installation.\n" 22 | 23 | #: ../install.sh:330 24 | msgid "" 25 | "\n" 26 | "===== Optional installation: mailman mailing list manager =====\n" 27 | "\n" 28 | "Mailman is the mailing list software proposed by AlternC.\n" 29 | msgstr "" 30 | "\n" 31 | "===== Installation optionnelle : Mailing-lists Mailman =====\n" 32 | "\n" 33 | "Mailman est la solution de mailing list utilisée par AlternC.\n" 34 | "\n" 35 | "Nous recommandons de l'ajouter à votre installation.\n" 36 | 37 | #: ../install.sh:200 38 | msgid " Please provide your AlternC domain name" 39 | msgstr " Merci de fournir votre nom de domaine AlternC" 40 | 41 | #: ../install.sh:265 42 | msgid " Please provide your primary NS server" 43 | msgstr " Merci de fournir votre serveur DNS primaire" 44 | 45 | #: ../install.sh:274 46 | msgid " Please provide your secondary NS server" 47 | msgstr " Merci de fournir votre serveur DNS secondaire" 48 | 49 | #: ../lib_installer.sh:218 50 | msgid "%s doesn't seem to be a valid local ip" 51 | msgstr "%s ne semble pas être une IP valide" 52 | 53 | #: ../lib_installer.sh:205 54 | msgid "%s is a valid domain name" 55 | msgstr "%s est un nom de domaine valide" 56 | 57 | #: ../lib_installer.sh:203 58 | msgid "%s is not a valid domain name" 59 | msgstr "%s n'est pas un nom de domaine valide de domaine manquant" 60 | 61 | #: ../lib_installer.sh:454 62 | msgid "%s is not a valid file" 63 | msgstr "%s n'est pas un fichier valide" 64 | 65 | #: ../lib_installer.sh:87 ../lib_installer.sh:96 ../lib_installer.sh:104 66 | #: ../lib_installer.sh:114 ../lib_installer.sh:124 ../lib_installer.sh:136 67 | msgid "-d" 68 | msgstr "-d" 69 | 70 | #: ../install.sh:28 71 | msgid "" 72 | "===== Licence =====\n" 73 | "\n" 74 | "This script is licenced under the Gnu Public Licence v3.\n" 75 | "You should have received a copy of the Licence, otherwise it is available\n" 76 | "on https://www.gnu.org/copyleft/gpl.html. \n" 77 | "This script is provided without warranty of any kind, either expressed \n" 78 | "or implied. In no event shall our juridical person be liable for any \n" 79 | "damages incsluding, but not limited to, direct, indirect, special, \n" 80 | "incidental or consequential damages or other losses arising out of the \n" 81 | "use of or inability to use our products.\n" 82 | "... yada yada yada ..." 83 | msgstr "" 84 | " ----------------------------------------------------------------------\n" 85 | " AlternC - Web Hosting System\n" 86 | " Copyright (C) 2000-2014 by the AlternC Development Team.\n" 87 | " https://alternc.org/\n" 88 | " ----------------------------------------------------------------------\n" 89 | " LICENSE\n" 90 | " \n" 91 | " This program is free software; you can redistribute it and/or\n" 92 | " modify it under the terms of the GNU General Public License (GPL)\n" 93 | " as published by the Free Software Foundation; either version 2\n" 94 | " of the License, or (at your option) any later version.\n" 95 | " \n" 96 | " This program is distributed in the hope that it will be useful,\n" 97 | " but WITHOUT ANY WARRANTY; without even the implied warranty of\n" 98 | " MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n" 99 | " GNU General Public License for more details.\n" 100 | " \n" 101 | " To read the license please visit http://www.gnu.org/copyleft/gpl.html\n" 102 | " ----------------------------------------------------------------------" 103 | 104 | #: ../install.sh:42 105 | msgid "" 106 | "===== Warning =====\n" 107 | "\n" 108 | "This installation script helps to test or install AlternC for \n" 109 | "the first time and / or don't know so much about Linux, network etc.\n" 110 | "\n" 111 | "Using this script will provide a working installation, but if you need \n" 112 | "something more specific you might prefer a custom installation.\n" 113 | "\n" 114 | "To learn more about the choices made for this installer, please read \n" 115 | "http://www.alternc.org/simpleInstaller" 116 | msgstr "" 117 | "===== Attention =====\n" 118 | "\n" 119 | "Cet installeur simple pour AlternC est fait pour %s\n" 120 | "tournant sur %s %s.\n" 121 | "\n" 122 | "Son objectif est d'aider des personnes désirant tester ou installer\n" 123 | "AlternC pour la première fois et/ou n'ayant pas les connaissances\n" 124 | "requises en Linux / réseau / etc. pour le faire.\n" 125 | "\n" 126 | "Cet installeur est loin d'être inoffensif et va modifier lourdement la \n" 127 | "configuration de l'ordinateur sur lequel vous allez l'exécuter.\n" 128 | "\n" 129 | "Vous devriez l'utiliser uniquement sur une machine vierge (sans données)\n" 130 | "dont vous êtes certain(e) que vous pourrez la réinitialiser en cas d'erreur\n" 131 | "\n" 132 | "Cet installeur est fourni tel que et la responsabilité de ses développeurs\n" 133 | "ne saurait être engagée suite à son utilisation.\n" 134 | "\n" 135 | "Ce script vous fournira une installation fonctionnelle standard.\n" 136 | "Si vous avez des désirs plus spécifiques, vous devriez préférer une\n" 137 | "installation manuelle du logiciel.\n" 138 | "\n" 139 | "Pour en savoir plus sur les choix fait pour cet installeur, vous pouvez\n" 140 | "consulter le site d'AlternC http://www.alternc.org/simpleInstaller " 141 | 142 | #: ../install.sh:242 143 | msgid "" 144 | "===== Your AlternC needs DNS Servers =====\n" 145 | "\n" 146 | "Domain Name Servers announce addresses of the domain names on the web.\n" 147 | "\n" 148 | "If you don't have at least two name servers with minimal redundancy, we\n" 149 | "highly recommand you the free service we provide (see http://alternc.net )" 150 | msgstr "" 151 | "===== Votre AlternC a besoin de serveurs DNS =====\n" 152 | "\n" 153 | "Les serveurs DNS distribuent sur le web les informations relatives aux \n" 154 | "noms de domaines de vos hébergés\n" 155 | "\n" 156 | "Nous recommandons vivement d'utiliser le service libre et gratuit que \n" 157 | "nous proposons (voir http://www.alternc.net) si vous ne disposez pas\n" 158 | "de votre propre infrastructure DNS à redondance minimale." 159 | 160 | #: ../install.sh:153 161 | msgid "" 162 | "===== Your AlternC needs a domain name =====\n" 163 | "\n" 164 | "This domain name will be used to access the panel and send/receive mail.\n" 165 | " \n" 166 | "You must use an original domain name dedicated for this purpose.\n" 167 | "In other words, do not use a domain name intended to be your company or \n" 168 | "personal website. \n" 169 | "For example, 'example.com' is not good, unless your company is the \n" 170 | "hosting service by itself. 'panel.example.com' will work better, \n" 171 | "allowing you to still have your website on 'www.example.com'\n" 172 | "\n" 173 | "If you are unsure, here are a few solutions: \n" 174 | "1. Create a subdomain dedicated to AlternC on a domain name you own\n" 175 | "2. Use the free AlternC.net domain name service \n" 176 | " \n" 177 | "We recommand using the AlternC.net subdomain name if you are new to this.\n" 178 | "You'll only need to request your subdomain on http://www.alternc.net and \n" 179 | "point it to the IP address you just provided.\n" 180 | "Your AlternC domain name might then look like 'example.alternc.net'" 181 | msgstr "" 182 | "===== Votre AlternC a besoin d'un nom de domaine =====\n" 183 | "\n" 184 | "Ce nom de domaine sera utilisé pour accéder au panel et envoyer du mail.\n" 185 | "\n" 186 | "Attention, il est nécessaire d'utiliser un nom de domaine UNIQUEMENT\n" 187 | "destiné à cet usage et pas un nom de domaine destiné à pointer vers\n" 188 | "votre site web personnel ou celui de votre entreprise par exemple.\n" 189 | "\n" 190 | "Ainsi 'masociete.fr' n'est pas correct à moins que vous ne souhaitiez\n" 191 | "que l'activité de cette société soit l'hébergement et qu'il soit normal \n" 192 | "d'accéder directement au panel via ce nom de domaine.\n" 193 | "\n" 194 | "Sinon vous voudrez utiliser 'panel.masociete.fr' par exemple, alors que\n" 195 | "le site web de la société sera sur 'www.masociete.fr'\n" 196 | "Idem pour un particulier, sur 'mafamille.com' vous aurez probablement\n" 197 | "un site web, il faut mieux utiliser 'panel.mafamille.com' pour pointer\n" 198 | "vers cet AlternC et y gérer vos sites, emails, etc.\n" 199 | "\n" 200 | "Si vous n'êtes pas sûr(e) de vous, voici quelques solutions:\n" 201 | "1. Créez un sous-domaine dédié à cet AlternC chez votre registrar\n" 202 | "2. Utilisez le service AlternC.net pour avoir facilement un sous-domaine \n" 203 | "\n" 204 | "Nous recommandons d'utiliser le service AlternC.net si vous débutez.\n" 205 | "Vous n'avez qu'à demander un sous-domaine sur http://alternc.net pour \n" 206 | "le pointer vers l'adresse IP address que vous venez de fournir.\n" 207 | "Votre domaine AlternC sera alors de la forme 'example.alternc.net'" 208 | 209 | #: ../install.sh:123 210 | msgid "" 211 | "===== Your AlternC server needs a public IP Address =====\n" 212 | "\n" 213 | "This makes it available on the web from everywhere in the world." 214 | msgstr "" 215 | "===== Votre serveur AlternC a besoin d'une IP publique =====\n" 216 | "\n" 217 | "Ceci afin de le rendre disponible depuis partout dans le monde." 218 | 219 | #: ../lib_installer.sh:135 220 | msgid "A critical error occured: " 221 | msgstr "Une erreur critique est survenue : " 222 | 223 | #: ../install.sh:113 224 | msgid "AlternC already installed, nothing to do." 225 | msgstr "AlternC est déjà installé" 226 | 227 | #: ../install.sh:556 228 | msgid "" 229 | "An important password has just been generated.\n" 230 | "\n" 231 | "It is the mysql root (or master) password.\n" 232 | "\n" 233 | "This password has been stored in the root directory : /root/.my.cnf\n" 234 | "\n" 235 | "For your information this password is : " 236 | msgstr "" 237 | "Un mot de passe important a été généré pour vous.\n" 238 | "\n" 239 | "Il s'agit du mot de passe root pour mysql.\n" 240 | "\n" 241 | "Ce mot de passe a été stocké dans le dossier de l'utilisateur root : /root/." 242 | "my.cnf\n" 243 | "\n" 244 | "Pour votre information ce mot de passe est : " 245 | 246 | #: ../install.sh:355 247 | msgid "By default mailman is installed with french and english." 248 | msgstr "Par défaut Mailman est installé en français et en anglais." 249 | 250 | #: ../install.sh:590 251 | msgid "" 252 | "Caution! Failed to update the default password, change it on first login for " 253 | "security reasons!" 254 | msgstr "" 255 | "Attention! La mise à jour du mot de passe par défault a échoué, changez-le " 256 | "au premier login pour des raisons de sécurité" 257 | 258 | #: ../lib_installer.sh:286 259 | msgid "Checking file %s exists" 260 | msgstr "Vérification que le fichier %s existe" 261 | 262 | #: ../lib_installer.sh:309 263 | msgid "Creating folder %s for file %s" 264 | msgstr "Création du dossier %s pour le fichier %s" 265 | 266 | #: ../install.sh:61 267 | msgid "Debug mode activated." 268 | msgstr "Mode de debug activé" 269 | 270 | #: ../lib_installer.sh:327 271 | msgid "Deleting %s" 272 | msgstr "Suppression de %s" 273 | 274 | #: ../lib_installer.sh:163 275 | msgid "Do you want to continue the installation? (Y/n)" 276 | msgstr "Souhaitez-vous continuer l'installation ? (O/n)" 277 | 278 | #: ../install.sh:173 279 | msgid "Do you want to use AlternC.net domain name service? (Y/n)" 280 | msgstr "Souhaitez-vous utiliser un nom de domaine AlternC.net ? (O/n)" 281 | 282 | #: ../install.sh:249 283 | msgid "Do you want to use AlternC.net name servers ?(Y/n)" 284 | msgstr "Souhaitez-vous utiliser les serveurs DNS d'AlternC.net ? (O/n)" 285 | 286 | #: ../install.sh:356 287 | msgid "Do you want to use french as default language? (Y/n)" 288 | msgstr "Souhaitez-vous utiliser le français comme langue par défaut (Y/n)" 289 | 290 | #: ../install.sh:66 291 | msgid "Dry run mode activated." 292 | msgstr "Mode 'dry-run' activé" 293 | 294 | #: ../install.sh:471 295 | msgid "Editing and backuping your /etc/fstab file" 296 | msgstr "Edition et sauvegarde de votre fichier /etc/fstab." 297 | 298 | #: ../lib_installer.sh:138 299 | msgid "Exiting." 300 | msgstr "Abandon." 301 | 302 | #: ../lib_installer.sh:305 303 | msgid "Failed to create %s as it is a file already" 304 | msgstr "Echec de la création de %s car c'est déjà un fichier" 305 | 306 | #: ../lib_installer.sh:289 307 | msgid "File %s does not exist" 308 | msgstr "Le fichier %s n'existe pas" 309 | 310 | #: ../install.sh:127 311 | msgid "For your information, here are the internet addresses of this machine:" 312 | msgstr "Pour votre information, voici les adresses IP de ce serveur." 313 | 314 | #: ../install.sh:80 315 | msgid "Installing mandatory packages" 316 | msgstr "Installation de paquets nécessaires" 317 | 318 | #: ../install.sh:352 319 | msgid "Mailman added to your configuration" 320 | msgstr "Mailman ajouté à votre configuration" 321 | 322 | #: ../lib_installer.sh:421 323 | msgid "Missing service name %s" 324 | msgstr "Nom de service invalide : %s" 325 | 326 | #: ../install.sh:138 ../install.sh:178 ../install.sh:204 ../install.sh:219 327 | #: ../install.sh:254 ../install.sh:269 ../install.sh:278 ../install.sh:312 328 | #: ../install.sh:341 329 | msgid "Missing variable %s for silent install" 330 | msgstr "Variable %s manquante pour l'installation silencieuse" 331 | 332 | #: ../install.sh:101 333 | msgid "Not a DEBIAN system (missing /etc/debian_version)" 334 | msgstr "Un système DEBIAN est requis (pas de fichier /etc/debian_version)" 335 | 336 | #: ../install.sh:215 337 | msgid "Please provide the AlternC.net subdomain name:" 338 | msgstr "Merci de fournir votre sous-domaine AlternC.net" 339 | 340 | #: ../install.sh:133 341 | msgid "Please provide the public IP address" 342 | msgstr "Merci de fournir l'adresse IP du serveur AlternC" 343 | 344 | #: ../lib_installer.sh:382 345 | msgid "Replacing '%s' by %s in %s" 346 | msgstr "Remplacement de '%s' par %s dans %s" 347 | 348 | #: ../install.sh:323 349 | msgid "Roundcube added to your configuration" 350 | msgstr "Roundcube ajouté à votre configuration" 351 | 352 | #: ../install.sh:546 353 | msgid "Running the alternc.install script" 354 | msgstr "Exécution du script alternc.install" 355 | 356 | #: ../install.sh:71 357 | msgid "Silent mode activated." 358 | msgstr "Mode silencieux activé" 359 | 360 | #: ../install.sh:548 361 | msgid "" 362 | "Something went wrong with your installation : alternc.install script not " 363 | "found." 364 | msgstr "Problème, le script alternc.install n'est pas présent." 365 | 366 | #: ../install.sh:529 367 | msgid "Something went wrong, could not find the AlternC package in the sources" 368 | msgstr "" 369 | "Problème, les paquets d'AlternC n'ont pas été trouvés dans les sources." 370 | 371 | #: ../lib_installer.sh:268 372 | msgid "System copies %s as %s" 373 | msgstr "Le système copie %s dans %s" 374 | 375 | #: ../lib_installer.sh:319 376 | msgid "System deletes %s" 377 | msgstr "Le système supprimerait %s" 378 | 379 | #: ../lib_installer.sh:437 380 | msgid "System edits the fstab to activate acl and quota " 381 | msgstr "Le système édite le fichier fstab pour activer les acl et les quota" 382 | 383 | #: ../lib_installer.sh:283 384 | msgid "System makes sure file %s exists" 385 | msgstr "Le système d'assure que le chemin pour %s existe" 386 | 387 | #: ../lib_installer.sh:298 388 | msgid "System makes sure path for %s exists" 389 | msgstr "Le système d'assure que le chemin pour %s existe" 390 | 391 | #: ../lib_installer.sh:183 392 | msgid "System should execute %s" 393 | msgstr "Le système exécuterait %s" 394 | 395 | #: ../lib_installer.sh:339 396 | msgid "System writes '%s' \\nin %s" 397 | msgstr "Le système écrit %s \\ndans %s" 398 | 399 | #: ../lib_installer.sh:363 400 | msgid "Systems inserts '%s' in %s at line #%s" 401 | msgstr "Le système insère '%s' dans %s à la ligne #%s" 402 | 403 | #: ../lib_installer.sh:393 404 | msgid "Systems makes a backup of %s" 405 | msgstr "Le système fait une sauvegarde de %s" 406 | 407 | #: ../lib_installer.sh:378 408 | msgid "Systems replaces '%s' by %s in %s" 409 | msgstr "Le système remplace '%s' par %s dans %s" 410 | 411 | #: ../install.sh:107 412 | msgid "This machine is not connected to Internet." 413 | msgstr "Cet ordinateur n'est pas connecté à Internet" 414 | 415 | #: ../install.sh:336 416 | msgid "Would you like to install Mailman? (Y/n)" 417 | msgstr "Souhaitez-vous installer Mailman ? (O/n)" 418 | 419 | #: ../install.sh:307 420 | msgid "Would you like to install Roundcube? (Y/n)" 421 | msgstr "Souhaitez-vous installer Roundcube ? (O/n)" 422 | 423 | #: ../lib_installer.sh:342 424 | msgid "Writing '%s' \\nin %s" 425 | msgstr "Écriture de %s \\ndans %s" 426 | 427 | #: ../install.sh:597 428 | msgid "You can now visit your AlternC on http://%s" 429 | msgstr "Vous pouvez maintenant vous connecter à votre Alternc sur http://%s" 430 | 431 | #: ../install.sh:96 432 | msgid "" 433 | "You must be root, please authentificate with your user password or run as " 434 | "root" 435 | msgstr "Un compte 'root' est requis pour exécuter ce script" 436 | 437 | #: ../install.sh:263 438 | msgid "You need two valid nameservers :" 439 | msgstr "Vous avez besoin de deux serveurs DNS valides :" 440 | 441 | #: ../install.sh:599 442 | msgid "You should authentificate with login: admin/%s" 443 | msgstr "Vous pouvez vous authentifier avec : admin/%s" 444 | 445 | #: ../lib_installer.sh:271 446 | msgid "cp %s %s" 447 | msgstr "cp %s %s" 448 | 449 | #: ../lib_installer.sh:198 450 | msgid "missing domain name" 451 | msgstr "Nom de domaine manquant" 452 | --------------------------------------------------------------------------------