May I use makepkg tweaks from Archwiki without destroying my system?
The reason I'm asking is because my building/ complying time is very slow in C# written AUR packages.

─λ inxi -Fxxxza
System:    Kernel: 5.10.7-111-tkg-pds x86_64 bits: 64 compiler: gcc v: 10.2.1
           parameters: intel_pstate=passive BOOT_IMAGE=/@/boot/vmlinuz-linux-tkg-pds-nehalem
           root=UUID=3d6644cc-3196-4afd-a8d6-95fb20e38c4b rw [email protected] quiet splash
           loglevel=3 rd.udev.log_priority=3 vt.global_cursor_default=0
           Desktop: KDE Plasma 5.20.5 tk: Qt 5.15.2 info: latte-dock wm: kwin_x11 dm: SDDM
           Distro: Garuda Linux
Machine:   Type: Laptop System: Hewlett-Packard product: HP EliteBook 8540p v: N/A
           serial: <filter> Chassis: type: 10 serial: <filter>
           Mobo: Hewlett-Packard model: 1521 v: KBC Version 32.36 serial: <filter>
           UEFI: Hewlett-Packard v: 68CVD Ver. F.60 date: 11/11/2015
Battery:   ID-1: BAT0 charge: 57.4 Wh condition: 58.2/58.2 Wh (100%) volts: 16.3/14.4
           model: Hewlett-Packard Primary type: Li-ion serial: <filter> status: Unknown
CPU:       Info: Quad Core model: Intel Core i7 Q 840 bits: 64 type: MT MCP arch: Nehalem
           family: 6 model-id: 1E (30) stepping: 5 microcode: A L2 cache: 8 MiB
           flags: lm nx pae sse sse2 sse3 sse4_1 sse4_2 ssse3 vmx bogomips: 29828
           Speed: 1661 MHz min/max: 1199/1867 MHz boost: enabled Core speeds (MHz): 1: 1661
           2: 1655 3: 1315 4: 1731 5: 1293 6: 1904 7: 1262 8: 1811
           Vulnerabilities: Type: itlb_multihit status: KVM: VMX disabled
           Type: l1tf mitigation: PTE Inversion; VMX: conditional cache flushes, SMT vulnerable
           Type: mds
           status: Vulnerable: Clear CPU buffers attempted, no microcode; SMT vulnerable
           Type: meltdown mitigation: PTI
           Type: spec_store_bypass
           mitigation: Speculative Store Bypass disabled via prctl and seccomp
           Type: spectre_v1 mitigation: usercopy/swapgs barriers and __user pointer sanitization
           Type: spectre_v2 mitigation: Full generic retpoline, IBPB: conditional, IBRS_FW,
           STIBP: conditional, RSB filling
           Type: srbds status: Not affected
           Type: tsx_async_abort status: Not affected
