Backup :
# backup list of installed packages
dpkg --get-selections | grep -v deinstall > backup-packages.txt
Restore :
# mark all packages as "deinstall" except the essentials one so you have a very low-level Linux system
sudo dpkg --clear-selections
# restore your backup
sudo aptitude install -y $(cat backup-packages.txt | awk '{print $1}')
Tags: Linux,Debian,backup,deb
2026-05-10 21:09:30
First you need to clone
whisper.cpp repository :
iman@Debian:~/whisper.cpp$ git clone https://github.com/ggml-org/whisper.cpp
cd whisper.cpp
Then save this as build.sh in the whisper.cpp directory and chmod +x build.sh
#!/bin/bash
export LANG=en_US.UTF-8
## depends cuda-toolkit cmake curl libcurl4-openssl-dev
# Check dependencies
DEPENDENCIES=(
'cuda-toolkit'
'cmake'
'curl'
'libcurl4-openssl-dev'
)
for i in "${DEPENDENCIES[@]}"; do
dpkg -s $i > /dev/null 2>&1;
if [ $? == 1 ]; then
echo >&2 "'$i' package is required, but not available. Aborting.";
exit 1;
fi
done
# Auto-detect CUDA compute capability
if command -v nvidia-smi &> /dev/null; then
CC=$(nvidia-smi --query-gpu=compute_cap --format=csv,noheader | head -1 | tr -d ' ')
echo "🎯 Detected GPU compute capability: $CC"
ARCH=$(echo $CC | sed 's/\./ /' | awk '{printf "%s%s", $1, $2}')
echo "CUDA_ARCHITECTURES: $ARCH"
else
ARCH="86" # fallback
echo "⚠️ nvidia-smi not found, using default CC 86"
fi
## see https://github.com/ggml-org/whisper.cpp
# Parse script arguments
NOZIP=false
while [[ $# -gt 0 ]]; do
case "$1" in
--no-zip|-nz) NOZIP=true ;;
*) ;; # ignore other args
esac
shift
done
# get current git commit and zip bin directory
COMMIT_ID=`git rev-parse --short HEAD`
echo $COMMIT_ID
#FILE="bin-*-$COMMIT_ID.zip"
ZIP="bin-`date +%Y%m%d`-$COMMIT_ID.zip"
if [ "$NOZIP" = false ]; then
if [ ! -f $ZIP ]; then
# zip -r bin-`date +%Y%m%d`-$COMMIT_ID.zip bin/
zip -r "$ZIP" bin/
echo "✅ Created: File $ZIP"
else
echo "File $ZIP exists: skipping zip creation."
fi
else
echo "--no-zip flag set: skipping zip creation."
fi
git pull
# Configure the project in the current directory
echo "🔧 Configuring cmake..."
cmake -B . --fresh -DGGML_CUDA=1 -DCMAKE_CUDA_ARCHITECTURES="$ARCH" # -DGGML_CUDA_FA_ALL_QUANTS=ON
# Build the project in the current directory
# Git version
COMMIT_ID=$(git rev-parse --short HEAD)
echo "🔨 Building commit: $COMMIT_ID"
cmake --build . --config Release -j$(nproc) --clean-first
iman@Debian:~/whisper.cpp$ ./build.sh
Download a model (only required once) :
iman@Debian:~/whisper.cpp$ ./models/download-ggml-model.sh ggml-large-v3-q5_0.bin
iman@Debian:~/whisper.cpp$ ls bin
bench main test-vad test-vad-full whisper-bench whisper-cli whisper-quantize whisper-server whisper-vad-speech-segments
Run your first inference :
iman@Debian:~/whisper.cpp$ bin/whisper-cli -m ../models/ggml-large-v3-q5_0.bin -f /path/to/input.wav --output-txt true --output-file /path/to/output.txt --language en --no-timestamps true
Check
whisper-cli README.md
Tags: linux,whisper.cpp,LLM,GGML,CUDA,Ai,compile,git
2026-05-08 14:44:44
gedit_LLaMA is a Gedit plugin that integrates with openai API compatible local LLM servers (like
llama.cpp ) to ask questions about selected text.
Features
Context-Aware Prompts: Automatically includes selected text in your prompt when asking LLaMA questions.
Streaming Support: Displays responses as they arrive, providing real-time output from the model.
Customizable Configuration: Easily configure API URL, API key, model name and keyboard shortcut.
Multi-line Prompt Input: Use a multi-line text area to compose complex prompts.
Copy To Clipboard: button to copy LLM response to clipboard.
Requirements
Gedit 44+
Python 3.x
`requests` library (install with `pip install requests` or via your distro's package manager `python3-requests`)
Installation
1. Install the schema:
cp org.gnome.gedit.plugins.gedit_llama.gschema.xml ~/.local/share/glib-2.0/schemas/
glib-compile-schemas ~/.local/share/glib-2.0/schemas/
2. Copy plugin files:
mkdir -p ~/.local/share/gedit/plugins
unzip gedit_LLaMA.zip -d ~/.local/share/gedit/plugins/
3. Enable the plugin:
Open Gedit
Go to `Edit` → `Preferences` → `Plugins`
Enable "Gedit LLaMA"
Usage
1. Select text in your document (optional)
2. Right-click in the editor and choose `Gedit LLaMA` → `Ask LLaMA`
3. Enter a prompt in the dialog
4. View results in a popup dialog that shows real-time streaming output
Configuration
You can customize:
API URL (default: `http://127.0.0.1:5000/v1/chat/completions`)
API Key (if required by your server)
Model name (default: `llama.cpp`)
Keyboard shortcut (default: `<Ctrl><Alt>l`)
Access the configuration via:
Right-click menu → `Configure LLaMA`
How It Works
1. Select text in your document
2. Right-click and select "Ask LLaMA"
3. Enter your question or instruction
4. Plugin sends selected text (if any) + prompt to your local LLM server
5. Response is displayed in a streaming popup dialog
Example Use Cases
Explain selected code snippets
Generate documentation for code
Find bugs or suggest improvements
Summarize selected text
Translate code comments
Debugging assistance
Code generation based on context
Notes
Requires a local LLM server like llama.cpp running at the configured URL
Supports both streaming and non-streaming responses
Plugin automatically detects when new tabs are opened and connects to their views
Uses GSettings for persistent configuration storage
Troubleshooting
If you encounter issues:
1. Ensure your local LLM server is running and accessible at the specified URL
2. Verify that `requests` is installed (`pip install requests`)
3. Check that the schema file was properly compiled using `glib-compile-schemas`
4. Confirm the plugin is enabled in Gedit's preferences
License
MIT License - see LICENSE file for details.
Tags: LLM,Gnome,Gedit,LLaMA
2026-04-27 19:18:23
Cover of
Yamê - Solo generated with
acestep.cpp AI Music Generator and
AceSteps 1.5 Open-Source Music Generation model on a NViDiA RTX3090.
20260313055524_0
Your browser does not support the audio element.
{
"caption": "A classic roots reggae track, female vocal, syncopated guitar upstrokes, a prominent bassline, steady one-drop drum beat, powerful horns section and Hammond organ, all contributing to a vibrant groove typical of reggae.",
"lyrics": "[intro]\nAllô ?\n\n[verse]\nAllô, Allô ? M'appelez pas, j'suis off\nMême la Play', je raccroche, c'est te dire comme j'suis off\nAllô, Allô ? Dès qu'j'désactive le mode\nMême ce biff qui appelle, je v'-esqui, j'te l'ai dit, j'suis off\nFaut qu'j'me casse d'ici (Faut qu'j'me casse d'ici)\nDans ma tête, j'suis d'jà ailleurs, ailleurs\nSeul dans ma piscine (Seul dans ma piscine)\nJ'dois nager comme Bozayeur, -ayeur\n\n[chorus]\nEh eh eh\nIls veulent pas m'laisser solo\nEh eh eh eh Eh eh eh eh\nEh Eh eh\nMoi, j'suis mieux quand j'suis solo, hmm\n\n[bridge]\nAllô ? (Allô, Allô ?), hello ? (Hello, hello ?)\nJ'réponds pas, j'suis en mode solo, solo\nAllô ? (Allô, Allô ?), hello ? (Hello, hello ?)\nJ'réponds pas, j'suis en mode solo, solo\n\n[verse]\nBosser mon chakra, le schéma\nJ'suis pas là à faire ce qui ché-mar\nZaza, je binks le sauna\nEt mes petits pas deviennent géants\nUn an de tournée, j'oubliais\nEn tour bus sans lever le pied\nBeaucoup de miles et de miel\nPas toujours entouré des meilleurs\nWé, c'est savoir s'replier\nParfois, j'ai besoin d'me replier\n\n[chorus]\nEh eh eh\nIls veulent pas m'laisser solo\nEh eh eh eh eh eh eh eh\nEh eh eh\nEh eh eh eh eh eh eh eh\nAh ah ah\nMoi, j'suis mieux quand j'suis solo, hmm\n\n[outro]\nAllô ? (Allô, Allô ?), hello ? (Hello, hello ?)\nJ'réponds pas, j'suis en mode solo, solo\nAllô ? (Allô, Allô ?), hello ? (Hello, hello ?)\nJ'réponds pas, j'suis en mode solo, solo",
"duration": "",
"bpm": "",
"vocal_language": "fr",
"keyscale": "F# minor",
"timesignature": "4",
"seed": 4725206756236146747,
"lm_temperature": 0.85,
"lm_cfg_scale": 2.0,
"lm_top_p": 0.9,
"lm_top_k": 0,
"lm_negative_prompt": "",
"use_cot_caption": false,
"audio_codes": "",
"inference_steps": 8,
"guidance_scale": 0.0,
"shift": 3.0
}
Tags: Linux,acestep.cpp,Yamê,Solo,Ai,LLM,GGML,CUDA,music
2026-04-16 20:47:35
This was generated with a Q8 quantized
FLUX.1-dev gguf model and
Lyumin Zhang stable-diffusion-webui-forge on a NViDiA RTX3090.
Full outdoor shot of an elephant sitting perched on a bare, skeletal tree branch that extends from the middle ground into the desert landscape. The elephant is centered in the image and is facing away from the viewer. Its large ears are prominent, and its body appears to be a light brownish-gray. The tree, which the elephant is seated on, is bare with only some thin, dry branches and a light beige, almost white, trunk. The backdrop is a desert scene. The desert is mostly light tan and beige, with gentle sand dunes and low, sparse scrub-like vegetation. In the distance, light beige hills are visible, and the sky is a muted grayish-blue, with some wispy clouds. A full moon appears in the upper right quadrant of the image. The light suggests a late evening or early morning time setting.
Steps: 20,
Sampler: Euler,
Schedule type: Beta,
CFG scale: 1,
Distilled CFG Scale: 3.5,
Seed: 1800639528,
Size: 1152x2048,
Model hash: 129032f322,
Model: flux1-dev-Q8_0,
Denoising strength: 0.1,
RNG: CPU,
Beta schedule alpha: 0.6,
Beta schedule beta: 0.6,
Version: f2.0.1v1.10.1-previous-669-gdfdcbab6,
Diffusion in Low Bits: Automatic (fp16 LoRA),
Module 1: flux1-dev-improved-clip_l,
Module 2: flux1-dev-t5xxl_fp16,
Module 3: flux1-dev-vae-float16,
Source Identifier: Stable Diffusion web UI
Tags: Flux.1-Dev,Stable Diffusion,Ai,photography
2026-04-13 20:50:56
Tags: Bee,Eriobotrya Coppertone,spring,photography
2026-04-12 10:12:38
First you need to clone
llama.cpp repository :
iman@Debian:~/llama.cpp$ git clone https://github.com/ggml-org/llama.cpp
cd llama.cpp
Then save this as build.sh in the llama.cpp directory and chmod +x build.sh
#!/bin/bash
export LANG=en_US.UTF-8
## depends cuda-toolkit cmake curl libcurl4-openssl-dev
# Check dependencies
DEPENDENCIES=(
'cuda-toolkit'
'cmake'
'curl'
'libcurl4-openssl-dev'
)
for i in "${DEPENDENCIES[@]}"; do
dpkg -s $i > /dev/null 2>&1;
if [ $? == 1 ]; then
echo >&2 "'$i' package is required, but not available. Aborting.";
exit 1;
fi
done
# Auto-detect CUDA compute capability
if command -v nvidia-smi &> /dev/null; then
CC=$(nvidia-smi --query-gpu=compute_cap --format=csv,noheader | head -1 | tr -d ' ')
echo "🎯 Detected GPU compute capability: $CC"
ARCH=$(echo $CC | sed 's/\./ /' | awk '{printf "%s%s", $1, $2}')
echo "CUDA_ARCHITECTURES: $ARCH"
else
ARCH="86" # fallback
echo "⚠️ nvidia-smi not found, using default CC 86"
fi
## see https://github.com/ggml-org/llama.cpp/blob/master/docs/build.md
## Export environment variables
## nvidia nvcc CUDA
#export CUDA_HOME=/usr/local/cuda
#export PATH="$PATH:$CUDA_HOME/bin"
#export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/usr/local/cuda/lib64
## Set the CUDA compiler environment variables
#export CMAKE_CUDA_COMPILER=/usr/local/cuda/bin/nvcc
#export CUDACXX=/usr/local/cuda/bin/nvcc
# Parse script arguments
NOZIP=false
while [[ $# -gt 0 ]]; do
case "$1" in
--no-zip|-nz) NOZIP=true ;;
*) ;; # ignore other args
esac
shift
done
# get current git commit and zip bin directory
COMMIT_ID=`git rev-parse --short HEAD`
echo $COMMIT_ID
#FILE="bin-*-$COMMIT_ID.zip"
ZIP="bin-`date +%Y%m%d`-$COMMIT_ID.zip"
if [ "$NOZIP" = false ]; then
if [ ! -f $ZIP ]; then
zip -r "$ZIP" bin/
echo "✅ Created: File $ZIP"
else
echo "File $ZIP exists: skipping zip creation."
fi
else
echo "--no-zip flag set: skipping zip creation."
fi
git pull
# Configure the project in the current directory
# build only for Compute Capability of 3060/3090 NVIDIA devices
# see https://github.com/ggml-org/llama.cpp/blob/master/docs/build.md#cuda and https://developer.nvidia.com/cuda/gpus
# https://www.reddit.com/r/LocalLLaMA/comments/1rjpifs/comment/o8eqp9w/
echo "🔧 Configuring cmake..."
cmake -B . --fresh -DGGML_CUDA=ON -DCMAKE_CUDA_ARCHITECTURES="$ARCH" -DGGML_CUDA_FA_ALL_QUANTS=ON
# Build the project in the current directory
# Git version
COMMIT_ID=$(git rev-parse --short HEAD)
echo "🔨 Building commit: $COMMIT_ID"
cmake --build . --config Release -j$(nproc) --clean-first
iman@Debian:~/llama.cpp$ ./build.sh
iman@Debian:~/llama.cpp$ ls bin
export-graph-ops libllama.so.0.0.8621 llama-gguf-split test-c
libggml-base.so libllama.so.0.0.8655 llama-idle test-chat
libggml-base.so.0 libllama.so.0.0.8667 llama-imatrix test-chat-auto-parser
libggml-base.so.0.9.10 libmtmd.so llama-llava-cli test-chat-peg-parser
libggml-base.so.0.9.11 libmtmd.so.0 llama-lookahead test-chat-template
libggml-base.so.0.9.7 libmtmd.so.0.0.8343 llama-lookup test-gbnf-validator
libggml-base.so.0.9.8 libmtmd.so.0.0.8382 llama-lookup-create test-gguf
libggml-cpu.so libmtmd.so.0.0.8412 llama-lookup-merge test-gguf-model-data
libggml-cpu.so.0 libmtmd.so.0.0.8455 llama-lookup-stats test-grammar-integration
libggml-cpu.so.0.9.10 libmtmd.so.0.0.8461 llama-minicpmv-cli test-grammar-parser
libggml-cpu.so.0.9.11 libmtmd.so.0.0.8508 llama-mtmd-cli test-jinja
libggml-cpu.so.0.9.7 libmtmd.so.0.0.8530 llama-mtmd-debug test-json-partial
libggml-cpu.so.0.9.8 libmtmd.so.0.0.8541 llama-parallel test-json-schema-to-grammar
libggml-cuda.so libmtmd.so.0.0.8563 llama-passkey test-llama-archs
libggml-cuda.so.0 libmtmd.so.0.0.8621 llama-perplexity test-llama-grammar
libggml-cuda.so.0.9.10 libmtmd.so.0.0.8655 llama-q8dot test-log
libggml-cuda.so.0.9.11 libmtmd.so.0.0.8667 llama-quantize test-model-load-cancel
libggml-cuda.so.0.9.7 llama-batched llama-qwen2vl-cli test-mtmd-c-api
libggml-cuda.so.0.9.8 llama-batched-bench llama-results test-opt
libggml.so llama-bench llama-retrieval test-peg-parser
libggml.so.0 llama-cli llama-save-load-state test-quantize-fns
libggml.so.0.9.10 llama-completion llama-server test-quantize-perf
libggml.so.0.9.11 llama-convert-llama2c-to-ggml llama-simple test-quantize-stats
libggml.so.0.9.7 llama-cvector-generator llama-simple-chat test-quant-type-selection
libggml.so.0.9.8 llama-debug llama-speculative test-reasoning-budget
libllama.so llama-debug-template-parser llama-speculative-simple test-regex-partial
libllama.so.0 llama-diffusion-cli llama-template-analysis test-rope
libllama.so.0.0.8343 llama-embedding llama-tokenize test-sampling
libllama.so.0.0.8382 llama-eval-callback llama-tts test-state-restore-fragmented
libllama.so.0.0.8412 llama-export-lora llama-vdot test-thread-safety
libllama.so.0.0.8455 llama-finetune test-alloc test-tokenizer-0
libllama.so.0.0.8461 llama-fit-params test-arg-parser test-tokenizer-1-bpe
libllama.so.0.0.8508 llama-gemma3-cli test-autorelease test-tokenizer-1-spm
libllama.so.0.0.8530 llama-gen-docs test-backend-ops
libllama.so.0.0.8541 llama-gguf test-backend-sampler
libllama.so.0.0.8563 llama-gguf-hash test-barrier
iman@Debian:~/llama.cpp$ bin/llama-server -m /path/to/model.gguf --alias "Model-Alias" --n-gpu-layers 999 --cpu-moe --host 127.0.0.1 --port 5000 --flash-attn on --fit on --sleep-idle-seconds 30
Check
llama-server README.md
Tags: linux,lamma.cpp,LLM,GGML,CUDA,Ai,compile,git
2026-04-03 22:32:06
<?php
echo "hello world!";
?>
Tags: test,PHP
2026-03-08 20:04:20
#!/bin/bash
export LANG=en_US.UTF-8
# compile.sh
# depends : libncurses5 libncurses5-dev debhelper libssl-dev libelf-dev libdw-dev flex bison fakeroot build-essential
# v1 2024-04-28 compile
# v2 2024-09-24 wget https://cdn.kernel.org/pub/linux/kernel/v6.x/linux-x.y.z.tar.xz
# v3 2024-12-09 parse ChangeLog : awk only commmit, author, date and title from kernel.org ChangeLog
# v3.1 2024-12-10 parse version argument to get major version
# v3.2 2025-12-07 add -localversion argument to set LOCALVERSION
# v3.3 2025-12-19 add move previous files to debs directory
## TODO
## /TODO
# Check dependencies
DEPENDENCIES=(
'libncurses5'
'libncurses5-dev'
'debhelper'
'libssl-dev'
'libelf-dev'
'libdw-dev'
'flex'
'bison'
'fakeroot'
'build-essential'
)
for i in "${DEPENDENCIES[@]}"; do
dpkg -s $i > /dev/null 2>&1;
if [ $? == 1 ]; then
echo >&2 "'$i' package is required, but not available. Aborting.";
exit 1;
fi
done
# Check if the number of arguments provided is zero
if [ $# -eq 0 ]; then
echo "Usage: $0 [-localversion ]"
exit 1
fi
# Capture the first argument
arg=$1
# Define a regular expression to match the Kernel version format x.y(.z)
regex='^[0-9]+\.[0-9]+(\.[0-9]+)?$'
# Validate the argument against the regular expression
if ! [[ "$arg" =~ $regex ]]; then
# Output an error message if the argument does not match the expected format
echo -e "Error: Invalid Kernel version format.\nPlease provide a Kernel version in the 'x.y(.z)' format." >&2
exit 1
fi
# Extract the part before the first dot
version="$arg"
major_version="${version%%.*}"
# Check if the extracted part is a digit(s)
if [[ "$major_version" =~ ^[0-9]+$ ]]; then
echo "The Kernel major version is: $major_version"
else
echo "The part before the first dot is not a digit(s)."
exit 1
fi
# Parse optional -localversion option
CUSTOM_LOCALVERSION=""
while [[ $# -gt 0 ]]; do
case "$1" in
-localversion)
shift
if [[ -n "$1" && "$1" =~ ^[0-9]{8}$ ]]; then
CUSTOM_LOCALVERSION="$1"
else
echo "Please specify localversion in YYYYMMDD format." >&2
exit 1
fi
;;
*)
;;
esac
shift
done
# Move previous files to debs directory
# Enable nullglob so that unmatched patterns are removed from the loop
shopt -s nullglob
# Create the target directory if it doesn't exist
mkdir -p debs
# List of patterns to match
patterns=(
"linux-headers-*.deb"
"linux-image-*.deb"
"ChangeLog-*"
"parsed-ChangeLog-*"
)
# Loop over each pattern, then over each file that matches it
for pattern in "${patterns[@]}"; do
for file in $pattern; do
if [[ -e "$file" ]]; then
mv "$file" debs/
echo "Moved: $file -> debs/"
fi
done
done
# Disable nullglob – this restores the default pattern‑expansion behaviour
shopt -u nullglob
dir=linux-"$arg"
tarball=linux-"$arg".tar.xz
changelog=ChangeLog-$arg
## https://cdn.kernel.org/pub/linux/kernel/v6.x/ChangeLog-6.12.4
# Check if directory already exists
if [ -f "$changelog" ]; then
echo "File $changelog exists."
else
# Check if ChangeLog file exists, if not download it
if [ ! -f "$changelog" ]; then
echo -e "File $changelog does not exist,\ndownloading $changelog from https://kernel.org/"
wget --continue --limit-rate=10000k "https://cdn.kernel.org/pub/linux/kernel/v$major_version.x/$changelog"
if [ $? -ne 0 ]; then
echo "Download failed. Exiting."
exit 1
fi
fi
fi
## parse kernel.org ChangeLog
# Start processing
echo "Start parsing $changelog ..."
# Use awk to process the file
awk '
/^commit / {
commit = $0
next
}
/^Author: / {
author = $0
next
}
/^Date: / {
date = $0
next
}
/^ / {
if (commit != "" && author != "" && date != "") {
print commit
print author
print date
print $0
print ""
commit = ""
author = ""
date = ""
}
}
' "$changelog" > parsed-$changelog
# End processing
echo "Finished parsing $changelog ..."
# Cleanup existing files except filenames that match $arg, the current script ($0) and specific files
for file in *; do
if [[ ! ("$file" =~ (^.*)$arg(.*) || "$file" == $0 || "$file" == "debs" || "$file" == "compile-linux-20231107.txt" || "$file" == "compile.sh" || "$file" =~ (^compile_v([0-9]\.[0-9])\.sh) || "$file" == "parse-ChangeLog.sh") ]]; then
echo "Deleting $file"
rm -rf "$file"
fi
done
# Check if directory already exists
if [ -d "$dir" ]; then
echo "Directory $dir exists."
else
# Check if archive file exists, if not download it
if [ ! -f "$tarball" ]; then
echo -e "File $tarball does not exist,\ndownloading $tarball from https://kernel.org/"
wget --continue --limit-rate=10000k "https://cdn.kernel.org/pub/linux/kernel/v$major_version.x/$tarball"
if [ $? -ne 0 ]; then
echo "Download failed. Exiting."
exit 1
fi
fi
# Extract the archive
echo -e "Directory $dir does not exist,\nextracting archive $tarball ..."
if ! tar xf "$tarball"; then
echo "Failed to extract $tarball. Exiting."
exit 1
fi
fi
# Change directory to the extracted directory
if ! cd "$dir"; then
echo "Failed to change directory to $dir"
exit 1
fi
pwd
# Uncomment the following lines if you want to configure and build the kernel
#cp /boot/config-6.13.6-20250308 .config && yes "" | make oldconfig
cp /boot/config-`uname -r` .config && yes "" | make oldconfig
#make menuconfig
##Kernel hacking > Compile-time checks and compiler options > DEBUG_INFO
##(X) Disable debug information = set CONFIG_DEBUG_INFO_NONE=y
#fakeroot make bindeb-pkg -j$(nproc) LOCALVERSION=-20251029 KDEB_PKGVERSION=1+i
# Use CUSTOM_LOCALVERSION if supplied with --version argument
if [[ -n "$CUSTOM_LOCALVERSION" ]]; then
fakeroot make bindeb-pkg -j$(nproc) LOCALVERSION=-${CUSTOM_LOCALVERSION} KDEB_PKGVERSION=1+i
#echo ${CUSTOM_LOCALVERSION}
else
fakeroot make bindeb-pkg -j$(nproc) LOCALVERSION=-$(date +%Y%m%d) KDEB_PKGVERSION=1+i
#echo $(date +%Y%m%d)
fi
# Beep to notify the user
beep
Then save this as compile-kernel.sh, chmod +x compile-kernel.sh and launch with :
./compile.sh 6.18.19
or :
./compile.sh 6.18.19 -localversion 20260319
Tags: kernel,compile,Debian,linux
2025-09-07 11:24:51
Following my
Linux Kernel compilation recipe on Debian here is another tip on how to cross compile a kernel on an amd64 machine for an i386 one.
##install necessary packages
iman@debian:~$ sudo apt-get install libncurses5 libncurses5-dev libssl-dev kernel-package fakeroot build-essential util-linux
##get kernel 3.19.3
iman@debian:~$ wget https://www.kernel.org/pub/linux/kernel/v3.x/linux-3.19.3.tar.xz
iman@debian:~$ tar -xvf linux-3.19.3.tar.xz
iman@debian:~$ cd linux-3.19.3
##config-3.16.0-4-686-pae is Debian config file from its current kernel (available in the distribution linux-image .deb)
iman@debian:~/linux-3.19.3$ cp ~/config-3.16.0-4-686-pae .config && yes "" | linux32 make oldconfig
##optional : configure kernel
#iman@debian:~/linux-3.19.3$ make menuconfig
##if not first compilation
#iman@debian:~/linux-3.19.3$ make-kpkg clean
##set compile at full speed
iman@debian:~/linux-3.19.3$ export CONCURRENCY_LEVEL=`grep "cpu cores" /proc/cpuinfo | head -1 | cut -d":" -f2 | cut -c2-`
##compile kernel image and kernel headers (headers are optional)
iman@debian:~/linux-3.19.3$ fakeroot linux32 make-kpkg --cross-compile - --arch=i386 --initrd --revision=1+i --append-to-version=-`date +%Y%m%d` kernel-image kernel-headers
##at this point you have a 32bit kernel inside a linux-image-3.19.3-20150326_1+i_amd64.deb package and headers in linux-headers-3.19.3-20150326_1+i_amd64.deb but both labeled for 64bit arch
##let's label it i386
iman@debian:~/linux-3.19.3$ cd ..
iman@debian:~$ mkdir linux-image-3.19.3-20150326_1+i_i386 && cd linux-image-3.19.3-20150326_1+i_i386
##extract .deb
iman@debian:~/linux-image-3.19.3-20150326_1+i_i386$ ar x ../linux-image-3.19.3-20150326_1+i_amd64.deb
##extract control.tar.gz & data.tar.xz
iman@debian:~/linux-image-3.19.3-20150326_1+i_i386$ mkdir DEBIAN && tar xf control.tar.gz -C DEBIAN && rm control.tar.gz
iman@debian:~/linux-image-3.19.3-20150326_1+i_i386$ tar xf data.tar.xz && rm data.tar.xz
iman@debian:~/linux-image-3.19.3-20150326_1+i_i386$ rm debian-binary
##edit DEBIAN/control and replace "Architecture: amd64" by "Architecture: i386"
iman@debian:~/linux-image-3.19.3-20150326_1+i_i386$ sed -i 's/Architecture: amd64/Architecture: i386/g' DEBIAN/control
cd ..
##repackage the modified .deb
iman@debian:~$ dpkg-deb -b linux-image-3.19.3-20150326_1+i_i386
##now you've got your linux-image-3.19.3-20150326_1+i_i386.deb
##same method applies for linux-headers-3.19.3-20150326_1+i_amd64.deb
##copy .deb to your 32bit machine and install :
iman@msiwind:~$ sudo dpkg -i linux-image-3.19.3-20150326_1+i_i386.deb linux-headers-3.19.3-20150326_1+i_i386.deb
##reboot then :
iman@msiwind:~$ uname -a
Linux msiwind 3.19.3-20150326 #1 SMP Thu Mar 26 20:10:01 CET 2015 i686 GNU/Linux
ThnxX :
sukhanov.net
linuxfr.org
Tags: kernel,compile,cross compilation,Debian,linux
2015-03-28 09:00:00
Tags: blog,cuisine,Code,HTML,CSS,responsive,JavaScript,jQuery,PHP,SEO,Website,gallery,image,picture,PluXML
2014-11-15 13:37:00
Tags: online shop,catalogue,CD,Code,disques,DVD,HTML,JavaScript,jQuery,mobile,cart,PHP,reggae,shop,online,SEO,Website,database,SQL,vinyls
2013-10-28 16:00:00
Tags: archives,BROADCASTS,Code,DiSCiPLES,HTML,JavaScript,maintenance,PHP,reggae,RUSS D,SQL,jQuery,mobile
2013-10-22 09:00:00
Tags: online shop,catalogue,CD,Code,disques,DVD,HTML,JavaScript,jQuery,mobile,cart,PHP,reggae,shop,SEO,Website,database,SQL,vinyls
2013-09-29 14:09:00
##install necessary packages
iman@debian:~$ sudo apt-get install libncurses5 libncurses5-dev libssl-dev kernel-package fakeroot build-essential
iman@debian:~$ sudo apt install libncurses5 libncurses5-dev debhelper libssl-dev libelf-dev flex bison fakeroot build-essential
##get kernel 3.10
iman@debian:~$ wget https://www.kernel.org/pub/linux/kernel/v3.x/linux-3.10.tar.xz
iman@debian:~$ tar -xvf linux-3.10.tar.xz
iman@debian:~$ cd linux-3.10
iman@debian:~/linux-3.10$ cp /boot/config-`uname -r` .config && yes "" | make oldconfig
##optional : configure kernel
#iman@debian:~/linux-3.10$ make menuconfig
##if not first compilation
#iman@debian:~/linux-3.10$ make-kpkg clean
##set compile at full speed
iman@debian:~/linux-3.10$ export CONCURRENCY_LEVEL=`grep "cpu cores" /proc/cpuinfo | head -1 | cut -d":" -f2 | cut -c2-`
##compile kernel image and kernel headers
iman@debian:~/linux-3.10$ fakeroot make-kpkg --initrd --revision=1+i --append-to-version=-`date +%Y%m%d` kernel-image kernel-headers
iman@debian:~/linux-3.10$ cd ..
iman@debian:~$ sudo dpkg -i linux-image-3.10.0-20130701_1+i_amd64.deb linux-headers-3.10.0-20130701_1+i_amd64.deb
##reboot then :
iman@debian:~$ uname -a
Linux debian 3.10.0-20130701 #1 SMP Mon Jul 1 09:55:44 CEST 2013 x86_64 GNU/Linux
Tags: kernel,compile,Debian,linux
2013-07-05 09:00:00
excuse me do you have a moment to talk about Linux
Tags: Linux,penguin,GNU
2013-05-09 13:37:00
Tags: vinyl
2013-05-09 13:37:00
Keith Chuvala, a United Space Alliance contractor, manager of the Space Operations Computing (SpOC) for NASA, and leader of the iSS's Laptops and Network integration Teams, recently explained that NASA had decided to move to Linux for the iSS's PCs. "We migrated key functions from Windows to Linux because we needed an operating system that was stable and reliable - one that would give us in-house control. So if we needed to patch, adjust, or adapt, we could."
Specifically, the iSS astronauts will be using computers running Debian 6 . Earlier, some of the on-board computers had been using Scientific Linux , a Red Hat Enterprise Linux (RHEL) clone. While not the newest version of Debian, Debian 7 has just been released , Debian is nothing if not well-tested and reliable.
While Linux has been used on the iSS ever since its launch (PDF link) and for NASA ground operations almost since the day Linus Torvalds created it, it hasn't seen that much use on PCs in space. "Things really clicked," said Chuvala in an interview, "after we came to understand how Linux views the world, the interconnectedness of how one thing affects another. You need that worldview. i have quite a bit of Linux experience, but to see others who were really getting it, that was exciting."
read more @
zdnet.com
Tags: linux,Debian,GNU/Linux,NASA
2013-05-08 16:12:00
Tags: Linus,Torvalds,backup
2013-05-08 13:37:00
Tags: linux
2013-05-07 13:37:00
in June this year, scientists from ATLAS and their colleagues from another CERN experiment, CMS, announced they had found probable evidence of the Higgs boson, an important sub-atomic particle whose existence has been theorised for half a century but has never been observed. The news was hailed by none other than Professor Brian Cox as "one of the most important scientific discoveries of all time".
And - putting aside the small matter of building the LHC itself - finding the Higgs was done almost entirely with Linux. indeed, many of the scientists we've spoken to say it couldn't have been done without it.
read full article on techradar.com
Tags: GNU/Linux,linux,Higgs,boson
2013-04-27 17:34:00
Tags: blog,cuisine,Code,HTML,JavaScript,jQuery,PHP,SEO,Website,gallery,image,picture,PluXML
2013-04-22 17:04:00
SCRiPT : plxMinifyCache
plxMinifyCache on Github
Post on PluXML forum
DATE : 2013
Version 1.4
DESCRiPTiON : PluXML plugin to minify and cache source.
in the configuration part of the plugin (Parameters > plugins > plxMinifyCache configuration), you can change cache duration (in seconds), exclude pages article and search from being cached (v1.3) and minify inline scripts and styles (v1.4). Pages issued from POST are not cached (v1.4).
in the administration part of the plugin (plxMinifyCache), you can clean cache (v1.2).
Based on Steve Clay and Ryan Minify
Tags: PluXML,PHP,SCRiPT,JavaScript,HTML,http,cache,minify,CSS
2013-04-20 13:04:00
SCRiPT : plxMinifyCache
plxMinifyCache on Github
Post on PluXML forum
DATE : 2013
Version 1.0
DESCRiPTiON : PluXML plugin to minify and cache source.
in the configuration part of the plugin (Parameters > plugins > plxMinifyCache configuration), you can change cache duration (in seconds), exclude pages article and search from being cached (v1.3) and minify inline scripts and styles (v1.4). Pages issued from POST are not cached (v1.4).
in the administration part of the plugin (plxMinifyCache), you can clean cache (v1.2).
Based on Steve Clay and Ryan Minify
Tags: PluXML,PHP,SCRiPT,JavaScript,HTML,http,cache,minify,CSS
2013-04-15 13:04:00
Tags: SCRiPT,PluXML,RSS,Ajax,scroll,Search
2013-04-14 08:00:00
Tags: PluXML,PHP,SCRiPT,JavaScript,jQuery,Ajax,scroll
2013-04-12 22:18:00
SCRiPT : Blogroll + favicons
Blogroll + favicons on Github
Post on PluXML forum
DATE : 2013
DESCRiPTiON : Blogroll w/ favicons is a PluXML plugin based on Rockyhorror Blogroll 0.5
Fetches and cache favicons with getFavicon if curl is enabled, else fallback to getFavicon classic APi without caching.
This plugin adds an entry "Blogroll" on the left side, of the site administration to manage your links.
in the configuration part of the plugin (Parameters > plugins > Blogroll configuration), you can change the configuration xml file location and the title that appears in the sidebar of the public part.
Tags: PluXML,Blogroll,favicon,PHP,SCRiPT
2013-04-11 17:38:00
SCRiPT : RSSroll + favicons
RSSroll + favicons on Github
Post on PluXML forum
DATE : 2013
DESCRiPTiON : RSSroll w/ favicons is a PluXML plugin based on Rockyhorror RSSroll 0.5
Fetches feeds with SimplePie if curl is enabled, else fallback to javascript jGFeed Google Feed APi jQuery plugin.
This plugin adds an entry "RSSroll" on the left side of the site administration page to manage your RSS.
in the configuration part of the plugin (Parameters > plugins > RSSroll configuration), you can change the configuration xml file location and the title that appears in the sidebar of the public part.
Tags: PluXML,RSS,SimplePie,jGFeed,APi,favicon,PHP,SCRiPT
2013-04-10 17:33:00
Tags: PluXML,Search,PHP,SCRiPT
2013-04-06 17:10:00
While Linux is running our phones, friend requests, tweets, financial trades, ATMs and more, most of us don't know how it's actually built. This short video takes you inside the process by which the largest collaborative development project in the history of computing is organized.
Based on the annual report "Who Writes Linux," this is a powerful and inspiring story of how Linux has become a community-driven phenomenon.
More information about Linux and The Linux Foundation can be found at
http://www.linuxfoundation.org and
http://www.linux.com
Tags: geek,data processing,free software,video,GNU/Linux,linux,software
2013-04-03 11:05:00
SiTE : TOGANETOU
DATE : 2013
URL : http://umoja.free.fr/toganetou/
DESCRiPTiON : Blog de cuisine
REALiSATiON :
mise en place PluXML
modification d'une partie du code PHP
Galerie d'images générée par PHP
HTML
JavaScript / jQuery
CSS thème
référencement sur les principaux moteurs de recherche
maintenance.
Tags: blog,cuisine,Code,HTML,JavaScript,jQuery,PHP,SEO,Website,gallery,image,picture,PluXML
2013-03-27 14:08:00
Celebrate the 20th Anniversary of Linux with us. Watch the Story of Linux to remember - or learn for the first time - how Linux disrupted a market and has begun to change the world. Do you see yourself in its story?
Tags: GNU/Linux,linux,free software,software,data processing,video
2011-04-08 11:52:00
Debian is a
free operating system (OS) for your computer.
An operating system is the set of basic programs and utilities that make
your computer run.
Debian provides more than a pure OS: it comes with over
29000 packages , precompiled software bundled
up in a nice format for easy installation on your machine. Read more...
The
latest stable release of Debian is
6.0. The last update to this release was made on
February 23rd, 2013. Read more about
available
versions of Debian .
Getting Started
If you'd like to start using Debian, you can easily obtain a copy , and then follow the installation instructions to
install it.
If you're upgrading to the latest stable release
from a previous version, please read the release notes before
proceeding.
To get help in using or setting up Debian, see
our documentation and support
pages.
Users that speak languages other than English should
check the international section.
People who use systems other than Intel x86 should check the ports section.
Tags: free software,geek,GNU/Linux,data processing,Debian
2010-03-26 15:39:00
Tags: Debian,GNU/Linux,linux,free software
2010-03-07 13:37:00
#Linux rights
Rights r w x
Owner 400 200 100
Group 40 20 10
Others 4 2 1
#find jpg mv
find . -name "*.jpg" -exec mv {} . \;
#Search & Replace in files with command-line (-name optional)
find . -name *.php -exec sed -i s@require_once@//require_once@g {} \;
#applying a patch
Place the .diff file in the same directory as the source tarball. Ungzip/untar the source, and run
patch -p0 < some-patch-file.diff
The -p0 indicates the paths in the file are relative to the current directory, if you place the .diff file in the some-soft-source dir you need -p1.
#Remove orphaned configuration files
# aptitude purge $(dpkg --get-selections | grep deinstall | awk '{print $1}')
#List the files with a different MD5 checksum
find . -maxdepth 1 -type f -print0 | xargs -0 md5sum | sort | uniq -w 32 | awk '{print $2}' > ./distinct.txt
#pdf to jpg
Each page as an image :
convert file.pdf image%d.jpg
#grep
dpkg -l | grep '(15|16)' | grep linux
#multiple egrep
cat file.txt | egrep -i '(pattern1|pattern2)'
#optimise firefox sqlite
find ~/.mozilla/firefox/ -type f -name "*.sqlite" -exec sqlite3 {} VACUUM \;
#cp dir1 > dir2
cp -ruv /dir1/ /dir2/
The options allow you to display the copied files, copy entire directories, and update files that have already been copied.
#list dir
find . -type d
#cpu load in %
top -b -n 1 | grep Cpu | awk '{print $2}' | cut -c1-4
#capture tty
fbgrab capture.png
#add a word to the beginning of each line
for i in `cat file.txt` ; do word_to_add $i ; done
#cat without duplicate
cat file1.txt file2.txt | sort -n | uniq -u
#extract only the parts that are "readable" with strings
strings file.doc | less
and
strings -e b file.doc | less
#iso to utf
iconv -f ISO-8859-1 -t UTF-8 -o output.txt input.txt
iconv -f UTF-8 -t ISO-8859-1 -o output.txt input.txt
recode ISO-8859-15..UTF-8 input.txt
#sum with awk
For example, to determine the amount of memory being used by process apache2:
ps -ely | grep '\<apache2\>' | awk '{SUM += $8} END {print SUM}'
or to find out the total size in kilobytes occupied by all the PNG files in the directory:
ls -l *.png | awk '{SUM += $5} END {print SUM/1024}'
#Displays the most recent file .txt
ls -t1 *.txt | head -1
#Displays all .txt files except for the file named "file.txt"
ls *.txt | grep -v file.txt | xargs ls
#Display all .txt files except for the last .txt file
ls *.txt | grep -v `ls -t1 *.txt | head -1`
#sed syntax for displaying the text between "pattern1" and "pattern2":
sed -n '/pattern1/,/pattern2/p' /path/to/file
#Keyboard shortcuts for Bash
Some of these commands also work within command-line file editors. For example, Emacs offers movement commands and copy/paste functionality
1. Move
Ctrl + a: Go to the beginning of the line
Ctrl + e: Go to the end of the line
Alt + b: Move word by word backward in the command line (b for backward)
Alt + f: Move word by word forward in the command line (f for forward)
Ctrl + xx: Position the cursor at the beginning or end of the word
2. Cut/Paste
Ctrl + k: Cut the string from the cursor to the end of the line
Ctrl + u: Cut the string from the cursor to the beginning of the line
Ctrl + w: Cut the word before the cursor
Ctrl + y: Paste a string
3. Modification
Ctrl + t: swap the position of the two characters before the cursor (useful when typing, for example, sl instead of ls)
Alt + t: swap the position of the two words before the cursor
Alt + c: capitalize a letter
Alt + l: convert a word to lowercase (l for lowercase)
Alt + u: capitalize a word (u for uppercase)
Alt + .: rewrite the parameter of the last command
4. Miscellaneous
Ctrl + l: Clear the screen
Ctrl + r: Search for a previously typed command
Ctrl + -: Undo the last change
Ctrl + c: Stop the current command
Ctrl + d: Exit the current shell
Tags: bash,GNU/Linux,tips
2009-03-02 16:12:00
You know a science story is big when an experiment gets first or second billing on the main evening news-and it’s not even a slow news day. The Large Hadron Collider (LHC) is up and running as i write and as far as i can tell i’m still here, so it looks like the doomsayers were a little premature. Unless i’m writing this piece from the far side of the singularity of a black hole in a parallel universe.
The LHC is an huge experiment (a snip at $10 billion) to explore the very small and very energetic sub-atomic world to verify, amongst other things, if the Higgs Boson really exists. That will be a monumental triumph for science and the human spirit. i have always been fascinated by particle physics, despite by academic background in the Humanities and i will be following the progress at CERN with great interest. i am particularly pleased too because free software will be at the heart of this colossal human endeavour. GNU/Linux has been, is and will continue to power CERN’s efforts. This is a wonderful opportunity to tell the world that Windows doesn’t rule the roost.
Full article...
Tags: geek,GNU/Linux
2008-09-13 15:32:00
SiTE : RASTAViBES
DATE : 2007
URL : http://www.rastavibes.net
DESCRiPTiON : Site boutique en ligne d'articles reggae (disques vinyls et CD, DVD, mixtapes ...)
REALiSATiON :
Code PHP (catalogue, système de panier, administration)
HTML
JavaScript
interfaçage base de données MySQL
référencement sur les principaux moteurs de recherche
maintenance.
Tags: administration,online shop,catalogue,CD,Code,disques,DVD,HTML,JavaScript,jQuery,cart,PHP,reggae,SEO,Website,database,SQL,vinyls
2007-03-12 16:26:00
Députés français sous Ubuntu-Linux , Firefox , Thunderbird et OpenOffice
Afin que les députés français de la prochaine législature soient équipés en logiciels libres sur les bancs de l' Assemblée Nationale, cette dernière vient de lancer son appel d'offres.
En novembre 2006, une enquête diligentée par le Président de l' Assemblée Nationale, Jean-Louis Debré, démontrait que malgré des coûts de mise en oeuvre et de formation, les solutions informatiques à base de logiciels libres étaient d'un apport non négligeable en termes d'économies. Il avait été alors décidé d'équiper en conséquence les postes micro-informatique s mis à la disposition des députés de l'hémicycle.
Ubuntu , Firefox , Thunderbird et OpenOffice
Un appel d'offre avait alors été lancé et publié dans le Bulletin Officiel des Annonces des Marchés Publics en date du 4 janvier 2007, avec un début de prestations programmé pour le 1er mars 2007.
Ce marché comprennait :
la définition et la réalisation de la nouvelle configuration logicielle (pour rappel : système d'exploitation basé sur GNU/Linux, la suite bureautique OpenOffice.org , le navigateur Web Firefox et un client de messagerie libre)
l'assistance technique à la commande d'équipements micro-informatiques
la définition des spécifications techniques nécessaires pour assurer la compatibilité du système de gestion centralisée des postes micro-informatiques avec leur configuration logicielle
l'élaboration des procédures d'exploitation de la configuration logicielle
la maintenance pendant un an de la configuration logicielle et des procédures d'exploitation
des prestations optionnelles relatives à la mise en oeuvre et à la maintenance du système de gestion centralisée des postes des députés.
Et les gagnants sont...
Finalement, ce sont les sociétés Linagora et Unilog qui ont remporté ce marché, et qui équiperont donc dès cet été les postes de travail des députés français avec la distribution basée sur Debian Ubuntu Linux , ainsi que le navigateur web Firefox, le client mail Thunderbird et la suite bureautique libre OpenOffice 2.0. Sont concernés 577 ordinateurs.
Plus qu'une migration massive de postes, on notera toutefois le caractère hautement symbolique de cette dernière, qui marque un changement des mentalités, avec un passage des logiciels propriétaires (Micro$oft et Window$ en tête), aux logiciels libres.
Source : http://www.generation-nt.com
Non seulement ce sont des logiciels gratuits et libres mais en plus ils fonctionnent mieux ... pourquoi s'en priver? oÔ
Tags: Debian,Firefox,geek,GNU-Linux,data processing,software,free software,OpenOffice.org,Thunderbird,Ubuntu
2007-03-11 16:19:00
Tags: archives,BROADCASTS,Code,DiSCiPLES,Flash,HTML,JavaScript,maintenance,PHP,reggae,RUSS D,SQL
2006-03-12 16:28:00
SiTE : i M@N WEB
DATE : 2003
URL : http://imanweb.free.fr
DESCRiPTiON : Site reggae bordelais 100% bonnes vibes 100% fermé !
REALiSATiON :
Code PHP (news, forum, galeries d'images, streaming audio et vidéo, administration)
HTML
JavaScript
interfaçage base de données MySQL
référencement sur les principaux moteurs de recherche
maintenance.
Tags: administration,audio,Bordeaux,Code,gallery,HTML,JavaScript,maintenance,news,PHP,reggae,SEO,Website,SQL,stream,video
2003-03-12 16:38:00
Tags: linux,GNU/Linux
2001-03-07 13:37:00