sudo rm /usr/bin/composer
php -r "copy('https://getcomposer.org/installer', 'composer-setup.php');"
php -r "if (hash_file('sha384', 'composer-setup.php') === '906a84df04cea2aa72f40b5f787e49f22d4c2f19492ac310e8cba5b96ac8b64115ac402c8cd292b8a03482574915d1a8') { echo 'Installer verified'; } else { echo 'Installer corrupt'; unlink('composer-setup.php'); } echo PHP_EOL;"
php composer-setup.php
php -r "unlink('composer-setup.php');"
Ejecutar alguno de estos 2, en base a donde queramos tener el ejecutable, normalmente la opción 2 (/usr/bin/composer)
sudo mv composer.phar /usr/local/bin/composer
sudo cp /usr/local/bin/composer /usr/bin/composer
Instalación limpia de Tabler.io
Tenemos que tener una instalación limpia Laravel
- Nos colocamos en la raíz y tenemos que instalar todas las dependencias básicas que trae Laravel con:
npm install
- Ahora ejecutamos la instalación específica de tabler
npm install @tabler/core
- Tocamos el webpack.mix.js dejandolo de la siguiente manera, ya que en "resources/scss" vamos a poner nuestras personalizaciones de tabler propias
const mix = require('laravel-mix');
/*
|--------------------------------------------------------------------------
| Mix Asset Management
|--------------------------------------------------------------------------
|
| Mix provides a clean, fluent API for defining some Webpack build steps
| for your Laravel applications. By default, we are compiling the CSS
| file for the application as well as bundling up all the JS files.
|
*/
mix.js('resources/js/app.js', 'public/js').vue();
mix.sass('resources/scss/app.scss', 'public/css');
if(mix.inProduction()) {
mix.version();
}
- Hay que ajustar el fichero resources/js/app.js
require('./bootstrap');
window.Vue = require('vue').default;
// Cargamos el tabler
require('@tabler/core/src/js/tabler.js');
//require('selectize');
// Si queremos cargar y usar los iconos de fontawesome
//require('@fortawesome/fontawesome-free/js/all.js');
// Esto es porque usamos la validación de bootstrap para que nos la haga antes del submit
(function () {
'use strict'
// Fetch all the forms we want to apply custom Bootstrap validation styles to
var forms = document.querySelectorAll('.needs-validation')
// Loop over them and prevent submission
Array.prototype.slice.call(forms)
.forEach(function (form) {
form.addEventListener('submit', function (event) {
if (!form.checkValidity()) {
event.preventDefault()
event.stopPropagation()
}
form.classList.add('was-validated')
}, false)
})
})()
- Ajustamos el fichero resources/scss/app.scss ya que le hemos dicho en el webpackmix que pille este fichero
// Si queremos usar una font-family específica hay que ponerla primero para poder indicarla en el variables
// Primero hay que incluir las variables para que sobreescriban los que viene después
// Este fichero hay que crearlo para personalizar las variables por defecto del bootstrap/tabler
// Nosotros lo creamos como "_variables.scss" con guión y lo detecta
@import 'variables';
// Importamos el tabler css completo
@import '@tabler/core/src/scss/tabler';
- Hay que instalar "vue" si lo hemos incluído en el fichero de app.js por si queremos utilizar algo "a pelo" del vue (mostrar la contraseña con el iconito en el formulario de login)
npm install vue
- En la nueva versión de tabler hay que instalar varios módulos aparte para que no de fallo el "npm run"
npm install autosize
npm install imask
- Para que no falle la nueva versión en el tema de la fuente Inter, hay que ajustar el app.scss
@import url('https://fonts.googleapis.com/css2?family=Open+Sans:wght@400;700&display=swap');
@import 'variables';
@import '@tabler/core/src/scss/tabler';
y el y el _variables.scss
$font-google: "'Open Sans', sans-serif";
- Ahora ya podemos lanzar el compilador de estilos y scripts (según corresponda dev, watch o production)
npm run watch
ó
npm run dev
ó
npm run production
- En nuestras vistas (main o donde corresponda) tenemos que enlazar estos ficheros generados con el Laravel Mix
<link rel="stylesheet" href="{{ mix('/css/app.css') }}" />
<script type="text/javascript" src="{{ mix('/js/app.js') }}"></script>
Instalar última versión de NODE usando NVM
- Instalamos nvm con
curl -o- https://raw.githubusercontent.com/creationix/nvm/v0.33.11/install.sh | bash
Hay que cerrar y abrir el terminal para que pille la instalación. - source ~/.profile
- nvm ls-remote
- nvm install 16.6 (o la versión que se quiera)
Para actualizar nodejs
# Using Ubuntu
curl -fsSL https://deb.nodesource.com/setup_current.x | sudo -E bash -
sudo apt-get install -y nodejs
Crear sitio en AWS
- Instalar los componentes necesarios
apt install nodejs
apt install libevent-dev
sudo apt-get install -y build-essential
2. Agregar el usuario aws (o el que vaya a conectar) al grupo de sudo
usermod -aG sudo aws
3. Para evitar problemas con la instalación debes indicar en el path de node que tire directamente de /usr/bin/node en lugar del «usr/local…»
/usr/bin/node
EXTRAS
Para instalar node a una versión específica/final, se hace mediante nvm.
Instalamos nvm concurl -o- https://raw.githubusercontent.com/creationix/nvm/v0.33.11/install.sh | bash
Hay que cerrar y abrir el terminal para que pille la instalación.
source ~/.profile
nvm ls-remote
nvm install 16.6 (o la versión que se quiera)
Update node a la última versión
sudo npm cache clean -f
sudo npm install -g n
sudo n stable
Para usar vue y tabler en Laravel mix, hay que
- Indicar .vue() en el webpackmix.js
mix.js('resources/js/app.js', 'public/js').vue();
- En nuestro resources/js/app.js
// Cargamos e inicializamos vue
window.Vue = require('vue').default;
// Cargamos el tabler
require('@tabler/core/dist/js/tabler.js');
Para asegurarnos de que funcionan bien los tooltips hay que instalar por npm el popper
npm i @popperjs/core
Agregar usuario al grupo sudo
usermod -aG sudo sammy
Si el de arriba no funciona, ejecutar este indicando el usuairo
echo "username ALL=(ALL) NOPASSWD:ALL" | sudo tee /etc/sudoers.d/username
LEMP UBUNTU
apt update
apt install mysql
apt install php-fpm php-mysql php-mbstring php-curl php-xml php-gd
apt install mysql-server
mysql_secure_installation
MYSQL SERVER 8
CREATE USER ‘root’@’%’ IDENTIFIED BY ‘root’;
GRANT ALL PRIVILEGES ON aws.* TO ‘root’@’%’ WITH GRANT OPTION;
ALTER USER ‘root’@’%’ IDENTIFIED WITH mysql_native_password BY ‘root’;
FLUSH PRIVILEGES;
apt install python2.7
apt install nodejs
useradd -m -g sudo -s /bin/bash aws
passwd aws
su aws
ssh-keygen
En el directorio .ssh crear el archivo authorized_keys con la key de c9
Editar el fichero /etc/ssh/sshd_config y descomentar la línea de #PubkeyAuthentication yes
Arch + Cinnamon
Cinnamon 2.0 tiene como principal característica que ya no depende de Gnome Shell para instalarse y ejecutarse, por lo que se declara como Entorno de Escritorio independiente.
En el caso de Arch, una instalación completa de Cinnamon se podría hacer de la siguiente forma:
sudo pacman -S cinnamon cinnamon-control-center cinnamon-desktop cinnamon-screensaver cinnamon-session cinnamon-settings-daemon cinnamon-translations nemo
El Gestor de Sesión de LinuxMint es MDM, el cual pertenece al proyecto MATE si mal no recuerdo, y como en Arch este paquete no aparece en los repositorios oficiales, pues me instalé LXDM, el Gestor de Sesión del proyecto LXDE.
sudo pacman -S lxdm
Y posteriormente lo activamos con:
sudo systemctl enable lxdm.service
Escogí LXDM y no otro como por ejemplo LightDM, debido a que LXDM es muy ligero.
Liberar memoria RAM servidor consola Linux
Este comando sirve para ver el uso de la memoria ram en tiempo real, como un htop.
watch -n 1 free -m
Este comando sirve para liberar la memoria, sobre todo la cacheada
sudo sync && sudo sysctl -w vm.drop_caches=3
Qué hacer después de instalar Anarchy Linux + KDE
sudo pacman -S plasma-meta
sudo pacman -S plasma kde-applications
sudo pacman -S kde-applications-meta
sudo pacman -S base-devel
Sin ser usuarios root
git clone https://aur.archlinux.org/yay.git
cd yay
makepkg -si
yay -S pamac-aur-git --noconfirm
Si instalas GNOME, puede que tengas problemas con la tienda de software, debes instalar
pacman -Sy gnome-software-packagekit-plugin
pacman -Sy
archlinux-appstream-data
Añadir composer al global path en linux
echo 'export PATH="$PATH:$HOME/.config/composer/vendor/bin"' >> ~/.bashrc
Cierra y abre la terminal de nuevo.