Graphics:  Device-1: NVIDIA GF106GLM [Quadro 2000M] vendor: Hewlett-Packard driver: nvidia
           v: 390.138 alternate: nouveau,nvidia_drm bus ID: 01:00.0 chip ID: 10de:0dda
           Device-2: Chicony HP Webcam [2 MP Macro] type: USB driver: uvcvideo bus ID: 1-1.5:5
           chip ID: 04f2:b15e
           Display: x11 server: X.Org 1.20.10 compositor: kwin_x11 driver: loaded: nvidia
           display ID: :0 screens: 1
           Screen-1: 0 s-res: 1366x768 s-dpi: 102 s-size: 340x191mm (13.4x7.5")
           s-diag: 390mm (15.4")
           Monitor-1: LVDS-0 res: 1366x768 hz: 60 dpi: 101 size: 344x194mm (13.5x7.6")
           diag: 395mm (15.5")
           OpenGL: renderer: Quadro 2000M/PCIe/SSE2 v: 4.6.0 NVIDIA 390.138 direct render: Yes
Audio:     Device-1: Intel 5 Series/3400 Series High Definition Audio vendor: Hewlett-Packard
           driver: snd_hda_intel v: kernel bus ID: 00:1b.0 chip ID: 8086:3b56
           Device-2: NVIDIA GF106 High Definition Audio vendor: Hewlett-Packard
           driver: snd_hda_intel v: kernel bus ID: 01:00.1 chip ID: 10de:0be9
           Sound Server: ALSA v: k5.10.7-111-tkg-pds
Network:   Device-1: Intel 82577LM Gigabit Network vendor: Hewlett-Packard driver: e1000e
           v: kernel port: 6020 bus ID: 00:19.0 chip ID: 8086:10ea
           IF: enp0s25 state: down mac: <filter>
           Device-2: Intel Centrino Advanced-N 6200 driver: iwlwifi v: kernel port: 5000
           bus ID: 44:00.0 chip ID: 8086:4239
           IF: wlo1 state: up mac: <filter>
Drives:    Local Storage: total: 931.51 GiB used: 33.93 GiB (3.6%)
           SMART Message: Unable to run smartctl. Root privileges required.
           ID-1: /dev/sda maj-min: 8:0 vendor: Crucial model: CT1000MX500SSD1 size: 931.51 GiB
           block size: physical: 512 B logical: 512 B speed: 3.0 Gb/s serial: <filter> rev: 023
Partition: ID-1: / raw size: 530.66 GiB size: 530.66 GiB (100.00%) used: 33.91 GiB (6.4%)
           fs: btrfs dev: /dev/sda2 maj-min: 8:2
           ID-2: /boot/efi raw size: 300 MiB size: 299.4 MiB (99.80%) used: 25.8 MiB (8.6%)
           fs: vfat dev: /dev/sda1 maj-min: 8:1
           ID-3: /home raw size: 530.66 GiB size: 530.66 GiB (100.00%) used: 33.91 GiB (6.4%)
           fs: btrfs dev: /dev/sda2 maj-min: 8:2
           ID-4: /var/log raw size: 530.66 GiB size: 530.66 GiB (100.00%) used: 33.91 GiB (6.4%)
           fs: btrfs dev: /dev/sda2 maj-min: 8:2
           ID-5: /var/tmp raw size: 530.66 GiB size: 530.66 GiB (100.00%) used: 33.91 GiB (6.4%)
           fs: btrfs dev: /dev/sda2 maj-min: 8:2
Swap:      Alert: No Swap data was found.
Sensors:   System Temperatures: cpu: 67.0 C mobo: 0.0 C gpu: nvidia temp: 59 C
           Fan Speeds (RPM): N/A
Info:      Processes: 270 Uptime: 6h 03m wakeups: 2 Memory: 7.65 GiB used: 4 GiB (52.3%)
           Init: systemd v: 247 Compilers: gcc: 10.2.0 Packages: pacman: 1597 lib: 490
           Shell: fish v: 3.1.2 running in: alacritty inxi: 3.2.02

I'm not sure how deep you want to go, but anything that ups the cores involved can help a lot without requiring much alteration or potential troubles. I mean MAKEFLAGS and multi-core compression in particular have shown no downsides for me (and it makes for pretty displays on my conkys too!).

You can usually assume that Archwiki knows...


Yes. However,

makepkg.conf tweaks are unlikely to help with C#/CLR/Mono programs.


1st I love so much Garuda and I'm very appreciated your help/suggestions :slight_smile:
2nd How deep did you make? :smiley:
I mean, I can modify this lines without trouble, right?( I have 4 core with 8 threads )

from #MAKEFLAGS="-j2" to MAKEFLAGS="-j9"

COMPRESSXZ=(xz -c -z -) to COMPRESSXZ=(xz -c -T 8 -z -)

What about Gentoo:Safe CFLAGS?
Can I use them like this?

CFLAGS="-march=nehalem -O2 -pipe"

And if I follow the compression changes in package-build does it have any affect on timeshift snaps? :thinking: Like

PKGEXT= from .tar to .lzo COMPRESSGZ= from gzip to pigz ...

And which line is strongly not recommended to change?

1 Like

Yes. Also consider MAKEFLAGS="-j$(nproc)" .

You should be using ZSTD as the pkgext instead.

Stick to the default flags here. It's generally pointless compiling for a specific microarchitecture.

No, those things are unrelated.

Again, stick with .pkg.tar.zst unless you have a specific reason not to.


Thank You jonathon! :)))

1 Like